Add icon, position and key on View (#4413)

* Add view key field

* Update Prefill demo, seed dev, prefill new workspace
This commit is contained in:
Charles Bochet
2024-03-11 17:00:19 +01:00
committed by GitHub
parent 5cf4047482
commit 5287b7c4ab
12 changed files with 472 additions and 43 deletions

View File

@ -10,29 +10,53 @@ export const seedViews = async (
const createdViews = await workspaceDataSource
.createQueryBuilder()
.insert()
.into(`${schemaName}.view`, ['name', 'objectMetadataId', 'type'])
.into(`${schemaName}.view`, [
'name',
'objectMetadataId',
'type',
'key',
'position',
'icon',
])
.values([
{
name: 'All Companies',
objectMetadataId: objectMetadataMap['company'].id,
type: 'table',
key: 'INDEX',
position: 0,
icon: 'IconBuildingSkyscraper',
},
{
name: 'All People',
objectMetadataId: objectMetadataMap['person'].id,
type: 'table',
key: 'INDEX',
position: 0,
icon: 'IconUser',
},
{
name: 'By Stage',
objectMetadataId: objectMetadataMap['opportunity'].id,
type: 'kanban',
key: null,
position: 0,
icon: 'IconLayoutKanban',
},
{
name: 'All Opportunities',
objectMetadataId: objectMetadataMap['opportunity'].id,
type: 'kanban',
type: 'table',
key: 'INDEX',
position: 1,
icon: 'IconTargetArrow',
},
])
.returning('*')
.execute();
const viewIdMap = createdViews.raw.reduce((acc, view) => {
acc[view.name] = view.id;
acc[`${view.name}`] = view.id;
return acc;
}, {});
@ -162,34 +186,78 @@ export const seedViews = async (
},
{
fieldMetadataId: objectMetadataMap['opportunity'].fields['amount'],
fieldMetadataId: objectMetadataMap['opportunity'].fields['name'],
viewId: viewIdMap['All Opportunities'],
position: 0,
isVisible: true,
size: 150,
},
{
fieldMetadataId: objectMetadataMap['opportunity'].fields['closeDate'],
fieldMetadataId: objectMetadataMap['opportunity'].fields['amount'],
viewId: viewIdMap['All Opportunities'],
position: 1,
isVisible: true,
size: 150,
},
{
fieldMetadataId: objectMetadataMap['opportunity'].fields['probability'],
fieldMetadataId: objectMetadataMap['opportunity'].fields['closeDate'],
viewId: viewIdMap['All Opportunities'],
position: 2,
isVisible: true,
size: 150,
},
{
fieldMetadataId: objectMetadataMap['opportunity'].fields['probability'],
viewId: viewIdMap['All Opportunities'],
position: 3,
isVisible: true,
size: 150,
},
{
fieldMetadataId:
objectMetadataMap['opportunity'].fields['pointOfContact'],
viewId: viewIdMap['All Opportunities'],
position: 4,
isVisible: true,
size: 150,
},
{
fieldMetadataId: objectMetadataMap['opportunity'].fields['name'],
viewId: viewIdMap['By Stage'],
position: 0,
isVisible: true,
size: 150,
},
{
fieldMetadataId: objectMetadataMap['opportunity'].fields['amount'],
viewId: viewIdMap['By Stage'],
position: 1,
isVisible: true,
size: 150,
},
{
fieldMetadataId: objectMetadataMap['opportunity'].fields['closeDate'],
viewId: viewIdMap['By Stage'],
position: 2,
isVisible: true,
size: 150,
},
{
fieldMetadataId: objectMetadataMap['opportunity'].fields['probability'],
viewId: viewIdMap['By Stage'],
position: 3,
isVisible: true,
size: 150,
},
{
fieldMetadataId:
objectMetadataMap['opportunity'].fields['pointOfContact'],
viewId: viewIdMap['By Stage'],
position: 4,
isVisible: true,
size: 150,
},
])
.execute();
};