1
0
Fork 0
mirror of https://github.com/muerwre/vault-frontend.git synced 2025-04-24 20:36:40 +07:00

described blocks (incomplete)

This commit is contained in:
muerwre 2019-04-08 10:11:12 +07:00
parent 62e72d166f
commit 27a71bbb90

93
src/constants/cells.ts Normal file
View file

@ -0,0 +1,93 @@
export const BLOCK_TYPES = {
IMAGE: 'IMAGE',
TEXT: 'TEXT',
VIDEO: 'VIDEO',
AUDIO: 'AUDIO',
COVER: 'COVER',
};
export const CELL_TYPES = {
IMAGE: 'IMAGE',
POST: 'POST',
MEDIA: 'MEDIA',
DEFAULT: 'DEFAULT',
};
export interface IFile {
id: number,
cell_id: number,
type: string,
mime: string,
name: string,
path: string,
createdAt: string,
updatedAt: string,
owner: number,
}
export interface IBlock {
block_id: number,
}
export interface ICell {
type: string,
tmp_file_id: number,
tmp_block_id: number,
cell_id: number,
locked_blocks: string[],
initial_blocks: string[],
available_blocks: string[],
blocks: IBlock[],
is_published: boolean,
is_starred: boolean,
}
export const DEFAULT_CELL: ICell = {
type: CELL_TYPES.DEFAULT,
tmp_file_id: 0,
tmp_block_id: 0,
cell_id: 0,
locked_blocks: [],
initial_blocks: [],
available_blocks: [],
blocks: [],
is_published: true,
is_starred: false,
};
export const DEFAULT_BLOCK: IBlock = {
block_id: 0,
};
export const DEFAULT_FILE: IFile = {
id: 0,
cell_id: 0,
type: '',
mime: '',
name: '',
path: '',
createdAt: '',
updatedAt: '',
owner: 0,
};
interface IBlocks { // todo: continue here
// [x: string]: IBlockImage | IBlockMedia
}
export const BLOCKS: IBlocks = {
[BLOCK_TYPES.IMAGE]: {
...DEFAULT_BLOCK,
files: [], // todo: files here
}
};
export const CELLS = {
[CELL_TYPES.IMAGE]: {
...DEFAULT_CELL,
locked_blocks: [BLOCK_TYPES.IMAGE],
available_blocks: [BLOCK_TYPES.IMAGE, BLOCK_TYPES.TEXT],
},
};