mirror of
https://github.com/proelements/proelements.git
synced 2026-04-22 03:42:15 +00:00
v3.33.1
This commit is contained in:
29
core/app/assets/js/utils.js
Normal file
29
core/app/assets/js/utils.js
Normal file
@@ -0,0 +1,29 @@
|
||||
// Copied from Core.
|
||||
export const arrayToClassName = ( array, action ) => {
|
||||
return array
|
||||
.filter( ( item ) => 'object' === typeof ( item ) ? Object.entries( item )[ 0 ][ 1 ] : item )
|
||||
.map( ( item ) => {
|
||||
const value = 'object' === typeof ( item ) ? Object.entries( item )[ 0 ][ 0 ] : item;
|
||||
|
||||
return action ? action( value ) : value;
|
||||
} )
|
||||
.join( ' ' );
|
||||
};
|
||||
|
||||
export const htmlDecodeTextContent = ( input ) => {
|
||||
const doc = new DOMParser().parseFromString( input, 'text/html' );
|
||||
return doc.documentElement.textContent;
|
||||
};
|
||||
|
||||
export const replaceUtmPlaceholders = ( link = '', utms = {} ) => {
|
||||
if ( ! link || ! utms ) {
|
||||
return link;
|
||||
}
|
||||
|
||||
Object.keys( utms ).forEach( ( key ) => {
|
||||
const match = new RegExp( `%%${ key }%%`, 'g' );
|
||||
link = link.replace( match, utms[ key ] );
|
||||
} );
|
||||
|
||||
return link;
|
||||
};
|
||||
Reference in New Issue
Block a user