1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
|
9 |
|
10 |
|
11 |
|
12 |
|
13 | export default function dedent(strings) {
|
14 | var str = '';
|
15 |
|
16 | for (var i = 0; i < strings.length; ++i) {
|
17 | str += strings[i];
|
18 |
|
19 | if (i < (arguments.length <= 1 ? 0 : arguments.length - 1)) {
|
20 | str += i + 1 < 1 || arguments.length <= i + 1 ? undefined : arguments[i + 1];
|
21 | }
|
22 | }
|
23 |
|
24 | var trimmedStr = str.replace(/^\n*/m, '')
|
25 | .replace(/[ \t]*$/, '');
|
26 |
|
27 |
|
28 | var indent = '';
|
29 |
|
30 | for (var _i2 = 0; _i2 < trimmedStr.length; _i2++) {
|
31 | var char = trimmedStr[_i2];
|
32 |
|
33 | if (char !== ' ' && char !== '\t') {
|
34 | break;
|
35 | }
|
36 |
|
37 | indent += char;
|
38 | }
|
39 |
|
40 | return trimmedStr.replace(RegExp('^' + indent, 'mg'), '');
|
41 | }
|