diff options
-rw-r--r-- | client/package.json | 2 | ||||
-rw-r--r-- | client/yarn.lock | 8 | ||||
-rw-r--r-- | package.json | 2 | ||||
-rw-r--r-- | server/lib/emailer.ts | 51 | ||||
-rw-r--r-- | server/lib/emails/video-comment-mention/html.pug | 6 | ||||
-rw-r--r-- | server/lib/emails/video-comment-new/html.pug | 6 | ||||
-rw-r--r-- | yarn.lock | 140 |
7 files changed, 181 insertions, 34 deletions
diff --git a/client/package.json b/client/package.json index 986a0a42b..cb6f77166 100644 --- a/client/package.json +++ b/client/package.json | |||
@@ -94,7 +94,7 @@ | |||
94 | "karma-jasmine-html-reporter": "^1.5.0", | 94 | "karma-jasmine-html-reporter": "^1.5.0", |
95 | "linkifyjs": "^2.1.5", | 95 | "linkifyjs": "^2.1.5", |
96 | "lodash-es": "^4.17.4", | 96 | "lodash-es": "^4.17.4", |
97 | "markdown-it": "^11.0.0", | 97 | "markdown-it": "11.x", |
98 | "node-sass": "^4.9.3", | 98 | "node-sass": "^4.9.3", |
99 | "npm-font-source-sans-pro": "^1.0.2", | 99 | "npm-font-source-sans-pro": "^1.0.2", |
100 | "p2p-media-loader-hlsjs": "^0.6.2", | 100 | "p2p-media-loader-hlsjs": "^0.6.2", |
diff --git a/client/yarn.lock b/client/yarn.lock index f55da88a4..cdafe1458 100644 --- a/client/yarn.lock +++ b/client/yarn.lock | |||
@@ -7218,10 +7218,10 @@ map-visit@^1.0.0: | |||
7218 | dependencies: | 7218 | dependencies: |
7219 | object-visit "^1.0.0" | 7219 | object-visit "^1.0.0" |
7220 | 7220 | ||
7221 | markdown-it@^11.0.0: | 7221 | markdown-it@11.x: |
7222 | version "11.0.0" | 7222 | version "11.0.1" |
7223 | resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-11.0.0.tgz#dbfc30363e43d756ebc52c38586b91b90046b876" | 7223 | resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-11.0.1.tgz#b54f15ec2a2193efa66dda1eb4173baea08993d6" |
7224 | integrity sha512-+CvOnmbSubmQFSA9dKz1BRiaSMV7rhexl3sngKqFyXSagoA3fBdJQ8oZWtRy2knXdpDXaBw44euz37DeJQ9asg== | 7224 | integrity sha512-aU1TzmBKcWNNYvH9pjq6u92BML+Hz3h5S/QpfTFwiQF852pLT+9qHsrhM9JYipkOXZxGn+sGH8oyJE9FD9WezQ== |
7225 | dependencies: | 7225 | dependencies: |
7226 | argparse "^1.0.7" | 7226 | argparse "^1.0.7" |
7227 | entities "~2.0.0" | 7227 | entities "~2.0.0" |
diff --git a/package.json b/package.json index 4a571909d..b08e5fe6c 100644 --- a/package.json +++ b/package.json | |||
@@ -118,6 +118,7 @@ | |||
118 | "lodash": "^4.17.10", | 118 | "lodash": "^4.17.10", |
119 | "lru-cache": "^6.0.0", | 119 | "lru-cache": "^6.0.0", |
120 | "magnet-uri": "^5.1.4", | 120 | "magnet-uri": "^5.1.4", |
121 | "markdown-it": "11.x", | ||
121 | "memoizee": "^0.4.14", | 122 | "memoizee": "^0.4.14", |
122 | "morgan": "^1.5.3", | 123 | "morgan": "^1.5.3", |
123 | "multer": "^1.1.0", | 124 | "multer": "^1.1.0", |
@@ -133,6 +134,7 @@ | |||
133 | "redis": "^3.0.2", | 134 | "redis": "^3.0.2", |
134 | "reflect-metadata": "^0.1.12", | 135 | "reflect-metadata": "^0.1.12", |
135 | "request": "^2.81.0", | 136 | "request": "^2.81.0", |
137 | "sanitize-html": "2.x", | ||
136 | "scripty": "^2.0.0", | 138 | "scripty": "^2.0.0", |
137 | "sequelize": "5.21.13", | 139 | "sequelize": "5.21.13", |
138 | "sequelize-typescript": "^1.0.0-beta.4", | 140 | "sequelize-typescript": "^1.0.0-beta.4", |
diff --git a/server/lib/emailer.ts b/server/lib/emailer.ts index 25b0aaedd..6532fb4b4 100644 --- a/server/lib/emailer.ts +++ b/server/lib/emailer.ts | |||
@@ -15,6 +15,53 @@ import { MAbuseFull, MAbuseMessage, MAccountDefault, MActorFollowActors, MActorF | |||
15 | import { MCommentOwnerVideo, MVideo, MVideoAccountLight } from '../types/models/video' | 15 | import { MCommentOwnerVideo, MVideo, MVideoAccountLight } from '../types/models/video' |
16 | import { JobQueue } from './job-queue' | 16 | import { JobQueue } from './job-queue' |
17 | 17 | ||
18 | const sanitizeHtml = require('sanitize-html') | ||
19 | const markdownItEmoji = require('markdown-it-emoji/light') | ||
20 | const MarkdownItClass = require('markdown-it') | ||
21 | const markdownIt = new MarkdownItClass('default', { linkify: true, breaks: true, html: true }) | ||
22 | |||
23 | markdownIt.enable([ | ||
24 | 'linkify', | ||
25 | 'autolink', | ||
26 | 'emphasis', | ||
27 | 'link', | ||
28 | 'newline', | ||
29 | 'list' | ||
30 | ]) | ||
31 | |||
32 | markdownIt.use(markdownItEmoji) | ||
33 | |||
34 | const toSafeHtml = text => { | ||
35 | // Restore line feed | ||
36 | const textWithLineFeed = text.replace(/<br.?\/?>/g, '\r\n') | ||
37 | |||
38 | // Convert possible markdown (emojis, emphasis and lists) to html | ||
39 | const html = markdownIt.render(textWithLineFeed) | ||
40 | |||
41 | // Convert to safe Html | ||
42 | return sanitizeHtml(html, { | ||
43 | allowedTags: [ 'a', 'p', 'span', 'br', 'strong', 'em', 'ul', 'ol', 'li' ], | ||
44 | allowedSchemes: [ 'http', 'https' ], | ||
45 | allowedAttributes: { | ||
46 | a: [ 'href', 'class', 'target', 'rel' ] | ||
47 | }, | ||
48 | transformTags: { | ||
49 | a: (tagName, attribs) => { | ||
50 | let rel = 'noopener noreferrer' | ||
51 | if (attribs.rel === 'me') rel += ' me' | ||
52 | |||
53 | return { | ||
54 | tagName, | ||
55 | attribs: Object.assign(attribs, { | ||
56 | target: '_blank', | ||
57 | rel | ||
58 | }) | ||
59 | } | ||
60 | } | ||
61 | } | ||
62 | }) | ||
63 | } | ||
64 | |||
18 | const Email = require('email-templates') | 65 | const Email = require('email-templates') |
19 | 66 | ||
20 | class Emailer { | 67 | class Emailer { |
@@ -236,6 +283,7 @@ class Emailer { | |||
236 | const video = comment.Video | 283 | const video = comment.Video |
237 | const videoUrl = WEBSERVER.URL + comment.Video.getWatchStaticPath() | 284 | const videoUrl = WEBSERVER.URL + comment.Video.getWatchStaticPath() |
238 | const commentUrl = WEBSERVER.URL + comment.getCommentStaticPath() | 285 | const commentUrl = WEBSERVER.URL + comment.getCommentStaticPath() |
286 | const commentHtml = toSafeHtml(comment.text) | ||
239 | 287 | ||
240 | const emailPayload: EmailPayload = { | 288 | const emailPayload: EmailPayload = { |
241 | template: 'video-comment-new', | 289 | template: 'video-comment-new', |
@@ -245,6 +293,7 @@ class Emailer { | |||
245 | accountName: comment.Account.getDisplayName(), | 293 | accountName: comment.Account.getDisplayName(), |
246 | accountUrl: comment.Account.Actor.url, | 294 | accountUrl: comment.Account.Actor.url, |
247 | comment, | 295 | comment, |
296 | commentHtml, | ||
248 | video, | 297 | video, |
249 | videoUrl, | 298 | videoUrl, |
250 | action: { | 299 | action: { |
@@ -262,6 +311,7 @@ class Emailer { | |||
262 | const video = comment.Video | 311 | const video = comment.Video |
263 | const videoUrl = WEBSERVER.URL + comment.Video.getWatchStaticPath() | 312 | const videoUrl = WEBSERVER.URL + comment.Video.getWatchStaticPath() |
264 | const commentUrl = WEBSERVER.URL + comment.getCommentStaticPath() | 313 | const commentUrl = WEBSERVER.URL + comment.getCommentStaticPath() |
314 | const commentHtml = toSafeHtml(comment.text) | ||
265 | 315 | ||
266 | const emailPayload: EmailPayload = { | 316 | const emailPayload: EmailPayload = { |
267 | template: 'video-comment-mention', | 317 | template: 'video-comment-mention', |
@@ -269,6 +319,7 @@ class Emailer { | |||
269 | subject: 'Mention on video ' + video.name, | 319 | subject: 'Mention on video ' + video.name, |
270 | locals: { | 320 | locals: { |
271 | comment, | 321 | comment, |
322 | commentHtml, | ||
272 | video, | 323 | video, |
273 | videoUrl, | 324 | videoUrl, |
274 | accountName, | 325 | accountName, |
diff --git a/server/lib/emails/video-comment-mention/html.pug b/server/lib/emails/video-comment-mention/html.pug index 9e9ced62d..a34c6b090 100644 --- a/server/lib/emails/video-comment-mention/html.pug +++ b/server/lib/emails/video-comment-mention/html.pug | |||
@@ -5,7 +5,7 @@ block title | |||
5 | 5 | ||
6 | block content | 6 | block content |
7 | p. | 7 | p. |
8 | #[a(href=accountUrl title=handle) #{accountName}] mentioned you in a comment on video | 8 | #[a(href=accountUrl title=handle) #{accountName}] mentioned you in a comment on video |
9 | "#[a(href=videoUrl) #{video.name}]": | 9 | "#[a(href=videoUrl) #{video.name}]": |
10 | blockquote #{comment.text} | 10 | blockquote !{commentHtml} |
11 | br(style="display: none;") \ No newline at end of file | 11 | br(style="display: none;") |
diff --git a/server/lib/emails/video-comment-new/html.pug b/server/lib/emails/video-comment-new/html.pug index 075af5717..cbb683fee 100644 --- a/server/lib/emails/video-comment-new/html.pug +++ b/server/lib/emails/video-comment-new/html.pug | |||
@@ -5,7 +5,7 @@ block title | |||
5 | 5 | ||
6 | block content | 6 | block content |
7 | p. | 7 | p. |
8 | #[a(href=accountUrl title=handle) #{accountName}] added a comment on your video | 8 | #[a(href=accountUrl title=handle) #{accountName}] added a comment on your video |
9 | "#[a(href=videoUrl) #{video.name}]": | 9 | "#[a(href=videoUrl) #{video.name}]": |
10 | blockquote #{comment.text} | 10 | blockquote !{commentHtml} |
11 | br(style="display: none;") \ No newline at end of file | 11 | br(style="display: none;") |
@@ -1934,6 +1934,11 @@ color@3.0.x: | |||
1934 | color-convert "^1.9.1" | 1934 | color-convert "^1.9.1" |
1935 | color-string "^1.5.2" | 1935 | color-string "^1.5.2" |
1936 | 1936 | ||
1937 | colorette@^1.2.1: | ||
1938 | version "1.2.1" | ||
1939 | resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.1.tgz#4d0b921325c14faf92633086a536db6e89564b1b" | ||
1940 | integrity sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw== | ||
1941 | |||
1937 | colors@1.0.x: | 1942 | colors@1.0.x: |
1938 | version "1.0.3" | 1943 | version "1.0.3" |
1939 | resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" | 1944 | resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" |
@@ -2348,6 +2353,11 @@ deep-object-diff@^1.1.0: | |||
2348 | resolved "https://registry.yarnpkg.com/deep-object-diff/-/deep-object-diff-1.1.0.tgz#d6fabf476c2ed1751fc94d5ca693d2ed8c18bc5a" | 2353 | resolved "https://registry.yarnpkg.com/deep-object-diff/-/deep-object-diff-1.1.0.tgz#d6fabf476c2ed1751fc94d5ca693d2ed8c18bc5a" |
2349 | integrity sha512-b+QLs5vHgS+IoSNcUE4n9HP2NwcHj7aqnJWsjPtuG75Rh5TOaGt0OjAYInh77d5T16V5cRDC+Pw/6ZZZiETBGw== | 2354 | integrity sha512-b+QLs5vHgS+IoSNcUE4n9HP2NwcHj7aqnJWsjPtuG75Rh5TOaGt0OjAYInh77d5T16V5cRDC+Pw/6ZZZiETBGw== |
2350 | 2355 | ||
2356 | deepmerge@^4.2.2: | ||
2357 | version "4.2.2" | ||
2358 | resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" | ||
2359 | integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== | ||
2360 | |||
2351 | defer-to-connect@^1.0.1: | 2361 | defer-to-connect@^1.0.1: |
2352 | version "1.1.3" | 2362 | version "1.1.3" |
2353 | resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.1.3.tgz#331ae050c08dcf789f8c83a7b81f0ed94f4ac591" | 2363 | resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.1.3.tgz#331ae050c08dcf789f8c83a7b81f0ed94f4ac591" |
@@ -2437,9 +2447,9 @@ dom-serializer@0: | |||
2437 | entities "^2.0.0" | 2447 | entities "^2.0.0" |
2438 | 2448 | ||
2439 | dom-serializer@^1.0.1: | 2449 | dom-serializer@^1.0.1: |
2440 | version "1.0.1" | 2450 | version "1.1.0" |
2441 | resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.0.1.tgz#79695eb49af3cd8abc8d93a73da382deb1ca0795" | 2451 | resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.1.0.tgz#5f7c828f1bfc44887dc2a315ab5c45691d544b58" |
2442 | integrity sha512-1Aj1Qy3YLbdslkI75QEOfdp9TkQ3o8LRISAzxOibjBs/xWwr1WxZFOQphFkZuepHFGo+kB8e5FVJSS0faAJ4Rw== | 2452 | integrity sha512-ox7bvGXt2n+uLWtCRLybYx60IrOlWL/aCebWJk1T0d4m3y2tzf4U3ij9wBMUb6YJZpz06HCCYuyCDveE2xXmzQ== |
2443 | dependencies: | 2453 | dependencies: |
2444 | domelementtype "^2.0.1" | 2454 | domelementtype "^2.0.1" |
2445 | domhandler "^3.0.0" | 2455 | domhandler "^3.0.0" |
@@ -2464,9 +2474,9 @@ domelementtype@1, domelementtype@^1.3.0, domelementtype@^1.3.1: | |||
2464 | integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w== | 2474 | integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w== |
2465 | 2475 | ||
2466 | domelementtype@^2.0.1: | 2476 | domelementtype@^2.0.1: |
2467 | version "2.0.1" | 2477 | version "2.0.2" |
2468 | resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.0.1.tgz#1f8bdfe91f5a78063274e803b4bdcedf6e94f94d" | 2478 | resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.0.2.tgz#f3b6e549201e46f588b59463dd77187131fe6971" |
2469 | integrity sha512-5HOHUDsYZWV8FGWN0Njbr/Rn7f/eWSQi1v7+HsUVwXgn8nWWlL64zKDkS0n8ZmQ3mlWOMuXOnR+7Nx/5tMO5AQ== | 2479 | integrity sha512-wFwTwCVebUrMgGeAwRL/NhZtHAUyT9n9yg4IMDwf10+6iCMxSkVq9MGCVEH+QZWo1nNidy8kNvwmv4zWHDTqvA== |
2470 | 2480 | ||
2471 | domhandler@^2.3.0: | 2481 | domhandler@^2.3.0: |
2472 | version "2.4.2" | 2482 | version "2.4.2" |
@@ -2475,10 +2485,10 @@ domhandler@^2.3.0: | |||
2475 | dependencies: | 2485 | dependencies: |
2476 | domelementtype "1" | 2486 | domelementtype "1" |
2477 | 2487 | ||
2478 | domhandler@^3.0.0: | 2488 | domhandler@^3.0.0, domhandler@^3.3.0: |
2479 | version "3.0.0" | 2489 | version "3.3.0" |
2480 | resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-3.0.0.tgz#51cd13efca31da95bbb0c5bee3a48300e333b3e9" | 2490 | resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-3.3.0.tgz#6db7ea46e4617eb15cf875df68b2b8524ce0037a" |
2481 | integrity sha512-eKLdI5v9m67kbXQbJSNn1zjh0SDzvzWVWtX+qEI3eMjZw8daH9k8rlj1FZY9memPwjiskQFbe7vHVVJIAqoEhw== | 2491 | integrity sha512-J1C5rIANUbuYK+FuFL98650rihynUOEzRLxW+90bKZRWB6A1X1Tf82GxR1qAWLyfNPRvjqfip3Q5tdYlmAa9lA== |
2482 | dependencies: | 2492 | dependencies: |
2483 | domelementtype "^2.0.1" | 2493 | domelementtype "^2.0.1" |
2484 | 2494 | ||
@@ -2499,13 +2509,13 @@ domutils@^1.5.1: | |||
2499 | domelementtype "1" | 2509 | domelementtype "1" |
2500 | 2510 | ||
2501 | domutils@^2.0.0: | 2511 | domutils@^2.0.0: |
2502 | version "2.2.0" | 2512 | version "2.4.2" |
2503 | resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.2.0.tgz#f3ce1610af5c30280bde1b71f84b018b958f32cf" | 2513 | resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.4.2.tgz#7ee5be261944e1ad487d9aa0616720010123922b" |
2504 | integrity sha512-0haAxVr1PR0SqYwCH7mxMpHZUwjih9oPPedqpR/KufsnxPyZ9dyVw1R5093qnJF3WXSbjBkdzRWLw/knJV/fAg== | 2514 | integrity sha512-NKbgaM8ZJOecTZsIzW5gSuplsX2IWW2mIK7xVr8hTQF2v1CJWTmLZ1HOCh5sH+IzVPAGE5IucooOkvwBRAdowA== |
2505 | dependencies: | 2515 | dependencies: |
2506 | dom-serializer "^1.0.1" | 2516 | dom-serializer "^1.0.1" |
2507 | domelementtype "^2.0.1" | 2517 | domelementtype "^2.0.1" |
2508 | domhandler "^3.0.0" | 2518 | domhandler "^3.3.0" |
2509 | 2519 | ||
2510 | dot-prop@^5.2.0: | 2520 | dot-prop@^5.2.0: |
2511 | version "5.2.0" | 2521 | version "5.2.0" |
@@ -2696,6 +2706,11 @@ entities@^1.1.1, entities@~1.1.1: | |||
2696 | integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== | 2706 | integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== |
2697 | 2707 | ||
2698 | entities@^2.0.0: | 2708 | entities@^2.0.0: |
2709 | version "2.1.0" | ||
2710 | resolved "https://registry.yarnpkg.com/entities/-/entities-2.1.0.tgz#992d3129cf7df6870b96c57858c249a120f8b8b5" | ||
2711 | integrity sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w== | ||
2712 | |||
2713 | entities@~2.0.0: | ||
2699 | version "2.0.3" | 2714 | version "2.0.3" |
2700 | resolved "https://registry.yarnpkg.com/entities/-/entities-2.0.3.tgz#5c487e5742ab93c15abb5da22759b8590ec03b7f" | 2715 | resolved "https://registry.yarnpkg.com/entities/-/entities-2.0.3.tgz#5c487e5742ab93c15abb5da22759b8590ec03b7f" |
2701 | integrity sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ== | 2716 | integrity sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ== |
@@ -2807,6 +2822,11 @@ escape-string-regexp@1.0.5, escape-string-regexp@^1.0.5, escape-string-regexp@~1 | |||
2807 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" | 2822 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" |
2808 | integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= | 2823 | integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= |
2809 | 2824 | ||
2825 | escape-string-regexp@^4.0.0: | ||
2826 | version "4.0.0" | ||
2827 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" | ||
2828 | integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== | ||
2829 | |||
2810 | eslint-config-standard-with-typescript@^18.0.2: | 2830 | eslint-config-standard-with-typescript@^18.0.2: |
2811 | version "18.0.2" | 2831 | version "18.0.2" |
2812 | resolved "https://registry.yarnpkg.com/eslint-config-standard-with-typescript/-/eslint-config-standard-with-typescript-18.0.2.tgz#eb02d5358b17fe083c6f993ff829492c8f96b18f" | 2832 | resolved "https://registry.yarnpkg.com/eslint-config-standard-with-typescript/-/eslint-config-standard-with-typescript-18.0.2.tgz#eb02d5358b17fe083c6f993ff829492c8f96b18f" |
@@ -3589,7 +3609,7 @@ htmlparser2@^3.10.1, htmlparser2@^3.9.1: | |||
3589 | inherits "^2.0.1" | 3609 | inherits "^2.0.1" |
3590 | readable-stream "^3.1.1" | 3610 | readable-stream "^3.1.1" |
3591 | 3611 | ||
3592 | htmlparser2@^4.0.0: | 3612 | htmlparser2@^4.0.0, htmlparser2@^4.1.0: |
3593 | version "4.1.0" | 3613 | version "4.1.0" |
3594 | resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-4.1.0.tgz#9a4ef161f2e4625ebf7dfbe6c0a2f52d18a59e78" | 3614 | resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-4.1.0.tgz#9a4ef161f2e4625ebf7dfbe6c0a2f52d18a59e78" |
3595 | integrity sha512-4zDq1a1zhE4gQso/c5LP1OtrhYTncXNSpvJYtWJBtXAETPlMfi3IFNjGuQbYLuVY4ZR0QMqRVvo4Pdy9KLyP8Q== | 3615 | integrity sha512-4zDq1a1zhE4gQso/c5LP1OtrhYTncXNSpvJYtWJBtXAETPlMfi3IFNjGuQbYLuVY4ZR0QMqRVvo4Pdy9KLyP8Q== |
@@ -4016,6 +4036,11 @@ is-plain-obj@^1.1.0: | |||
4016 | resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" | 4036 | resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" |
4017 | integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= | 4037 | integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= |
4018 | 4038 | ||
4039 | is-plain-object@^5.0.0: | ||
4040 | version "5.0.0" | ||
4041 | resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" | ||
4042 | integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== | ||
4043 | |||
4019 | is-promise@^2.0.0, is-promise@^2.1: | 4044 | is-promise@^2.0.0, is-promise@^2.1: |
4020 | version "2.2.2" | 4045 | version "2.2.2" |
4021 | resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1" | 4046 | resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1" |
@@ -4070,16 +4095,16 @@ isarray@0.0.1, isarray@~0.0.1: | |||
4070 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" | 4095 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" |
4071 | integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8= | 4096 | integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8= |
4072 | 4097 | ||
4098 | isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: | ||
4099 | version "1.0.0" | ||
4100 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" | ||
4101 | integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= | ||
4102 | |||
4073 | isarray@2.0.1: | 4103 | isarray@2.0.1: |
4074 | version "2.0.1" | 4104 | version "2.0.1" |
4075 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.1.tgz#a37d94ed9cda2d59865c9f76fe596ee1f338741e" | 4105 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.1.tgz#a37d94ed9cda2d59865c9f76fe596ee1f338741e" |
4076 | integrity sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4= | 4106 | integrity sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4= |
4077 | 4107 | ||
4078 | isarray@^1.0.0, isarray@~1.0.0: | ||
4079 | version "1.0.0" | ||
4080 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" | ||
4081 | integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= | ||
4082 | |||
4083 | isarray@^2.0.5: | 4108 | isarray@^2.0.5: |
4084 | version "2.0.5" | 4109 | version "2.0.5" |
4085 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" | 4110 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" |
@@ -4095,6 +4120,13 @@ iso-639-3@^2.0.0: | |||
4095 | resolved "https://registry.yarnpkg.com/iso-639-3/-/iso-639-3-2.1.0.tgz#f3733c7f2754c1bde34a8960b2a17146a4b41053" | 4120 | resolved "https://registry.yarnpkg.com/iso-639-3/-/iso-639-3-2.1.0.tgz#f3733c7f2754c1bde34a8960b2a17146a4b41053" |
4096 | integrity sha512-NYcq+YfrCFVGw/xWhRB9mhCSWxlOxYv3eK3WzWzc86P8huEZ7UDQq8Bu0zKqpZFOdq221Gy8VWWLr1aaYc+FJA== | 4121 | integrity sha512-NYcq+YfrCFVGw/xWhRB9mhCSWxlOxYv3eK3WzWzc86P8huEZ7UDQq8Bu0zKqpZFOdq221Gy8VWWLr1aaYc+FJA== |
4097 | 4122 | ||
4123 | isobject@^2.0.0: | ||
4124 | version "2.1.0" | ||
4125 | resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" | ||
4126 | integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= | ||
4127 | dependencies: | ||
4128 | isarray "1.0.0" | ||
4129 | |||
4098 | isstream@0.1.x, isstream@~0.1.2: | 4130 | isstream@0.1.x, isstream@~0.1.2: |
4099 | version "0.1.2" | 4131 | version "0.1.2" |
4100 | resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" | 4132 | resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" |
@@ -4307,6 +4339,11 @@ kind-of@^3.0.2: | |||
4307 | dependencies: | 4339 | dependencies: |
4308 | is-buffer "^1.1.5" | 4340 | is-buffer "^1.1.5" |
4309 | 4341 | ||
4342 | klona@^2.0.3: | ||
4343 | version "2.0.4" | ||
4344 | resolved "https://registry.yarnpkg.com/klona/-/klona-2.0.4.tgz#7bb1e3affb0cb8624547ef7e8f6708ea2e39dfc0" | ||
4345 | integrity sha512-ZRbnvdg/NxqzC7L9Uyqzf4psi1OM4Cuc+sJAkQPjO6XkQIJTNbfK2Rsmbw8fx1p2mkZdp2FZYo2+LwXYY/uwIA== | ||
4346 | |||
4310 | kuler@^2.0.0: | 4347 | kuler@^2.0.0: |
4311 | version "2.0.0" | 4348 | version "2.0.0" |
4312 | resolved "https://registry.yarnpkg.com/kuler/-/kuler-2.0.0.tgz#e2c570a3800388fb44407e851531c1d670b061b3" | 4349 | resolved "https://registry.yarnpkg.com/kuler/-/kuler-2.0.0.tgz#e2c570a3800388fb44407e851531c1d670b061b3" |
@@ -4376,7 +4413,15 @@ libxmljs@0.19.7: | |||
4376 | nan "~2.14.0" | 4413 | nan "~2.14.0" |
4377 | node-pre-gyp "~0.11.0" | 4414 | node-pre-gyp "~0.11.0" |
4378 | 4415 | ||
4379 | linkify-it@3.0.2: | 4416 | line-column@^1.0.2: |
4417 | version "1.0.2" | ||
4418 | resolved "https://registry.yarnpkg.com/line-column/-/line-column-1.0.2.tgz#d25af2936b6f4849172b312e4792d1d987bc34a2" | ||
4419 | integrity sha1-0lryk2tvSEkXKzEuR5LR2Ye8NKI= | ||
4420 | dependencies: | ||
4421 | isarray "^1.0.0" | ||
4422 | isobject "^2.0.0" | ||
4423 | |||
4424 | linkify-it@3.0.2, linkify-it@^3.0.1: | ||
4380 | version "3.0.2" | 4425 | version "3.0.2" |
4381 | resolved "https://registry.yarnpkg.com/linkify-it/-/linkify-it-3.0.2.tgz#f55eeb8bc1d3ae754049e124ab3bb56d97797fb8" | 4426 | resolved "https://registry.yarnpkg.com/linkify-it/-/linkify-it-3.0.2.tgz#f55eeb8bc1d3ae754049e124ab3bb56d97797fb8" |
4382 | integrity sha512-gDBO4aHNZS6coiZCKVhSNh43F9ioIL4JwRjLZPkoLIY4yZFwg264Y5lu2x6rb1Js42Gh6Yqm2f6L2AJcnkzinQ== | 4427 | integrity sha512-gDBO4aHNZS6coiZCKVhSNh43F9ioIL4JwRjLZPkoLIY4yZFwg264Y5lu2x6rb1Js42Gh6Yqm2f6L2AJcnkzinQ== |
@@ -4677,6 +4722,17 @@ markdown-it-emoji@^1.4.0: | |||
4677 | resolved "https://registry.yarnpkg.com/markdown-it-emoji/-/markdown-it-emoji-1.4.0.tgz#9bee0e9a990a963ba96df6980c4fddb05dfb4dcc" | 4722 | resolved "https://registry.yarnpkg.com/markdown-it-emoji/-/markdown-it-emoji-1.4.0.tgz#9bee0e9a990a963ba96df6980c4fddb05dfb4dcc" |
4678 | integrity sha1-m+4OmpkKljupbfaYDE/dsF37Tcw= | 4723 | integrity sha1-m+4OmpkKljupbfaYDE/dsF37Tcw= |
4679 | 4724 | ||
4725 | markdown-it@11.x: | ||
4726 | version "11.0.1" | ||
4727 | resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-11.0.1.tgz#b54f15ec2a2193efa66dda1eb4173baea08993d6" | ||
4728 | integrity sha512-aU1TzmBKcWNNYvH9pjq6u92BML+Hz3h5S/QpfTFwiQF852pLT+9qHsrhM9JYipkOXZxGn+sGH8oyJE9FD9WezQ== | ||
4729 | dependencies: | ||
4730 | argparse "^1.0.7" | ||
4731 | entities "~2.0.0" | ||
4732 | linkify-it "^3.0.1" | ||
4733 | mdurl "^1.0.1" | ||
4734 | uc.micro "^1.0.5" | ||
4735 | |||
4680 | marked-man@^0.7.0: | 4736 | marked-man@^0.7.0: |
4681 | version "0.7.0" | 4737 | version "0.7.0" |
4682 | resolved "https://registry.yarnpkg.com/marked-man/-/marked-man-0.7.0.tgz#220ba01d275d16f1a98e4e7fc3c5eac0630c68e4" | 4738 | resolved "https://registry.yarnpkg.com/marked-man/-/marked-man-0.7.0.tgz#220ba01d275d16f1a98e4e7fc3c5eac0630c68e4" |
@@ -4701,6 +4757,11 @@ md5@^2.2.1: | |||
4701 | crypt "0.0.2" | 4757 | crypt "0.0.2" |
4702 | is-buffer "~1.1.6" | 4758 | is-buffer "~1.1.6" |
4703 | 4759 | ||
4760 | mdurl@^1.0.1: | ||
4761 | version "1.0.1" | ||
4762 | resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-1.0.1.tgz#fe85b2ec75a59037f2adfec100fd6c601761152e" | ||
4763 | integrity sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4= | ||
4764 | |||
4704 | media-typer@0.3.0: | 4765 | media-typer@0.3.0: |
4705 | version "0.3.0" | 4766 | version "0.3.0" |
4706 | resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" | 4767 | resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" |
@@ -4998,6 +5059,11 @@ nan@~2.14.0: | |||
4998 | resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01" | 5059 | resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01" |
4999 | integrity sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw== | 5060 | integrity sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw== |
5000 | 5061 | ||
5062 | nanoid@^3.1.16: | ||
5063 | version "3.1.16" | ||
5064 | resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.16.tgz#b21f0a7d031196faf75314d7c65d36352beeef64" | ||
5065 | integrity sha512-+AK8MN0WHji40lj8AEuwLOvLSbWYApQpre/aFJZD71r43wVRLrOYS4FmJOPQYon1TqB462RzrrxlfA74XRES8w== | ||
5066 | |||
5001 | natural-compare@^1.4.0: | 5067 | natural-compare@^1.4.0: |
5002 | version "1.4.0" | 5068 | version "1.4.0" |
5003 | resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" | 5069 | resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" |
@@ -5516,6 +5582,11 @@ parse-numeric-range@^1.2.0: | |||
5516 | resolved "https://registry.yarnpkg.com/parse-numeric-range/-/parse-numeric-range-1.2.0.tgz#aa70b00f29624ed13e9f943e9461b306e386b0fa" | 5582 | resolved "https://registry.yarnpkg.com/parse-numeric-range/-/parse-numeric-range-1.2.0.tgz#aa70b00f29624ed13e9f943e9461b306e386b0fa" |
5517 | integrity sha512-1q2tXpAOplPxcl8vrIGPWz1dJxxfmdRkCFcpxxMBerDnGuuHalOWF/xj9L8Nn5XoTUoB/6F0CeQBp2fMgkOYFg== | 5583 | integrity sha512-1q2tXpAOplPxcl8vrIGPWz1dJxxfmdRkCFcpxxMBerDnGuuHalOWF/xj9L8Nn5XoTUoB/6F0CeQBp2fMgkOYFg== |
5518 | 5584 | ||
5585 | parse-srcset@^1.0.2: | ||
5586 | version "1.0.2" | ||
5587 | resolved "https://registry.yarnpkg.com/parse-srcset/-/parse-srcset-1.0.2.tgz#f2bd221f6cc970a938d88556abc589caaaa2bde1" | ||
5588 | integrity sha1-8r0iH2zJcKk42IVWq8WJyqqiveE= | ||
5589 | |||
5519 | parse-torrent@^7.0.0, parse-torrent@^7.1.3: | 5590 | parse-torrent@^7.0.0, parse-torrent@^7.1.3: |
5520 | version "7.1.3" | 5591 | version "7.1.3" |
5521 | resolved "https://registry.yarnpkg.com/parse-torrent/-/parse-torrent-7.1.3.tgz#5981a0d9381b16297a7af053763068e8da5c9610" | 5592 | resolved "https://registry.yarnpkg.com/parse-torrent/-/parse-torrent-7.1.3.tgz#5981a0d9381b16297a7af053763068e8da5c9610" |
@@ -5747,6 +5818,16 @@ pngjs@^3.0.0, pngjs@^3.3.3: | |||
5747 | resolved "https://registry.yarnpkg.com/pngjs/-/pngjs-3.4.0.tgz#99ca7d725965fb655814eaf65f38f12bbdbf555f" | 5818 | resolved "https://registry.yarnpkg.com/pngjs/-/pngjs-3.4.0.tgz#99ca7d725965fb655814eaf65f38f12bbdbf555f" |
5748 | integrity sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w== | 5819 | integrity sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w== |
5749 | 5820 | ||
5821 | postcss@^8.0.2: | ||
5822 | version "8.1.6" | ||
5823 | resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.1.6.tgz#b022ba2cfb8701da234d073ed3128c5a384c35ff" | ||
5824 | integrity sha512-JuifSl4h8dJ70SiMXKjzCxhalE6p2TnMHuq9G8ftyXj2jg6SXzqCsEuxMj9RkmJoO5D+Z9YrWunNkxqpRT02qg== | ||
5825 | dependencies: | ||
5826 | colorette "^1.2.1" | ||
5827 | line-column "^1.0.2" | ||
5828 | nanoid "^3.1.16" | ||
5829 | source-map "^0.6.1" | ||
5830 | |||
5750 | postgres-array@~2.0.0: | 5831 | postgres-array@~2.0.0: |
5751 | version "2.0.0" | 5832 | version "2.0.0" |
5752 | resolved "https://registry.yarnpkg.com/postgres-array/-/postgres-array-2.0.0.tgz#48f8fce054fbc69671999329b8834b772652d82e" | 5833 | resolved "https://registry.yarnpkg.com/postgres-array/-/postgres-array-2.0.0.tgz#48f8fce054fbc69671999329b8834b772652d82e" |
@@ -6544,6 +6625,19 @@ safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, | |||
6544 | resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" | 6625 | resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" |
6545 | integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== | 6626 | integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== |
6546 | 6627 | ||
6628 | sanitize-html@2.x: | ||
6629 | version "2.1.2" | ||
6630 | resolved "https://registry.yarnpkg.com/sanitize-html/-/sanitize-html-2.1.2.tgz#184fed43bb186e633c63a7769dfff29392b753a1" | ||
6631 | integrity sha512-i/h+fJal+609o6GlWFpQmAL7E5ZL4rrb0QwbDKQue2uift+4WKMe/HViRGawP4Q/UgswdDKxMqjDRrKPtCpBMg== | ||
6632 | dependencies: | ||
6633 | deepmerge "^4.2.2" | ||
6634 | escape-string-regexp "^4.0.0" | ||
6635 | htmlparser2 "^4.1.0" | ||
6636 | is-plain-object "^5.0.0" | ||
6637 | klona "^2.0.3" | ||
6638 | parse-srcset "^1.0.2" | ||
6639 | postcss "^8.0.2" | ||
6640 | |||
6547 | sax@>=0.6.0, sax@^1.2.4: | 6641 | sax@>=0.6.0, sax@^1.2.4: |
6548 | version "1.2.4" | 6642 | version "1.2.4" |
6549 | resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" | 6643 | resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" |
@@ -6894,7 +6988,7 @@ source-map-support@^0.5.0, source-map-support@^0.5.17: | |||
6894 | buffer-from "^1.0.0" | 6988 | buffer-from "^1.0.0" |
6895 | source-map "^0.6.0" | 6989 | source-map "^0.6.0" |
6896 | 6990 | ||
6897 | source-map@^0.6.0, source-map@~0.6.0: | 6991 | source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0: |
6898 | version "0.6.1" | 6992 | version "0.6.1" |
6899 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" | 6993 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" |
6900 | integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== | 6994 | integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== |
@@ -7569,7 +7663,7 @@ typescript@^3.7.2: | |||
7569 | resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.9.7.tgz#98d600a5ebdc38f40cb277522f12dc800e9e25fa" | 7663 | resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.9.7.tgz#98d600a5ebdc38f40cb277522f12dc800e9e25fa" |
7570 | integrity sha512-BLbiRkiBzAwsjut4x/dsibSTB6yWpwT5qWmC2OfuCg3GgVQCSgMs4vEctYPhsaGtd0AeuuHMkjZ2h2WG8MSzRw== | 7664 | integrity sha512-BLbiRkiBzAwsjut4x/dsibSTB6yWpwT5qWmC2OfuCg3GgVQCSgMs4vEctYPhsaGtd0AeuuHMkjZ2h2WG8MSzRw== |
7571 | 7665 | ||
7572 | uc.micro@^1.0.1: | 7666 | uc.micro@^1.0.1, uc.micro@^1.0.5: |
7573 | version "1.0.6" | 7667 | version "1.0.6" |
7574 | resolved "https://registry.yarnpkg.com/uc.micro/-/uc.micro-1.0.6.tgz#9c411a802a409a91fc6cf74081baba34b24499ac" | 7668 | resolved "https://registry.yarnpkg.com/uc.micro/-/uc.micro-1.0.6.tgz#9c411a802a409a91fc6cf74081baba34b24499ac" |
7575 | integrity sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA== | 7669 | integrity sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA== |