diff --git a/apps/files_versions/src/components/Version.vue b/apps/files_versions/src/components/Version.vue index 6c191b569d235..82ea2795636b0 100644 --- a/apps/files_versions/src/components/Version.vue +++ b/apps/files_versions/src/components/Version.vue @@ -125,12 +125,9 @@ import { Permission, formatFileSize } from '@nextcloud/files' import { loadState } from '@nextcloud/initial-state' import { t } from '@nextcloud/l10n' import { joinPaths } from '@nextcloud/paths' -import { getRootUrl, generateUrl } from '@nextcloud/router' +import { getRootUrl } from '@nextcloud/router' import { defineComponent } from 'vue' -import axios from '@nextcloud/axios' -import logger from '../utils/logger' - import BackupRestore from 'vue-material-design-icons/BackupRestore.vue' import Delete from 'vue-material-design-icons/Delete.vue' import Download from 'vue-material-design-icons/Download.vue' @@ -206,7 +203,6 @@ export default defineComponent({ previewLoaded: false, previewErrored: false, capabilities: loadState('core', 'capabilities', { files: { version_labeling: false, version_deletion: false } }), - versionAuthor: '' as string|null, } }, @@ -233,6 +229,16 @@ export default defineComponent({ return label }, + versionAuthor() { + if (!this.version.author || !this.version.authorName) { + return '' + } + if (this.version.author === getCurrentUser()?.uid) { + return t('files_versions', 'You') + } + return this.version.authorName ?? this.version.author + }, + downloadURL(): string { if (this.isCurrent) { return getRootUrl() + joinPaths('/remote.php/webdav', this.fileInfo.path, this.fileInfo.name) @@ -297,24 +303,6 @@ export default defineComponent({ this.$emit('delete', this.version) }, - async fetchDisplayName() { - this.versionAuthor = null - if (!this.version.author) { - return - } - - if (this.version.author === getCurrentUser()?.uid) { - this.versionAuthor = t('files_versions', 'You') - } else { - try { - const { data } = await axios.post(generateUrl('/displaynames'), { users: [this.version.author] }) - this.versionAuthor = data.users[this.version.author] - } catch (error) { - logger.warn('Could not load user display name', { error }) - } - } - }, - click() { if (!this.canView) { window.location.href = this.downloadURL diff --git a/apps/files_versions/src/utils/versions.ts b/apps/files_versions/src/utils/versions.ts index 6d5933f0bd9c5..10cbc2685cf20 100644 --- a/apps/files_versions/src/utils/versions.ts +++ b/apps/files_versions/src/utils/versions.ts @@ -11,6 +11,7 @@ import { generateRemoteUrl, generateUrl } from '@nextcloud/router' import { getCurrentUser } from '@nextcloud/auth' import { joinPaths, encodePath } from '@nextcloud/paths' import moment from '@nextcloud/moment' +import axios from '@nextcloud/axios' import client from '../utils/davClient.js' import davRequest from '../utils/davRequest.js' @@ -20,6 +21,7 @@ export interface Version { fileId: string, // The id of the file associated to the version. label: string, // 'Current version' or '' author: string|null, // UID for the author of the version + authorName: string|null, // Display name of the author filename: string, // File name relative to the version DAV endpoint basename: string, // A base name generated from the mtime mime: string, // Empty for the current version, else the actual mime type of the version @@ -30,7 +32,7 @@ export interface Version { permissions: string, // Only readable: 'R' previewUrl: string, // Preview URL of the version url: string, // Download URL of the version - source: string, // The WebDAV endpoint of the ressource + source: string, // The WebDAV endpoint of the resource fileVersion: string|null, // The version id, null for the current version } @@ -43,10 +45,22 @@ export async function fetchVersions(fileInfo: any): Promise { details: true, }) as ResponseDataDetailed - return response.data + const versions = response.data // Filter out root .filter(({ mime }) => mime !== '') .map(version => formatVersion(version, fileInfo)) + + const authorIds = new Set(versions.map(version => version.author)) + const authors = await axios.post(generateUrl('/displaynames'), { users: [...authorIds] }) + + for (const version of versions) { + const author = authors.data.users[version.author] + if (author) { + version.authorName = author + } + } + + return versions } catch (exception) { logger.error('Could not fetch version', { exception }) throw exception @@ -93,6 +107,7 @@ function formatVersion(version: any, fileInfo: any): Version { // If version-label is defined make sure it is a string (prevent issue if the label is a number an PHP returns a number then) label: version.props['version-label'] && String(version.props['version-label']), author: version.props['version-author'] ?? null, + authorName: null, filename: version.filename, basename: moment(mtime).format('LLL'), mime: version.mime, diff --git a/dist/files_versions-files_versions.js b/dist/files_versions-files_versions.js index df4a95aee4df1..dae143b5e21b1 100644 --- a/dist/files_versions-files_versions.js +++ b/dist/files_versions-files_versions.js @@ -1,2 +1,2 @@ -(()=>{var e,i,n,s={12482:(e,t,i)=>{"use strict";i.d(t,{A:()=>l});var n=i(71354),s=i.n(n),o=i(76314),r=i.n(o)()(s());r.push([e.id,".versions-tab__container{height:100%}","",{version:3,sources:["webpack://./apps/files_versions/src/views/VersionTab.vue"],names:[],mappings:"AACA,yBACC,WAAA",sourcesContent:["\n.versions-tab__container {\n\theight: 100%;\n}\n"],sourceRoot:""}]);const l=r},14085:(e,t,i)=>{"use strict";i.d(t,{A:()=>l});var n=i(71354),s=i.n(n),o=i(76314),r=i.n(o)()(s());r.push([e.id,".version-label-modal__info[data-v-6e140e12]{color:var(--color-text-maxcontrast);margin-block:calc(3*var(--default-grid-baseline))}.version-label-modal__input[data-v-6e140e12]{margin-block-start:calc(2*var(--default-grid-baseline))}","",{version:3,sources:["webpack://./apps/files_versions/src/components/VersionLabelDialog.vue"],names:[],mappings:"AAEC,4CACC,mCAAA,CACA,iDAAA,CAGD,6CACC,uDAAA",sourcesContent:["\n.version-label-modal {\n\t&__info {\n\t\tcolor: var(--color-text-maxcontrast);\n\t\tmargin-block: calc(3 * var(--default-grid-baseline));\n\t}\n\n\t&__input {\n\t\tmargin-block-start: calc(2 * var(--default-grid-baseline));\n\t}\n}\n"],sourceRoot:""}]);const l=r},26201:(e,t,i)=>{"use strict";i.d(t,{A:()=>l});var n=i(71354),s=i.n(n),o=i(76314),r=i.n(o)()(s());r.push([e.id,".vs-container[data-v-49a1883f]{overflow-y:scroll;height:100%}.vs-rows-container[data-v-49a1883f]{box-sizing:border-box;will-change:scroll-position,padding;contain:layout paint style}","",{version:3,sources:["webpack://./apps/files_versions/src/components/VirtualScrolling.vue"],names:[],mappings:"AACA,+BACC,iBAAA,CACA,WAAA,CAGD,oCACC,qBAAA,CACA,mCAAA,CACA,0BAAA",sourcesContent:["\n.vs-container {\n\toverflow-y: scroll;\n\theight: 100%;\n}\n\n.vs-rows-container {\n\tbox-sizing: border-box;\n\twill-change: scroll-position, padding;\n\tcontain: layout paint style;\n}\n"],sourceRoot:""}]);const l=r},42634:()=>{},59169:()=>{},63779:()=>{},77199:()=>{},86833:()=>{},92567:(e,t,i)=>{"use strict";i.d(t,{A:()=>l});var n=i(71354),s=i.n(n),o=i(76314),r=i.n(o)()(s());r.push([e.id,".version[data-v-9427cc62]{display:flex;flex-direction:row}.version__info[data-v-9427cc62]{display:flex;flex-direction:row;align-items:center;gap:.5rem;color:var(--color-main-text);font-weight:500;overflow:hidden}.version__info__label[data-v-9427cc62]{font-weight:700;overflow:hidden;text-overflow:ellipsis;min-width:110px}.version__info__author_name[data-v-9427cc62]{overflow:hidden;text-overflow:ellipsis}.version__info__date[data-v-9427cc62]{overflow:hidden;text-overflow:ellipsis}.version__info__subline[data-v-9427cc62]{color:var(--color-text-maxcontrast)}.version__image[data-v-9427cc62]{width:3rem;height:3rem;border:1px solid var(--color-border);border-radius:var(--border-radius-large);display:flex;justify-content:center;color:var(--color-text-light)}","",{version:3,sources:["webpack://./apps/files_versions/src/components/Version.vue"],names:[],mappings:"AACA,0BACC,YAAA,CACA,kBAAA,CAEA,gCACC,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,SAAA,CACA,4BAAA,CACA,eAAA,CACA,eAAA,CAEA,uCACC,eAAA,CAEA,eAAA,CACA,sBAAA,CACA,eAAA,CAGD,6CACC,eAAA,CACA,sBAAA,CAGD,sCAEC,eAAA,CACA,sBAAA,CAGD,yCACC,mCAAA,CAIF,iCACC,UAAA,CACA,WAAA,CACA,oCAAA,CACA,wCAAA,CAGA,YAAA,CACA,sBAAA,CACA,6BAAA",sourcesContent:["\n.version {\n\tdisplay: flex;\n\tflex-direction: row;\n\n\t&__info {\n\t\tdisplay: flex;\n\t\tflex-direction: row;\n\t\talign-items: center;\n\t\tgap: 0.5rem;\n\t\tcolor: var(--color-main-text);\n\t\tfont-weight: 500;\n\t\toverflow: hidden;\n\n\t\t&__label {\n\t\t\tfont-weight: 700;\n\t\t\t// Fix overflow on narrow screens\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\tmin-width: 110px;\n\t\t}\n\n\t\t&__author_name {\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t}\n\n\t\t&__date {\n\t\t\t// Fix overflow on narrow screens\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t}\n\n\t\t&__subline {\n\t\t\tcolor: var(--color-text-maxcontrast)\n\t\t}\n\t}\n\n\t&__image {\n\t\twidth: 3rem;\n\t\theight: 3rem;\n\t\tborder: 1px solid var(--color-border);\n\t\tborder-radius: var(--border-radius-large);\n\n\t\t// Useful to display no preview icon.\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\tcolor: var(--color-text-light);\n\t}\n}\n"],sourceRoot:""}]);const l=r},95327:(e,i,n)=>{"use strict";var s=n(85471),o=n(53334),r=n(43627),l=n.n(r),a=n(85168),c=n(61338),d=n(21777),u=n(59892),v=n(16406),f=n(63814),h=n(71225),p=n(51651),m=n(60669);const A=(0,f.dC)("dav"),b=(0,m.UU)(A),_=e=>{b.setHeaders({"X-Requested-With":"XMLHttpRequest",requesttoken:e??""})};(0,d.zo)(_),_((0,d.do)());const g=b,C=(0,n(35947).YK)().setApp("files_version").detectUser().build();var w=n(35810),y=n(32981),V=n(65043);const x={name:"BackupRestoreIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var k=n(14486);const L=(0,k.A)(x,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon backup-restore-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,3A9,9 0 0,0 3,12H0L4,16L8,12H5A7,7 0 0,1 12,5A7,7 0 0,1 19,12A7,7 0 0,1 12,19C10.5,19 9.09,18.5 7.94,17.7L6.5,19.14C8.04,20.3 9.94,21 12,21A9,9 0 0,0 21,12A9,9 0 0,0 12,3M14,12A2,2 0 0,0 12,10A2,2 0 0,0 10,12A2,2 0 0,0 12,14A2,2 0 0,0 14,12Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var I=n(79759);const S={name:"DownloadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},H=(0,k.A)(S,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon download-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,20H19V18H5M19,9H15V3H9V9H5L12,16L19,9Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,T={name:"FileCompareIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},D=(0,k.A)(T,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon file-compare-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,18H6V16H10V18M10,14H6V12H10V14M10,1V2H6C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H10V23H12V1H10M20,8V20C20,21.11 19.11,22 18,22H14V20H18V11H14V9H18.5L14,4.5V2L20,8M16,14H14V12H16V14M16,18H14V16H16V18Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,B={name:"ImageOffOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},$=(0,k.A)(B,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon image-off-outline-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:"M22 20.7L3.3 2L2 3.3L3 4.3V19C3 20.1 3.9 21 5 21H19.7L20.7 22L22 20.7M5 19V6.3L12.6 13.9L11.1 15.8L9 13.1L6 17H15.7L17.7 19H5M8.8 5L6.8 3H19C20.1 3 21 3.9 21 5V17.2L19 15.2V5H8.8"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var z=n(2413),E=n(57505),N=n(72298),O=n(41944),P=n(4604),M=n(1522),R=n(59656);const F=(e,t)=>!!(e&t),U=(0,s.pM)({name:"Version",components:{NcActionLink:N.A,NcActionButton:E.A,NcAvatar:O.A,NcDateTime:P.A,NcListItem:M.A,BackupRestore:L,Download:H,FileCompare:D,Pencil:z.A,Delete:I.A,ImageOffOutline:$},directives:{tooltip:R.A},props:{version:{type:Object,required:!0},fileInfo:{type:Object,required:!0},isCurrent:{type:Boolean,default:!1},isFirstVersion:{type:Boolean,default:!1},loadPreview:{type:Boolean,default:!1},canView:{type:Boolean,default:!1},canCompare:{type:Boolean,default:!1}},emits:["click","compare","restore","delete","label-update-request"],data:()=>({previewLoaded:!1,previewErrored:!1,capabilities:(0,y.C)("core","capabilities",{files:{version_labeling:!1,version_deletion:!1}}),versionAuthor:""}),computed:{humanReadableSize(){return(0,w.v7)(this.version.size)},versionLabel(){const e=this.version.label??"";return this.isCurrent?""===e?(0,o.t)("files_versions","Current version"):`${e} (${(0,o.t)("files_versions","Current version")})`:this.isFirstVersion&&""===e?(0,o.t)("files_versions","Initial version"):e},downloadURL(){return this.isCurrent?(0,f.aU)()+(0,h.HS)("/remote.php/webdav",this.fileInfo.path,this.fileInfo.name):(0,f.aU)()+this.version.url},enableLabeling(){return!0===this.capabilities.files.version_labeling},enableDeletion(){return!0===this.capabilities.files.version_deletion},hasDeletePermissions(){return F(this.fileInfo.permissions,w.aX.DELETE)},hasUpdatePermissions(){return F(this.fileInfo.permissions,w.aX.UPDATE)},isDownloadable(){if(!(this.fileInfo.permissions&w.aX.READ))return!1;if("shared"===this.fileInfo.mountType){const e=this.fileInfo.shareAttributes.find((e=>"permissions"===e.scope&&"download"===e.key))||{};if(!1===e?.value)return!1}return!0}},created(){this.fetchDisplayName()},methods:{labelUpdate(){this.$emit("label-update-request")},restoreVersion(){this.$emit("restore",this.version)},async deleteVersion(){await this.$nextTick(),await this.$nextTick(),this.$emit("delete",this.version)},async fetchDisplayName(){if(this.versionAuthor=null,this.version.author)if(this.version.author===(0,d.HW)()?.uid)this.versionAuthor=(0,o.t)("files_versions","You");else try{const{data:e}=await V.Ay.post((0,f.Jv)("/displaynames"),{users:[this.version.author]});this.versionAuthor=e.users[this.version.author]}catch(e){C.warn("Could not load user display name",{error:e})}},click(){this.canView?this.$emit("click",{version:this.version}):window.location.href=this.downloadURL},compareVersion(){if(!this.canView)throw new Error("Cannot compare version of this file");this.$emit("compare",{version:this.version})},t:o.t}});var j=n(85072),q=n.n(j),W=n(97825),K=n.n(W),G=n(77659),Y=n.n(G),X=n(55056),Z=n.n(X),J=n(10540),Q=n.n(J),ee=n(41113),te=n.n(ee),ie=n(92567),ne={};ne.styleTagTransform=te(),ne.setAttributes=Z(),ne.insert=Y().bind(null,"head"),ne.domAPI=K(),ne.insertStyleElement=Q(),q()(ie.A,ne),ie.A&&ie.A.locals&&ie.A.locals;const se=(0,k.A)(U,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcListItem",{staticClass:"version",attrs:{"force-display-actions":!0,"data-files-versions-version":e.version.fileVersion},on:{click:e.click},scopedSlots:e._u([{key:"icon",fn:function(){return[e.loadPreview||e.previewLoaded?e.version.previewUrl&&!e.previewErrored?t("img",{staticClass:"version__image",attrs:{src:e.version.previewUrl,alt:"",decoding:"async",fetchpriority:"low",loading:"lazy"},on:{load:function(t){e.previewLoaded=!0},error:function(t){e.previewErrored=!0}}}):t("div",{staticClass:"version__image"},[t("ImageOffOutline",{attrs:{size:20}})],1):t("div",{staticClass:"version__image"})]},proxy:!0},{key:"name",fn:function(){return[t("div",{staticClass:"version__info"},[e.versionLabel?t("div",{staticClass:"version__info__label",attrs:{"data-cy-files-version-label":"",title:e.versionLabel}},[e._v("\n\t\t\t\t"+e._s(e.versionLabel)+"\n\t\t\t")]):e._e(),e._v(" "),e.versionAuthor?t("div",{staticClass:"version__info",attrs:{"data-cy-files-version-author-name":""}},[e.versionLabel?t("span",[e._v("•")]):e._e(),e._v(" "),t("NcAvatar",{staticClass:"avatar",attrs:{user:e.version.author,size:20,"disable-menu":"","disable-tooltip":"","show-user-status":!1}}),e._v(" "),t("div",{staticClass:"version__info__author_name",attrs:{title:e.versionAuthor}},[e._v("\n\t\t\t\t\t"+e._s(e.versionAuthor)+"\n\t\t\t\t")])],1):e._e()])]},proxy:!0},{key:"subname",fn:function(){return[t("div",{staticClass:"version__info version__info__subline"},[t("NcDateTime",{staticClass:"version__info__date",attrs:{"relative-time":"short",timestamp:e.version.mtime}}),e._v(" "),t("span",[e._v("•")]),e._v(" "),t("span",[e._v(e._s(e.humanReadableSize))])],1)]},proxy:!0},{key:"actions",fn:function(){return[e.enableLabeling&&e.hasUpdatePermissions?t("NcActionButton",{attrs:{"data-cy-files-versions-version-action":"label","close-after-click":!0},on:{click:e.labelUpdate},scopedSlots:e._u([{key:"icon",fn:function(){return[t("Pencil",{attrs:{size:22}})]},proxy:!0}],null,!1,3072546167)},[e._v("\n\t\t\t"+e._s(""===e.version.label?e.t("files_versions","Name this version"):e.t("files_versions","Edit version name"))+"\n\t\t")]):e._e(),e._v(" "),!e.isCurrent&&e.canView&&e.canCompare?t("NcActionButton",{attrs:{"data-cy-files-versions-version-action":"compare","close-after-click":!0},on:{click:e.compareVersion},scopedSlots:e._u([{key:"icon",fn:function(){return[t("FileCompare",{attrs:{size:22}})]},proxy:!0}],null,!1,1958207595)},[e._v("\n\t\t\t"+e._s(e.t("files_versions","Compare to current version"))+"\n\t\t")]):e._e(),e._v(" "),!e.isCurrent&&e.hasUpdatePermissions?t("NcActionButton",{attrs:{"data-cy-files-versions-version-action":"restore","close-after-click":!0},on:{click:e.restoreVersion},scopedSlots:e._u([{key:"icon",fn:function(){return[t("BackupRestore",{attrs:{size:22}})]},proxy:!0}],null,!1,2239038444)},[e._v("\n\t\t\t"+e._s(e.t("files_versions","Restore version"))+"\n\t\t")]):e._e(),e._v(" "),e.isDownloadable?t("NcActionLink",{attrs:{"data-cy-files-versions-version-action":"download",href:e.downloadURL,"close-after-click":!0,download:e.downloadURL},scopedSlots:e._u([{key:"icon",fn:function(){return[t("Download",{attrs:{size:22}})]},proxy:!0}],null,!1,927269758)},[e._v("\n\t\t\t"+e._s(e.t("files_versions","Download version"))+"\n\t\t")]):e._e(),e._v(" "),!e.isCurrent&&e.enableDeletion&&e.hasDeletePermissions?t("NcActionButton",{attrs:{"data-cy-files-versions-version-action":"delete","close-after-click":!0},on:{click:e.deleteVersion},scopedSlots:e._u([{key:"icon",fn:function(){return[t("Delete",{attrs:{size:22}})]},proxy:!0}],null,!1,2429175571)},[e._v("\n\t\t\t"+e._s(e.t("files_versions","Delete version"))+"\n\t\t")]):e._e()]},proxy:!0}])})}),[],!1,null,"9427cc62",null).exports,oe=(0,s.pM)({name:"VirtualScrolling",props:{sections:{type:Array,required:!0},containerElement:{type:HTMLElement,default:null},useWindow:{type:Boolean,default:!1},headerHeight:{type:Number,default:75},renderDistance:{type:Number,default:.5},bottomBufferRatio:{type:Number,default:2},scrollToKey:{type:String,default:""}},data:()=>({scrollPosition:0,containerHeight:0,rowsContainerHeight:0,resizeObserver:null}),computed:{visibleSections(){C.debug("[VirtualScrolling] Computing visible section",{sections:this.sections});const e=this.containerHeight,t=this.scrollPosition,i=t+e;let n=0,s=0;const o=this.sections.map((o=>(s+=this.headerHeight,{...o,rows:o.rows.reduce(((o,r)=>{n=s,s+=r.height;let l=0;return si&&(l=(n-i)/e),l>this.renderDistance?o:[...o,{...r,distance:l}]}),[])}))).filter((e=>e.rows.length>0)),r=o.flatMap((e=>{let{rows:t}=e;return t})).flatMap((e=>{let{items:t}=e;return t})),l=this._rowIdToKeyMap;r.forEach((e=>e.key=l[e.id]));const a=r.map((e=>{let{key:t}=e;return t})).filter((e=>void 0!==e)),c=Object.values(l).filter((e=>!a.includes(e)));return r.filter((e=>{let{key:t}=e;return void 0===t})).forEach((e=>e.key=c.pop()??Math.random().toString(36).substr(2))),this._rowIdToKeyMap=r.reduce(((e,t)=>{let{id:i,key:n}=t;return{...e,[`${i}`]:n}}),{}),o},totalHeight(){return this.sections.map((e=>this.headerHeight+e.height)).reduce(((e,t)=>e+t),0)+0},paddingTop(){if(0===this.visibleSections.length)return 0;let e=0;for(const t of this.sections)if(t.key===this.visibleSections[0].rows[0].sectionKey){for(const i of t.rows){if(i.key===this.visibleSections[0].rows[0].key)return e;e+=i.height}e+=this.headerHeight}else e+=this.headerHeight+t.height;return e},rowsContainerStyle(){return{height:`${this.totalHeight}px`,paddingTop:`${this.paddingTop}px`}},isNearBottom(){const e=this.containerHeight*this.bottomBufferRatio;return this.scrollPosition+this.containerHeight>=this.totalHeight-e},container(){return C.debug("[VirtualScrolling] Computing container"),null!==this.containerElement?this.containerElement:this.useWindow?window:this.$refs.container}},watch:{isNearBottom(e){C.debug("[VirtualScrolling] isNearBottom changed",{value:e}),e&&this.$emit("need-content")},visibleSections(){this.isNearBottom&&this.$emit("need-content")},scrollToKey(e){let t=0;for(const i of this.sections){if(i.key===e)break;t+=this.headerHeight+i.height}C.debug("[VirtualScrolling] Scrolling to",{currentRowTopDistanceFromTop:t}),this.container.scrollTo({top:t,behavior:"smooth"})}},beforeCreate(){this._rowIdToKeyMap={}},mounted(){this.resizeObserver=new ResizeObserver((e=>{for(const t of e){const e=t.contentRect;t.target===this.container&&(this.containerHeight=e.height),t.target.classList.contains("vs-rows-container")&&(this.rowsContainerHeight=e.height)}})),this.useWindow?(window.addEventListener("resize",this.updateContainerSize,{passive:!0}),this.containerHeight=window.innerHeight):this.resizeObserver.observe(this.container),this.resizeObserver.observe(this.$refs.rowsContainer),this.container.addEventListener("scroll",this.updateScrollPosition,{passive:!0})},beforeDestroy(){this.useWindow&&window.removeEventListener("resize",this.updateContainerSize),this.resizeObserver?.disconnect(),this.container.removeEventListener("scroll",this.updateScrollPosition)},methods:{updateScrollPosition(){this._onScrollHandle??=requestAnimationFrame((()=>{this._onScrollHandle=null,this.useWindow?this.scrollPosition=this.container.scrollY:this.scrollPosition=this.container.scrollTop}))},updateContainerSize(){this.containerHeight=window.innerHeight}}});var re=n(26201),le={};le.styleTagTransform=te(),le.setAttributes=Z(),le.insert=Y().bind(null,"head"),le.domAPI=K(),le.insertStyleElement=Q(),q()(re.A,le),re.A&&re.A.locals&&re.A.locals;const ae=(0,k.A)(oe,(function(){var e=this,t=e._self._c;return e._self._setupProxy,e.useWindow||null!==e.containerElement?t("div",{ref:"rowsContainer",staticClass:"vs-rows-container",style:e.rowsContainerStyle},[e._t("default",null,{visibleSections:e.visibleSections}),e._v(" "),e._t("loader")],2):t("div",{ref:"container",staticClass:"vs-container"},[t("div",{ref:"rowsContainer",staticClass:"vs-rows-container",style:e.rowsContainerStyle},[e._t("default",null,{visibleSections:e.visibleSections}),e._v(" "),e._t("loader")],2)])}),[],!1,null,"49a1883f",null).exports;var ce=n(65659),de=n(94219),ue=n(82182);const ve=(0,s.pM)({name:"VersionLabelDialog",components:{NcDialog:de.A,NcTextField:ue.A},props:{open:{type:Boolean,default:!1},versionLabel:{type:String,default:""}},data:()=>({editedVersionLabel:""}),computed:{dialogButtons(){const e=[];return""===this.versionLabel.trim()?e.push({label:(0,o.t)("files_versions","Cancel")}):e.push({label:(0,o.t)("files_versions","Remove version name"),type:"error",nativeType:"reset",callback:()=>{this.setVersionLabel("")}}),[...e,{label:(0,o.t)("files_versions","Save version name"),type:"primary",nativeType:"submit",icon:ce}]}},watch:{versionLabel:{immediate:!0,handler(e){this.editedVersionLabel=e??""}},open:{immediate:!0,handler(e){e&&this.$nextTick((()=>this.$refs.labelInput.focus())),this.editedVersionLabel=this.versionLabel}}},methods:{setVersionLabel(e){this.$emit("label-update",e)},t:o.t}});var fe=n(14085),he={};he.styleTagTransform=te(),he.setAttributes=Z(),he.insert=Y().bind(null,"head"),he.domAPI=K(),he.insertStyleElement=Q(),q()(fe.A,he),fe.A&&fe.A.locals&&fe.A.locals;const pe={name:"VersionTab",components:{Version:se,VirtualScrolling:ae,VersionLabelDialog:(0,k.A)(ve,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcDialog",{attrs:{buttons:e.dialogButtons,"content-classes":"version-label-modal","is-form":"",open:e.open,size:"normal",name:e.t("files_versions","Name this version")},on:{"update:open":function(t){return e.$emit("update:open",t)},submit:function(t){return e.setVersionLabel(e.editedVersionLabel)}}},[t("NcTextField",{ref:"labelInput",staticClass:"version-label-modal__input",attrs:{label:e.t("files_versions","Version name"),placeholder:e.t("files_versions","Version name"),value:e.editedVersionLabel},on:{"update:value":function(t){e.editedVersionLabel=t}}}),e._v(" "),t("p",{staticClass:"version-label-modal__info"},[e._v("\n\t\t"+e._s(e.t("files_versions","Named versions are persisted, and excluded from automatic cleanups when your storage quota is full."))+"\n\t")])],1)}),[],!1,null,"6e140e12",null).exports,NcLoadingIcon:u.A},mixins:[v.A],data:()=>({fileInfo:null,isActive:!1,versions:[],loading:!1,showVersionLabelForm:!1,editedVersion:null}),computed:{sections(){return[{key:"versions",rows:this.orderedVersions.map((e=>({key:e.mtime,height:68,sectionKey:"versions",items:[e]}))),height:68*this.orderedVersions.length}]},orderedVersions(){return[...this.versions].sort(((e,t)=>e.mtime===this.fileInfo.mtime?-1:t.mtime===this.fileInfo.mtime?1:t.mtime-e.mtime))},initialVersionMtime(){return this.versions.map((e=>e.mtime)).reduce(((e,t)=>Math.min(e,t)))},viewerFileInfo(){let e="";return 1&this.fileInfo.permissions&&(e+="R"),2&this.fileInfo.permissions&&(e+="W"),8&this.fileInfo.permissions&&(e+="D"),{...this.fileInfo,mime:this.fileInfo.mimetype,basename:this.fileInfo.name,filename:this.fileInfo.path+"/"+this.fileInfo.name,permissions:e,fileid:this.fileInfo.id}},canView(){return window.OCA.Viewer?.mimetypesCompare?.includes(this.fileInfo.mimetype)},canCompare(){return!this.isMobile}},mounted(){(0,c.B1)("files_versions:restore:restored",this.fetchVersions)},beforeUnmount(){(0,c.al)("files_versions:restore:restored",this.fetchVersions)},methods:{async update(e){this.fileInfo=e,this.resetState(),this.fetchVersions()},async setIsActive(e){this.isActive=e},async fetchVersions(){try{this.loading=!0,this.versions=await async function(e){const t=`/versions/${(0,d.HW)()?.uid}/versions/${e.id}`;try{return(await g.getDirectoryContents(t,{data:'\n\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n',details:!0})).data.filter((e=>{let{mime:t}=e;return""!==t})).map((t=>function(e,t){const i=1e3*(0,p.A)(e.lastmod).unix();let n="";return n=i===t.mtime?(0,f.Jv)("/core/preview?fileId={fileId}&c={fileEtag}&x=250&y=250&forceIcon=0&a=0&forceIcon=1&mimeFallback=1",{fileId:t.id,fileEtag:t.etag}):(0,f.Jv)("/apps/files_versions/preview?file={file}&version={fileVersion}&mimeFallback=1",{file:(0,h.HS)(t.path,t.name),fileVersion:e.basename}),{fileId:t.id,label:e.props["version-label"]&&String(e.props["version-label"]),author:e.props["version-author"]??null,filename:e.filename,basename:(0,p.A)(i).format("LLL"),mime:e.mime,etag:`${e.props.getetag}`,size:e.size,type:e.type,mtime:i,permissions:"R",previewUrl:n,url:(0,h.HS)("/remote.php/dav",e.filename),source:(0,f.dC)("dav")+(0,h.O0)(e.filename),fileVersion:e.basename}}(t,e)))}catch(e){throw C.error("Could not fetch version",{exception:e}),e}}(this.fileInfo)}finally{this.loading=!1}},async handleRestore(e){const i=this.fileInfo;this.fileInfo={...this.fileInfo,size:e.size,mtime:e.mtime};const n={preventDefault:!1,fileInfo:this.fileInfo,version:e};if((0,c.Ic)("files_versions:restore:requested",n),!n.preventDefault)try{await async function(e){try{C.debug("Restoring version",{url:e.url}),await g.moveFile(`/versions/${(0,d.HW)()?.uid}/versions/${e.fileId}/${e.fileVersion}`,`/versions/${(0,d.HW)()?.uid}/restore/target`)}catch(e){throw C.error("Could not restore version",{exception:e}),e}}(e),e.label?(0,a.Te)(t("files_versions",`${e.label} restored`)):e.mtime===this.initialVersionMtime?(0,a.Te)(t("files_versions","Initial version restored")):(0,a.Te)(t("files_versions","Version restored")),(0,c.Ic)("files_versions:restore:restored",e)}catch(n){this.fileInfo=i,(0,a.Qg)(t("files_versions","Could not restore version")),(0,c.Ic)("files_versions:restore:failed",e)}},handleLabelUpdateRequest(e){this.showVersionLabelForm=!0,this.editedVersion=e},async handleLabelUpdate(e){const t=this.editedVersion.label;this.editedVersion.label=e,this.showVersionLabelForm=!1;try{await async function(e,t){return await g.customRequest(e.filename,{method:"PROPPATCH",data:`\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t${t}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t`})}(this.editedVersion,e),this.editedVersion=null}catch(e){this.editedVersion.label=t,(0,a.Qg)(this.t("files_versions","Could not set version label")),logger.error("Could not set version label",{exception:e})}},async handleDelete(e){const i=this.versions.indexOf(e);this.versions.splice(i,1);try{await async function(e){await g.deleteFile(e.filename)}(e)}catch(i){this.versions.push(e),(0,a.Qg)(t("files_versions","Could not delete version"))}},resetState(){this.$set(this,"versions",[])},openVersion(e){let{version:t}=e;if(t.mtime===this.fileInfo.mtime)return void OCA.Viewer.open({fileInfo:this.viewerFileInfo});const i=this.versions.map((e=>({...e,filename:e.mtime===this.fileInfo.mtime?l().join("files",(0,d.HW)()?.uid??"",this.fileInfo.path,this.fileInfo.name):e.filename,previewUrl:void 0})));OCA.Viewer.open({fileInfo:i.find((e=>e.source===t.source)),enableSidebar:!1})},compareVersion(e){let{version:t}=e;const i=this.versions.map((e=>({...e,previewUrl:void 0})));OCA.Viewer.compare(this.viewerFileInfo,i.find((e=>e.source===t.source)))}}};var me=n(12482),Ae={};Ae.styleTagTransform=te(),Ae.setAttributes=Z(),Ae.insert=Y().bind(null,"head"),Ae.domAPI=K(),Ae.insertStyleElement=Q(),q()(me.A,Ae),me.A&&me.A.locals&&me.A.locals;const be=(0,k.A)(pe,(function(){var e=this,t=e._self._c;return t("div",{staticClass:"versions-tab__container"},[t("VirtualScrolling",{attrs:{sections:e.sections,"header-height":0},scopedSlots:e._u([{key:"default",fn:function(i){let{visibleSections:n}=i;return[t("ul",{attrs:{"aria-label":e.t("files_versions","File versions"),"data-files-versions-versions-list":""}},[1===n.length?e._l(n[0].rows,(function(i){return t("Version",{key:i.items[0].mtime,attrs:{"can-view":e.canView,"can-compare":e.canCompare,"load-preview":e.isActive,version:i.items[0],"file-info":e.fileInfo,"is-current":i.items[0].mtime===e.fileInfo.mtime,"is-first-version":i.items[0].mtime===e.initialVersionMtime},on:{click:e.openVersion,compare:e.compareVersion,restore:e.handleRestore,"label-update-request":function(t){return e.handleLabelUpdateRequest(i.items[0])},delete:e.handleDelete}})})):e._e()],2),e._v(" "),e.loading?t("NcLoadingIcon",{staticClass:"files-list-viewer__loader",attrs:{slot:"loader"},slot:"loader"}):e._e()]}}])}),e._v(" "),e.editedVersion?t("VersionLabelDialog",{attrs:{open:e.showVersionLabelForm,"version-label":e.editedVersion.label},on:{"update:open":function(t){e.showVersionLabelForm=t},"label-update":e.handleLabelUpdate}}):e._e()],1)}),[],!1,null,null,null).exports;var _e=n(80284);s.Ay.prototype.t=o.Tl,s.Ay.prototype.n=o.zw,s.Ay.use(_e.Ay);const ge=s.Ay.extend(be);let Ce=null;window.addEventListener("DOMContentLoaded",(function(){void 0!==OCA.Files?.Sidebar&&OCA.Files.Sidebar.registerTab(new OCA.Files.Sidebar.Tab({id:"version_vue",name:(0,o.Tl)("files_versions","Versions"),iconSvg:'',async mount(e,t,i){Ce&&Ce.$destroy(),Ce=new ge({parent:i}),await Ce.update(t),Ce.$mount(e)},update(e){Ce.update(e)},setIsActive(e){Ce&&Ce.setIsActive(e)},destroy(){Ce.$destroy(),Ce=null},enabled:e=>!(e?.isDirectory()??1)}))}))}},o={};function r(e){var t=o[e];if(void 0!==t)return t.exports;var i=o[e]={id:e,loaded:!1,exports:{}};return s[e].call(i.exports,i,i.exports,r),i.loaded=!0,i.exports}r.m=s,e=[],r.O=(t,i,n,s)=>{if(!i){var o=1/0;for(d=0;d=s)&&Object.keys(r.O).every((e=>r.O[e](i[a])))?i.splice(a--,1):(l=!1,s0&&e[d-1][2]>s;d--)e[d]=e[d-1];e[d]=[i,n,s]},r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var i in t)r.o(t,i)&&!r.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((t,i)=>(r.f[i](e,t),t)),[])),r.u=e=>e+"-"+e+".js?v="+{640:"19a5506f19df079e3812",2983:"9bb326f8af72391af0ec",5771:"a4e2a98efcfb7393c5bd"}[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),i={},n="nextcloud:",r.l=(e,t,s,o)=>{if(i[e])i[e].push(t);else{var l,a;if(void 0!==s)for(var c=document.getElementsByTagName("script"),d=0;d{l.onerror=l.onload=null,clearTimeout(f);var s=i[e];if(delete i[e],l.parentNode&&l.parentNode.removeChild(l),s&&s.forEach((e=>e(n))),t)return t(n)},f=setTimeout(v.bind(null,void 0,{type:"timeout",target:l}),12e4);l.onerror=v.bind(null,l.onerror),l.onload=v.bind(null,l.onload),a&&document.head.appendChild(l)}},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=2250,(()=>{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 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(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),r.p=e})(),(()=>{r.b=document.baseURI||self.location.href;var e={2250:0};r.f.j=(t,i)=>{var n=r.o(e,t)?e[t]:void 0;if(0!==n)if(n)i.push(n[2]);else{var s=new Promise(((i,s)=>n=e[t]=[i,s]));i.push(n[2]=s);var o=r.p+r.u(t),l=new Error;r.l(o,(i=>{if(r.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var s=i&&("load"===i.type?"missing":i.type),o=i&&i.target&&i.target.src;l.message="Loading chunk "+t+" failed.\n("+s+": "+o+")",l.name="ChunkLoadError",l.type=s,l.request=o,n[1](l)}}),"chunk-"+t,t)}},r.O.j=t=>0===e[t];var t=(t,i)=>{var n,s,o=i[0],l=i[1],a=i[2],c=0;if(o.some((t=>0!==e[t]))){for(n in l)r.o(l,n)&&(r.m[n]=l[n]);if(a)var d=a(r)}for(t&&t(i);cr(95327)));l=r.O(l)})(); -//# sourceMappingURL=files_versions-files_versions.js.map?v=ea239d6112a4fb0261e9 \ No newline at end of file +(()=>{var e,i,n,s={3494:(e,i,n)=>{"use strict";var s=n(85471),o=n(53334),r=n(43627),a=n.n(r),l=n(85168),c=n(61338),d=n(21777),u=n(59892),f=n(16406),v=n(63814),p=n(71225),h=n(51651),m=n(65043),A=n(60669);const b=(0,v.dC)("dav"),_=(0,A.UU)(b),g=e=>{_.setHeaders({"X-Requested-With":"XMLHttpRequest",requesttoken:e??""})};(0,d.zo)(g),g((0,d.do)());const C=_,w=(0,n(35947).YK)().setApp("files_version").detectUser().build();var y=n(35810),V=n(32981);const x={name:"BackupRestoreIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var k=n(14486);const L=(0,k.A)(x,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon backup-restore-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,3A9,9 0 0,0 3,12H0L4,16L8,12H5A7,7 0 0,1 12,5A7,7 0 0,1 19,12A7,7 0 0,1 12,19C10.5,19 9.09,18.5 7.94,17.7L6.5,19.14C8.04,20.3 9.94,21 12,21A9,9 0 0,0 21,12A9,9 0 0,0 12,3M14,12A2,2 0 0,0 12,10A2,2 0 0,0 10,12A2,2 0 0,0 12,14A2,2 0 0,0 14,12Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var I=n(79759);const S={name:"DownloadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},H=(0,k.A)(S,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon download-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,20H19V18H5M19,9H15V3H9V9H5L12,16L19,9Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,T={name:"FileCompareIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},B=(0,k.A)(T,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon file-compare-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,18H6V16H10V18M10,14H6V12H10V14M10,1V2H6C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H10V23H12V1H10M20,8V20C20,21.11 19.11,22 18,22H14V20H18V11H14V9H18.5L14,4.5V2L20,8M16,14H14V12H16V14M16,18H14V16H16V18Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,D={name:"ImageOffOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},$=(0,k.A)(D,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon image-off-outline-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:"M22 20.7L3.3 2L2 3.3L3 4.3V19C3 20.1 3.9 21 5 21H19.7L20.7 22L22 20.7M5 19V6.3L12.6 13.9L11.1 15.8L9 13.1L6 17H15.7L17.7 19H5M8.8 5L6.8 3H19C20.1 3 21 3.9 21 5V17.2L19 15.2V5H8.8"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var z=n(2413),N=n(57505),E=n(72298),O=n(41944),P=n(4604),M=n(1522),R=n(59656);const F=(e,t)=>!!(e&t),U=(0,s.pM)({name:"Version",components:{NcActionLink:E.A,NcActionButton:N.A,NcAvatar:O.A,NcDateTime:P.A,NcListItem:M.A,BackupRestore:L,Download:H,FileCompare:B,Pencil:z.A,Delete:I.A,ImageOffOutline:$},directives:{tooltip:R.A},props:{version:{type:Object,required:!0},fileInfo:{type:Object,required:!0},isCurrent:{type:Boolean,default:!1},isFirstVersion:{type:Boolean,default:!1},loadPreview:{type:Boolean,default:!1},canView:{type:Boolean,default:!1},canCompare:{type:Boolean,default:!1}},emits:["click","compare","restore","delete","label-update-request"],data:()=>({previewLoaded:!1,previewErrored:!1,capabilities:(0,V.C)("core","capabilities",{files:{version_labeling:!1,version_deletion:!1}})}),computed:{humanReadableSize(){return(0,y.v7)(this.version.size)},versionLabel(){const e=this.version.label??"";return this.isCurrent?""===e?(0,o.t)("files_versions","Current version"):`${e} (${(0,o.t)("files_versions","Current version")})`:this.isFirstVersion&&""===e?(0,o.t)("files_versions","Initial version"):e},versionAuthor(){return this.version.author&&this.version.authorName?this.version.author===(0,d.HW)()?.uid?(0,o.t)("files_versions","You"):this.version.authorName??this.version.author:""},downloadURL(){return this.isCurrent?(0,v.aU)()+(0,p.HS)("/remote.php/webdav",this.fileInfo.path,this.fileInfo.name):(0,v.aU)()+this.version.url},enableLabeling(){return!0===this.capabilities.files.version_labeling},enableDeletion(){return!0===this.capabilities.files.version_deletion},hasDeletePermissions(){return F(this.fileInfo.permissions,y.aX.DELETE)},hasUpdatePermissions(){return F(this.fileInfo.permissions,y.aX.UPDATE)},isDownloadable(){if(!(this.fileInfo.permissions&y.aX.READ))return!1;if("shared"===this.fileInfo.mountType){const e=this.fileInfo.shareAttributes.find((e=>"permissions"===e.scope&&"download"===e.key))||{};if(!1===e?.value)return!1}return!0}},created(){this.fetchDisplayName()},methods:{labelUpdate(){this.$emit("label-update-request")},restoreVersion(){this.$emit("restore",this.version)},async deleteVersion(){await this.$nextTick(),await this.$nextTick(),this.$emit("delete",this.version)},click(){this.canView?this.$emit("click",{version:this.version}):window.location.href=this.downloadURL},compareVersion(){if(!this.canView)throw new Error("Cannot compare version of this file");this.$emit("compare",{version:this.version})},t:o.t}});var j=n(85072),q=n.n(j),W=n(97825),K=n.n(W),G=n(77659),Y=n.n(G),X=n(55056),Z=n.n(X),J=n(10540),Q=n.n(J),ee=n(41113),te=n.n(ee),ie=n(78700),ne={};ne.styleTagTransform=te(),ne.setAttributes=Z(),ne.insert=Y().bind(null,"head"),ne.domAPI=K(),ne.insertStyleElement=Q(),q()(ie.A,ne),ie.A&&ie.A.locals&&ie.A.locals;const se=(0,k.A)(U,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcListItem",{staticClass:"version",attrs:{"force-display-actions":!0,"data-files-versions-version":e.version.fileVersion},on:{click:e.click},scopedSlots:e._u([{key:"icon",fn:function(){return[e.loadPreview||e.previewLoaded?e.version.previewUrl&&!e.previewErrored?t("img",{staticClass:"version__image",attrs:{src:e.version.previewUrl,alt:"",decoding:"async",fetchpriority:"low",loading:"lazy"},on:{load:function(t){e.previewLoaded=!0},error:function(t){e.previewErrored=!0}}}):t("div",{staticClass:"version__image"},[t("ImageOffOutline",{attrs:{size:20}})],1):t("div",{staticClass:"version__image"})]},proxy:!0},{key:"name",fn:function(){return[t("div",{staticClass:"version__info"},[e.versionLabel?t("div",{staticClass:"version__info__label",attrs:{"data-cy-files-version-label":"",title:e.versionLabel}},[e._v("\n\t\t\t\t"+e._s(e.versionLabel)+"\n\t\t\t")]):e._e(),e._v(" "),e.versionAuthor?t("div",{staticClass:"version__info",attrs:{"data-cy-files-version-author-name":""}},[e.versionLabel?t("span",[e._v("•")]):e._e(),e._v(" "),t("NcAvatar",{staticClass:"avatar",attrs:{user:e.version.author,size:20,"disable-menu":"","disable-tooltip":"","show-user-status":!1}}),e._v(" "),t("div",{staticClass:"version__info__author_name",attrs:{title:e.versionAuthor}},[e._v("\n\t\t\t\t\t"+e._s(e.versionAuthor)+"\n\t\t\t\t")])],1):e._e()])]},proxy:!0},{key:"subname",fn:function(){return[t("div",{staticClass:"version__info version__info__subline"},[t("NcDateTime",{staticClass:"version__info__date",attrs:{"relative-time":"short",timestamp:e.version.mtime}}),e._v(" "),t("span",[e._v("•")]),e._v(" "),t("span",[e._v(e._s(e.humanReadableSize))])],1)]},proxy:!0},{key:"actions",fn:function(){return[e.enableLabeling&&e.hasUpdatePermissions?t("NcActionButton",{attrs:{"data-cy-files-versions-version-action":"label","close-after-click":!0},on:{click:e.labelUpdate},scopedSlots:e._u([{key:"icon",fn:function(){return[t("Pencil",{attrs:{size:22}})]},proxy:!0}],null,!1,3072546167)},[e._v("\n\t\t\t"+e._s(""===e.version.label?e.t("files_versions","Name this version"):e.t("files_versions","Edit version name"))+"\n\t\t")]):e._e(),e._v(" "),!e.isCurrent&&e.canView&&e.canCompare?t("NcActionButton",{attrs:{"data-cy-files-versions-version-action":"compare","close-after-click":!0},on:{click:e.compareVersion},scopedSlots:e._u([{key:"icon",fn:function(){return[t("FileCompare",{attrs:{size:22}})]},proxy:!0}],null,!1,1958207595)},[e._v("\n\t\t\t"+e._s(e.t("files_versions","Compare to current version"))+"\n\t\t")]):e._e(),e._v(" "),!e.isCurrent&&e.hasUpdatePermissions?t("NcActionButton",{attrs:{"data-cy-files-versions-version-action":"restore","close-after-click":!0},on:{click:e.restoreVersion},scopedSlots:e._u([{key:"icon",fn:function(){return[t("BackupRestore",{attrs:{size:22}})]},proxy:!0}],null,!1,2239038444)},[e._v("\n\t\t\t"+e._s(e.t("files_versions","Restore version"))+"\n\t\t")]):e._e(),e._v(" "),e.isDownloadable?t("NcActionLink",{attrs:{"data-cy-files-versions-version-action":"download",href:e.downloadURL,"close-after-click":!0,download:e.downloadURL},scopedSlots:e._u([{key:"icon",fn:function(){return[t("Download",{attrs:{size:22}})]},proxy:!0}],null,!1,927269758)},[e._v("\n\t\t\t"+e._s(e.t("files_versions","Download version"))+"\n\t\t")]):e._e(),e._v(" "),!e.isCurrent&&e.enableDeletion&&e.hasDeletePermissions?t("NcActionButton",{attrs:{"data-cy-files-versions-version-action":"delete","close-after-click":!0},on:{click:e.deleteVersion},scopedSlots:e._u([{key:"icon",fn:function(){return[t("Delete",{attrs:{size:22}})]},proxy:!0}],null,!1,2429175571)},[e._v("\n\t\t\t"+e._s(e.t("files_versions","Delete version"))+"\n\t\t")]):e._e()]},proxy:!0}])})}),[],!1,null,"1f672090",null).exports,oe=(0,s.pM)({name:"VirtualScrolling",props:{sections:{type:Array,required:!0},containerElement:{type:HTMLElement,default:null},useWindow:{type:Boolean,default:!1},headerHeight:{type:Number,default:75},renderDistance:{type:Number,default:.5},bottomBufferRatio:{type:Number,default:2},scrollToKey:{type:String,default:""}},data:()=>({scrollPosition:0,containerHeight:0,rowsContainerHeight:0,resizeObserver:null}),computed:{visibleSections(){w.debug("[VirtualScrolling] Computing visible section",{sections:this.sections});const e=this.containerHeight,t=this.scrollPosition,i=t+e;let n=0,s=0;const o=this.sections.map((o=>(s+=this.headerHeight,{...o,rows:o.rows.reduce(((o,r)=>{n=s,s+=r.height;let a=0;return si&&(a=(n-i)/e),a>this.renderDistance?o:[...o,{...r,distance:a}]}),[])}))).filter((e=>e.rows.length>0)),r=o.flatMap((e=>{let{rows:t}=e;return t})).flatMap((e=>{let{items:t}=e;return t})),a=this._rowIdToKeyMap;r.forEach((e=>e.key=a[e.id]));const l=r.map((e=>{let{key:t}=e;return t})).filter((e=>void 0!==e)),c=Object.values(a).filter((e=>!l.includes(e)));return r.filter((e=>{let{key:t}=e;return void 0===t})).forEach((e=>e.key=c.pop()??Math.random().toString(36).substr(2))),this._rowIdToKeyMap=r.reduce(((e,t)=>{let{id:i,key:n}=t;return{...e,[`${i}`]:n}}),{}),o},totalHeight(){return this.sections.map((e=>this.headerHeight+e.height)).reduce(((e,t)=>e+t),0)+0},paddingTop(){if(0===this.visibleSections.length)return 0;let e=0;for(const t of this.sections)if(t.key===this.visibleSections[0].rows[0].sectionKey){for(const i of t.rows){if(i.key===this.visibleSections[0].rows[0].key)return e;e+=i.height}e+=this.headerHeight}else e+=this.headerHeight+t.height;return e},rowsContainerStyle(){return{height:`${this.totalHeight}px`,paddingTop:`${this.paddingTop}px`}},isNearBottom(){const e=this.containerHeight*this.bottomBufferRatio;return this.scrollPosition+this.containerHeight>=this.totalHeight-e},container(){return w.debug("[VirtualScrolling] Computing container"),null!==this.containerElement?this.containerElement:this.useWindow?window:this.$refs.container}},watch:{isNearBottom(e){w.debug("[VirtualScrolling] isNearBottom changed",{value:e}),e&&this.$emit("need-content")},visibleSections(){this.isNearBottom&&this.$emit("need-content")},scrollToKey(e){let t=0;for(const i of this.sections){if(i.key===e)break;t+=this.headerHeight+i.height}w.debug("[VirtualScrolling] Scrolling to",{currentRowTopDistanceFromTop:t}),this.container.scrollTo({top:t,behavior:"smooth"})}},beforeCreate(){this._rowIdToKeyMap={}},mounted(){this.resizeObserver=new ResizeObserver((e=>{for(const t of e){const e=t.contentRect;t.target===this.container&&(this.containerHeight=e.height),t.target.classList.contains("vs-rows-container")&&(this.rowsContainerHeight=e.height)}})),this.useWindow?(window.addEventListener("resize",this.updateContainerSize,{passive:!0}),this.containerHeight=window.innerHeight):this.resizeObserver.observe(this.container),this.resizeObserver.observe(this.$refs.rowsContainer),this.container.addEventListener("scroll",this.updateScrollPosition,{passive:!0})},beforeDestroy(){this.useWindow&&window.removeEventListener("resize",this.updateContainerSize),this.resizeObserver?.disconnect(),this.container.removeEventListener("scroll",this.updateScrollPosition)},methods:{updateScrollPosition(){this._onScrollHandle??=requestAnimationFrame((()=>{this._onScrollHandle=null,this.useWindow?this.scrollPosition=this.container.scrollY:this.scrollPosition=this.container.scrollTop}))},updateContainerSize(){this.containerHeight=window.innerHeight}}});var re=n(26201),ae={};ae.styleTagTransform=te(),ae.setAttributes=Z(),ae.insert=Y().bind(null,"head"),ae.domAPI=K(),ae.insertStyleElement=Q(),q()(re.A,ae),re.A&&re.A.locals&&re.A.locals;const le=(0,k.A)(oe,(function(){var e=this,t=e._self._c;return e._self._setupProxy,e.useWindow||null!==e.containerElement?t("div",{ref:"rowsContainer",staticClass:"vs-rows-container",style:e.rowsContainerStyle},[e._t("default",null,{visibleSections:e.visibleSections}),e._v(" "),e._t("loader")],2):t("div",{ref:"container",staticClass:"vs-container"},[t("div",{ref:"rowsContainer",staticClass:"vs-rows-container",style:e.rowsContainerStyle},[e._t("default",null,{visibleSections:e.visibleSections}),e._v(" "),e._t("loader")],2)])}),[],!1,null,"49a1883f",null).exports;var ce=n(65659),de=n(94219),ue=n(82182);const fe=(0,s.pM)({name:"VersionLabelDialog",components:{NcDialog:de.A,NcTextField:ue.A},props:{open:{type:Boolean,default:!1},versionLabel:{type:String,default:""}},data:()=>({editedVersionLabel:""}),computed:{dialogButtons(){const e=[];return""===this.versionLabel.trim()?e.push({label:(0,o.t)("files_versions","Cancel")}):e.push({label:(0,o.t)("files_versions","Remove version name"),type:"error",nativeType:"reset",callback:()=>{this.setVersionLabel("")}}),[...e,{label:(0,o.t)("files_versions","Save version name"),type:"primary",nativeType:"submit",icon:ce}]}},watch:{versionLabel:{immediate:!0,handler(e){this.editedVersionLabel=e??""}},open:{immediate:!0,handler(e){e&&this.$nextTick((()=>this.$refs.labelInput.focus())),this.editedVersionLabel=this.versionLabel}}},methods:{setVersionLabel(e){this.$emit("label-update",e)},t:o.t}});var ve=n(14085),pe={};pe.styleTagTransform=te(),pe.setAttributes=Z(),pe.insert=Y().bind(null,"head"),pe.domAPI=K(),pe.insertStyleElement=Q(),q()(ve.A,pe),ve.A&&ve.A.locals&&ve.A.locals;const he={name:"VersionTab",components:{Version:se,VirtualScrolling:le,VersionLabelDialog:(0,k.A)(fe,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcDialog",{attrs:{buttons:e.dialogButtons,"content-classes":"version-label-modal","is-form":"",open:e.open,size:"normal",name:e.t("files_versions","Name this version")},on:{"update:open":function(t){return e.$emit("update:open",t)},submit:function(t){return e.setVersionLabel(e.editedVersionLabel)}}},[t("NcTextField",{ref:"labelInput",staticClass:"version-label-modal__input",attrs:{label:e.t("files_versions","Version name"),placeholder:e.t("files_versions","Version name"),value:e.editedVersionLabel},on:{"update:value":function(t){e.editedVersionLabel=t}}}),e._v(" "),t("p",{staticClass:"version-label-modal__info"},[e._v("\n\t\t"+e._s(e.t("files_versions","Named versions are persisted, and excluded from automatic cleanups when your storage quota is full."))+"\n\t")])],1)}),[],!1,null,"6e140e12",null).exports,NcLoadingIcon:u.A},mixins:[f.A],data:()=>({fileInfo:null,isActive:!1,versions:[],loading:!1,showVersionLabelForm:!1,editedVersion:null}),computed:{sections(){return[{key:"versions",rows:this.orderedVersions.map((e=>({key:e.mtime,height:68,sectionKey:"versions",items:[e]}))),height:68*this.orderedVersions.length}]},orderedVersions(){return[...this.versions].sort(((e,t)=>e.mtime===this.fileInfo.mtime?-1:t.mtime===this.fileInfo.mtime?1:t.mtime-e.mtime))},initialVersionMtime(){return this.versions.map((e=>e.mtime)).reduce(((e,t)=>Math.min(e,t)))},viewerFileInfo(){let e="";return 1&this.fileInfo.permissions&&(e+="R"),2&this.fileInfo.permissions&&(e+="W"),8&this.fileInfo.permissions&&(e+="D"),{...this.fileInfo,mime:this.fileInfo.mimetype,basename:this.fileInfo.name,filename:this.fileInfo.path+"/"+this.fileInfo.name,permissions:e,fileid:this.fileInfo.id}},canView(){return window.OCA.Viewer?.mimetypesCompare?.includes(this.fileInfo.mimetype)},canCompare(){return!this.isMobile}},mounted(){(0,c.B1)("files_versions:restore:restored",this.fetchVersions)},beforeUnmount(){(0,c.al)("files_versions:restore:restored",this.fetchVersions)},methods:{async update(e){this.fileInfo=e,this.resetState(),this.fetchVersions()},async setIsActive(e){this.isActive=e},async fetchVersions(){try{this.loading=!0,this.versions=await async function(e){const t=`/versions/${(0,d.HW)()?.uid}/versions/${e.id}`;try{const i=(await C.getDirectoryContents(t,{data:'\n\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n',details:!0})).data.filter((e=>{let{mime:t}=e;return""!==t})).map((t=>function(e,t){const i=1e3*(0,h.A)(e.lastmod).unix();let n="";return n=i===t.mtime?(0,v.Jv)("/core/preview?fileId={fileId}&c={fileEtag}&x=250&y=250&forceIcon=0&a=0&forceIcon=1&mimeFallback=1",{fileId:t.id,fileEtag:t.etag}):(0,v.Jv)("/apps/files_versions/preview?file={file}&version={fileVersion}&mimeFallback=1",{file:(0,p.HS)(t.path,t.name),fileVersion:e.basename}),{fileId:t.id,label:e.props["version-label"]&&String(e.props["version-label"]),author:e.props["version-author"]??null,authorName:null,filename:e.filename,basename:(0,h.A)(i).format("LLL"),mime:e.mime,etag:`${e.props.getetag}`,size:e.size,type:e.type,mtime:i,permissions:"R",previewUrl:n,url:(0,p.HS)("/remote.php/dav",e.filename),source:(0,v.dC)("dav")+(0,p.O0)(e.filename),fileVersion:e.basename}}(t,e))),n=new Set(i.map((e=>e.author))),s=await m.Ay.post((0,v.Jv)("/displaynames"),{users:[...n]});for(const e of i){const t=s.data.users[e.author];t&&(e.authorName=t)}return i}catch(e){throw w.error("Could not fetch version",{exception:e}),e}}(this.fileInfo)}finally{this.loading=!1}},async handleRestore(e){const i=this.fileInfo;this.fileInfo={...this.fileInfo,size:e.size,mtime:e.mtime};const n={preventDefault:!1,fileInfo:this.fileInfo,version:e};if((0,c.Ic)("files_versions:restore:requested",n),!n.preventDefault)try{await async function(e){try{w.debug("Restoring version",{url:e.url}),await C.moveFile(`/versions/${(0,d.HW)()?.uid}/versions/${e.fileId}/${e.fileVersion}`,`/versions/${(0,d.HW)()?.uid}/restore/target`)}catch(e){throw w.error("Could not restore version",{exception:e}),e}}(e),e.label?(0,l.Te)(t("files_versions",`${e.label} restored`)):e.mtime===this.initialVersionMtime?(0,l.Te)(t("files_versions","Initial version restored")):(0,l.Te)(t("files_versions","Version restored")),(0,c.Ic)("files_versions:restore:restored",e)}catch(n){this.fileInfo=i,(0,l.Qg)(t("files_versions","Could not restore version")),(0,c.Ic)("files_versions:restore:failed",e)}},handleLabelUpdateRequest(e){this.showVersionLabelForm=!0,this.editedVersion=e},async handleLabelUpdate(e){const t=this.editedVersion.label;this.editedVersion.label=e,this.showVersionLabelForm=!1;try{await async function(e,t){return await C.customRequest(e.filename,{method:"PROPPATCH",data:`\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t${t}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t`})}(this.editedVersion,e),this.editedVersion=null}catch(e){this.editedVersion.label=t,(0,l.Qg)(this.t("files_versions","Could not set version label")),logger.error("Could not set version label",{exception:e})}},async handleDelete(e){const i=this.versions.indexOf(e);this.versions.splice(i,1);try{await async function(e){await C.deleteFile(e.filename)}(e)}catch(i){this.versions.push(e),(0,l.Qg)(t("files_versions","Could not delete version"))}},resetState(){this.$set(this,"versions",[])},openVersion(e){let{version:t}=e;if(t.mtime===this.fileInfo.mtime)return void OCA.Viewer.open({fileInfo:this.viewerFileInfo});const i=this.versions.map((e=>({...e,filename:e.mtime===this.fileInfo.mtime?a().join("files",(0,d.HW)()?.uid??"",this.fileInfo.path,this.fileInfo.name):e.filename,previewUrl:void 0})));OCA.Viewer.open({fileInfo:i.find((e=>e.source===t.source)),enableSidebar:!1})},compareVersion(e){let{version:t}=e;const i=this.versions.map((e=>({...e,previewUrl:void 0})));OCA.Viewer.compare(this.viewerFileInfo,i.find((e=>e.source===t.source)))}}};var me=n(12482),Ae={};Ae.styleTagTransform=te(),Ae.setAttributes=Z(),Ae.insert=Y().bind(null,"head"),Ae.domAPI=K(),Ae.insertStyleElement=Q(),q()(me.A,Ae),me.A&&me.A.locals&&me.A.locals;const be=(0,k.A)(he,(function(){var e=this,t=e._self._c;return t("div",{staticClass:"versions-tab__container"},[t("VirtualScrolling",{attrs:{sections:e.sections,"header-height":0},scopedSlots:e._u([{key:"default",fn:function(i){let{visibleSections:n}=i;return[t("ul",{attrs:{"aria-label":e.t("files_versions","File versions"),"data-files-versions-versions-list":""}},[1===n.length?e._l(n[0].rows,(function(i){return t("Version",{key:i.items[0].mtime,attrs:{"can-view":e.canView,"can-compare":e.canCompare,"load-preview":e.isActive,version:i.items[0],"file-info":e.fileInfo,"is-current":i.items[0].mtime===e.fileInfo.mtime,"is-first-version":i.items[0].mtime===e.initialVersionMtime},on:{click:e.openVersion,compare:e.compareVersion,restore:e.handleRestore,"label-update-request":function(t){return e.handleLabelUpdateRequest(i.items[0])},delete:e.handleDelete}})})):e._e()],2),e._v(" "),e.loading?t("NcLoadingIcon",{staticClass:"files-list-viewer__loader",attrs:{slot:"loader"},slot:"loader"}):e._e()]}}])}),e._v(" "),e.editedVersion?t("VersionLabelDialog",{attrs:{open:e.showVersionLabelForm,"version-label":e.editedVersion.label},on:{"update:open":function(t){e.showVersionLabelForm=t},"label-update":e.handleLabelUpdate}}):e._e()],1)}),[],!1,null,null,null).exports;var _e=n(80284);s.Ay.prototype.t=o.Tl,s.Ay.prototype.n=o.zw,s.Ay.use(_e.Ay);const ge=s.Ay.extend(be);let Ce=null;window.addEventListener("DOMContentLoaded",(function(){void 0!==OCA.Files?.Sidebar&&OCA.Files.Sidebar.registerTab(new OCA.Files.Sidebar.Tab({id:"version_vue",name:(0,o.Tl)("files_versions","Versions"),iconSvg:'',async mount(e,t,i){Ce&&Ce.$destroy(),Ce=new ge({parent:i}),await Ce.update(t),Ce.$mount(e)},update(e){Ce.update(e)},setIsActive(e){Ce&&Ce.setIsActive(e)},destroy(){Ce.$destroy(),Ce=null},enabled:e=>!(e?.isDirectory()??1)}))}))},12482:(e,t,i)=>{"use strict";i.d(t,{A:()=>a});var n=i(71354),s=i.n(n),o=i(76314),r=i.n(o)()(s());r.push([e.id,".versions-tab__container{height:100%}","",{version:3,sources:["webpack://./apps/files_versions/src/views/VersionTab.vue"],names:[],mappings:"AACA,yBACC,WAAA",sourcesContent:["\n.versions-tab__container {\n\theight: 100%;\n}\n"],sourceRoot:""}]);const a=r},14085:(e,t,i)=>{"use strict";i.d(t,{A:()=>a});var n=i(71354),s=i.n(n),o=i(76314),r=i.n(o)()(s());r.push([e.id,".version-label-modal__info[data-v-6e140e12]{color:var(--color-text-maxcontrast);margin-block:calc(3*var(--default-grid-baseline))}.version-label-modal__input[data-v-6e140e12]{margin-block-start:calc(2*var(--default-grid-baseline))}","",{version:3,sources:["webpack://./apps/files_versions/src/components/VersionLabelDialog.vue"],names:[],mappings:"AAEC,4CACC,mCAAA,CACA,iDAAA,CAGD,6CACC,uDAAA",sourcesContent:["\n.version-label-modal {\n\t&__info {\n\t\tcolor: var(--color-text-maxcontrast);\n\t\tmargin-block: calc(3 * var(--default-grid-baseline));\n\t}\n\n\t&__input {\n\t\tmargin-block-start: calc(2 * var(--default-grid-baseline));\n\t}\n}\n"],sourceRoot:""}]);const a=r},26201:(e,t,i)=>{"use strict";i.d(t,{A:()=>a});var n=i(71354),s=i.n(n),o=i(76314),r=i.n(o)()(s());r.push([e.id,".vs-container[data-v-49a1883f]{overflow-y:scroll;height:100%}.vs-rows-container[data-v-49a1883f]{box-sizing:border-box;will-change:scroll-position,padding;contain:layout paint style}","",{version:3,sources:["webpack://./apps/files_versions/src/components/VirtualScrolling.vue"],names:[],mappings:"AACA,+BACC,iBAAA,CACA,WAAA,CAGD,oCACC,qBAAA,CACA,mCAAA,CACA,0BAAA",sourcesContent:["\n.vs-container {\n\toverflow-y: scroll;\n\theight: 100%;\n}\n\n.vs-rows-container {\n\tbox-sizing: border-box;\n\twill-change: scroll-position, padding;\n\tcontain: layout paint style;\n}\n"],sourceRoot:""}]);const a=r},42634:()=>{},59169:()=>{},63779:()=>{},77199:()=>{},78700:(e,t,i)=>{"use strict";i.d(t,{A:()=>a});var n=i(71354),s=i.n(n),o=i(76314),r=i.n(o)()(s());r.push([e.id,".version[data-v-1f672090]{display:flex;flex-direction:row}.version__info[data-v-1f672090]{display:flex;flex-direction:row;align-items:center;gap:.5rem;color:var(--color-main-text);font-weight:500;overflow:hidden}.version__info__label[data-v-1f672090]{font-weight:700;overflow:hidden;text-overflow:ellipsis;min-width:110px}.version__info__author_name[data-v-1f672090]{overflow:hidden;text-overflow:ellipsis}.version__info__date[data-v-1f672090]{overflow:hidden;text-overflow:ellipsis}.version__info__subline[data-v-1f672090]{color:var(--color-text-maxcontrast)}.version__image[data-v-1f672090]{width:3rem;height:3rem;border:1px solid var(--color-border);border-radius:var(--border-radius-large);display:flex;justify-content:center;color:var(--color-text-light)}","",{version:3,sources:["webpack://./apps/files_versions/src/components/Version.vue"],names:[],mappings:"AACA,0BACC,YAAA,CACA,kBAAA,CAEA,gCACC,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,SAAA,CACA,4BAAA,CACA,eAAA,CACA,eAAA,CAEA,uCACC,eAAA,CAEA,eAAA,CACA,sBAAA,CACA,eAAA,CAGD,6CACC,eAAA,CACA,sBAAA,CAGD,sCAEC,eAAA,CACA,sBAAA,CAGD,yCACC,mCAAA,CAIF,iCACC,UAAA,CACA,WAAA,CACA,oCAAA,CACA,wCAAA,CAGA,YAAA,CACA,sBAAA,CACA,6BAAA",sourcesContent:["\n.version {\n\tdisplay: flex;\n\tflex-direction: row;\n\n\t&__info {\n\t\tdisplay: flex;\n\t\tflex-direction: row;\n\t\talign-items: center;\n\t\tgap: 0.5rem;\n\t\tcolor: var(--color-main-text);\n\t\tfont-weight: 500;\n\t\toverflow: hidden;\n\n\t\t&__label {\n\t\t\tfont-weight: 700;\n\t\t\t// Fix overflow on narrow screens\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\tmin-width: 110px;\n\t\t}\n\n\t\t&__author_name {\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t}\n\n\t\t&__date {\n\t\t\t// Fix overflow on narrow screens\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t}\n\n\t\t&__subline {\n\t\t\tcolor: var(--color-text-maxcontrast)\n\t\t}\n\t}\n\n\t&__image {\n\t\twidth: 3rem;\n\t\theight: 3rem;\n\t\tborder: 1px solid var(--color-border);\n\t\tborder-radius: var(--border-radius-large);\n\n\t\t// Useful to display no preview icon.\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\tcolor: var(--color-text-light);\n\t}\n}\n"],sourceRoot:""}]);const a=r},86833:()=>{}},o={};function r(e){var t=o[e];if(void 0!==t)return t.exports;var i=o[e]={id:e,loaded:!1,exports:{}};return s[e].call(i.exports,i,i.exports,r),i.loaded=!0,i.exports}r.m=s,e=[],r.O=(t,i,n,s)=>{if(!i){var o=1/0;for(d=0;d=s)&&Object.keys(r.O).every((e=>r.O[e](i[l])))?i.splice(l--,1):(a=!1,s0&&e[d-1][2]>s;d--)e[d]=e[d-1];e[d]=[i,n,s]},r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var i in t)r.o(t,i)&&!r.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((t,i)=>(r.f[i](e,t),t)),[])),r.u=e=>e+"-"+e+".js?v="+{640:"19a5506f19df079e3812",2983:"9bb326f8af72391af0ec",5771:"a4e2a98efcfb7393c5bd"}[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),i={},n="nextcloud:",r.l=(e,t,s,o)=>{if(i[e])i[e].push(t);else{var a,l;if(void 0!==s)for(var c=document.getElementsByTagName("script"),d=0;d{a.onerror=a.onload=null,clearTimeout(v);var s=i[e];if(delete i[e],a.parentNode&&a.parentNode.removeChild(a),s&&s.forEach((e=>e(n))),t)return t(n)},v=setTimeout(f.bind(null,void 0,{type:"timeout",target:a}),12e4);a.onerror=f.bind(null,a.onerror),a.onload=f.bind(null,a.onload),l&&document.head.appendChild(a)}},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=2250,(()=>{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 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(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),r.p=e})(),(()=>{r.b=document.baseURI||self.location.href;var e={2250:0};r.f.j=(t,i)=>{var n=r.o(e,t)?e[t]:void 0;if(0!==n)if(n)i.push(n[2]);else{var s=new Promise(((i,s)=>n=e[t]=[i,s]));i.push(n[2]=s);var o=r.p+r.u(t),a=new Error;r.l(o,(i=>{if(r.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var s=i&&("load"===i.type?"missing":i.type),o=i&&i.target&&i.target.src;a.message="Loading chunk "+t+" failed.\n("+s+": "+o+")",a.name="ChunkLoadError",a.type=s,a.request=o,n[1](a)}}),"chunk-"+t,t)}},r.O.j=t=>0===e[t];var t=(t,i)=>{var n,s,o=i[0],a=i[1],l=i[2],c=0;if(o.some((t=>0!==e[t]))){for(n in a)r.o(a,n)&&(r.m[n]=a[n]);if(l)var d=l(r)}for(t&&t(i);cr(3494)));a=r.O(a)})(); +//# sourceMappingURL=files_versions-files_versions.js.map?v=7c8300ea4e4b726756f8 \ No newline at end of file diff --git a/dist/files_versions-files_versions.js.map b/dist/files_versions-files_versions.js.map index 17148882b149d..01e8d4f5115ec 100644 --- a/dist/files_versions-files_versions.js.map +++ b/dist/files_versions-files_versions.js.map @@ -1 +1 @@ -{"version":3,"file":"files_versions-files_versions.js?v=ea239d6112a4fb0261e9","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/apps/files_versions/src/views/VersionTab.vue?vue&type=style&index=0&id=900bbc56&prod&lang=scss","webpack:///nextcloud/apps/files_versions/src/components/VersionLabelDialog.vue?vue&type=style&index=0&id=6e140e12&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files_versions/src/components/VirtualScrolling.vue?vue&type=style&index=0&id=49a1883f&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files_versions/src/components/Version.vue?vue&type=style&index=0&id=9427cc62&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files_versions/src/utils/davClient.js","webpack:///nextcloud/apps/files_versions/src/utils/logger.js","webpack:///nextcloud/apps/files_versions/src/components/Version.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/BackupRestore.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/BackupRestore.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/BackupRestore.vue?6cf7","webpack:///nextcloud/node_modules/vue-material-design-icons/BackupRestore.vue?vue&type=template&id=4ae28ccb","webpack:///nextcloud/node_modules/vue-material-design-icons/Download.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Download.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/Download.vue?b226","webpack:///nextcloud/node_modules/vue-material-design-icons/Download.vue?vue&type=template&id=183a1228","webpack:///nextcloud/node_modules/vue-material-design-icons/FileCompare.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/FileCompare.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/FileCompare.vue?5fdf","webpack:///nextcloud/node_modules/vue-material-design-icons/FileCompare.vue?vue&type=template&id=af361756","webpack:///nextcloud/node_modules/vue-material-design-icons/ImageOffOutline.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/ImageOffOutline.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/ImageOffOutline.vue?e0b5","webpack:///nextcloud/node_modules/vue-material-design-icons/ImageOffOutline.vue?vue&type=template&id=fdaa4406","webpack:///nextcloud/apps/files_versions/src/components/Version.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files_versions/src/components/Version.vue?4724","webpack://nextcloud/./apps/files_versions/src/components/Version.vue?0a31","webpack:///nextcloud/apps/files_versions/src/components/VirtualScrolling.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files_versions/src/components/VirtualScrolling.vue","webpack://nextcloud/./apps/files_versions/src/components/VirtualScrolling.vue?db39","webpack://nextcloud/./apps/files_versions/src/components/VirtualScrolling.vue?fc23","webpack:///nextcloud/apps/files_versions/src/components/VersionLabelDialog.vue","webpack:///nextcloud/apps/files_versions/src/components/VersionLabelDialog.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files_versions/src/components/VersionLabelDialog.vue?55a0","webpack://nextcloud/./apps/files_versions/src/components/VersionLabelDialog.vue?86a4","webpack:///nextcloud/apps/files_versions/src/views/VersionTab.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files_versions/src/views/VersionTab.vue","webpack:///nextcloud/apps/files_versions/src/utils/versions.ts","webpack:///nextcloud/apps/files_versions/src/utils/davRequest.js","webpack://nextcloud/./apps/files_versions/src/views/VersionTab.vue?43a7","webpack://nextcloud/./apps/files_versions/src/views/VersionTab.vue?d7ee","webpack://nextcloud/./apps/files_versions/src/views/VersionTab.vue?4309","webpack:///nextcloud/apps/files_versions/src/files_versions_tab.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};","// 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, `.versions-tab__container{height:100%}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_versions/src/views/VersionTab.vue\"],\"names\":[],\"mappings\":\"AACA,yBACC,WAAA\",\"sourcesContent\":[\"\\n.versions-tab__container {\\n\\theight: 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, `.version-label-modal__info[data-v-6e140e12]{color:var(--color-text-maxcontrast);margin-block:calc(3*var(--default-grid-baseline))}.version-label-modal__input[data-v-6e140e12]{margin-block-start:calc(2*var(--default-grid-baseline))}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_versions/src/components/VersionLabelDialog.vue\"],\"names\":[],\"mappings\":\"AAEC,4CACC,mCAAA,CACA,iDAAA,CAGD,6CACC,uDAAA\",\"sourcesContent\":[\"\\n.version-label-modal {\\n\\t&__info {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\tmargin-block: calc(3 * var(--default-grid-baseline));\\n\\t}\\n\\n\\t&__input {\\n\\t\\tmargin-block-start: calc(2 * var(--default-grid-baseline));\\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, `.vs-container[data-v-49a1883f]{overflow-y:scroll;height:100%}.vs-rows-container[data-v-49a1883f]{box-sizing:border-box;will-change:scroll-position,padding;contain:layout paint style}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_versions/src/components/VirtualScrolling.vue\"],\"names\":[],\"mappings\":\"AACA,+BACC,iBAAA,CACA,WAAA,CAGD,oCACC,qBAAA,CACA,mCAAA,CACA,0BAAA\",\"sourcesContent\":[\"\\n.vs-container {\\n\\toverflow-y: scroll;\\n\\theight: 100%;\\n}\\n\\n.vs-rows-container {\\n\\tbox-sizing: border-box;\\n\\twill-change: scroll-position, padding;\\n\\tcontain: layout paint style;\\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, `.version[data-v-9427cc62]{display:flex;flex-direction:row}.version__info[data-v-9427cc62]{display:flex;flex-direction:row;align-items:center;gap:.5rem;color:var(--color-main-text);font-weight:500;overflow:hidden}.version__info__label[data-v-9427cc62]{font-weight:700;overflow:hidden;text-overflow:ellipsis;min-width:110px}.version__info__author_name[data-v-9427cc62]{overflow:hidden;text-overflow:ellipsis}.version__info__date[data-v-9427cc62]{overflow:hidden;text-overflow:ellipsis}.version__info__subline[data-v-9427cc62]{color:var(--color-text-maxcontrast)}.version__image[data-v-9427cc62]{width:3rem;height:3rem;border:1px solid var(--color-border);border-radius:var(--border-radius-large);display:flex;justify-content:center;color:var(--color-text-light)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_versions/src/components/Version.vue\"],\"names\":[],\"mappings\":\"AACA,0BACC,YAAA,CACA,kBAAA,CAEA,gCACC,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,SAAA,CACA,4BAAA,CACA,eAAA,CACA,eAAA,CAEA,uCACC,eAAA,CAEA,eAAA,CACA,sBAAA,CACA,eAAA,CAGD,6CACC,eAAA,CACA,sBAAA,CAGD,sCAEC,eAAA,CACA,sBAAA,CAGD,yCACC,mCAAA,CAIF,iCACC,UAAA,CACA,WAAA,CACA,oCAAA,CACA,wCAAA,CAGA,YAAA,CACA,sBAAA,CACA,6BAAA\",\"sourcesContent\":[\"\\n.version {\\n\\tdisplay: flex;\\n\\tflex-direction: row;\\n\\n\\t&__info {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: row;\\n\\t\\talign-items: center;\\n\\t\\tgap: 0.5rem;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tfont-weight: 500;\\n\\t\\toverflow: hidden;\\n\\n\\t\\t&__label {\\n\\t\\t\\tfont-weight: 700;\\n\\t\\t\\t// Fix overflow on narrow screens\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\tmin-width: 110px;\\n\\t\\t}\\n\\n\\t\\t&__author_name {\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t}\\n\\n\\t\\t&__date {\\n\\t\\t\\t// Fix overflow on narrow screens\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t}\\n\\n\\t\\t&__subline {\\n\\t\\t\\tcolor: var(--color-text-maxcontrast)\\n\\t\\t}\\n\\t}\\n\\n\\t&__image {\\n\\t\\twidth: 3rem;\\n\\t\\theight: 3rem;\\n\\t\\tborder: 1px solid var(--color-border);\\n\\t\\tborder-radius: var(--border-radius-large);\\n\\n\\t\\t// Useful to display no preview icon.\\n\\t\\tdisplay: flex;\\n\\t\\tjustify-content: center;\\n\\t\\tcolor: var(--color-text-light);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","/**\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { createClient } from 'webdav'\nimport { generateRemoteUrl } from '@nextcloud/router'\nimport { getRequestToken, onRequestTokenUpdate } from '@nextcloud/auth'\n\n// init webdav client\nconst rootPath = 'dav'\nconst remote = generateRemoteUrl(rootPath)\nconst client = createClient(remote)\n\n// set CSRF token header\nconst setHeaders = (token) => {\n\tclient.setHeaders({\n\t\t// Add this so the server knows it is an request from the browser\n\t\t'X-Requested-With': 'XMLHttpRequest',\n\t\t// Inject user auth\n\t\trequesttoken: token ?? '',\n\t})\n}\n\n// refresh headers when request token changes\nonRequestTokenUpdate(setHeaders)\nsetHeaders(getRequestToken())\n\nexport default client\n","/**\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default getLoggerBuilder()\n\t.setApp('files_version')\n\t.detectUser()\n\t.build()\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcListItem',{staticClass:\"version\",attrs:{\"force-display-actions\":true,\"data-files-versions-version\":_vm.version.fileVersion},on:{\"click\":_vm.click},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(!(_vm.loadPreview || _vm.previewLoaded))?_c('div',{staticClass:\"version__image\"}):(_vm.version.previewUrl && !_vm.previewErrored)?_c('img',{staticClass:\"version__image\",attrs:{\"src\":_vm.version.previewUrl,\"alt\":\"\",\"decoding\":\"async\",\"fetchpriority\":\"low\",\"loading\":\"lazy\"},on:{\"load\":function($event){_vm.previewLoaded = true},\"error\":function($event){_vm.previewErrored = true}}}):_c('div',{staticClass:\"version__image\"},[_c('ImageOffOutline',{attrs:{\"size\":20}})],1)]},proxy:true},{key:\"name\",fn:function(){return [_c('div',{staticClass:\"version__info\"},[(_vm.versionLabel)?_c('div',{staticClass:\"version__info__label\",attrs:{\"data-cy-files-version-label\":\"\",\"title\":_vm.versionLabel}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.versionLabel)+\"\\n\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.versionAuthor)?_c('div',{staticClass:\"version__info\",attrs:{\"data-cy-files-version-author-name\":\"\"}},[(_vm.versionLabel)?_c('span',[_vm._v(\"•\")]):_vm._e(),_vm._v(\" \"),_c('NcAvatar',{staticClass:\"avatar\",attrs:{\"user\":_vm.version.author,\"size\":20,\"disable-menu\":\"\",\"disable-tooltip\":\"\",\"show-user-status\":false}}),_vm._v(\" \"),_c('div',{staticClass:\"version__info__author_name\",attrs:{\"title\":_vm.versionAuthor}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.versionAuthor)+\"\\n\\t\\t\\t\\t\")])],1):_vm._e()])]},proxy:true},{key:\"subname\",fn:function(){return [_c('div',{staticClass:\"version__info version__info__subline\"},[_c('NcDateTime',{staticClass:\"version__info__date\",attrs:{\"relative-time\":\"short\",\"timestamp\":_vm.version.mtime}}),_vm._v(\" \"),_c('span',[_vm._v(\"•\")]),_vm._v(\" \"),_c('span',[_vm._v(_vm._s(_vm.humanReadableSize))])],1)]},proxy:true},{key:\"actions\",fn:function(){return [(_vm.enableLabeling && _vm.hasUpdatePermissions)?_c('NcActionButton',{attrs:{\"data-cy-files-versions-version-action\":\"label\",\"close-after-click\":true},on:{\"click\":_vm.labelUpdate},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Pencil',{attrs:{\"size\":22}})]},proxy:true}],null,false,3072546167)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.version.label === '' ? _vm.t('files_versions', 'Name this version') : _vm.t('files_versions', 'Edit version name'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(!_vm.isCurrent && _vm.canView && _vm.canCompare)?_c('NcActionButton',{attrs:{\"data-cy-files-versions-version-action\":\"compare\",\"close-after-click\":true},on:{\"click\":_vm.compareVersion},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('FileCompare',{attrs:{\"size\":22}})]},proxy:true}],null,false,1958207595)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_versions', 'Compare to current version'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(!_vm.isCurrent && _vm.hasUpdatePermissions)?_c('NcActionButton',{attrs:{\"data-cy-files-versions-version-action\":\"restore\",\"close-after-click\":true},on:{\"click\":_vm.restoreVersion},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('BackupRestore',{attrs:{\"size\":22}})]},proxy:true}],null,false,2239038444)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_versions', 'Restore version'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.isDownloadable)?_c('NcActionLink',{attrs:{\"data-cy-files-versions-version-action\":\"download\",\"href\":_vm.downloadURL,\"close-after-click\":true,\"download\":_vm.downloadURL},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Download',{attrs:{\"size\":22}})]},proxy:true}],null,false,927269758)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_versions', 'Download version'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(!_vm.isCurrent && _vm.enableDeletion && _vm.hasDeletePermissions)?_c('NcActionButton',{attrs:{\"data-cy-files-versions-version-action\":\"delete\",\"close-after-click\":true},on:{\"click\":_vm.deleteVersion},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Delete',{attrs:{\"size\":22}})]},proxy:true}],null,false,2429175571)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_versions', 'Delete version'))+\"\\n\\t\\t\")]):_vm._e()]},proxy:true}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./BackupRestore.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./BackupRestore.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./BackupRestore.vue?vue&type=template&id=4ae28ccb\"\nimport script from \"./BackupRestore.vue?vue&type=script&lang=js\"\nexport * from \"./BackupRestore.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 backup-restore-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,3A9,9 0 0,0 3,12H0L4,16L8,12H5A7,7 0 0,1 12,5A7,7 0 0,1 19,12A7,7 0 0,1 12,19C10.5,19 9.09,18.5 7.94,17.7L6.5,19.14C8.04,20.3 9.94,21 12,21A9,9 0 0,0 21,12A9,9 0 0,0 12,3M14,12A2,2 0 0,0 12,10A2,2 0 0,0 10,12A2,2 0 0,0 12,14A2,2 0 0,0 14,12Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Download.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Download.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Download.vue?vue&type=template&id=183a1228\"\nimport script from \"./Download.vue?vue&type=script&lang=js\"\nexport * from \"./Download.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 download-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,20H19V18H5M19,9H15V3H9V9H5L12,16L19,9Z\"}},[(_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!./FileCompare.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./FileCompare.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./FileCompare.vue?vue&type=template&id=af361756\"\nimport script from \"./FileCompare.vue?vue&type=script&lang=js\"\nexport * from \"./FileCompare.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-compare-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,18H6V16H10V18M10,14H6V12H10V14M10,1V2H6C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H10V23H12V1H10M20,8V20C20,21.11 19.11,22 18,22H14V20H18V11H14V9H18.5L14,4.5V2L20,8M16,14H14V12H16V14M16,18H14V16H16V18Z\"}},[(_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!./ImageOffOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImageOffOutline.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./ImageOffOutline.vue?vue&type=template&id=fdaa4406\"\nimport script from \"./ImageOffOutline.vue?vue&type=script&lang=js\"\nexport * from \"./ImageOffOutline.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 image-off-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\":\"M22 20.7L3.3 2L2 3.3L3 4.3V19C3 20.1 3.9 21 5 21H19.7L20.7 22L22 20.7M5 19V6.3L12.6 13.9L11.1 15.8L9 13.1L6 17H15.7L17.7 19H5M8.8 5L6.8 3H19C20.1 3 21 3.9 21 5V17.2L19 15.2V5H8.8\"}},[(_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!./Version.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!./Version.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!./Version.vue?vue&type=style&index=0&id=9427cc62&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./Version.vue?vue&type=style&index=0&id=9427cc62&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Version.vue?vue&type=template&id=9427cc62&scoped=true\"\nimport script from \"./Version.vue?vue&type=script&lang=ts\"\nexport * from \"./Version.vue?vue&type=script&lang=ts\"\nimport style0 from \"./Version.vue?vue&type=style&index=0&id=9427cc62&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 \"9427cc62\",\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!./VirtualScrolling.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!./VirtualScrolling.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (!_vm.useWindow && _vm.containerElement === null)?_c('div',{ref:\"container\",staticClass:\"vs-container\"},[_c('div',{ref:\"rowsContainer\",staticClass:\"vs-rows-container\",style:(_vm.rowsContainerStyle)},[_vm._t(\"default\",null,{\"visibleSections\":_vm.visibleSections}),_vm._v(\" \"),_vm._t(\"loader\")],2)]):_c('div',{ref:\"rowsContainer\",staticClass:\"vs-rows-container\",style:(_vm.rowsContainerStyle)},[_vm._t(\"default\",null,{\"visibleSections\":_vm.visibleSections}),_vm._v(\" \"),_vm._t(\"loader\")],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!./VirtualScrolling.vue?vue&type=style&index=0&id=49a1883f&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./VirtualScrolling.vue?vue&type=style&index=0&id=49a1883f&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./VirtualScrolling.vue?vue&type=template&id=49a1883f&scoped=true\"\nimport script from \"./VirtualScrolling.vue?vue&type=script&lang=ts\"\nexport * from \"./VirtualScrolling.vue?vue&type=script&lang=ts\"\nimport style0 from \"./VirtualScrolling.vue?vue&type=style&index=0&id=49a1883f&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 \"49a1883f\",\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('NcDialog',{attrs:{\"buttons\":_vm.dialogButtons,\"content-classes\":\"version-label-modal\",\"is-form\":\"\",\"open\":_vm.open,\"size\":\"normal\",\"name\":_vm.t('files_versions', 'Name this version')},on:{\"update:open\":function($event){return _vm.$emit('update:open', $event)},\"submit\":function($event){return _vm.setVersionLabel(_vm.editedVersionLabel)}}},[_c('NcTextField',{ref:\"labelInput\",staticClass:\"version-label-modal__input\",attrs:{\"label\":_vm.t('files_versions', 'Version name'),\"placeholder\":_vm.t('files_versions', 'Version name'),\"value\":_vm.editedVersionLabel},on:{\"update:value\":function($event){_vm.editedVersionLabel=$event}}}),_vm._v(\" \"),_c('p',{staticClass:\"version-label-modal__info\"},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('files_versions', 'Named versions are persisted, and excluded from automatic cleanups when your storage quota is full.'))+\"\\n\\t\")])],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!./VersionLabelDialog.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!./VersionLabelDialog.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!./VersionLabelDialog.vue?vue&type=style&index=0&id=6e140e12&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./VersionLabelDialog.vue?vue&type=style&index=0&id=6e140e12&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./VersionLabelDialog.vue?vue&type=template&id=6e140e12&scoped=true\"\nimport script from \"./VersionLabelDialog.vue?vue&type=script&lang=ts\"\nexport * from \"./VersionLabelDialog.vue?vue&type=script&lang=ts\"\nimport style0 from \"./VersionLabelDialog.vue?vue&type=style&index=0&id=6e140e12&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 \"6e140e12\",\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!./VersionTab.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!./VersionTab.vue?vue&type=script&lang=js\"","\n\n\n\n\n","import { generateRemoteUrl, generateUrl } from '@nextcloud/router';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { joinPaths, encodePath } from '@nextcloud/paths';\nimport moment from '@nextcloud/moment';\nimport client from '../utils/davClient.js';\nimport davRequest from '../utils/davRequest.js';\nimport logger from '../utils/logger.js';\nexport async function fetchVersions(fileInfo) {\n const path = `/versions/${getCurrentUser()?.uid}/versions/${fileInfo.id}`;\n try {\n const response = await client.getDirectoryContents(path, {\n data: davRequest,\n details: true,\n });\n return response.data\n // Filter out root\n .filter(({ mime }) => mime !== '')\n .map(version => formatVersion(version, fileInfo));\n }\n catch (exception) {\n logger.error('Could not fetch version', { exception });\n throw exception;\n }\n}\n/**\n * Restore the given version\n */\nexport async function restoreVersion(version) {\n try {\n logger.debug('Restoring version', { url: version.url });\n await client.moveFile(`/versions/${getCurrentUser()?.uid}/versions/${version.fileId}/${version.fileVersion}`, `/versions/${getCurrentUser()?.uid}/restore/target`);\n }\n catch (exception) {\n logger.error('Could not restore version', { exception });\n throw exception;\n }\n}\n/**\n * Format version\n */\nfunction formatVersion(version, fileInfo) {\n const mtime = moment(version.lastmod).unix() * 1000;\n let previewUrl = '';\n if (mtime === fileInfo.mtime) { // Version is the current one\n previewUrl = generateUrl('/core/preview?fileId={fileId}&c={fileEtag}&x=250&y=250&forceIcon=0&a=0&forceIcon=1&mimeFallback=1', {\n fileId: fileInfo.id,\n fileEtag: fileInfo.etag,\n });\n }\n else {\n previewUrl = generateUrl('/apps/files_versions/preview?file={file}&version={fileVersion}&mimeFallback=1', {\n file: joinPaths(fileInfo.path, fileInfo.name),\n fileVersion: version.basename,\n });\n }\n return {\n fileId: fileInfo.id,\n // If version-label is defined make sure it is a string (prevent issue if the label is a number an PHP returns a number then)\n label: version.props['version-label'] && String(version.props['version-label']),\n author: version.props['version-author'] ?? null,\n filename: version.filename,\n basename: moment(mtime).format('LLL'),\n mime: version.mime,\n etag: `${version.props.getetag}`,\n size: version.size,\n type: version.type,\n mtime,\n permissions: 'R',\n previewUrl,\n url: joinPaths('/remote.php/dav', version.filename),\n source: generateRemoteUrl('dav') + encodePath(version.filename),\n fileVersion: version.basename,\n };\n}\nexport async function setVersionLabel(version, newLabel) {\n return await client.customRequest(version.filename, {\n method: 'PROPPATCH',\n data: `\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t${newLabel}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t`,\n });\n}\nexport async function deleteVersion(version) {\n await client.deleteFile(version.filename);\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nexport default `\n\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\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!./VersionTab.vue?vue&type=style&index=0&id=900bbc56&prod&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./VersionTab.vue?vue&type=style&index=0&id=900bbc56&prod&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./VersionTab.vue?vue&type=template&id=900bbc56\"\nimport script from \"./VersionTab.vue?vue&type=script&lang=js\"\nexport * from \"./VersionTab.vue?vue&type=script&lang=js\"\nimport style0 from \"./VersionTab.vue?vue&type=style&index=0&id=900bbc56&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('div',{staticClass:\"versions-tab__container\"},[_c('VirtualScrolling',{attrs:{\"sections\":_vm.sections,\"header-height\":0},scopedSlots:_vm._u([{key:\"default\",fn:function({ visibleSections }){return [_c('ul',{attrs:{\"aria-label\":_vm.t('files_versions', 'File versions'),\"data-files-versions-versions-list\":\"\"}},[(visibleSections.length === 1)?_vm._l((visibleSections[0].rows),function(row){return _c('Version',{key:row.items[0].mtime,attrs:{\"can-view\":_vm.canView,\"can-compare\":_vm.canCompare,\"load-preview\":_vm.isActive,\"version\":row.items[0],\"file-info\":_vm.fileInfo,\"is-current\":row.items[0].mtime === _vm.fileInfo.mtime,\"is-first-version\":row.items[0].mtime === _vm.initialVersionMtime},on:{\"click\":_vm.openVersion,\"compare\":_vm.compareVersion,\"restore\":_vm.handleRestore,\"label-update-request\":function($event){return _vm.handleLabelUpdateRequest(row.items[0])},\"delete\":_vm.handleDelete}})}):_vm._e()],2),_vm._v(\" \"),(_vm.loading)?_c('NcLoadingIcon',{staticClass:\"files-list-viewer__loader\",attrs:{\"slot\":\"loader\"},slot:\"loader\"}):_vm._e()]}}])}),_vm._v(\" \"),(_vm.editedVersion)?_c('VersionLabelDialog',{attrs:{\"open\":_vm.showVersionLabelForm,\"version-label\":_vm.editedVersion.label},on:{\"update:open\":function($event){_vm.showVersionLabelForm=$event},\"label-update\":_vm.handleLabelUpdate}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport Vue from 'vue'\nimport { translate as t, translatePlural as n } from '@nextcloud/l10n'\n\nimport VersionTab from './views/VersionTab.vue'\nimport VTooltip from 'v-tooltip'\n// eslint-disable-next-line n/no-missing-import, import/no-unresolved\nimport BackupRestore from '@mdi/svg/svg/backup-restore.svg?raw'\n\nVue.prototype.t = t\nVue.prototype.n = n\n\nVue.use(VTooltip)\n\n// Init Sharing tab component\nconst View = Vue.extend(VersionTab)\nlet TabInstance = null\n\nwindow.addEventListener('DOMContentLoaded', function() {\n\tif (OCA.Files?.Sidebar === undefined) {\n\t\treturn\n\t}\n\n\tOCA.Files.Sidebar.registerTab(new OCA.Files.Sidebar.Tab({\n\t\tid: 'version_vue',\n\t\tname: t('files_versions', 'Versions'),\n\t\ticonSvg: BackupRestore,\n\n\t\tasync mount(el, fileInfo, context) {\n\t\t\tif (TabInstance) {\n\t\t\t\tTabInstance.$destroy()\n\t\t\t}\n\t\t\tTabInstance = new View({\n\t\t\t\t// Better integration with vue parent component\n\t\t\t\tparent: context,\n\t\t\t})\n\t\t\t// Only mount after we have all the info we need\n\t\t\tawait TabInstance.update(fileInfo)\n\t\t\tTabInstance.$mount(el)\n\t\t},\n\t\tupdate(fileInfo) {\n\t\t\tTabInstance.update(fileInfo)\n\t\t},\n\t\tsetIsActive(isActive) {\n\t\t\tif (!TabInstance) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tTabInstance.setIsActive(isActive)\n\t\t},\n\t\tdestroy() {\n\t\t\tTabInstance.$destroy()\n\t\t\tTabInstance = null\n\t\t},\n\t\tenabled(fileInfo) {\n\t\t\treturn !(fileInfo?.isDirectory() ?? true)\n\t\t},\n\t}))\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=\" + {\"640\":\"19a5506f19df079e3812\",\"2983\":\"9bb326f8af72391af0ec\",\"5771\":\"a4e2a98efcfb7393c5bd\"}[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 = 2250;","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(/^blob:/, \"\").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\t2250: 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__(95327)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","___CSS_LOADER_EXPORT___","push","module","id","remote","generateRemoteUrl","client","createClient","setHeaders","token","requesttoken","onRequestTokenUpdate","getRequestToken","getLoggerBuilder","setApp","detectUser","build","name","emits","props","title","type","String","fillColor","default","size","Number","_vm","this","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","hasPermission","permissions","permission","defineComponent","components","NcActionLink","NcActionButton","NcAvatar","NcDateTime","NcListItem","BackupRestore","Download","FileCompare","Pencil","Delete","ImageOffOutline","directives","tooltip","Tooltip","version","Object","required","fileInfo","isCurrent","Boolean","isFirstVersion","loadPreview","canView","canCompare","data","previewLoaded","previewErrored","capabilities","loadState","files","version_labeling","version_deletion","versionAuthor","computed","humanReadableSize","formatFileSize","versionLabel","label","t","downloadURL","getRootUrl","joinPaths","path","url","enableLabeling","enableDeletion","hasDeletePermissions","Permission","DELETE","hasUpdatePermissions","UPDATE","isDownloadable","READ","mountType","downloadAttribute","shareAttributes","find","attribute","scope","key","value","created","fetchDisplayName","methods","labelUpdate","restoreVersion","deleteVersion","$nextTick","author","getCurrentUser","uid","axios","post","generateUrl","users","error","logger","warn","click","window","location","href","compareVersion","Error","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","_setupProxy","fileVersion","scopedSlots","_u","fn","previewUrl","proxy","mtime","sections","Array","containerElement","HTMLElement","useWindow","headerHeight","renderDistance","bottomBufferRatio","scrollToKey","scrollPosition","containerHeight","rowsContainerHeight","resizeObserver","visibleSections","debug","containerTop","containerBottom","currentRowTop","currentRowBottom","map","section","rows","reduce","visibleRows","row","height","distance","filter","length","visibleItems","flatMap","_ref","_ref2","items","rowIdToKeyMap","_rowIdToKeyMap","forEach","item","usedTokens","_ref3","undefined","unusedTokens","values","includes","_ref4","pop","Math","random","toString","substr","finalMapping","_ref5","totalHeight","sectionHeight","paddingTop","sectionKey","rowsContainerStyle","isNearBottom","buffer","container","$refs","watch","currentRowTopDistanceFromTop","scrollTo","top","behavior","beforeCreate","mounted","ResizeObserver","entries","entry","cr","contentRect","target","classList","contains","addEventListener","updateContainerSize","passive","innerHeight","observe","rowsContainer","updateScrollPosition","beforeDestroy","removeEventListener","disconnect","_onScrollHandle","requestAnimationFrame","scrollY","scrollTop","ref","style","_t","NcDialog","NcTextField","open","editedVersionLabel","dialogButtons","buttons","trim","nativeType","callback","setVersionLabel","icon","svgCheck","immediate","handler","labelInput","focus","Version","VirtualScrolling","VersionLabelDialog","NcLoadingIcon","mixins","isMobile","isActive","versions","loading","showVersionLabelForm","editedVersion","orderedVersions","sort","a","b","initialVersionMtime","min","viewerFileInfo","davPermissions","mime","mimetype","basename","filename","fileid","OCA","Viewer","mimetypesCompare","subscribe","fetchVersions","beforeUnmount","unsubscribe","update","resetState","setIsActive","async","getDirectoryContents","details","moment","lastmod","unix","fileId","fileEtag","etag","file","format","getetag","source","encodePath","formatVersion","exception","handleRestore","oldFileInfo","restoreStartedEventState","preventDefault","emit","moveFile","showSuccess","showError","handleLabelUpdateRequest","handleLabelUpdate","newLabel","oldLabel","customRequest","method","handleDelete","index","indexOf","splice","deleteFile","$set","openVersion","v","enableSidebar","compare","_l","slot","Vue","prototype","n","use","VTooltip","View","extend","VersionTab","TabInstance","Files","Sidebar","registerTab","Tab","iconSvg","mount","el","context","$destroy","parent","$mount","destroy","enabled","isDirectory","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","loaded","__webpack_modules__","call","m","O","result","chunkIds","priority","notFulfilled","Infinity","i","fulfilled","j","keys","every","r","getter","__esModule","d","definition","o","defineProperty","enumerable","get","f","e","chunkId","Promise","all","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","setTimeout","bind","head","appendChild","Symbol","toStringTag","nmd","paths","children","scriptUrl","importScripts","currentScript","tagName","toUpperCase","test","replace","p","baseURI","self","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_versions-files_versions.js?v=7c8300ea4e4b726756f8","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/apps/files_versions/src/utils/davClient.js","webpack:///nextcloud/apps/files_versions/src/utils/logger.js","webpack:///nextcloud/apps/files_versions/src/components/Version.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/BackupRestore.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/BackupRestore.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/BackupRestore.vue?6cf7","webpack:///nextcloud/node_modules/vue-material-design-icons/BackupRestore.vue?vue&type=template&id=4ae28ccb","webpack:///nextcloud/node_modules/vue-material-design-icons/Download.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Download.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/Download.vue?b226","webpack:///nextcloud/node_modules/vue-material-design-icons/Download.vue?vue&type=template&id=183a1228","webpack:///nextcloud/node_modules/vue-material-design-icons/FileCompare.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/FileCompare.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/FileCompare.vue?5fdf","webpack:///nextcloud/node_modules/vue-material-design-icons/FileCompare.vue?vue&type=template&id=af361756","webpack:///nextcloud/node_modules/vue-material-design-icons/ImageOffOutline.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/ImageOffOutline.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/ImageOffOutline.vue?e0b5","webpack:///nextcloud/node_modules/vue-material-design-icons/ImageOffOutline.vue?vue&type=template&id=fdaa4406","webpack:///nextcloud/apps/files_versions/src/components/Version.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files_versions/src/components/Version.vue?393c","webpack://nextcloud/./apps/files_versions/src/components/Version.vue?0a31","webpack:///nextcloud/apps/files_versions/src/components/VirtualScrolling.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files_versions/src/components/VirtualScrolling.vue","webpack://nextcloud/./apps/files_versions/src/components/VirtualScrolling.vue?db39","webpack://nextcloud/./apps/files_versions/src/components/VirtualScrolling.vue?fc23","webpack:///nextcloud/apps/files_versions/src/components/VersionLabelDialog.vue","webpack:///nextcloud/apps/files_versions/src/components/VersionLabelDialog.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files_versions/src/components/VersionLabelDialog.vue?55a0","webpack://nextcloud/./apps/files_versions/src/components/VersionLabelDialog.vue?86a4","webpack:///nextcloud/apps/files_versions/src/views/VersionTab.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files_versions/src/views/VersionTab.vue","webpack:///nextcloud/apps/files_versions/src/utils/versions.ts","webpack:///nextcloud/apps/files_versions/src/utils/davRequest.js","webpack://nextcloud/./apps/files_versions/src/views/VersionTab.vue?43a7","webpack://nextcloud/./apps/files_versions/src/views/VersionTab.vue?d7ee","webpack://nextcloud/./apps/files_versions/src/views/VersionTab.vue?4309","webpack:///nextcloud/apps/files_versions/src/files_versions_tab.js","webpack:///nextcloud/apps/files_versions/src/views/VersionTab.vue?vue&type=style&index=0&id=900bbc56&prod&lang=scss","webpack:///nextcloud/apps/files_versions/src/components/VersionLabelDialog.vue?vue&type=style&index=0&id=6e140e12&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files_versions/src/components/VirtualScrolling.vue?vue&type=style&index=0&id=49a1883f&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files_versions/src/components/Version.vue?vue&type=style&index=0&id=1f672090&prod&scoped=true&lang=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 * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { createClient } from 'webdav'\nimport { generateRemoteUrl } from '@nextcloud/router'\nimport { getRequestToken, onRequestTokenUpdate } from '@nextcloud/auth'\n\n// init webdav client\nconst rootPath = 'dav'\nconst remote = generateRemoteUrl(rootPath)\nconst client = createClient(remote)\n\n// set CSRF token header\nconst setHeaders = (token) => {\n\tclient.setHeaders({\n\t\t// Add this so the server knows it is an request from the browser\n\t\t'X-Requested-With': 'XMLHttpRequest',\n\t\t// Inject user auth\n\t\trequesttoken: token ?? '',\n\t})\n}\n\n// refresh headers when request token changes\nonRequestTokenUpdate(setHeaders)\nsetHeaders(getRequestToken())\n\nexport default client\n","/**\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default getLoggerBuilder()\n\t.setApp('files_version')\n\t.detectUser()\n\t.build()\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcListItem',{staticClass:\"version\",attrs:{\"force-display-actions\":true,\"data-files-versions-version\":_vm.version.fileVersion},on:{\"click\":_vm.click},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(!(_vm.loadPreview || _vm.previewLoaded))?_c('div',{staticClass:\"version__image\"}):(_vm.version.previewUrl && !_vm.previewErrored)?_c('img',{staticClass:\"version__image\",attrs:{\"src\":_vm.version.previewUrl,\"alt\":\"\",\"decoding\":\"async\",\"fetchpriority\":\"low\",\"loading\":\"lazy\"},on:{\"load\":function($event){_vm.previewLoaded = true},\"error\":function($event){_vm.previewErrored = true}}}):_c('div',{staticClass:\"version__image\"},[_c('ImageOffOutline',{attrs:{\"size\":20}})],1)]},proxy:true},{key:\"name\",fn:function(){return [_c('div',{staticClass:\"version__info\"},[(_vm.versionLabel)?_c('div',{staticClass:\"version__info__label\",attrs:{\"data-cy-files-version-label\":\"\",\"title\":_vm.versionLabel}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.versionLabel)+\"\\n\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.versionAuthor)?_c('div',{staticClass:\"version__info\",attrs:{\"data-cy-files-version-author-name\":\"\"}},[(_vm.versionLabel)?_c('span',[_vm._v(\"•\")]):_vm._e(),_vm._v(\" \"),_c('NcAvatar',{staticClass:\"avatar\",attrs:{\"user\":_vm.version.author,\"size\":20,\"disable-menu\":\"\",\"disable-tooltip\":\"\",\"show-user-status\":false}}),_vm._v(\" \"),_c('div',{staticClass:\"version__info__author_name\",attrs:{\"title\":_vm.versionAuthor}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.versionAuthor)+\"\\n\\t\\t\\t\\t\")])],1):_vm._e()])]},proxy:true},{key:\"subname\",fn:function(){return [_c('div',{staticClass:\"version__info version__info__subline\"},[_c('NcDateTime',{staticClass:\"version__info__date\",attrs:{\"relative-time\":\"short\",\"timestamp\":_vm.version.mtime}}),_vm._v(\" \"),_c('span',[_vm._v(\"•\")]),_vm._v(\" \"),_c('span',[_vm._v(_vm._s(_vm.humanReadableSize))])],1)]},proxy:true},{key:\"actions\",fn:function(){return [(_vm.enableLabeling && _vm.hasUpdatePermissions)?_c('NcActionButton',{attrs:{\"data-cy-files-versions-version-action\":\"label\",\"close-after-click\":true},on:{\"click\":_vm.labelUpdate},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Pencil',{attrs:{\"size\":22}})]},proxy:true}],null,false,3072546167)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.version.label === '' ? _vm.t('files_versions', 'Name this version') : _vm.t('files_versions', 'Edit version name'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(!_vm.isCurrent && _vm.canView && _vm.canCompare)?_c('NcActionButton',{attrs:{\"data-cy-files-versions-version-action\":\"compare\",\"close-after-click\":true},on:{\"click\":_vm.compareVersion},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('FileCompare',{attrs:{\"size\":22}})]},proxy:true}],null,false,1958207595)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_versions', 'Compare to current version'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(!_vm.isCurrent && _vm.hasUpdatePermissions)?_c('NcActionButton',{attrs:{\"data-cy-files-versions-version-action\":\"restore\",\"close-after-click\":true},on:{\"click\":_vm.restoreVersion},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('BackupRestore',{attrs:{\"size\":22}})]},proxy:true}],null,false,2239038444)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_versions', 'Restore version'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.isDownloadable)?_c('NcActionLink',{attrs:{\"data-cy-files-versions-version-action\":\"download\",\"href\":_vm.downloadURL,\"close-after-click\":true,\"download\":_vm.downloadURL},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Download',{attrs:{\"size\":22}})]},proxy:true}],null,false,927269758)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_versions', 'Download version'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(!_vm.isCurrent && _vm.enableDeletion && _vm.hasDeletePermissions)?_c('NcActionButton',{attrs:{\"data-cy-files-versions-version-action\":\"delete\",\"close-after-click\":true},on:{\"click\":_vm.deleteVersion},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Delete',{attrs:{\"size\":22}})]},proxy:true}],null,false,2429175571)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_versions', 'Delete version'))+\"\\n\\t\\t\")]):_vm._e()]},proxy:true}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./BackupRestore.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./BackupRestore.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./BackupRestore.vue?vue&type=template&id=4ae28ccb\"\nimport script from \"./BackupRestore.vue?vue&type=script&lang=js\"\nexport * from \"./BackupRestore.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 backup-restore-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,3A9,9 0 0,0 3,12H0L4,16L8,12H5A7,7 0 0,1 12,5A7,7 0 0,1 19,12A7,7 0 0,1 12,19C10.5,19 9.09,18.5 7.94,17.7L6.5,19.14C8.04,20.3 9.94,21 12,21A9,9 0 0,0 21,12A9,9 0 0,0 12,3M14,12A2,2 0 0,0 12,10A2,2 0 0,0 10,12A2,2 0 0,0 12,14A2,2 0 0,0 14,12Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Download.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Download.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Download.vue?vue&type=template&id=183a1228\"\nimport script from \"./Download.vue?vue&type=script&lang=js\"\nexport * from \"./Download.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 download-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,20H19V18H5M19,9H15V3H9V9H5L12,16L19,9Z\"}},[(_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!./FileCompare.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./FileCompare.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./FileCompare.vue?vue&type=template&id=af361756\"\nimport script from \"./FileCompare.vue?vue&type=script&lang=js\"\nexport * from \"./FileCompare.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-compare-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,18H6V16H10V18M10,14H6V12H10V14M10,1V2H6C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H10V23H12V1H10M20,8V20C20,21.11 19.11,22 18,22H14V20H18V11H14V9H18.5L14,4.5V2L20,8M16,14H14V12H16V14M16,18H14V16H16V18Z\"}},[(_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!./ImageOffOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImageOffOutline.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./ImageOffOutline.vue?vue&type=template&id=fdaa4406\"\nimport script from \"./ImageOffOutline.vue?vue&type=script&lang=js\"\nexport * from \"./ImageOffOutline.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 image-off-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\":\"M22 20.7L3.3 2L2 3.3L3 4.3V19C3 20.1 3.9 21 5 21H19.7L20.7 22L22 20.7M5 19V6.3L12.6 13.9L11.1 15.8L9 13.1L6 17H15.7L17.7 19H5M8.8 5L6.8 3H19C20.1 3 21 3.9 21 5V17.2L19 15.2V5H8.8\"}},[(_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!./Version.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!./Version.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!./Version.vue?vue&type=style&index=0&id=1f672090&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./Version.vue?vue&type=style&index=0&id=1f672090&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Version.vue?vue&type=template&id=1f672090&scoped=true\"\nimport script from \"./Version.vue?vue&type=script&lang=ts\"\nexport * from \"./Version.vue?vue&type=script&lang=ts\"\nimport style0 from \"./Version.vue?vue&type=style&index=0&id=1f672090&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 \"1f672090\",\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!./VirtualScrolling.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!./VirtualScrolling.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (!_vm.useWindow && _vm.containerElement === null)?_c('div',{ref:\"container\",staticClass:\"vs-container\"},[_c('div',{ref:\"rowsContainer\",staticClass:\"vs-rows-container\",style:(_vm.rowsContainerStyle)},[_vm._t(\"default\",null,{\"visibleSections\":_vm.visibleSections}),_vm._v(\" \"),_vm._t(\"loader\")],2)]):_c('div',{ref:\"rowsContainer\",staticClass:\"vs-rows-container\",style:(_vm.rowsContainerStyle)},[_vm._t(\"default\",null,{\"visibleSections\":_vm.visibleSections}),_vm._v(\" \"),_vm._t(\"loader\")],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!./VirtualScrolling.vue?vue&type=style&index=0&id=49a1883f&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./VirtualScrolling.vue?vue&type=style&index=0&id=49a1883f&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./VirtualScrolling.vue?vue&type=template&id=49a1883f&scoped=true\"\nimport script from \"./VirtualScrolling.vue?vue&type=script&lang=ts\"\nexport * from \"./VirtualScrolling.vue?vue&type=script&lang=ts\"\nimport style0 from \"./VirtualScrolling.vue?vue&type=style&index=0&id=49a1883f&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 \"49a1883f\",\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('NcDialog',{attrs:{\"buttons\":_vm.dialogButtons,\"content-classes\":\"version-label-modal\",\"is-form\":\"\",\"open\":_vm.open,\"size\":\"normal\",\"name\":_vm.t('files_versions', 'Name this version')},on:{\"update:open\":function($event){return _vm.$emit('update:open', $event)},\"submit\":function($event){return _vm.setVersionLabel(_vm.editedVersionLabel)}}},[_c('NcTextField',{ref:\"labelInput\",staticClass:\"version-label-modal__input\",attrs:{\"label\":_vm.t('files_versions', 'Version name'),\"placeholder\":_vm.t('files_versions', 'Version name'),\"value\":_vm.editedVersionLabel},on:{\"update:value\":function($event){_vm.editedVersionLabel=$event}}}),_vm._v(\" \"),_c('p',{staticClass:\"version-label-modal__info\"},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('files_versions', 'Named versions are persisted, and excluded from automatic cleanups when your storage quota is full.'))+\"\\n\\t\")])],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!./VersionLabelDialog.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!./VersionLabelDialog.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!./VersionLabelDialog.vue?vue&type=style&index=0&id=6e140e12&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./VersionLabelDialog.vue?vue&type=style&index=0&id=6e140e12&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./VersionLabelDialog.vue?vue&type=template&id=6e140e12&scoped=true\"\nimport script from \"./VersionLabelDialog.vue?vue&type=script&lang=ts\"\nexport * from \"./VersionLabelDialog.vue?vue&type=script&lang=ts\"\nimport style0 from \"./VersionLabelDialog.vue?vue&type=style&index=0&id=6e140e12&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 \"6e140e12\",\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!./VersionTab.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!./VersionTab.vue?vue&type=script&lang=js\"","\n\n\n\n\n","import { generateRemoteUrl, generateUrl } from '@nextcloud/router';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { joinPaths, encodePath } from '@nextcloud/paths';\nimport moment from '@nextcloud/moment';\nimport axios from '@nextcloud/axios';\nimport client from '../utils/davClient.js';\nimport davRequest from '../utils/davRequest.js';\nimport logger from '../utils/logger.js';\nexport async function fetchVersions(fileInfo) {\n const path = `/versions/${getCurrentUser()?.uid}/versions/${fileInfo.id}`;\n try {\n const response = await client.getDirectoryContents(path, {\n data: davRequest,\n details: true,\n });\n const versions = response.data\n // Filter out root\n .filter(({ mime }) => mime !== '')\n .map(version => formatVersion(version, fileInfo));\n const authorIds = new Set(versions.map(version => version.author));\n const authors = await axios.post(generateUrl('/displaynames'), { users: [...authorIds] });\n for (const version of versions) {\n const author = authors.data.users[version.author];\n if (author) {\n version.authorName = author;\n }\n }\n return versions;\n }\n catch (exception) {\n logger.error('Could not fetch version', { exception });\n throw exception;\n }\n}\n/**\n * Restore the given version\n */\nexport async function restoreVersion(version) {\n try {\n logger.debug('Restoring version', { url: version.url });\n await client.moveFile(`/versions/${getCurrentUser()?.uid}/versions/${version.fileId}/${version.fileVersion}`, `/versions/${getCurrentUser()?.uid}/restore/target`);\n }\n catch (exception) {\n logger.error('Could not restore version', { exception });\n throw exception;\n }\n}\n/**\n * Format version\n */\nfunction formatVersion(version, fileInfo) {\n const mtime = moment(version.lastmod).unix() * 1000;\n let previewUrl = '';\n if (mtime === fileInfo.mtime) { // Version is the current one\n previewUrl = generateUrl('/core/preview?fileId={fileId}&c={fileEtag}&x=250&y=250&forceIcon=0&a=0&forceIcon=1&mimeFallback=1', {\n fileId: fileInfo.id,\n fileEtag: fileInfo.etag,\n });\n }\n else {\n previewUrl = generateUrl('/apps/files_versions/preview?file={file}&version={fileVersion}&mimeFallback=1', {\n file: joinPaths(fileInfo.path, fileInfo.name),\n fileVersion: version.basename,\n });\n }\n return {\n fileId: fileInfo.id,\n // If version-label is defined make sure it is a string (prevent issue if the label is a number an PHP returns a number then)\n label: version.props['version-label'] && String(version.props['version-label']),\n author: version.props['version-author'] ?? null,\n authorName: null,\n filename: version.filename,\n basename: moment(mtime).format('LLL'),\n mime: version.mime,\n etag: `${version.props.getetag}`,\n size: version.size,\n type: version.type,\n mtime,\n permissions: 'R',\n previewUrl,\n url: joinPaths('/remote.php/dav', version.filename),\n source: generateRemoteUrl('dav') + encodePath(version.filename),\n fileVersion: version.basename,\n };\n}\nexport async function setVersionLabel(version, newLabel) {\n return await client.customRequest(version.filename, {\n method: 'PROPPATCH',\n data: `\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t${newLabel}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t`,\n });\n}\nexport async function deleteVersion(version) {\n await client.deleteFile(version.filename);\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nexport default `\n\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\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!./VersionTab.vue?vue&type=style&index=0&id=900bbc56&prod&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./VersionTab.vue?vue&type=style&index=0&id=900bbc56&prod&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./VersionTab.vue?vue&type=template&id=900bbc56\"\nimport script from \"./VersionTab.vue?vue&type=script&lang=js\"\nexport * from \"./VersionTab.vue?vue&type=script&lang=js\"\nimport style0 from \"./VersionTab.vue?vue&type=style&index=0&id=900bbc56&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('div',{staticClass:\"versions-tab__container\"},[_c('VirtualScrolling',{attrs:{\"sections\":_vm.sections,\"header-height\":0},scopedSlots:_vm._u([{key:\"default\",fn:function({ visibleSections }){return [_c('ul',{attrs:{\"aria-label\":_vm.t('files_versions', 'File versions'),\"data-files-versions-versions-list\":\"\"}},[(visibleSections.length === 1)?_vm._l((visibleSections[0].rows),function(row){return _c('Version',{key:row.items[0].mtime,attrs:{\"can-view\":_vm.canView,\"can-compare\":_vm.canCompare,\"load-preview\":_vm.isActive,\"version\":row.items[0],\"file-info\":_vm.fileInfo,\"is-current\":row.items[0].mtime === _vm.fileInfo.mtime,\"is-first-version\":row.items[0].mtime === _vm.initialVersionMtime},on:{\"click\":_vm.openVersion,\"compare\":_vm.compareVersion,\"restore\":_vm.handleRestore,\"label-update-request\":function($event){return _vm.handleLabelUpdateRequest(row.items[0])},\"delete\":_vm.handleDelete}})}):_vm._e()],2),_vm._v(\" \"),(_vm.loading)?_c('NcLoadingIcon',{staticClass:\"files-list-viewer__loader\",attrs:{\"slot\":\"loader\"},slot:\"loader\"}):_vm._e()]}}])}),_vm._v(\" \"),(_vm.editedVersion)?_c('VersionLabelDialog',{attrs:{\"open\":_vm.showVersionLabelForm,\"version-label\":_vm.editedVersion.label},on:{\"update:open\":function($event){_vm.showVersionLabelForm=$event},\"label-update\":_vm.handleLabelUpdate}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport Vue from 'vue'\nimport { translate as t, translatePlural as n } from '@nextcloud/l10n'\n\nimport VersionTab from './views/VersionTab.vue'\nimport VTooltip from 'v-tooltip'\n// eslint-disable-next-line n/no-missing-import, import/no-unresolved\nimport BackupRestore from '@mdi/svg/svg/backup-restore.svg?raw'\n\nVue.prototype.t = t\nVue.prototype.n = n\n\nVue.use(VTooltip)\n\n// Init Sharing tab component\nconst View = Vue.extend(VersionTab)\nlet TabInstance = null\n\nwindow.addEventListener('DOMContentLoaded', function() {\n\tif (OCA.Files?.Sidebar === undefined) {\n\t\treturn\n\t}\n\n\tOCA.Files.Sidebar.registerTab(new OCA.Files.Sidebar.Tab({\n\t\tid: 'version_vue',\n\t\tname: t('files_versions', 'Versions'),\n\t\ticonSvg: BackupRestore,\n\n\t\tasync mount(el, fileInfo, context) {\n\t\t\tif (TabInstance) {\n\t\t\t\tTabInstance.$destroy()\n\t\t\t}\n\t\t\tTabInstance = new View({\n\t\t\t\t// Better integration with vue parent component\n\t\t\t\tparent: context,\n\t\t\t})\n\t\t\t// Only mount after we have all the info we need\n\t\t\tawait TabInstance.update(fileInfo)\n\t\t\tTabInstance.$mount(el)\n\t\t},\n\t\tupdate(fileInfo) {\n\t\t\tTabInstance.update(fileInfo)\n\t\t},\n\t\tsetIsActive(isActive) {\n\t\t\tif (!TabInstance) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tTabInstance.setIsActive(isActive)\n\t\t},\n\t\tdestroy() {\n\t\t\tTabInstance.$destroy()\n\t\t\tTabInstance = null\n\t\t},\n\t\tenabled(fileInfo) {\n\t\t\treturn !(fileInfo?.isDirectory() ?? true)\n\t\t},\n\t}))\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, `.versions-tab__container{height:100%}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_versions/src/views/VersionTab.vue\"],\"names\":[],\"mappings\":\"AACA,yBACC,WAAA\",\"sourcesContent\":[\"\\n.versions-tab__container {\\n\\theight: 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, `.version-label-modal__info[data-v-6e140e12]{color:var(--color-text-maxcontrast);margin-block:calc(3*var(--default-grid-baseline))}.version-label-modal__input[data-v-6e140e12]{margin-block-start:calc(2*var(--default-grid-baseline))}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_versions/src/components/VersionLabelDialog.vue\"],\"names\":[],\"mappings\":\"AAEC,4CACC,mCAAA,CACA,iDAAA,CAGD,6CACC,uDAAA\",\"sourcesContent\":[\"\\n.version-label-modal {\\n\\t&__info {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\tmargin-block: calc(3 * var(--default-grid-baseline));\\n\\t}\\n\\n\\t&__input {\\n\\t\\tmargin-block-start: calc(2 * var(--default-grid-baseline));\\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, `.vs-container[data-v-49a1883f]{overflow-y:scroll;height:100%}.vs-rows-container[data-v-49a1883f]{box-sizing:border-box;will-change:scroll-position,padding;contain:layout paint style}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_versions/src/components/VirtualScrolling.vue\"],\"names\":[],\"mappings\":\"AACA,+BACC,iBAAA,CACA,WAAA,CAGD,oCACC,qBAAA,CACA,mCAAA,CACA,0BAAA\",\"sourcesContent\":[\"\\n.vs-container {\\n\\toverflow-y: scroll;\\n\\theight: 100%;\\n}\\n\\n.vs-rows-container {\\n\\tbox-sizing: border-box;\\n\\twill-change: scroll-position, padding;\\n\\tcontain: layout paint style;\\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, `.version[data-v-1f672090]{display:flex;flex-direction:row}.version__info[data-v-1f672090]{display:flex;flex-direction:row;align-items:center;gap:.5rem;color:var(--color-main-text);font-weight:500;overflow:hidden}.version__info__label[data-v-1f672090]{font-weight:700;overflow:hidden;text-overflow:ellipsis;min-width:110px}.version__info__author_name[data-v-1f672090]{overflow:hidden;text-overflow:ellipsis}.version__info__date[data-v-1f672090]{overflow:hidden;text-overflow:ellipsis}.version__info__subline[data-v-1f672090]{color:var(--color-text-maxcontrast)}.version__image[data-v-1f672090]{width:3rem;height:3rem;border:1px solid var(--color-border);border-radius:var(--border-radius-large);display:flex;justify-content:center;color:var(--color-text-light)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_versions/src/components/Version.vue\"],\"names\":[],\"mappings\":\"AACA,0BACC,YAAA,CACA,kBAAA,CAEA,gCACC,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,SAAA,CACA,4BAAA,CACA,eAAA,CACA,eAAA,CAEA,uCACC,eAAA,CAEA,eAAA,CACA,sBAAA,CACA,eAAA,CAGD,6CACC,eAAA,CACA,sBAAA,CAGD,sCAEC,eAAA,CACA,sBAAA,CAGD,yCACC,mCAAA,CAIF,iCACC,UAAA,CACA,WAAA,CACA,oCAAA,CACA,wCAAA,CAGA,YAAA,CACA,sBAAA,CACA,6BAAA\",\"sourcesContent\":[\"\\n.version {\\n\\tdisplay: flex;\\n\\tflex-direction: row;\\n\\n\\t&__info {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: row;\\n\\t\\talign-items: center;\\n\\t\\tgap: 0.5rem;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tfont-weight: 500;\\n\\t\\toverflow: hidden;\\n\\n\\t\\t&__label {\\n\\t\\t\\tfont-weight: 700;\\n\\t\\t\\t// Fix overflow on narrow screens\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\tmin-width: 110px;\\n\\t\\t}\\n\\n\\t\\t&__author_name {\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t}\\n\\n\\t\\t&__date {\\n\\t\\t\\t// Fix overflow on narrow screens\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t}\\n\\n\\t\\t&__subline {\\n\\t\\t\\tcolor: var(--color-text-maxcontrast)\\n\\t\\t}\\n\\t}\\n\\n\\t&__image {\\n\\t\\twidth: 3rem;\\n\\t\\theight: 3rem;\\n\\t\\tborder: 1px solid var(--color-border);\\n\\t\\tborder-radius: var(--border-radius-large);\\n\\n\\t\\t// Useful to display no preview icon.\\n\\t\\tdisplay: flex;\\n\\t\\tjustify-content: center;\\n\\t\\tcolor: var(--color-text-light);\\n\\t}\\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=\" + {\"640\":\"19a5506f19df079e3812\",\"2983\":\"9bb326f8af72391af0ec\",\"5771\":\"a4e2a98efcfb7393c5bd\"}[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 = 2250;","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(/^blob:/, \"\").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\t2250: 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__(3494)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","remote","generateRemoteUrl","client","createClient","setHeaders","token","requesttoken","onRequestTokenUpdate","getRequestToken","getLoggerBuilder","setApp","detectUser","build","name","emits","props","title","type","String","fillColor","default","size","Number","_vm","this","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","hasPermission","permissions","permission","defineComponent","components","NcActionLink","NcActionButton","NcAvatar","NcDateTime","NcListItem","BackupRestore","Download","FileCompare","Pencil","Delete","ImageOffOutline","directives","tooltip","Tooltip","version","Object","required","fileInfo","isCurrent","Boolean","isFirstVersion","loadPreview","canView","canCompare","data","previewLoaded","previewErrored","capabilities","loadState","files","version_labeling","version_deletion","computed","humanReadableSize","formatFileSize","versionLabel","label","t","versionAuthor","author","authorName","getCurrentUser","uid","downloadURL","getRootUrl","joinPaths","path","url","enableLabeling","enableDeletion","hasDeletePermissions","Permission","DELETE","hasUpdatePermissions","UPDATE","isDownloadable","READ","mountType","downloadAttribute","shareAttributes","find","attribute","scope","key","value","created","fetchDisplayName","methods","labelUpdate","restoreVersion","deleteVersion","$nextTick","click","window","location","href","compareVersion","Error","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","_setupProxy","fileVersion","scopedSlots","_u","fn","previewUrl","proxy","mtime","sections","Array","containerElement","HTMLElement","useWindow","headerHeight","renderDistance","bottomBufferRatio","scrollToKey","scrollPosition","containerHeight","rowsContainerHeight","resizeObserver","visibleSections","logger","debug","containerTop","containerBottom","currentRowTop","currentRowBottom","map","section","rows","reduce","visibleRows","row","height","distance","filter","length","visibleItems","flatMap","_ref","_ref2","items","rowIdToKeyMap","_rowIdToKeyMap","forEach","item","id","usedTokens","_ref3","undefined","unusedTokens","values","includes","_ref4","pop","Math","random","toString","substr","finalMapping","_ref5","totalHeight","sectionHeight","paddingTop","sectionKey","rowsContainerStyle","isNearBottom","buffer","container","$refs","watch","currentRowTopDistanceFromTop","scrollTo","top","behavior","beforeCreate","mounted","ResizeObserver","entries","entry","cr","contentRect","target","classList","contains","addEventListener","updateContainerSize","passive","innerHeight","observe","rowsContainer","updateScrollPosition","beforeDestroy","removeEventListener","disconnect","_onScrollHandle","requestAnimationFrame","scrollY","scrollTop","ref","style","_t","NcDialog","NcTextField","open","editedVersionLabel","dialogButtons","buttons","trim","push","nativeType","callback","setVersionLabel","icon","svgCheck","immediate","handler","labelInput","focus","Version","VirtualScrolling","VersionLabelDialog","NcLoadingIcon","mixins","isMobile","isActive","versions","loading","showVersionLabelForm","editedVersion","orderedVersions","sort","a","b","initialVersionMtime","min","viewerFileInfo","davPermissions","mime","mimetype","basename","filename","fileid","OCA","Viewer","mimetypesCompare","subscribe","fetchVersions","beforeUnmount","unsubscribe","update","resetState","setIsActive","async","getDirectoryContents","details","moment","lastmod","unix","generateUrl","fileId","fileEtag","etag","file","format","getetag","source","encodePath","formatVersion","authorIds","Set","authors","axios","post","users","exception","error","handleRestore","oldFileInfo","restoreStartedEventState","preventDefault","emit","moveFile","showSuccess","showError","handleLabelUpdateRequest","handleLabelUpdate","newLabel","oldLabel","customRequest","method","handleDelete","index","indexOf","splice","deleteFile","$set","openVersion","v","enableSidebar","compare","_l","slot","Vue","prototype","n","use","VTooltip","View","extend","VersionTab","TabInstance","Files","Sidebar","registerTab","Tab","iconSvg","mount","el","context","$destroy","parent","$mount","destroy","enabled","isDirectory","___CSS_LOADER_EXPORT___","module","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","loaded","__webpack_modules__","call","m","O","result","chunkIds","priority","notFulfilled","Infinity","i","fulfilled","j","keys","every","r","getter","__esModule","d","definition","o","defineProperty","enumerable","get","f","e","chunkId","Promise","all","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","setTimeout","bind","head","appendChild","Symbol","toStringTag","nmd","paths","children","scriptUrl","importScripts","currentScript","tagName","toUpperCase","test","replace","p","baseURI","self","installedChunks","installedChunkData","promise","resolve","reject","errorType","realSrc","message","request","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file