first commit
This commit is contained in:
531
_mockApis/apps/chat/index.ts
Executable file
531
_mockApis/apps/chat/index.ts
Executable file
@@ -0,0 +1,531 @@
|
||||
import mock from '../../mockAdapter';
|
||||
import { Chance } from 'chance';
|
||||
import type { ChatType } from '@/types/apps/ChatType';
|
||||
import { sub } from 'date-fns';
|
||||
import { uniqueId } from 'lodash';
|
||||
|
||||
import user1 from '@/assets/images/profile/user-2.jpg';
|
||||
import user2 from '@/assets/images/profile/user-3.jpg';
|
||||
import user3 from '@/assets/images/profile/user-4.jpg';
|
||||
import user4 from '@/assets/images/profile/user-5.jpg';
|
||||
import user5 from '@/assets/images/profile/user-6.jpg';
|
||||
import user6 from '@/assets/images/profile/user-7.jpg';
|
||||
import user7 from '@/assets/images/profile/user-8.jpg';
|
||||
|
||||
import background1 from '@/assets/images/products/product-1.jpg';
|
||||
import background2 from '@/assets/images/products/product-2.jpg';
|
||||
import background3 from '@/assets/images/products/product-3.jpg';
|
||||
import background4 from '@/assets/images/products/product-4.jpg';
|
||||
|
||||
|
||||
import adobe from '@/assets/images/chat/icon-adobe.svg';
|
||||
import chrome from '@/assets/images/chat/icon-chrome.svg';
|
||||
import figma from '@/assets/images/chat/icon-figma.svg';
|
||||
import java from '@/assets/images/chat/icon-javascript.svg';
|
||||
import zip from '@/assets/images/chat/icon-zip-folder.svg';
|
||||
|
||||
const chance = new Chance();
|
||||
|
||||
// const ChatData: ChatTypes[] = [
|
||||
const ChatData: ChatType[] = [
|
||||
{
|
||||
id: 1,
|
||||
name: 'James Johnson',
|
||||
status: 'online',
|
||||
thumb: user2,
|
||||
recent: false,
|
||||
chatHistory: [
|
||||
{
|
||||
createdAt: sub(new Date(), { hours: 1 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 1,
|
||||
type: 'text',
|
||||
attachment: [
|
||||
{ icon: adobe, file: 'service-task.pdf', fileSize: '2MB' },
|
||||
{ icon: chrome, file: 'homepage-design.fig', fileSize: '3MB' },
|
||||
{ icon: figma, file: 'about-us.htmlf', fileSize: '1KB' },
|
||||
{ icon: java, file: 'work-project.zip', fileSize: '20MB' },
|
||||
{ icon: zip, file: 'custom.js', fileSize: '2MB' }
|
||||
],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 30 }),
|
||||
msg: chance.sentence({ words: 10 }),
|
||||
senderId: 1,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 6 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: uniqueId(),
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 5 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 1,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 5 }),
|
||||
msg: background1,
|
||||
senderId: uniqueId(),
|
||||
type: 'img',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
id: 2,
|
||||
name: 'Maria Hernandez',
|
||||
status: 'away',
|
||||
thumb: user3,
|
||||
recent: true,
|
||||
chatHistory: [
|
||||
{
|
||||
createdAt: sub(new Date(), { hours: 1 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: uniqueId(),
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 30 }),
|
||||
msg: chance.sentence({ words: 10 }),
|
||||
senderId: uniqueId(),
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 6 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 2,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 5 }),
|
||||
msg: background1,
|
||||
senderId: 2,
|
||||
type: 'img',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 1 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: uniqueId(),
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
id: 3,
|
||||
name: 'David Smith',
|
||||
status: 'busy',
|
||||
thumb: user4,
|
||||
recent: false,
|
||||
chatHistory: [
|
||||
{
|
||||
createdAt: sub(new Date(), { hours: 10 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 1,
|
||||
type: 'text',
|
||||
attachment: [
|
||||
{ icon: adobe, file: 'service-task.pdf', fileSize: '2MB' },
|
||||
{ icon: zip, file: 'custom.js', fileSize: '2MB' }
|
||||
],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 30 }),
|
||||
msg: chance.sentence({ words: 10 }),
|
||||
senderId: 1,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 6 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 3,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 6 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 3,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
id: 4,
|
||||
name: 'Loren Rodriguez',
|
||||
status: 'offline',
|
||||
thumb: user5,
|
||||
recent: true,
|
||||
chatHistory: [
|
||||
{
|
||||
createdAt: sub(new Date(), { hours: 1 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 1,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { hours: 10 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 4,
|
||||
type: 'text',
|
||||
attachment: [
|
||||
{ icon: java, file: 'work-project.zip', fileSize: '20MB' },
|
||||
{ icon: zip, file: 'custom.js', fileSize: '2MB' }
|
||||
],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { hours: 11 }),
|
||||
msg: background2,
|
||||
senderId: uniqueId(),
|
||||
type: 'img',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 6 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 4,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 1 }),
|
||||
msg: chance.sentence({ words: 7 }),
|
||||
senderId: 3,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
id: 5,
|
||||
name: 'Robert Smith',
|
||||
status: 'online',
|
||||
thumb: user6,
|
||||
recent: true,
|
||||
chatHistory: [
|
||||
{
|
||||
createdAt: sub(new Date(), { hours: 1 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 1,
|
||||
type: 'text',
|
||||
attachment: [
|
||||
{ icon: adobe, file: 'service-task.pdf', fileSize: '2MB' },
|
||||
{ icon: chrome, file: 'homepage-design.fig', fileSize: '3MB' },
|
||||
{ icon: figma, file: 'about-us.htmlf', fileSize: '1KB' },
|
||||
{ icon: java, file: 'work-project.zip', fileSize: '20MB' },
|
||||
{ icon: zip, file: 'custom.js', fileSize: '2MB' }
|
||||
],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 30 }),
|
||||
msg: chance.sentence({ words: 10 }),
|
||||
senderId: 1,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 6 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: uniqueId(),
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 5 }),
|
||||
msg: background3,
|
||||
senderId: 5,
|
||||
type: 'img',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 5 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 5,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
id: 6,
|
||||
name: 'Joseph Sara',
|
||||
status: 'busy',
|
||||
thumb: user7,
|
||||
recent: false,
|
||||
chatHistory: [
|
||||
{
|
||||
createdAt: sub(new Date(), { hours: 10 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 1,
|
||||
type: 'text',
|
||||
attachment: [
|
||||
{ icon: chrome, file: 'homepage-design.fig', fileSize: '3MB' },
|
||||
{ icon: java, file: 'work-project.zip', fileSize: '20MB' },
|
||||
{ icon: zip, file: 'custom.js', fileSize: '2MB' }
|
||||
],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 5 }),
|
||||
msg: background4,
|
||||
senderId: uniqueId(),
|
||||
type: 'img',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 5 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 1,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 2 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 6,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
id: 7,
|
||||
name: 'Thomas Smith',
|
||||
status: 'away',
|
||||
thumb: user2,
|
||||
recent: true,
|
||||
chatHistory: [
|
||||
{
|
||||
createdAt: sub(new Date(), { hours: 10 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 1,
|
||||
type: 'text',
|
||||
attachment: [
|
||||
{ icon: adobe, file: 'service-task.pdf', fileSize: '2MB' },
|
||||
{ icon: chrome, file: 'homepage-design.fig', fileSize: '3MB' }
|
||||
],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { hours: 1 }),
|
||||
msg: chance.sentence({ words: 10 }),
|
||||
senderId: 1,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 15 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 7,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 10 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 7,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
id: 8,
|
||||
name: 'Davina Elizabeth',
|
||||
status: 'offline',
|
||||
thumb: user3,
|
||||
recent: false,
|
||||
chatHistory: [
|
||||
{
|
||||
createdAt: sub(new Date(), { hours: 10 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 1,
|
||||
type: 'text',
|
||||
attachment: [
|
||||
{ icon: adobe, file: 'service-task.pdf', fileSize: '2MB' },
|
||||
{ icon: java, file: 'work-project.zip', fileSize: '20MB' },
|
||||
{ icon: zip, file: 'custom.js', fileSize: '2MB' }
|
||||
],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { hours: 6 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 3,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { hours: 6 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 1,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 1 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 8,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
id: 9,
|
||||
name: 'Charles Martha',
|
||||
status: 'online',
|
||||
thumb: user4,
|
||||
recent: false,
|
||||
chatHistory: [
|
||||
{
|
||||
createdAt: sub(new Date(), { hours: 10 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 1,
|
||||
type: 'text',
|
||||
attachment: [
|
||||
{ icon: java, file: 'work-project.zip', fileSize: '20MB' },
|
||||
{ icon: zip, file: 'custom.js', fileSize: '2MB' }
|
||||
],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { hours: 8 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 3,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { hours: 8 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 3,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 5 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 9,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 2 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 9,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
id: 10,
|
||||
name: 'Samuel Ban',
|
||||
status: 'online',
|
||||
thumb: user5,
|
||||
recent: false,
|
||||
chatHistory: [
|
||||
{
|
||||
createdAt: sub(new Date(), { hours: 10 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 1,
|
||||
type: 'text',
|
||||
attachment: [
|
||||
{ icon: adobe, file: 'service-task.pdf', fileSize: '2MB' },
|
||||
{ icon: zip, file: 'custom.js', fileSize: '2MB' }
|
||||
],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { hours: 11 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 3,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { hours: 6 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 3,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { hours: 6 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 3,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
},
|
||||
{
|
||||
createdAt: sub(new Date(), { minutes: 6 }),
|
||||
msg: chance.sentence({ words: 5 }),
|
||||
senderId: 10,
|
||||
type: 'text',
|
||||
attachment: [],
|
||||
id: uniqueId()
|
||||
}
|
||||
]
|
||||
}
|
||||
];
|
||||
|
||||
mock.onGet('/api/data/chat/ChatData').reply(() => {
|
||||
return [200, ChatData];
|
||||
});
|
||||
|
||||
export default ChatData;
|
||||
Reference in New Issue
Block a user