Replace element attribute bind data variable using the new data variable name

@inner
@param {Object} attrs the attributes to update
@param {Object} data the data variable name map, key is the old variable name,
value is the new variable name
@return {Array} return the updated attributes
function replaceElementAttributeVariable(attrs, data) {
    let newAttrs = Object.assign({}, attrs);

    attrs && Object.keys(attrs).forEach(k => {
        let value = attrs[k];
        if (k.startsWith(':')) {
            // replace okam data variable
            let newDataName = data[value];
            newDataName && (newAttrs[k] = newDataName);
        }
        else {
            value = replaceTemplateVariable(value, data);
            newAttrs[k] = value;
        }
    });
    return newAttrs;
}