20 lines
		
	
	
		
			380 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			20 lines
		
	
	
		
			380 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
/**
 | 
						|
 * Replace i18n texts
 | 
						|
 */
 | 
						|
 | 
						|
export const pattern = /%i18n:([a-z0-9_\-@\.]+?)%/g;
 | 
						|
 | 
						|
export const replacement = (ctx, match, key) => {
 | 
						|
	const client = '/src/client/app/';
 | 
						|
	let name = null;
 | 
						|
 | 
						|
	if (key[0] == '@') {
 | 
						|
		name = ctx.src.substr(ctx.src.indexOf(client) + client.length);
 | 
						|
		key = key.substr(1);
 | 
						|
	}
 | 
						|
 | 
						|
	const path = name ? `${name}|${key}` : key;
 | 
						|
 | 
						|
	return `%i18n:${path}%`;
 | 
						|
};
 |