mirror of
https://github.com/datahub-project/datahub.git
synced 2025-08-02 14:28:18 +00:00
21 lines
940 B
TypeScript
21 lines
940 B
TypeScript
![]() |
import { IComplianceInfo } from 'datahub-web/typings/api/datasets/compliance';
|
||
|
import { nullify, Nullify, Omit, pick } from 'datahub-web/utils/object';
|
||
|
|
||
|
/**
|
||
|
* Makes values in IComplianceInfo that are present / have a corollary in IDatasetRetention type null i.e. keys
|
||
|
* 'complianceType' | 'compliancePurgeNote'
|
||
|
* and retains other properties
|
||
|
* @param {IComplianceInfo} complianceInfo
|
||
|
* @returns {(Omit<IComplianceInfo, 'complianceType' | 'compliancePurgeNote'> &
|
||
|
* Nullify<Pick<IComplianceInfo, 'complianceType' | 'compliancePurgeNote'>>)}
|
||
|
*/
|
||
|
const nullifyRetentionFieldsOnComplianceInfo = (
|
||
|
complianceInfo: IComplianceInfo
|
||
|
): Omit<IComplianceInfo, 'complianceType' | 'compliancePurgeNote'> &
|
||
|
Nullify<Pick<IComplianceInfo, 'complianceType' | 'compliancePurgeNote'>> => ({
|
||
|
...complianceInfo,
|
||
|
...nullify(pick(complianceInfo, ['complianceType', 'compliancePurgeNote']))
|
||
|
});
|
||
|
|
||
|
export { nullifyRetentionFieldsOnComplianceInfo };
|