(function (factory) { typeof define === 'function' && define.amd ? define(factory) : factory(); })((function () { 'use strict'; const avatarTemplate = item => ` `; const timelineTemplate = (item, index, data) => `
${ index !== data.activities.length - 1 ? '' : '' }
${ item.title }

${ item.time }

by ${ item.tasker }
${ item.assignees ? item.assignees.map(member => avatarTemplate(member)).join('') : '' } ${ item.more ? `
+1
` : '' }
`; const detailsTemplate = item => `
${item.key}
: ${item.value} ${ item.modifiedBy ? 'by John Doe' : '' } `; const getFileDetailsTemplate = data => { return `

${data.name}

${ data.type === 'folder' ? `` : '' } ${ data.type === 'doc' ? '' : '' } ${ data.type === 'xls' ? '' : '' } ${ data.type === 'source-code' ? '' : '' } ${ data.type === 'zip' ? '' : '' } ${ data.type === 'html' ? '' : '' } ${ data.type === 'pdf' ? '' : '' } ${ data.type === 'image' ? `` : '' } ${ data.type === 'video' ? ` ` : '' } ${data.details.map(item => detailsTemplate(item)).join('')}

Admin
${avatarTemplate(data.admin)}
Team members
${data.assignees.map(item => avatarTemplate(item)).join('')}
Control Access
File Link
${data.fileLink}

Today

${data.activities .map((item, index) => timelineTemplate(item, index, data)) .join('')}
`; }; const skeletonTemplate = ` `; const myFiles = [ { id: 1, name: 'Illustrations', type: 'folder', itemCount: '20 Items', modified: '2 hours ago', details: [ { key: 'File type', value: 'Folder' }, { key: 'File size', value: '800 MB' }, { key: 'Storage used', value: '800 MB' }, { key: 'Files', value: '20 items' }, { key: 'File location', value: 'App Documentation' }, { key: 'Last opened', value: '05 Jul, 2023' }, { key: 'Last modified', value: '30 Jun, 2023', modifiedBy: 'John Doe' }, { key: 'Created date', value: '12 Feb, 2023' } ], admin: { name: 'Kristine Cadena', avatar: 'team/2.webp' }, assignees: [ { name: 'Kristine Cadena', avatar: 'team/2.webp' }, { name: 'Adrian', avatar: 'team/4.webp' }, { name: 'Charles', avatar: 'team/3.webp' }, { name: 'Jennifer Schramm', avatar: 'team/avatar.webp' }, { name: 'Roy Anderson', avatar: 'team/r.webp' } ], fileLink: 'http://sample.info/?insect=fireman&porter=attraction# cave', activities: [ { time: '4:33pm', icon: 'fa-solid fa-share-nodes', iconColor: 'success', title: `You have shared this file.`, tasker: 'John N. Ward', assignees: [ { name: 'Michael Jenkins', avatar: 'team/9.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/25.webp' }, { name: 'Jennifer Schramm', avatar: 'team/32.webp' }, { name: 'Kristine Cadena', avatar: 'team/avatar.webp' } ], more: '+1' }, { time: '12:30pm', icon: 'fa-solid fa-edit', iconColor: 'danger', title: 'You have edited this file.', tasker: 'John N. Ward' }, { time: '9:33am', icon: 'fa-solid fa-cloud-arrow-up', iconColor: 'info', title: 'You have uploaded this file.', tasker: 'John N. Ward' } ] }, { id: 2, name: 'Retro Ring.jpg', type: 'image', size: '980 KB', img: 'img/file-manager/9.png', modified: '10 July, 2023', details: [ { key: 'File type', value: 'Folder' }, { key: 'File size', value: '520 MB' }, { key: 'Storage used', value: '520 MB' }, { key: 'Files', value: '16 items' }, { key: 'File location', value: 'App Documentation' }, { key: 'Last opened', value: '05 Jul, 2023' }, { key: 'Last modified', value: '10 July, 2023', modifiedBy: 'John Doe' }, { key: 'Created date', value: '12 Feb, 2023' } ], admin: { name: 'Raymond Mims', avatar: 'team/10.webp' }, assignees: [ { name: 'Raymond Mims', avatar: 'team/10.webp' }, { name: 'Jonathan', avatar: 'team/11.webp' }, { name: 'Jack', avatar: 'team/12.webp' }, { name: 'Jessica', avatar: 'team/13.webp' } ], fileLink: 'http://sample.info/?insect=fireman&porter=attraction# cave', activities: [ { time: '4:33pm', icon: 'fa-solid fa-swatchbook', iconColor: 'success', title: `Designing the dungeon`, tasker: 'Igor Borvibson', assignees: [ { name: 'Roy Anderson', avatar: 'team/11.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/35.webp' }, { name: 'Jennifer Schramm', avatar: 'team/23.webp' }, { name: 'Kristine Cadena', avatar: 'team/57.webp' } ], more: '+2' }, { time: '03:00pm', icon: 'fa-solid fa-edit', iconColor: 'danger', title: 'You have edited this file.', tasker: 'John N. Ward' }, { time: '9:00am', icon: 'fa-solid fa-cloud-arrow-up', iconColor: 'info', title: 'You have uploaded this file.', tasker: 'John N. Ward' } ] }, { id: 3, name: 'Brand Identity', type: 'folder', itemCount: '16 Items', modified: '2 hours ago', details: [ { key: 'File type', value: 'Folder' }, { key: 'File size', value: '800 MB' }, { key: 'Storage used', value: '800 MB' }, { key: 'Files', value: '20 items' }, { key: 'File location', value: 'App Documentation' }, { key: 'Last opened', value: '05 Jul, 2023' }, { key: 'Last modified', value: '30 Jun, 2023', modifiedBy: 'John Doe' }, { key: 'Created date', value: '12 Feb, 2023' } ], admin: { name: 'Carl', avatar: 'team/7.webp' }, assignees: [ { name: 'Carl', avatar: 'team/7.webp' }, { name: 'Robert Allan', avatar: 'team/21.webp' }, { name: 'Charles', avatar: 'team/3.webp' }, { name: 'Adrian', avatar: 'team/4.webp' }, { name: 'Sarah Gill', avatar: 'team/28.webp' } ], fileLink: 'http://sample.info/?insect=fireman&porter=attraction# cave', activities: [ { time: '4:33pm', icon: 'fa-solid fa-share-nodes', iconColor: 'success', title: `You have shared this file.`, tasker: 'John N. Ward', assignees: [ { name: 'Michael Jenkins', avatar: 'team/9.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/25.webp' }, { name: 'Jennifer Schramm', avatar: 'team/32.webp' }, { name: 'Kristine Cadena', avatar: 'team/avatar.webp' } ], more: '+1' }, { time: '12:30pm', icon: 'fa-solid fa-edit', iconColor: 'danger', title: 'You have edited this file.', tasker: 'John N. Ward' }, { time: '9:33am', icon: 'fa-solid fa-cloud-arrow-up', iconColor: 'info', title: 'You have uploaded this file.', tasker: 'John N. Ward' } ] }, { id: 4, name: 'World in Motion.mp4', type: 'video', video: 'video/2.mp4', size: '18 MB', modified: '15 July, 2023', details: [ { key: 'File type', value: 'Folder' }, { key: 'File size', value: '520 MB' }, { key: 'Storage used', value: '520 MB' }, { key: 'Files', value: '16 items' }, { key: 'File location', value: 'App Documentation' }, { key: 'Last opened', value: '05 Jul, 2023' }, { key: 'Last modified', value: '10 July, 2023', modifiedBy: 'John Doe' }, { key: 'Created date', value: '12 Feb, 2023' } ], admin: { name: 'William Grant', avatar: 'team/1.webp' }, assignees: [ { name: 'William Grant', avatar: 'team/1.webp' }, { name: 'Kristine Cadena', avatar: 'team/2.webp' }, { name: 'Charles', avatar: 'team/3.webp' } ], fileLink: 'http://sample.info/?insect=fireman&porter=attraction# cave', activities: [ { time: '4:33pm', icon: 'fa-solid fa-swatchbook', iconColor: 'success', title: `Designing the dungeon`, tasker: 'Igor Borvibson', assignees: [ { name: 'Roy Anderson', avatar: 'team/11.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/35.webp' }, { name: 'Jennifer Schramm', avatar: 'team/23.webp' }, { name: 'Kristine Cadena', avatar: 'team/57.webp' } ], more: '+2' }, { time: '03:00pm', icon: 'fa-solid fa-edit', iconColor: 'danger', title: 'You have edited this file.', tasker: 'John N. Ward' }, { time: '9:00am', icon: 'fa-solid fa-cloud-arrow-up', iconColor: 'info', title: 'You have uploaded this file.', tasker: 'John N. Ward' } ] }, { id: 5, name: 'UI Design', type: 'folder', itemCount: '10 Items', modified: '20 September, 2023', details: [ { key: 'File type', value: 'Folder' }, { key: 'File size', value: '520 MB' }, { key: 'Storage used', value: '520 MB' }, { key: 'Files', value: '16 items' }, { key: 'File location', value: 'App Documentation' }, { key: 'Last opened', value: '05 Jul, 2023' }, { key: 'Last modified', value: '10 July, 2023', modifiedBy: 'John Doe' }, { key: 'Created date', value: '12 Feb, 2023' } ], admin: { name: 'Luke Davies', avatar: 'team/5.webp' }, assignees: [ { name: 'Luke Davies', avatar: 'team/5.webp' }, { name: 'Sophie Grant', avatar: 'team/6.webp' }, { name: 'Jack', avatar: 'team/12.webp' }, { name: 'William Ellison', avatar: 'team/23.webp' }, { name: 'Jennifer Schramm', avatar: 'team/avatar.webp' } ], fileLink: 'http://sample.info/?insect=fireman&porter=attraction# cave', activities: [ { time: '4:33pm', icon: 'fa-solid fa-swatchbook', iconColor: 'success', title: `Designing the dungeon`, tasker: 'Igor Borvibson', assignees: [ { name: 'Roy Anderson', avatar: 'team/11.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/35.webp' }, { name: 'Jennifer Schramm', avatar: 'team/23.webp' }, { name: 'Kristine Cadena', avatar: 'team/57.webp' } ], more: '+2' }, { time: '03:00pm', icon: 'fa-solid fa-edit', iconColor: 'danger', title: 'You have edited this file.', tasker: 'John N. Ward' }, { time: '9:00am', icon: 'fa-solid fa-cloud-arrow-up', iconColor: 'info', title: 'You have uploaded this file.', tasker: 'John N. Ward' } ] }, { id: 6, name: 'Classic Clicks.png', type: 'image', size: '564 KB', img: 'img/file-manager/11.png', modified: '2 hours ago', details: [ { key: 'File type', value: 'Folder' }, { key: 'File size', value: '800 MB' }, { key: 'Storage used', value: '800 MB' }, { key: 'Files', value: '20 items' }, { key: 'File location', value: 'App Documentation' }, { key: 'Last opened', value: '05 Jul, 2023' }, { key: 'Last modified', value: '30 Jun, 2023', modifiedBy: 'John Doe' }, { key: 'Created date', value: '12 Feb, 2023' } ], admin: { name: 'William Grant', avatar: 'team/1.webp' }, assignees: [ { name: 'William Grant', avatar: 'team/1.webp' }, { name: 'Kristine Cadena', avatar: 'team/2.webp' }, { name: 'Charles', avatar: 'team/3.webp' }, { name: 'Jennifer Schramm', avatar: 'team/avatar.webp' } ], more: '+2', fileLink: 'http://sample.info/?insect=fireman&porter=attraction# cave', activities: [ { time: '4:33pm', icon: 'fa-solid fa-share-nodes', iconColor: 'success', title: `You have shared this file.`, tasker: 'John N. Ward', assignees: [ { name: 'Michael Jenkins', avatar: 'team/9.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/25.webp' }, { name: 'Jennifer Schramm', avatar: 'team/32.webp' }, { name: 'Kristine Cadena', avatar: 'team/avatar.webp' } ], more: '+1' }, { time: '12:30pm', icon: 'fa-solid fa-edit', iconColor: 'danger', title: 'You have edited this file.', tasker: 'John N. Ward' }, { time: '9:33am', icon: 'fa-solid fa-cloud-arrow-up', iconColor: 'info', title: 'You have uploaded this file.', tasker: 'John N. Ward' } ] }, { id: 7, name: 'Source Code', type: 'folder', itemCount: '21 Items', modified: '21 September, 2023', details: [ { key: 'File type', value: 'Folder' }, { key: 'File size', value: '520 MB' }, { key: 'Storage used', value: '520 MB' }, { key: 'Files', value: '16 items' }, { key: 'File location', value: 'App Documentation' }, { key: 'Last opened', value: '05 Jul, 2023' }, { key: 'Last modified', value: '10 July, 2023', modifiedBy: 'John Doe' }, { key: 'Created date', value: '12 Feb, 2023' } ], admin: { name: 'Robert Allan', avatar: 'team/21.webp' }, assignees: [ { name: 'Robert Allan', avatar: 'team/21.webp' }, { name: 'Molly William', avatar: 'team/27.webp' }, { name: 'Sarah Gill', avatar: 'team/28.webp' }, { name: 'Jennifer Schramm', avatar: 'team/avatar.webp' } ], fileLink: 'http://sample.info/?insect=fireman&porter=attraction# cave', activities: [ { time: '4:33pm', icon: 'fa-solid fa-swatchbook', iconColor: 'success', title: `Designing the dungeon`, tasker: 'Igor Borvibson', assignees: [ { name: 'Roy Anderson', avatar: 'team/11.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/35.webp' }, { name: 'Jennifer Schramm', avatar: 'team/23.webp' }, { name: 'Kristine Cadena', avatar: 'team/57.webp' } ], more: '+2' }, { time: '03:00pm', icon: 'fa-solid fa-edit', iconColor: 'danger', title: 'You have edited this file.', tasker: 'John N. Ward' }, { time: '9:00am', icon: 'fa-solid fa-cloud-arrow-up', iconColor: 'info', title: 'You have uploaded this file.', tasker: 'John N. Ward' } ] }, { id: 8, name: 'Code Backup', type: 'folder', itemCount: '19 Items', modified: '21 September, 2023', details: [ { key: 'File type', value: 'Folder' }, { key: 'File size', value: '520 MB' }, { key: 'Storage used', value: '520 MB' }, { key: 'Files', value: '16 items' }, { key: 'File location', value: 'App Documentation' }, { key: 'Last opened', value: '05 Jul, 2023' }, { key: 'Last modified', value: '10 July, 2023', modifiedBy: 'John Doe' }, { key: 'Created date', value: '12 Feb, 2023' } ], admin: { name: 'Rose Berry', avatar: 'team/18.webp' }, assignees: [ { name: 'Rose Berry', avatar: 'team/18.webp' }, { name: 'Tim Anderson', avatar: 'team/22.webp' }, { name: 'William Ellison', avatar: 'team/23.webp' }, { name: 'Jean Renoir', avatar: 'team/34.webp' }, { name: 'Stanly Drinkwater', avatar: 'team/35.webp' } ], fileLink: 'http://sample.info/?insect=fireman&porter=attraction# cave', activities: [ { time: '4:33pm', icon: 'fa-solid fa-swatchbook', iconColor: 'success', title: `Designing the dungeon`, tasker: 'Igor Borvibson', assignees: [ { name: 'Roy Anderson', avatar: 'team/11.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/35.webp' }, { name: 'Jennifer Schramm', avatar: 'team/23.webp' }, { name: 'Kristine Cadena', avatar: 'team/57.webp' } ], more: '+2' }, { time: '03:00pm', icon: 'fa-solid fa-edit', iconColor: 'danger', title: 'You have edited this file.', tasker: 'John N. Ward' }, { time: '9:00am', icon: 'fa-solid fa-cloud-arrow-up', iconColor: 'info', title: 'You have uploaded this file.', tasker: 'John N. Ward' } ] }, { id: 9, name: 'Trip List.xls', type: 'xls', size: '553 KB', modified: '2 hours ago', details: [ { key: 'File type', value: 'Folder' }, { key: 'File size', value: '800 MB' }, { key: 'Storage used', value: '800 MB' }, { key: 'Files', value: '20 items' }, { key: 'File location', value: 'App Documentation' }, { key: 'Last opened', value: '05 Jul, 2023' }, { key: 'Last modified', value: '30 Jun, 2023', modifiedBy: 'John Doe' }, { key: 'Created date', value: '12 Feb, 2023' } ], admin: { name: 'Warren', avatar: 'team/24.webp' }, assignees: [ { name: 'Warren', avatar: 'team/24.webp' }, { name: 'William Ellison', avatar: 'team/23.webp' }, { name: 'Charles', avatar: 'team/3.webp' }, { name: 'Jennifer Schramm', avatar: 'team/avatar.webp' } ], more: '+3', fileLink: 'http://sample.info/?insect=fireman&porter=attraction# cave', activities: [ { time: '4:33pm', icon: 'fa-solid fa-share-nodes', iconColor: 'success', title: `You have shared this file.`, tasker: 'John N. Ward', assignees: [ { name: 'Michael Jenkins', avatar: 'team/9.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/25.webp' }, { name: 'Jennifer Schramm', avatar: 'team/32.webp' }, { name: 'Kristine Cadena', avatar: 'team/avatar.webp' } ], more: '+1' }, { time: '12:30pm', icon: 'fa-solid fa-edit', iconColor: 'danger', title: 'You have edited this file.', tasker: 'John N. Ward' }, { time: '9:33am', icon: 'fa-solid fa-cloud-arrow-up', iconColor: 'info', title: 'You have uploaded this file.', tasker: 'John N. Ward' } ] }, { id: 10, name: 'Archive.zip', type: 'zip', size: '12 MB', modified: '10 July, 2023', details: [ { key: 'File type', value: 'Folder' }, { key: 'File size', value: '520 MB' }, { key: 'Storage used', value: '520 MB' }, { key: 'Files', value: '16 items' }, { key: 'File location', value: 'App Documentation' }, { key: 'Last opened', value: '05 Jul, 2023' }, { key: 'Last modified', value: '10 July, 2023', modifiedBy: 'John Doe' }, { key: 'Created date', value: '12 Feb, 2023' } ], admin: { name: 'Nicola Allan', avatar: 'team/16.webp' }, assignees: [ { name: 'Nicola Allan', avatar: 'team/16.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/19.webp' }, { name: 'Charles', avatar: 'team/3.webp' }, { name: 'Jennifer Schramm', avatar: 'team/avatar.webp' } ], more: '+8', fileLink: 'http://sample.info/?insect=fireman&porter=attraction# cave', activities: [ { time: '4:33pm', icon: 'fa-solid fa-swatchbook', iconColor: 'success', title: `Designing the dungeon`, tasker: 'Igor Borvibson', assignees: [ { name: 'Roy Anderson', avatar: 'team/11.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/35.webp' }, { name: 'Jennifer Schramm', avatar: 'team/23.webp' }, { name: 'Kristine Cadena', avatar: 'team/57.webp' } ], more: '+2' }, { time: '03:00pm', icon: 'fa-solid fa-edit', iconColor: 'danger', title: 'You have edited this file.', tasker: 'John N. Ward' }, { time: '9:00am', icon: 'fa-solid fa-cloud-arrow-up', iconColor: 'info', title: 'You have uploaded this file.', tasker: 'John N. Ward' } ] }, { id: 11, name: 'Worldly Wonders.jpg', type: 'image', size: '990 KB', img: 'img/file-manager/12.png', modified: '10 September, 2023', details: [ { key: 'File type', value: 'Folder' }, { key: 'File size', value: '520 MB' }, { key: 'Storage used', value: '520 MB' }, { key: 'Files', value: '16 items' }, { key: 'File location', value: 'App Documentation' }, { key: 'Last opened', value: '05 Jul, 2023' }, { key: 'Last modified', value: '10 July, 2023', modifiedBy: 'John Doe' }, { key: 'Created date', value: '12 Feb, 2023' } ], admin: { name: 'Carry Anna', avatar: 'team/1.webp' }, assignees: [ { name: 'William Grant', avatar: 'team/1.webp' }, { name: 'Kristine Cadena', avatar: 'team/2.webp' } ], fileLink: 'http://sample.info/?insect=fireman&porter=attraction# cave', activities: [ { time: '4:33pm', icon: 'fa-solid fa-swatchbook', iconColor: 'success', title: `Designing the dungeon`, tasker: 'Igor Borvibson', assignees: [ { name: 'Roy Anderson', avatar: 'team/11.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/35.webp' }, { name: 'Jennifer Schramm', avatar: 'team/23.webp' }, { name: 'Kristine Cadena', avatar: 'team/57.webp' } ], more: '+2' }, { time: '03:00pm', icon: 'fa-solid fa-edit', iconColor: 'danger', title: 'You have edited this file.', tasker: 'John N. Ward' }, { time: '9:00am', icon: 'fa-solid fa-cloud-arrow-up', iconColor: 'info', title: 'You have uploaded this file.', tasker: 'John N. Ward' } ] }, { id: 12, name: 'Phoenix Logs.csv', type: 'csv', size: '546 KB', modified: '2 hours ago', details: [ { key: 'File type', value: 'Folder' }, { key: 'File size', value: '800 MB' }, { key: 'Storage used', value: '800 MB' }, { key: 'Files', value: '20 items' }, { key: 'File location', value: 'App Documentation' }, { key: 'Last opened', value: '05 Jul, 2023' }, { key: 'Last modified', value: '30 Jun, 2023', modifiedBy: 'John Doe' }, { key: 'Created date', value: '12 Feb, 2023' } ], admin: { name: 'William Grant', avatar: 'team/1.webp' }, assignees: [ { name: 'William Grant', avatar: 'team/1.webp' }, { name: 'Kristine Cadena', avatar: 'team/2.webp' }, { name: 'Charles', avatar: 'team/3.webp' } ], fileLink: 'http://sample.info/?insect=fireman&porter=attraction# cave', activities: [ { time: '4:33pm', icon: 'fa-solid fa-share-nodes', iconColor: 'success', title: `You have shared this file.`, tasker: 'John N. Ward', assignees: [ { name: 'Michael Jenkins', avatar: 'team/9.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/25.webp' }, { name: 'Jennifer Schramm', avatar: 'team/32.webp' }, { name: 'Kristine Cadena', avatar: 'team/avatar.webp' } ], more: '+1' }, { time: '12:30pm', icon: 'fa-solid fa-edit', iconColor: 'danger', title: 'You have edited this file.', tasker: 'John N. Ward' }, { time: '9:33am', icon: 'fa-solid fa-cloud-arrow-up', iconColor: 'info', title: 'You have uploaded this file.', tasker: 'John N. Ward' } ] }, { id: 13, name: 'Notes.xlx', type: 'xlx', size: '698 KB', modified: '2 hours ago', details: [ { key: 'File type', value: 'Folder' }, { key: 'File size', value: '800 MB' }, { key: 'Storage used', value: '800 MB' }, { key: 'Files', value: '20 items' }, { key: 'File location', value: 'App Documentation' }, { key: 'Last opened', value: '05 Jul, 2023' }, { key: 'Last modified', value: '30 Jun, 2023', modifiedBy: 'John Doe' }, { key: 'Created date', value: '12 Feb, 2023' } ], admin: { name: 'Kristine Cadena', avatar: 'team/70.webp' }, assignees: [ { name: 'Michael Jenkins', avatar: 'team/9.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/25.webp' }, { name: 'Jennifer Schramm', avatar: 'team/32.webp' }, { name: 'Kristine Cadena', avatar: 'team/avatar.webp' } ], fileLink: 'http://sample.info/?insect=fireman&porter=attraction# cave', activities: [ { time: '4:33pm', icon: 'fa-solid fa-share-nodes', iconColor: 'success', title: `You have shared this file.`, tasker: 'John N. Ward', assignees: [ { name: 'Michael Jenkins', avatar: 'team/9.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/25.webp' }, { name: 'Jennifer Schramm', avatar: 'team/32.webp' }, { name: 'Kristine Cadena', avatar: 'team/avatar.webp' } ], more: '+1' }, { time: '12:30pm', icon: 'fa-solid fa-edit', iconColor: 'danger', title: 'You have edited this file.', tasker: 'John N. Ward' }, { time: '9:33am', icon: 'fa-solid fa-cloud-arrow-up', iconColor: 'info', title: 'You have uploaded this file.', tasker: 'John N. Ward' } ] }, { id: 14, name: 'Moving Escapes.mp4', type: 'video', size: '12 MB', video: 'video/3.mp4', modified: '4 hours ago', details: [ { key: 'File type', value: 'Folder' }, { key: 'File size', value: '800 MB' }, { key: 'Storage used', value: '800 MB' }, { key: 'Files', value: '20 items' }, { key: 'File location', value: 'App Documentation' }, { key: 'Last opened', value: '05 Jul, 2023' }, { key: 'Last modified', value: '30 Jun, 2023', modifiedBy: 'John Doe' }, { key: 'Created date', value: '12 Feb, 2023' } ], admin: { name: 'Kristine Cadena', avatar: 'team/70.webp' }, assignees: [ { name: 'Michael Jenkins', avatar: 'team/9.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/25.webp' }, { name: 'Jennifer Schramm', avatar: 'team/32.webp' }, { name: 'Kristine Cadena', avatar: 'team/avatar.webp' } ], fileLink: 'http://sample.info/?insect=fireman&porter=attraction# cave', activities: [ { time: '4:33pm', icon: 'fa-solid fa-share-nodes', iconColor: 'success', title: `You have shared this file.`, tasker: 'John N. Ward', assignees: [ { name: 'Michael Jenkins', avatar: 'team/9.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/25.webp' }, { name: 'Jennifer Schramm', avatar: 'team/32.webp' }, { name: 'Kristine Cadena', avatar: 'team/avatar.webp' } ], more: '+1' }, { time: '12:30pm', icon: 'fa-solid fa-edit', iconColor: 'danger', title: 'You have edited this file.', tasker: 'John N. Ward' }, { time: '9:33am', icon: 'fa-solid fa-cloud-arrow-up', iconColor: 'info', title: 'You have uploaded this file.', tasker: 'John N. Ward' } ] }, { id: 15, name: 'API Documentation.pdf', type: 'pdf', size: '4 MB', modified: '10 July, 2023', details: [ { key: 'File type', value: 'Folder' }, { key: 'File size', value: '520 MB' }, { key: 'Storage used', value: '520 MB' }, { key: 'Files', value: '16 items' }, { key: 'File location', value: 'App Documentation' }, { key: 'Last opened', value: '05 Jul, 2023' }, { key: 'Last modified', value: '10 July, 2023', modifiedBy: 'John Doe' }, { key: 'Created date', value: '12 Feb, 2023' } ], admin: { name: 'Carry Anna', avatar: 'team/71.webp' }, assignees: [ { name: 'Michael Jenkins', avatar: 'team/10.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/26.webp' }, { name: 'Jennifer Schramm', avatar: 'team/21.webp' }, { name: 'Kristine Cadena', avatar: 'team/12.webp' } ], fileLink: 'http://sample.info/?insect=fireman&porter=attraction# cave', activities: [ { time: '4:33pm', icon: 'fa-solid fa-swatchbook', iconColor: 'success', title: `Designing the dungeon`, tasker: 'Igor Borvibson', assignees: [ { name: 'Roy Anderson', avatar: 'team/11.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/35.webp' }, { name: 'Jennifer Schramm', avatar: 'team/23.webp' }, { name: 'Kristine Cadena', avatar: 'team/57.webp' } ], more: '+2' }, { time: '03:00pm', icon: 'fa-solid fa-edit', iconColor: 'danger', title: 'You have edited this file.', tasker: 'John N. Ward' }, { time: '9:00am', icon: 'fa-solid fa-cloud-arrow-up', iconColor: 'info', title: 'You have uploaded this file.', tasker: 'John N. Ward' } ] }, { id: 16, name: 'Vintage Car.jpg', type: 'image', size: '980 KB', img: 'img/file-manager/13.png', modified: '15 July, 2023', details: [ { key: 'File type', value: 'Folder' }, { key: 'File size', value: '520 MB' }, { key: 'Storage used', value: '520 MB' }, { key: 'Files', value: '16 items' }, { key: 'File location', value: 'App Documentation' }, { key: 'Last opened', value: '05 Jul, 2023' }, { key: 'Last modified', value: '10 July, 2023', modifiedBy: 'John Doe' }, { key: 'Created date', value: '12 Feb, 2023' } ], admin: { name: 'Carry Anna', avatar: 'team/71.webp' }, assignees: [ { name: 'Michael Jenkins', avatar: 'team/10.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/26.webp' }, { name: 'Jennifer Schramm', avatar: 'team/21.webp' }, { name: 'Kristine Cadena', avatar: 'team/12.webp' } ], fileLink: 'http://sample.info/?insect=fireman&porter=attraction# cave', activities: [ { time: '4:33pm', icon: 'fa-solid fa-swatchbook', iconColor: 'success', title: `Designing the dungeon`, tasker: 'Igor Borvibson', assignees: [ { name: 'Roy Anderson', avatar: 'team/11.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/35.webp' }, { name: 'Jennifer Schramm', avatar: 'team/23.webp' }, { name: 'Kristine Cadena', avatar: 'team/57.webp' } ], more: '+2' }, { time: '03:00pm', icon: 'fa-solid fa-edit', iconColor: 'danger', title: 'You have edited this file.', tasker: 'John N. Ward' }, { time: '9:00am', icon: 'fa-solid fa-cloud-arrow-up', iconColor: 'info', title: 'You have uploaded this file.', tasker: 'John N. Ward' } ] }, { id: 17, name: 'Sleek Rides.png', type: 'image', size: '980 KB', img: 'img/file-manager/15.png', modified: '16 July, 2023', details: [ { key: 'File type', value: 'Folder' }, { key: 'File size', value: '520 MB' }, { key: 'Storage used', value: '520 MB' }, { key: 'Files', value: '16 items' }, { key: 'File location', value: 'App Documentation' }, { key: 'Last opened', value: '05 Jul, 2023' }, { key: 'Last modified', value: '10 July, 2023', modifiedBy: 'John Doe' }, { key: 'Created date', value: '12 Feb, 2023' } ], admin: { name: 'Carry Anna', avatar: 'team/71.webp' }, assignees: [ { name: 'Michael Jenkins', avatar: 'team/10.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/26.webp' }, { name: 'Jennifer Schramm', avatar: 'team/21.webp' }, { name: 'Kristine Cadena', avatar: 'team/12.webp' } ], fileLink: 'http://sample.info/?insect=fireman&porter=attraction# cave', activities: [ { time: '4:33pm', icon: 'fa-solid fa-swatchbook', iconColor: 'success', title: `Designing the dungeon`, tasker: 'Igor Borvibson', assignees: [ { name: 'Roy Anderson', avatar: 'team/11.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/35.webp' }, { name: 'Jennifer Schramm', avatar: 'team/23.webp' }, { name: 'Kristine Cadena', avatar: 'team/57.webp' } ], more: '+2' }, { time: '03:00pm', icon: 'fa-solid fa-edit', iconColor: 'danger', title: 'You have edited this file.', tasker: 'John N. Ward' } ] }, { id: 18, name: 'Notes.txt', type: 'zip', size: '29 MB', modified: '17 July, 2023', details: [ { key: 'File type', value: 'Folder' }, { key: 'File size', value: '520 MB' }, { key: 'Storage used', value: '520 MB' }, { key: 'Files', value: '16 items' }, { key: 'File location', value: 'App Documentation' }, { key: 'Last opened', value: '05 Jul, 2023' }, { key: 'Last modified', value: '10 July, 2023', modifiedBy: 'John Doe' }, { key: 'Created date', value: '12 Feb, 2023' } ], admin: { name: 'Carry Anna', avatar: 'team/71.webp' }, assignees: [ { name: 'Michael Jenkins', avatar: 'team/10.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/26.webp' }, { name: 'Jennifer Schramm', avatar: 'team/21.webp' }, { name: 'Kristine Cadena', avatar: 'team/12.webp' } ], fileLink: 'http://sample.info/?insect=fireman&porter=attraction# cave', activities: [ { time: '4:33pm', icon: 'fa-solid fa-swatchbook', iconColor: 'success', title: `Designing the dungeon`, tasker: 'Igor Borvibson', assignees: [ { name: 'Roy Anderson', avatar: 'team/11.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/35.webp' }, { name: 'Jennifer Schramm', avatar: 'team/23.webp' }, { name: 'Kristine Cadena', avatar: 'team/57.webp' } ], more: '+2' }, { time: '03:00pm', icon: 'fa-solid fa-edit', iconColor: 'danger', title: 'You have edited this file.', tasker: 'John N. Ward' }, { time: '9:00am', icon: 'fa-solid fa-cloud-arrow-up', iconColor: 'info', title: 'You have uploaded this file.', tasker: 'John N. Ward' } ] }, { id: 19, name: 'Mountain Majesty.jpg', type: 'image', size: '2 MB', img: 'img/file-manager/16.png', modified: '17 July, 2023', details: [ { key: 'File type', value: 'Folder' }, { key: 'File size', value: '520 MB' }, { key: 'Storage used', value: '520 MB' }, { key: 'Files', value: '16 items' }, { key: 'File location', value: 'App Documentation' }, { key: 'Last opened', value: '05 Jul, 2023' }, { key: 'Last modified', value: '10 July, 2023', modifiedBy: 'John Doe' }, { key: 'Created date', value: '12 Feb, 2023' } ], admin: { name: 'Carry Anna', avatar: 'team/71.webp' }, assignees: [ { name: 'Michael Jenkins', avatar: 'team/10.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/26.webp' }, { name: 'Jennifer Schramm', avatar: 'team/21.webp' }, { name: 'Kristine Cadena', avatar: 'team/12.webp' } ], fileLink: 'http://sample.info/?insect=fireman&porter=attraction# cave', activities: [ { time: '4:33pm', icon: 'fa-solid fa-swatchbook', iconColor: 'success', title: `Designing the dungeon`, tasker: 'Igor Borvibson', assignees: [ { name: 'Roy Anderson', avatar: 'team/11.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/35.webp' }, { name: 'Jennifer Schramm', avatar: 'team/23.webp' }, { name: 'Kristine Cadena', avatar: 'team/57.webp' } ], more: '+2' }, { time: '03:00pm', icon: 'fa-solid fa-edit', iconColor: 'danger', title: 'You have edited this file.', tasker: 'John N. Ward' } ] }, { id: 20, name: 'Job Confirmation.doc', type: 'doc', size: '129 KB', modified: '17 July, 2023', details: [ { key: 'File type', value: 'Folder' }, { key: 'File size', value: '520 MB' }, { key: 'Storage used', value: '520 MB' }, { key: 'Files', value: '16 items' }, { key: 'File location', value: 'App Documentation' }, { key: 'Last opened', value: '05 Jul, 2023' }, { key: 'Last modified', value: '10 July, 2023', modifiedBy: 'John Doe' }, { key: 'Created date', value: '12 Feb, 2023' } ], admin: { name: 'Carry Anna', avatar: 'team/71.webp' }, assignees: [ { name: 'Michael Jenkins', avatar: 'team/10.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/26.webp' }, { name: 'Jennifer Schramm', avatar: 'team/21.webp' }, { name: 'Kristine Cadena', avatar: 'team/12.webp' } ], fileLink: 'http://sample.info/?insect=fireman&porter=attraction# cave', activities: [ { time: '4:33pm', icon: 'fa-solid fa-swatchbook', iconColor: 'success', title: `Designing the dungeon`, tasker: 'Igor Borvibson', assignees: [ { name: 'Roy Anderson', avatar: 'team/11.webp' }, { name: 'Ansolo Lazinatov', avatar: 'team/35.webp' }, { name: 'Jennifer Schramm', avatar: 'team/23.webp' }, { name: 'Kristine Cadena', avatar: 'team/57.webp' } ], more: '+2' }, { time: '03:00pm', icon: 'fa-solid fa-edit', iconColor: 'danger', title: 'You have edited this file.', tasker: 'John N. Ward' }, { time: '9:00am', icon: 'fa-solid fa-cloud-arrow-up', iconColor: 'info', title: 'You have uploaded this file.', tasker: 'John N. Ward' } ] } ]; const fileManagerInit = () => { const fileContainer = document.querySelector('[data-files-container]'); const fileDetailsContainer = document.querySelector( '[data-details-container]' ); const fileDetails = fileDetailsContainer.querySelector('[data-file-details]'); const filesSelected = document.querySelector('[data-files-selected]'); const fileManager = document.querySelector( '[data-collapse-filemanager-sidebar]' ); const sidebarToggleBtn = document.querySelector('[data-toggle-sidebar]'); const fileDetailsToggleBtns = document.querySelectorAll( '[data-toggle-file-details]' ); const thumbnails = document.querySelectorAll('[data-file-thumbnail]'); const removeBulkCheck = document.querySelector('[data-remove-bulk-check]'); const bulkSelectReplaceEl = document.querySelector( '#file-manager-replace-element' ); const bulkSelectActions = document.querySelector('#file-manager-actions'); const bulkSelectEl = document.querySelector('[data-bulk-select]'); const bulkSelectInstance = window.phoenix.BulkSelect.getInstance(bulkSelectEl); let count = 0; let selectedFiles = []; let clickTimer = null; const updateUI = () => { if (count > 0) { filesSelected.textContent = `${count} ${ count === 1 ? 'item' : 'items' } selected`; } if (count === 1) { const template = getFileDetailsTemplate(selectedFiles[0]); fileDetails.innerHTML = template; } else { fileDetails.innerHTML = `
${count > 0 ? `
${count} items selected
` : ''} ${ count === 0 ? "
Select an item to view more information
" : '' }
`; } }; const elements = []; thumbnails.forEach((thumbnail, index) => { const element = {}; const src = thumbnail.getAttribute('data-file-thumbnail'); element.href = `../../assets/${src}`; element.type = src.split('.')[1] === 'mp4' ? 'video' : 'image'; elements.push(element); thumbnail.setAttribute('data-file-index', index); }); fileContainer.addEventListener('click', e => { if (clickTimer !== null) { clearTimeout(clickTimer); clickTimer = null; } if (e.target.tagName === 'INPUT') { const checkBox = e.target; if (checkBox.hasAttribute('data-bulk-select')) { count = bulkSelectInstance.getSelectedRows().length; selectedFiles = [...myFiles.slice(0, count)]; } else { const currentData = myFiles.find( file => file.id === parseInt(checkBox.getAttribute('data-file'), 10) ); if (checkBox.checked) { count += 1; selectedFiles.push(currentData); } else { selectedFiles = selectedFiles.filter( file => file.id !== currentData.id ); count -= 1; } } if (count === 1) { fileDetails.innerHTML = skeletonTemplate; } else if (count > 1) { fileDetails.innerHTML = `
`; } filesSelected.innerHTML = `
`; if (count === 0) { bulkSelectActions.classList.add('d-none'); bulkSelectReplaceEl.classList.add('d-block'); bulkSelectReplaceEl.classList.remove('d-none'); } else { bulkSelectReplaceEl.classList.add('d-none'); bulkSelectActions.classList.add('d-block'); bulkSelectActions.classList.remove('d-none'); } clickTimer = setTimeout(() => { clickTimer = null; updateUI(); }, 300); } }); fileContainer.addEventListener('dblclick', e => { const checkBox = e.target; if (checkBox.hasAttribute('data-file')) { bulkSelectInstance.deselectAll(bulkSelectReplaceEl, bulkSelectActions); selectedFiles = []; count = 1; const currentData = myFiles.find( file => file.id === parseInt(checkBox.getAttribute('data-file'), 10) ); selectedFiles.push(currentData); e.target.previousElementSibling.checked = true; bulkSelectReplaceEl.classList.add('d-none'); bulkSelectActions.classList.add('d-block'); bulkSelectActions.classList.remove('d-none'); updateUI(); } if (checkBox.hasAttribute('data-file-thumbnail')) { window .GLightbox({ elements, autoplayVideos: true, startAt: parseInt(checkBox.getAttribute('data-file-index'), 10) }) .open(); } }); const updateViewDetailsTooltip = () => { fileDetailsToggleBtns.forEach(fileDetailsToggleBtn => { if (window.innerWidth > 1539) { if (fileDetailsContainer.classList.contains('d-xxl-none')) { fileDetailsToggleBtn.setAttribute('data-bs-title', 'Show details'); } else { fileDetailsToggleBtn.setAttribute('data-bs-title', 'Hide details'); } } else { fileDetailsToggleBtn.setAttribute('data-bs-title', 'Show details'); } const tooltip = window.bootstrap.Tooltip.getInstance(fileDetailsToggleBtn); if (tooltip) { tooltip.setContent({ '.tooltip-inner': fileDetailsToggleBtn.getAttribute('data-bs-title') }); } else { window.bootstrap.Tooltip(fileDetailsToggleBtn); } }); }; fileDetailsToggleBtns.forEach(fileDetailsToggleBtn => { fileDetailsToggleBtn.addEventListener('click', () => { if (window.innerWidth > 1539) { if (fileDetailsContainer.classList.contains('d-xxl-none')) { fileDetailsContainer.classList.remove('d-xxl-none'); } else { fileDetailsContainer.classList.add('d-xxl-none'); } if ( fileDetailsContainer.previousElementSibling.classList.contains( 'w-xxl-100' ) ) { fileDetailsContainer.previousElementSibling.classList.remove( 'w-xxl-100' ); } else { fileDetailsContainer.previousElementSibling.classList.add( 'w-xxl-100' ); } } updateViewDetailsTooltip(); }); }); window.addEventListener('load', () => updateViewDetailsTooltip()); window.addEventListener('resize', () => updateViewDetailsTooltip()); removeBulkCheck.addEventListener('click', () => { if (bulkSelectInstance) { bulkSelectInstance.deselectAll(bulkSelectReplaceEl, bulkSelectActions); selectedFiles = []; count = 0; updateUI(); } }); sidebarToggleBtn.addEventListener('click', () => { fileManager.classList.toggle('show-sidebar'); }); }; const { docReady } = window.phoenix.utils; docReady(fileManagerInit); })); //# sourceMappingURL=file-manager.js.map