Skip to content

Commit 6486f98

Browse files
committed
fix: strip color issues
1 parent 33a1902 commit 6486f98

File tree

5 files changed

+46
-186
lines changed

5 files changed

+46
-186
lines changed

.vscode/settings.json

+3
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,7 @@
99
"[typescript]": {
1010
"editor.defaultFormatter": "esbenp.prettier-vscode"
1111
},
12+
"[json]": {
13+
"editor.defaultFormatter": "esbenp.prettier-vscode"
14+
},
1215
}

CHANGELOG.md

-15
This file was deleted.

package.json

-4
Original file line numberDiff line numberDiff line change
@@ -60,9 +60,5 @@
6060
"@types/strip-color": "^0.1.0",
6161
"@types/vscode": "^1.49.0",
6262
"typescript": "^4.0.2"
63-
},
64-
"dependencies": {
65-
"execa": "^4.0.3",
66-
"strip-color": "^0.1.0"
6763
}
6864
}

src/run-command.ts

+12-7
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,25 @@
11
import childProcess from 'child_process'
2-
import stripColor from 'strip-color'
32
import { log, logError } from './log'
43

4+
function stripColor(input: string): string {
5+
const pattern = [
6+
'[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)',
7+
'(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))',
8+
].join('|')
9+
10+
const regex = new RegExp(pattern, 'g')
11+
12+
return input.replace(regex, '')
13+
}
14+
515
export async function runCommand(text: string, command: string, filename: string, workspacePath: string): Promise<string> {
616
const args = command.replace(/\$FILE/g, filename).split(' ')
717
const file = args.shift()
818

919
if (!file) return text
1020

1121
const errorOut = (error: string) => {
12-
logError(
13-
`Received an error while formatting ${filename}:\n> ${command}\nError:\n> ${error.replace(
14-
/\n/g,
15-
'\n> '
16-
)}`
17-
)
22+
logError(`Received an error while formatting ${filename}:\n> ${command}\nError:\n> ${error.replace(/\n/g, '\n> ')}`)
1823
}
1924

2025
const startMs = Date.now()

yarn.lock

+31-160
Original file line numberDiff line numberDiff line change
@@ -3,180 +3,51 @@
33

44

55
"@types/glob@^7.1.3":
6-
version "7.1.3"
7-
resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.1.3.tgz#e6ba80f36b7daad2c685acd9266382e68985c183"
8-
integrity sha512-SEYeGAIQIQX8NN6LDKprLjbrd5dARM5EXsd8GI/A5l0apYI1fGMWgPHSe4ZKL4eozlAyI+doUE9XbYS4xCkQ1w==
6+
version "7.2.0"
7+
resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.2.0.tgz#bc1b5bf3aa92f25bd5dd39f35c57361bdce5b2eb"
8+
integrity sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==
99
dependencies:
1010
"@types/minimatch" "*"
1111
"@types/node" "*"
1212

1313
"@types/minimatch@*":
14-
version "3.0.3"
15-
resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.3.tgz#3dca0e3f33b200fc7d1139c0cd96c1268cadfd9d"
16-
integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==
14+
version "5.1.2"
15+
resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-5.1.2.tgz#07508b45797cb81ec3f273011b054cd0755eddca"
16+
integrity sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==
1717

1818
"@types/mocha@^8.0.0":
19-
version "8.0.3"
20-
resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-8.0.3.tgz#51b21b6acb6d1b923bbdc7725c38f9f455166402"
21-
integrity sha512-vyxR57nv8NfcU0GZu8EUXZLTbCMupIUwy95LJ6lllN+JRPG25CwMHoB1q5xKh8YKhQnHYRAn4yW2yuHbf/5xgg==
19+
version "8.2.3"
20+
resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-8.2.3.tgz#bbeb55fbc73f28ea6de601fbfa4613f58d785323"
21+
integrity sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==
2222

2323
"@types/node@*":
24-
version "14.11.5"
25-
resolved "https://registry.yarnpkg.com/@types/node/-/node-14.11.5.tgz#fecad41c041cae7f2404ad4b2d0742fdb628b305"
26-
integrity sha512-jVFzDV6NTbrLMxm4xDSIW/gKnk8rQLF9wAzLWIOg+5nU6ACrIMndeBdXci0FGtqJbP9tQvm6V39eshc96TO2wQ==
24+
version "20.12.7"
25+
resolved "https://registry.yarnpkg.com/@types/node/-/node-20.12.7.tgz#04080362fa3dd6c5822061aa3124f5c152cff384"
26+
integrity sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==
27+
dependencies:
28+
undici-types "~5.26.4"
2729

2830
"@types/node@^12.11.7":
29-
version "12.12.64"
30-
resolved "https://registry.yarnpkg.com/@types/node/-/node-12.12.64.tgz#e3b336dc4c6ba52c6b59e3bd69a100347c20b1c0"
31-
integrity sha512-UV1/ZJMC+HcP902wWdpC43cAcGu0IQk/I5bXjP2aSuCjsk3cE74mDvFrLKga7oDC170ugOAYBwfT4DSQW3akDA==
31+
version "12.20.55"
32+
resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.55.tgz#c329cbd434c42164f846b909bd6f85b5537f6240"
33+
integrity sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==
3234

3335
"@types/strip-color@^0.1.0":
34-
version "0.1.0"
35-
resolved "https://registry.yarnpkg.com/@types/strip-color/-/strip-color-0.1.0.tgz#6969d20300de5eb0121f4eac2cc6f0b8f41dfee5"
36-
integrity sha512-nx4pG5q035VogbYZC+D7KVbSko6h6t5ha8hKh11EF1SOCiFG+77n0kmcGF9Rfrn9QeZbmrhohrA/g40UGb60aA==
36+
version "0.1.2"
37+
resolved "https://registry.yarnpkg.com/@types/strip-color/-/strip-color-0.1.2.tgz#caa3b9b53620f54d004874225190fcbbc7e4c1cc"
38+
integrity sha512-9ytlUoDq2/vhwmpBVWI4BFfWJVsKJl+xogC1TYZSkhnmMUHvVVD71eHaPV3j4YnLViIJcai8BVdv2BGJpwQfFQ==
3739

3840
"@types/vscode@^1.49.0":
39-
version "1.49.0"
40-
resolved "https://registry.yarnpkg.com/@types/vscode/-/vscode-1.49.0.tgz#f3731d97d7e8b2697510eb26f6e6d04ee8c17352"
41-
integrity sha512-wfNQmLmm1VdMBr6iuNdprWmC1YdrgZ9dQzadv+l2eSjJlElOdJw8OTm4RU4oGTBcfvG6RZI2jOcppkdSS18mZw==
42-
43-
cross-spawn@^7.0.0:
44-
version "7.0.3"
45-
resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6"
46-
integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==
47-
dependencies:
48-
path-key "^3.1.0"
49-
shebang-command "^2.0.0"
50-
which "^2.0.1"
51-
52-
end-of-stream@^1.1.0:
53-
version "1.4.4"
54-
resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0"
55-
integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==
56-
dependencies:
57-
once "^1.4.0"
58-
59-
execa@^4.0.3:
60-
version "4.0.3"
61-
resolved "https://registry.yarnpkg.com/execa/-/execa-4.0.3.tgz#0a34dabbad6d66100bd6f2c576c8669403f317f2"
62-
integrity sha512-WFDXGHckXPWZX19t1kCsXzOpqX9LWYNqn4C+HqZlk/V0imTkzJZqf87ZBhvpHaftERYknpk0fjSylnXVlVgI0A==
63-
dependencies:
64-
cross-spawn "^7.0.0"
65-
get-stream "^5.0.0"
66-
human-signals "^1.1.1"
67-
is-stream "^2.0.0"
68-
merge-stream "^2.0.0"
69-
npm-run-path "^4.0.0"
70-
onetime "^5.1.0"
71-
signal-exit "^3.0.2"
72-
strip-final-newline "^2.0.0"
73-
74-
get-stream@^5.0.0:
75-
version "5.2.0"
76-
resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3"
77-
integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==
78-
dependencies:
79-
pump "^3.0.0"
80-
81-
human-signals@^1.1.1:
82-
version "1.1.1"
83-
resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3"
84-
integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==
85-
86-
is-stream@^2.0.0:
87-
version "2.0.0"
88-
resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.0.tgz#bde9c32680d6fae04129d6ac9d921ce7815f78e3"
89-
integrity sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==
90-
91-
isexe@^2.0.0:
92-
version "2.0.0"
93-
resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
94-
integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=
95-
96-
merge-stream@^2.0.0:
97-
version "2.0.0"
98-
resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60"
99-
integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==
100-
101-
mimic-fn@^2.1.0:
102-
version "2.1.0"
103-
resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b"
104-
integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==
105-
106-
npm-run-path@^4.0.0:
107-
version "4.0.1"
108-
resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea"
109-
integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==
110-
dependencies:
111-
path-key "^3.0.0"
112-
113-
once@^1.3.1, once@^1.4.0:
114-
version "1.4.0"
115-
resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
116-
integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E=
117-
dependencies:
118-
wrappy "1"
119-
120-
onetime@^5.1.0:
121-
version "5.1.2"
122-
resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e"
123-
integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==
124-
dependencies:
125-
mimic-fn "^2.1.0"
126-
127-
path-key@^3.0.0, path-key@^3.1.0:
128-
version "3.1.1"
129-
resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375"
130-
integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==
131-
132-
pump@^3.0.0:
133-
version "3.0.0"
134-
resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64"
135-
integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==
136-
dependencies:
137-
end-of-stream "^1.1.0"
138-
once "^1.3.1"
139-
140-
shebang-command@^2.0.0:
141-
version "2.0.0"
142-
resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea"
143-
integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==
144-
dependencies:
145-
shebang-regex "^3.0.0"
146-
147-
shebang-regex@^3.0.0:
148-
version "3.0.0"
149-
resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172"
150-
integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==
151-
152-
signal-exit@^3.0.2:
153-
version "3.0.3"
154-
resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c"
155-
integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==
156-
157-
strip-color@^0.1.0:
158-
version "0.1.0"
159-
resolved "https://registry.yarnpkg.com/strip-color/-/strip-color-0.1.0.tgz#106f65d3d3e6a2d9401cac0eb0ce8b8a702b4f7b"
160-
integrity sha1-EG9l09PmotlAHKwOsM6LinArT3s=
161-
162-
strip-final-newline@^2.0.0:
163-
version "2.0.0"
164-
resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad"
165-
integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==
41+
version "1.88.0"
42+
resolved "https://registry.yarnpkg.com/@types/vscode/-/vscode-1.88.0.tgz#2dc690237f7ef049942508c8609b6b9f5216b4d3"
43+
integrity sha512-rWY+Bs6j/f1lvr8jqZTyp5arRMfovdxolcqGi+//+cPDOh8SBvzXH90e7BiSXct5HJ9HGW6jATchbRTpTJpEkw==
16644

16745
typescript@^4.0.2:
168-
version "4.0.3"
169-
resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.0.3.tgz#153bbd468ef07725c1df9c77e8b453f8d36abba5"
170-
integrity sha512-tEu6DGxGgRJPb/mVPIZ48e69xCn2yRmCgYmDugAVwmJ6o+0u1RI18eO7E7WBTLYLaEVVOhwQmcdhQHweux/WPg==
171-
172-
which@^2.0.1:
173-
version "2.0.2"
174-
resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1"
175-
integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==
176-
dependencies:
177-
isexe "^2.0.0"
178-
179-
wrappy@1:
180-
version "1.0.2"
181-
resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
182-
integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
46+
version "4.9.5"
47+
resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a"
48+
integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==
49+
50+
undici-types@~5.26.4:
51+
version "5.26.5"
52+
resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617"
53+
integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==

0 commit comments

Comments
 (0)