"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.deepNestedRowWithExistingPath = exports.addressDeepNestedRefPropagationChanges = exports.addressDeepNestedThreeLevelChanges = exports.deepNestedInnerChangeRow = exports.deepNestedParentFromChildChanges = exports.affiliationsChangeRow = exports.referenceAttributeValue = exports.referenceAttributeType = void 0;
var mdm_sdk_1 = require("@reltio/mdm-sdk");
exports.referenceAttributeType = {
    uri: 'configuration/entityTypes/HCP/attributes/Affiliations',
    name: 'Affiliations',
    label: 'HCP to HCA Affiliations',
    type: 'Reference',
    referencedEntityTypeURI: 'configuration/entityTypes/HCA',
    relationshipTypeURI: 'configuration/relationTypes/HCPtoHCA'
};
exports.referenceAttributeValue = {
    id: '0HocGCj',
    value: {
        RefFirstLevelNested: [
            {
                id: '2Cf73Q29',
                value: {
                    FirstLevelNestedSub2: [
                        {
                            id: '2ph3wL7h',
                            value: {
                                id: '0aDhfxd',
                                refObjectURI: 'relations/0HocGCj',
                                type: mdm_sdk_1.DCRTypes.UPDATE_ATTRIBUTE,
                                objectType: 'configuration/entityTypes/HCP',
                                attributePath: 'RefFirstLevelNested/2Cf73Q29/FirstLevelNestedSub2/2ph3wL7h',
                                oldValue: { value: '555756', lineIds: ['BAliEK2/0aDhfxd/oldValue'] },
                                newValue: { value: '5557563462', lineIds: ['BAliEK2/0aDhfxd/newValue'] },
                                attributeType: 'configuration/relationTypes/HCPtoHCA/attributes/RefFirstLevelNested/attributes/FirstLevelNestedSub2',
                                refAttributeType: 'configuration/entityTypes/HCP/attributes/Affiliations/attributes/RefFirstLevelNested/attributes/FirstLevelNestedSub2',
                                lineIds: ['BAliEK2/0aDhfxd']
                            }
                        }
                    ]
                }
            }
        ]
    },
    refObjectURI: 'relations/0HocGCj'
};
exports.affiliationsChangeRow = {
    level: 0,
    label: 'HCP to HCA Affiliations',
    attributeType: exports.referenceAttributeType,
    attributeValue: exports.referenceAttributeValue,
    operation: mdm_sdk_1.DCROperationTypes.EDITED,
    isReferenceSubAttribute: false
};
var nestedAttributeType = function (name) {
    return ({
        uri: "configuration/entityTypes/HCP/attributes/".concat(name),
        name: name,
        label: name,
        type: 'Nested'
    });
};
var firstLevelNestedSub2FloatType = {
    uri: 'configuration/relationTypes/HCPtoHCA/attributes/RefFirstLevelNested/attributes/FirstLevelNestedSub2',
    name: 'FirstLevelNestedSub2',
    label: 'float',
    type: 'Float'
};
var deepNestedParentFromChildChanges = function () { return [
    {
        level: 1,
        label: 'DeepNested',
        attributeType: nestedAttributeType('DeepNested'),
        attributeValue: { id: '2ph3uHFx', value: { FirstLevelNestedSub2: [] } },
        operation: mdm_sdk_1.DCROperationTypes.EDITED,
        isReferenceSubAttribute: false
    },
    {
        level: 2,
        label: 'FirstLevelNestedSub2',
        attributeType: firstLevelNestedSub2FloatType,
        attributePath: 'DeepNested/2ph3uHFx/FirstLevelNestedSub2/2ph3uPmT',
        operation: mdm_sdk_1.DCROperationTypes.EDITED,
        isReferenceSubAttribute: false
    }
]; };
exports.deepNestedParentFromChildChanges = deepNestedParentFromChildChanges;
var deepNestedInnerChangeRow = function () { return [
    {
        level: 1,
        label: 'DeepNested',
        attributeType: nestedAttributeType('DeepNested'),
        attributeValue: {
            id: '4FcgXO5o',
            value: {
                attributePath: 'DeepNested/4FcgXO5o/SecondLevelNested',
                refAttributeType: 'configuration/entityTypes/HCP/attributes/Address/attributes/DeepNested/attributes/SecondLevelNested',
                refObjectURI: 'relations/0LbuUWU'
            }
        },
        operation: mdm_sdk_1.DCROperationTypes.EDITED,
        isReferenceSubAttribute: false
    }
]; };
exports.deepNestedInnerChangeRow = deepNestedInnerChangeRow;
var addressDeepNestedThreeLevelChanges = function () { return [
    {
        level: 1,
        label: 'DeepNested',
        attributeType: nestedAttributeType('DeepNested'),
        attributeValue: { id: '4FcgXO5o', value: { SecondLevelNested: [] } },
        operation: mdm_sdk_1.DCROperationTypes.EDITED,
        isReferenceSubAttribute: false
    },
    {
        level: 2,
        label: 'SecondLevelNested',
        attributeType: nestedAttributeType('SecondLevelNested'),
        attributeValue: { id: '2v13QcOX', value: { FirstLevelNestedSubatr3: [] } },
        operation: mdm_sdk_1.DCROperationTypes.EDITED,
        isReferenceSubAttribute: false
    },
    {
        level: 3,
        label: 'FirstLevelNestedSubatr3',
        attributeType: nestedAttributeType('FirstLevelNestedSubatr3'),
        attributePath: 'DeepNested/4FcgXO5o/SecondLevelNested/2v13QcOX/FirstLevelNestedSubatr3/2v13Qgen',
        operation: mdm_sdk_1.DCROperationTypes.EDITED,
        isReferenceSubAttribute: false
    }
]; };
exports.addressDeepNestedThreeLevelChanges = addressDeepNestedThreeLevelChanges;
var addressDeepNestedRefPropagationChanges = function () { return [
    {
        level: 1,
        label: 'DeepNested',
        attributeType: nestedAttributeType('DeepNested'),
        attributeValue: { id: '2ph3uHFx', value: { FirstLevelNestedSub2: [] } },
        operation: mdm_sdk_1.DCROperationTypes.EDITED,
        isReferenceSubAttribute: false
    },
    {
        level: 2,
        label: 'FirstLevelNestedSub2',
        attributeType: firstLevelNestedSub2FloatType,
        attributePath: 'DeepNested/2ph3uHFx/FirstLevelNestedSub2/2ph3uPmT',
        refAttributeType: 'configuration/entityTypes/HCP/attributes/Address/attributes/DeepNested/attributes/FirstLevelNestedSub2',
        refObjectURI: 'relations/0LbuUWU',
        operation: mdm_sdk_1.DCROperationTypes.EDITED,
        isReferenceSubAttribute: false
    }
]; };
exports.addressDeepNestedRefPropagationChanges = addressDeepNestedRefPropagationChanges;
var deepNestedRowWithExistingPath = function () { return [
    {
        level: 1,
        label: 'DeepNested',
        attributeType: nestedAttributeType('DeepNested'),
        attributeValue: { id: '2ph3uHFx', value: { FirstLevelNestedSub2: [] } },
        attributePath: 'DeepNested/2ph3uHFx',
        operation: mdm_sdk_1.DCROperationTypes.EDITED,
        isReferenceSubAttribute: false
    }
]; };
exports.deepNestedRowWithExistingPath = deepNestedRowWithExistingPath;
