1 | const escapeRegExpSpecialChars = require('escape-string-regexp');
|
2 |
|
3 | const isWindows = /^win/i.test(process.platform);
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
|
9 |
|
10 | function replaceSpritePlaceholder(content, replacements) {
|
11 | let result = content;
|
12 | Object.keys(replacements)
|
13 | .forEach((subj) => {
|
14 | let re = new RegExp(escapeRegExpSpecialChars(subj), 'g');
|
15 | result = result.replace(re, replacements[subj]);
|
16 |
|
17 | if (isWindows) {
|
18 | re = new RegExp(escapeRegExpSpecialChars(subj), 'g');
|
19 | result = result.replace(/\\\\/g, '\\').replace(re, replacements[subj]);
|
20 | }
|
21 | });
|
22 |
|
23 | return result;
|
24 | }
|
25 |
|
26 | module.exports = replaceSpritePlaceholder;
|