1 | "use strict";
|
2 |
|
3 | require("core-js/modules/es.array.concat");
|
4 |
|
5 | require("core-js/modules/es.array.reduce");
|
6 |
|
7 | require("core-js/modules/es.regexp.exec");
|
8 |
|
9 | require("core-js/modules/es.string.match");
|
10 |
|
11 | require("core-js/modules/es.string.replace");
|
12 |
|
13 | require("core-js/modules/es.string.split");
|
14 |
|
15 | require("core-js/modules/es.string.trim");
|
16 |
|
17 | Object.defineProperty(exports, "__esModule", {
|
18 | value: true
|
19 | });
|
20 | exports.formatter = void 0;
|
21 |
|
22 | var _memoizerific = _interopRequireDefault(require("memoizerific"));
|
23 |
|
24 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
25 |
|
26 | var formatter = (0, _memoizerific["default"])(2)(function (code) {
|
27 |
|
28 |
|
29 |
|
30 |
|
31 | return code.split(/\n/).reduce(function (acc, i, index) {
|
32 | var match = i.match(/^((:?\s|\t)+)/);
|
33 | var padding = match ? match[1] : '';
|
34 |
|
35 | if (acc.firstIndent === '' && padding && index < 3) {
|
36 | return {
|
37 | result: "".concat(acc.result, "\n").concat(i.replace(padding, '')),
|
38 | firstIndent: padding
|
39 | };
|
40 | }
|
41 |
|
42 | return {
|
43 | result: "".concat(acc.result, "\n").concat(i.replace(acc.firstIndent, '').replace(/\s*$/, '')),
|
44 | firstIndent: acc.firstIndent
|
45 | };
|
46 | }, {
|
47 | firstIndent: '',
|
48 | result: ''
|
49 | }).result.trim();
|
50 | });
|
51 | exports.formatter = formatter; |
\ | No newline at end of file |