mirror of
https://github.com/ToolJet/ToolJet
synced 2026-05-24 01:18:23 +00:00
Fix Container and form on import adding header and footer by default
This commit is contained in:
parent
73f2b09666
commit
8564bc1cfc
1 changed files with 49 additions and 32 deletions
|
|
@ -72,7 +72,11 @@ type NewRevampedComponent =
|
||||||
| 'VerticalDivider'
|
| 'VerticalDivider'
|
||||||
| 'Link'
|
| 'Link'
|
||||||
| 'DaterangePicker'
|
| 'DaterangePicker'
|
||||||
| 'TextArea';
|
| 'TextArea'
|
||||||
|
| 'Container'
|
||||||
|
| 'Tabs'
|
||||||
|
| 'Form'
|
||||||
|
|
||||||
|
|
||||||
const DefaultDataSourceNames: DefaultDataSourceName[] = [
|
const DefaultDataSourceNames: DefaultDataSourceName[] = [
|
||||||
'restapidefault',
|
'restapidefault',
|
||||||
|
|
@ -94,6 +98,10 @@ const NewRevampedComponents: NewRevampedComponent[] = [
|
||||||
'Link',
|
'Link',
|
||||||
'DaterangePicker',
|
'DaterangePicker',
|
||||||
'TextArea',
|
'TextArea',
|
||||||
|
'Container',
|
||||||
|
'Tabs',
|
||||||
|
'Form'
|
||||||
|
|
||||||
];
|
];
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
|
|
@ -104,7 +112,7 @@ export class AppImportExportService {
|
||||||
protected appEnvironmentUtilService: AppEnvironmentUtilService,
|
protected appEnvironmentUtilService: AppEnvironmentUtilService,
|
||||||
protected usersUtilService: UsersUtilService,
|
protected usersUtilService: UsersUtilService,
|
||||||
protected componentsService: ComponentsService
|
protected componentsService: ComponentsService
|
||||||
) {}
|
) { }
|
||||||
|
|
||||||
async export(user: User, id: string, searchParams: any = {}): Promise<{ appV2: App }> {
|
async export(user: User, id: string, searchParams: any = {}): Promise<{ appV2: App }> {
|
||||||
// https://github.com/typeorm/typeorm/issues/3857
|
// https://github.com/typeorm/typeorm/issues/3857
|
||||||
|
|
@ -216,10 +224,10 @@ export class AppImportExportService {
|
||||||
...page,
|
...page,
|
||||||
permissions: groupPermission
|
permissions: groupPermission
|
||||||
? {
|
? {
|
||||||
permissionGroup: groupPermission.users
|
permissionGroup: groupPermission.users
|
||||||
.map((user) => user.permissionGroup?.name)
|
.map((user) => user.permissionGroup?.name)
|
||||||
.filter((name): name is string => Boolean(name)),
|
.filter((name): name is string => Boolean(name)),
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
@ -231,10 +239,10 @@ export class AppImportExportService {
|
||||||
...query,
|
...query,
|
||||||
permissions: groupPermission
|
permissions: groupPermission
|
||||||
? {
|
? {
|
||||||
permissionGroup: groupPermission.users
|
permissionGroup: groupPermission.users
|
||||||
.map((user) => user.permissionGroup?.name)
|
.map((user) => user.permissionGroup?.name)
|
||||||
.filter((name): name is string => Boolean(name)),
|
.filter((name): name is string => Boolean(name)),
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
@ -242,16 +250,16 @@ export class AppImportExportService {
|
||||||
const components =
|
const components =
|
||||||
pages.length > 0
|
pages.length > 0
|
||||||
? await manager
|
? await manager
|
||||||
.createQueryBuilder(Component, 'components')
|
.createQueryBuilder(Component, 'components')
|
||||||
.leftJoinAndSelect('components.layouts', 'layouts')
|
.leftJoinAndSelect('components.layouts', 'layouts')
|
||||||
.leftJoinAndSelect('components.permissions', 'permission')
|
.leftJoinAndSelect('components.permissions', 'permission')
|
||||||
.leftJoinAndSelect('permission.users', 'componentUser')
|
.leftJoinAndSelect('permission.users', 'componentUser')
|
||||||
.leftJoinAndSelect('componentUser.permissionGroup', 'permissionGroup')
|
.leftJoinAndSelect('componentUser.permissionGroup', 'permissionGroup')
|
||||||
.where('components.pageId IN(:...pageId)', {
|
.where('components.pageId IN(:...pageId)', {
|
||||||
pageId: pages.map((v) => v.id),
|
pageId: pages.map((v) => v.id),
|
||||||
})
|
})
|
||||||
.orderBy('components.created_at', 'ASC')
|
.orderBy('components.created_at', 'ASC')
|
||||||
.getMany()
|
.getMany()
|
||||||
: [];
|
: [];
|
||||||
|
|
||||||
const componentsWithPermissionGroups = components.map((component) => {
|
const componentsWithPermissionGroups = components.map((component) => {
|
||||||
|
|
@ -261,10 +269,10 @@ export class AppImportExportService {
|
||||||
...component,
|
...component,
|
||||||
permissions: groupPermission
|
permissions: groupPermission
|
||||||
? {
|
? {
|
||||||
permissionGroup: groupPermission.users
|
permissionGroup: groupPermission.users
|
||||||
.map((user) => user.permissionGroup?.name)
|
.map((user) => user.permissionGroup?.name)
|
||||||
.filter((name): name is string => Boolean(name)),
|
.filter((name): name is string => Boolean(name)),
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
@ -1156,10 +1164,10 @@ export class AppImportExportService {
|
||||||
const options =
|
const options =
|
||||||
importingDataSource.kind === 'tooljetdb'
|
importingDataSource.kind === 'tooljetdb'
|
||||||
? this.replaceTooljetDbTableIds(
|
? this.replaceTooljetDbTableIds(
|
||||||
importingQuery.options,
|
importingQuery.options,
|
||||||
externalResourceMappings['tooljet_database'],
|
externalResourceMappings['tooljet_database'],
|
||||||
organizationId
|
organizationId
|
||||||
)
|
)
|
||||||
: importingQuery.options;
|
: importingQuery.options;
|
||||||
|
|
||||||
const newQuery = manager.create(DataQuery, {
|
const newQuery = manager.create(DataQuery, {
|
||||||
|
|
@ -1872,10 +1880,10 @@ export class AppImportExportService {
|
||||||
options:
|
options:
|
||||||
dataSourceId == defaultDataSourceIds['tooljetdb']
|
dataSourceId == defaultDataSourceIds['tooljetdb']
|
||||||
? this.replaceTooljetDbTableIds(
|
? this.replaceTooljetDbTableIds(
|
||||||
query.options,
|
query.options,
|
||||||
externalResourceMappings['tooljet_database'],
|
externalResourceMappings['tooljet_database'],
|
||||||
user?.organizationId
|
user?.organizationId
|
||||||
)
|
)
|
||||||
: query.options,
|
: query.options,
|
||||||
});
|
});
|
||||||
await manager.save(newQuery);
|
await manager.save(newQuery);
|
||||||
|
|
@ -2156,6 +2164,15 @@ function migrateProperties(
|
||||||
delete properties.maxValue;
|
delete properties.maxValue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (componentType === 'Container') {
|
||||||
|
properties.showHeader = properties?.showHeader || false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (componentType === 'Form') {
|
||||||
|
properties.showHeader = properties?.showHeader || false;
|
||||||
|
properties.showFooter = properties?.showFooter || false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return { properties, styles, general, generalStyles, validation };
|
return { properties, styles, general, generalStyles, validation };
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue