Remove Tenant columns anonymisation (#2404)
* Remove Tenant columns anonymisation * add tests * use _ instead of custom_ * put _ on all custom fields
This commit is contained in:
@ -1,8 +1,5 @@
|
||||
import { v4 } from 'uuid';
|
||||
|
||||
import { FieldMetadataTargetColumnMap } from 'src/metadata/field-metadata/interfaces/field-metadata-target-column-map.interface';
|
||||
|
||||
import { uuidToBase36 } from 'src/metadata/data-source/data-source.util';
|
||||
import {
|
||||
FieldMetadata,
|
||||
FieldMetadataType,
|
||||
@ -12,16 +9,6 @@ import {
|
||||
TenantMigrationColumnActionType,
|
||||
} from 'src/metadata/tenant-migration/tenant-migration.entity';
|
||||
|
||||
/**
|
||||
* Generate a column name from a field name removing unsupported characters.
|
||||
*
|
||||
* @param name string
|
||||
* @returns string
|
||||
*/
|
||||
export function generateColumnName(name: string): string {
|
||||
return name.toLowerCase().replace(/ /g, '_');
|
||||
}
|
||||
|
||||
/**
|
||||
* Generate a target column map for a given type, this is used to map the field to the correct column(s) in the database.
|
||||
* This is used to support fields that map to multiple columns in the database.
|
||||
@ -31,7 +18,11 @@ export function generateColumnName(name: string): string {
|
||||
*/
|
||||
export function generateTargetColumnMap(
|
||||
type: FieldMetadataType,
|
||||
isCustomField: boolean,
|
||||
fieldName: string,
|
||||
): FieldMetadataTargetColumnMap {
|
||||
const columnName = isCustomField ? `_${fieldName}` : fieldName;
|
||||
|
||||
switch (type) {
|
||||
case FieldMetadataType.TEXT:
|
||||
case FieldMetadataType.PHONE:
|
||||
@ -40,17 +31,17 @@ export function generateTargetColumnMap(
|
||||
case FieldMetadataType.BOOLEAN:
|
||||
case FieldMetadataType.DATE:
|
||||
return {
|
||||
value: `column_${uuidToBase36(v4())}`,
|
||||
value: columnName,
|
||||
};
|
||||
case FieldMetadataType.URL:
|
||||
return {
|
||||
text: `column_${uuidToBase36(v4())}`,
|
||||
link: `column_${uuidToBase36(v4())}`,
|
||||
text: `${columnName}_text`,
|
||||
link: `${columnName}_link`,
|
||||
};
|
||||
case FieldMetadataType.MONEY:
|
||||
return {
|
||||
amount: `column_${uuidToBase36(v4())}`,
|
||||
currency: `column_${uuidToBase36(v4())}`,
|
||||
amount: `${columnName}_amount`,
|
||||
currency: `${columnName}_currency`,
|
||||
};
|
||||
default:
|
||||
throw new Error(`Unknown type ${type}`);
|
||||
|
||||
Reference in New Issue
Block a user