cherrypick/webpack/i18n.ts

20 lines
380 B
TypeScript
Raw Normal View History

2018-05-17 09:28:31 +09:00
/**
* Replace i18n texts
*/
2018-05-20 20:26:38 +09:00
export const pattern = /%i18n:([a-z0-9_\-@\.]+?)%/g;
2018-05-17 09:28:31 +09:00
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;
2018-05-20 20:26:38 +09:00
return `%i18n:${path}%`;
2018-05-17 09:28:31 +09:00
};