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;
}
function replaceElementAttributeVariable(attrs, data) {
    let newAttrs = Object.assign({}, attrs);

    attrs && Object.keys(attrs).forEach(k => {
        let value = attrs[k];
        if (k.startsWith(':')) {
            
            let newDataName = data[value];
            newDataName && (newAttrs[k] = newDataName);
        }
        else {
            value = replaceTemplateVariable(value, data);
            newAttrs[k] = value;
        }
    });
    return newAttrs;
}
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 ; }
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
Replace element attribute bind data variable using the new data variable name