init commit,

This commit is contained in:
louiscklaw
2025-05-28 09:55:51 +08:00
commit efe70ceb69
8042 changed files with 951668 additions and 0 deletions

View File

@@ -0,0 +1,96 @@
import { _mock } from './_mock';
import { _tags, _fileNames } from './assets';
// ----------------------------------------------------------------------
const GB = 1000000000 * 24;
const FOLDERS = ['Docs', 'Projects', 'Work', 'Training', 'Sport', 'Foods'];
const URLS = [
_mock.image.cover(1),
'https://www.cloud.com/s/c218bo6kjuqyv66/design_suriname_2015.mp3',
'https://www.cloud.com/s/c218bo6kjuqyv66/expertise_2015_conakry_sao-tome-and-principe_gender.mp4',
'https://www.cloud.com/s/c218bo6kjuqyv66/money-popup-crack.pdf',
_mock.image.cover(3),
_mock.image.cover(5),
'https://www.cloud.com/s/c218bo6kjuqyv66/large_news.txt',
'https://www.cloud.com/s/c218bo6kjuqyv66/nauru-6015-small-fighter-left-gender.psd',
'https://www.cloud.com/s/c218bo6kjuqyv66/tv-xs.doc',
'https://www.cloud.com/s/c218bo6kjuqyv66/gustavia-entertainment-productivity.docx',
'https://www.cloud.com/s/c218bo6kjuqyv66/vintage_bahrain_saipan.xls',
'https://www.cloud.com/s/c218bo6kjuqyv66/indonesia-quito-nancy-grace-left-glad.xlsx',
'https://www.cloud.com/s/c218bo6kjuqyv66/legislation-grain.zip',
'https://www.cloud.com/s/c218bo6kjuqyv66/large_energy_dry_philippines.rar',
'https://www.cloud.com/s/c218bo6kjuqyv66/footer-243-ecuador.iso',
'https://www.cloud.com/s/c218bo6kjuqyv66/kyrgyzstan-04795009-picabo-street-guide-style.ai',
'https://www.cloud.com/s/c218bo6kjuqyv66/india-data-large-gk-chesterton-mother.esp',
'https://www.cloud.com/s/c218bo6kjuqyv66/footer-barbados-celine-dion.ppt',
'https://www.cloud.com/s/c218bo6kjuqyv66/socio_respectively_366996.pptx',
'https://www.cloud.com/s/c218bo6kjuqyv66/socio_ahead_531437_sweden_popup.wav',
'https://www.cloud.com/s/c218bo6kjuqyv66/trinidad_samuel-morse_bring.m4v',
_mock.image.cover(11),
_mock.image.cover(17),
'https://www.cloud.com/s/c218bo6kjuqyv66/xl_david-blaine_component_tanzania_books.pdf',
];
const SHARED_PERSONS = Array.from({ length: 20 }, (_, index) => ({
id: _mock.id(index),
name: _mock.fullName(index),
email: _mock.email(index),
avatarUrl: _mock.image.avatar(index),
permission: index % 2 ? 'view' : 'edit',
}));
export const FILE_TYPE_OPTIONS = [
'folder',
'txt',
'zip',
'audio',
'image',
'video',
'word',
'excel',
'powerpoint',
'pdf',
'photoshop',
'illustrator',
];
// ----------------------------------------------------------------------
const shared = (index: number) =>
(index === 0 && SHARED_PERSONS.slice(0, 5)) ||
(index === 1 && SHARED_PERSONS.slice(5, 9)) ||
(index === 2 && SHARED_PERSONS.slice(9, 11)) ||
(index === 3 && SHARED_PERSONS.slice(11, 12)) ||
[];
export const _folders = FOLDERS.map((name, index) => ({
id: `${_mock.id(index)}_folder`,
name,
type: 'folder',
url: URLS[index],
shared: shared(index),
tags: _tags.slice(0, 5),
size: GB / ((index + 1) * 10),
totalFiles: (index + 1) * 100,
createdAt: _mock.time(index),
modifiedAt: _mock.time(index),
isFavorited: _mock.boolean(index + 1),
}));
export const _files = _fileNames.map((name, index) => ({
id: `${_mock.id(index)}_file`,
name,
url: URLS[index],
shared: shared(index),
tags: _tags.slice(0, 5),
size: GB / ((index + 1) * 500),
createdAt: _mock.time(index),
modifiedAt: _mock.time(index),
type: `${name.split('.').pop()}`,
isFavorited: _mock.boolean(index + 1),
}));
export const _allFiles = [..._folders, ..._files];