├── .code-snippets ├── .code-snippets.txt ├── .eslintrc.json ├── .gitignore ├── .vscodeignore ├── CHANGELOG.md ├── README.md ├── images ├── icon.png └── template-part-animation.gif ├── license.txt ├── package-lock.json ├── package.json ├── src ├── extension.ts └── test │ ├── runTest.ts │ └── suite │ ├── extension.test.ts │ └── index.ts └── tsconfig.json /.code-snippets: -------------------------------------------------------------------------------- 1 | { 2 | "Archive title": { 3 | "prefix": "block-archive-title, wp:archive-title, wp:query-title, archive title", 4 | "body": [ 5 | "" 6 | ], 7 | }, 8 | "Archives block": { 9 | "prefix": "block-archive, wp:archives", 10 | "body": [ 11 | "" 12 | ], 13 | }, 14 | "Audio block": { 15 | "prefix": "block-audio, wp:audio", 16 | "body": [ 17 | "" 18 | ], 19 | }, 20 | "Avatar block": { 21 | "prefix": "block-avatar, wp:avatar", 22 | "body": [ 23 | "" 24 | ], 25 | }, 26 | "Buttons block": { 27 | "prefix": "block-buttons, block-button, wp:buttons, wp:button", 28 | "body": [ 29 | "", 30 | "
", 31 | "", 32 | "
My button 1
", 33 | "", 34 | "", 35 | "", 36 | "
My button 2
", 37 | "", 38 | "
", 39 | "" 40 | ], 41 | }, 42 | "Calendar block": { 43 | "prefix": "block-calendar wp:calendar", 44 | "body": [ 45 | "" 46 | ], 47 | }, 48 | "Categories block": { 49 | "prefix": "block-categories, wp:categories", 50 | "body": [ 51 | "" 52 | ], 53 | }, 54 | "Code block": { 55 | "prefix": "block-code, wp:code", 56 | "body": [ 57 | "", 58 | "
", 59 | "" 60 | ], 61 | }, 62 | "Columns block": { 63 | "prefix": "block-columns, block-column, wp:columns, wp:column", 64 | "body": [ 65 | "", 66 | "
", 67 | "", 68 | "
", 69 | "
", 70 | "", 71 | "
", 72 | "", 73 | ], 74 | }, 75 | "Comments template part": { 76 | "prefix": "comments template part, comments area", 77 | "body": [ 78 | "" 79 | ], 80 | }, 81 | "Comment author avatar block": { 82 | "prefix": "block-comment-author-avatar, wp:comment-author-avatar, comment author avatar, comment avatar", 83 | "body": [ 84 | "" 85 | ], 86 | }, 87 | "Comment author name block": { 88 | "prefix": "block-comment-author-name, wp:comment-author-name, comment author name,", 89 | "body": [ 90 | "" 91 | ], 92 | }, 93 | "Comment content block": { 94 | "prefix": "block-comment-content, wp:comment-content, comment content,", 95 | "body": [ 96 | "" 97 | ], 98 | }, 99 | "Comment date block": { 100 | "prefix": "block-comment-date, wp:comment-date, comment date,", 101 | "body": [ 102 | "" 103 | ], 104 | }, 105 | "Comment edit link block": { 106 | "prefix": "block-comment-edit-link, wp:comment-edit-link, comment edit link,", 107 | "body": [ 108 | "" 109 | ], 110 | }, 111 | "Comment reply link block": { 112 | "prefix": "block-comment-reply-link, wp:comment-reply-link, wp:comment-reply, comment reply,", 113 | "body": [ 114 | "" 115 | ], 116 | }, 117 | "Comment template block": { 118 | "prefix": "wp:comment-template, comment template, block-comment-template, wp:comment-template", 119 | "body": [ 120 | "" 121 | ], 122 | }, 123 | "Comments pagination block": { 124 | "prefix": "block-comments-pagination, wp:comments-pagination", 125 | "body": [ 126 | "", 127 | "", 128 | "", 129 | "", 130 | "" 131 | ], 132 | }, 133 | "Comments query loop block": { 134 | "prefix": "block-comments-query, block-comments-query-loop, wp:comments-query-loop", 135 | "body": [ 136 | "", 137 | "
", 138 | "", 139 | ], 140 | }, 141 | "Comments title block": { 142 | "prefix": "wp:comments-title, comments title, block-comments-title", 143 | "body": [ 144 | "" 145 | ], 146 | }, 147 | "Cover block legacy": { 148 | "prefix": "block-cover legacy, wp:cover legacy", 149 | "body": [ 150 | "", 151 | "
", 153 | "
", 154 | "
", 155 | "
", 156 | "" 157 | ], 158 | }, 159 | "Cover block": { 160 | "prefix": "block-cover, wp:cover", 161 | "body": [ 162 | "", 163 | "
", 164 | "
", 165 | "
", 166 | "
", 167 | "" 168 | ], 169 | }, 170 | "File block": { 171 | "prefix": "block-file, wp:file", 172 | "body": [ 173 | "", 174 | "
Download
", 175 | "" 176 | ], 177 | }, 178 | "Footer template part": { 179 | "prefix": "footer template part, wp:footer", 180 | "body": [ 181 | "" 182 | ], 183 | }, 184 | "Gallery block": { 185 | "prefix": "block-gallery, wp:gallery", 186 | "body": [ 187 | "", 188 | "", 194 | "" 195 | ], 196 | }, 197 | "Group block": { 198 | "prefix": "block-group, wp:group", 199 | "body": [ 200 | "", 201 | "
", 202 | "
", 203 | "" 204 | ], 205 | }, 206 | "Header template part": { 207 | "prefix": "header template part, wp:header", 208 | "body": [ 209 | "" 210 | ], 211 | }, 212 | "Heading block": { 213 | "prefix": "block-heading, wp:heading", 214 | "body": [ 215 | "", 216 | "

", 217 | "" 218 | ], 219 | }, 220 | "HTML block": { 221 | "prefix": "block-html, wp:html", 222 | "body": [ 223 | "" 224 | ], 225 | }, 226 | "Image block": { 227 | "prefix": "block-image, wp:image", 228 | "body": [ 229 | "", 230 | "
\"\"/
", 231 | "", 232 | ], 233 | }, 234 | "Latest comments block": { 235 | "prefix": "block-latest-comments, wp:latest-comments", 236 | "body": [ 237 | "" 238 | ], 239 | }, 240 | "Latest posts block": { 241 | "prefix": "block-latest-posts, wp:latest-posts", 242 | "body": [ 243 | "" 244 | ], 245 | }, 246 | "List block": { 247 | "prefix": "block-list, wp:list", 248 | "body": [ 249 | "", 250 | "", 251 | "" 252 | ], 253 | }, 254 | "Login/out block": { 255 | "prefix": "block-loginout, wp:loginout", 256 | "body": [ 257 | "" 258 | ], 259 | }, 260 | "Media & text block": { 261 | "prefix": "block-media-text, wp:media-text", 262 | "body": [ 263 | "", 264 | "
", 265 | "
", 266 | "\"\"/", 267 | "
", 268 | "
", 269 | "
", 270 | "
", 271 | "" 272 | ], 273 | }, 274 | "More block": { 275 | "prefix": "block-more, wp:more, read more, wp:read-more", 276 | "body": [ 277 | "", 278 | "", 279 | "" 280 | ], 281 | }, 282 | "Navigation block": { 283 | "prefix": "block-navigation, wp:navigation", 284 | "body": [ 285 | "" 286 | ], 287 | }, 288 | "Next page block": { 289 | "prefix": "block-next-page, wp:nextpage, page break", 290 | "body": [ 291 | "", 292 | "", 293 | "" 294 | ], 295 | }, 296 | "Page list block": { 297 | "prefix": "block-page-list, wp:pagelist", 298 | "body": [ 299 | "" 300 | ], 301 | }, 302 | "Paragraph block": { 303 | "prefix": "block-paragraph, wp:paragraph", 304 | "body": [ 305 | "

" 306 | ], 307 | }, 308 | "Pattern block": { 309 | "prefix": "block-pattern, wp:pattern", 310 | "body": [ 311 | "" 312 | ], 313 | }, 314 | "Post Author block": { 315 | "prefix": "block-post-author, wp:post-author", 316 | "body": [ 317 | "" 318 | ], 319 | }, 320 | "Post Author Biography block": { 321 | "prefix": "block-post-author-biography, wp:post-author-biography", 322 | "body": [ 323 | "" 324 | ], 325 | }, 326 | "Post Author Name block": { 327 | "prefix": "block-post-author-name, wp:post-author-name", 328 | "body": [ 329 | "" 330 | ], 331 | }, 332 | "Post comment block": { 333 | "prefix": "block-post-comment, wp:post-comment", 334 | "body": [ 335 | "", 336 | "
", 337 | "" 338 | ], 339 | }, 340 | "Post comments count block": { 341 | "prefix": "block-post-comments-count, wp:post-comments-count", 342 | "body": [ 343 | "" 344 | ], 345 | }, 346 | "Post comments block": { 347 | "prefix": "block-post-comments, wp:post-comments", 348 | "body": [ 349 | "" 350 | ], 351 | }, 352 | "Post comments form block": { 353 | "prefix": "block-post-comment-form, wp:post-comments-form", 354 | "body": [ 355 | "" 356 | ], 357 | }, 358 | "Post comments link block": { 359 | "prefix": "block-post-comment-link, wp:post-comments-link", 360 | "body": [ 361 | "" 362 | ], 363 | }, 364 | "Post Content block": { 365 | "prefix": "block-post-content, wp:post-content", 366 | "body": [ 367 | "" 368 | ], 369 | }, 370 | "Post Date block": { 371 | "prefix": "block-post-date, wp:post-date", 372 | "body": [ 373 | "" 374 | ], 375 | }, 376 | "Post Excerpt block": { 377 | "prefix": "block-post-excerpt, wp:post-excerpt", 378 | "body": [ 379 | "" 380 | ], 381 | }, 382 | "Post featured image block": { 383 | "prefix": "block-post-featured-image, wp:post-featured-image, block-featured-image", 384 | "body": [ 385 | "" 386 | ], 387 | }, 388 | "Post navigation block": { 389 | "prefix": "block-post-navigation, wp:post-navigation-link, next post, previous post", 390 | "body": [ 391 | "", 392 | "" 393 | ], 394 | }, 395 | "Post terms block": { 396 | "prefix": "block-post-terms, wp:post-terms, post categories, post tags, wp:post-tags, wp:post-categories", 397 | "body": [ 398 | "", 399 | "" 400 | ], 401 | }, 402 | "Post Title block": { 403 | "prefix": "block-post-title, wp:post-title", 404 | "body": [ 405 | "" 406 | ], 407 | }, 408 | "Preformatted block": { 409 | "prefix": "block-preformatted, wp:preformatted", 410 | "body": [ 411 | "", 412 | "
",
413 | 			""
414 | 		],
415 | 	},
416 | 	"Pullquote block": {
417 | 		"prefix": "block-pull-quote, wp:pullquote",
418 | 		"body": [
419 | 			"",
420 | 			"

", 421 | "" 422 | ], 423 | }, 424 | "Query block": { 425 | "prefix": "block-query, wp:query, post list, posts list, block-loop, query-loop", 426 | "body": [ 427 | "
" 428 | ], 429 | }, 430 | "Post template block": { 431 | "prefix": "wp:post-template, post template, block-post-template, wp:query-loop", 432 | "body": [ 433 | "" 434 | ], 435 | }, 436 | "Query No Results block": { 437 | "prefix": "wp:query-no-results, no results", 438 | "body": [ 439 | "", 440 | "", 441 | "

", 442 | "", 443 | "", 444 | ], 445 | }, 446 | "Query pagination block": { 447 | "prefix": "block-query-pagination, query-pagination, wp:query-pagination", 448 | "body": [ 449 | "", 450 | "", 451 | "", 452 | "", 453 | "", 454 | ], 455 | }, 456 | "Quote block": { 457 | "prefix": "block-quote, wp:quote ", 458 | "body": [ 459 | "", 460 | "

", 461 | "", 462 | ], 463 | }, 464 | "Reusable block": { 465 | "prefix": "reusable, wp:core, block-reusable", 466 | "body": [ 467 | "" 468 | ], 469 | }, 470 | "Read More block": { 471 | "prefix": "read more, wp:read-more", 472 | "body": [ 473 | "" 474 | ], 475 | }, 476 | "RSS block": { 477 | "prefix": "block-rss, wp:rss", 478 | "body": [ 479 | "" 480 | ], 481 | }, 482 | "Row group block variation": { 483 | "prefix": "block-row, wp:row, wp:flex-group, wp:flex", 484 | "body": [ 485 | "", 486 | "
", 487 | "" 488 | ], 489 | }, 490 | "Search block": { 491 | "prefix": "block-search, wp:search", 492 | "body": [ 493 | "" 494 | ], 495 | }, 496 | "Separator block": { 497 | "prefix": "block-separator, wp:separator", 498 | "body": [ 499 | "", 500 | "
", 501 | "", 502 | ], 503 | }, 504 | "Site Title block": { 505 | "prefix": "block-site-title, wp:site-title", 506 | "body": [ 507 | "" 508 | ], 509 | }, 510 | "Site Tagline block": { 511 | "prefix": "block-site-tagline, wp:site-tagline", 512 | "body": [ 513 | "" 514 | ], 515 | }, 516 | "Site Logo block": { 517 | "prefix": "block-site-logo, wp:site-logo", 518 | "body": [ 519 | "" 520 | ], 521 | }, 522 | "Shortcode block": { 523 | "prefix": "block-shortcode, wp:shortcode", 524 | "body": [ 525 | "" 526 | ], 527 | }, 528 | "Social link block": { 529 | "prefix": "block-social-link, wp:social-link", 530 | "body": [ 531 | "" 532 | ], 533 | }, 534 | "Social links block": { 535 | "prefix": "block-social-links, block-social, wp:social-links", 536 | "body": [ 537 | "", 538 | "", 541 | "" 542 | ], 543 | }, 544 | "Spacer block": { 545 | "prefix": "block-spacer, wp:spacer", 546 | "body": [ 547 | "", 548 | "
", 549 | "", 550 | ], 551 | }, 552 | "Table block": { 553 | "prefix": "block-table, wp:table", 554 | "body": [ 555 | "", 556 | "
", 557 | "" 558 | ], 559 | }, 560 | "Table of Contents block": { 561 | "prefix": "table of contents, wp:table-of-contents", 562 | "body": [ 563 | "", 564 | ], 565 | }, 566 | "Tag cloud block": { 567 | "prefix": "block-tag-cloud, wp:tag-cloud", 568 | "body": [ 569 | "", 570 | ], 571 | }, 572 | "Template part block": { 573 | "prefix": "block-template-part, wp:template-part", 574 | "body": [ 575 | "" 576 | ], 577 | }, 578 | "Term description block": { 579 | "prefix": "block-term-description, wp:term-description, description", 580 | "body": [ 581 | "" 582 | ], 583 | }, 584 | "Verse block": { 585 | "prefix": "block-verse, wp:verse", 586 | "body": [ 587 | "", 588 | "
",
589 | 			"",
590 | 		],
591 | 	},
592 | 	"Video block": {
593 | 		"prefix": "block-video, wp:video",
594 | 		"body": [
595 | 			"",
596 | 			"
", 597 | "" 598 | ], 599 | }, 600 | "pattern file header": { 601 | "prefix": "pattern header, pattern file", 602 | "body": [ 603 | "", 612 | ], 613 | } 614 | } -------------------------------------------------------------------------------- /.code-snippets.txt: -------------------------------------------------------------------------------- 1 | { 2 | "Archive title": { 3 | "prefix": "block-archive-title, wp:archive-title, wp:query-title, archive title", 4 | "body": [ 5 | "" 6 | ], 7 | }, 8 | "Archives block": { 9 | "prefix": "block-archive, wp:archives", 10 | "body": [ 11 | "" 12 | ], 13 | }, 14 | "Audio block": { 15 | "prefix": "block-audio, wp:audio", 16 | "body": [ 17 | "" 18 | ], 19 | }, 20 | "Avatar block": { 21 | "prefix": "block-avatar, wp:avatar", 22 | "body": [ 23 | "" 24 | ], 25 | }, 26 | "Buttons block": { 27 | "prefix": "block-buttons, block-button, wp:buttons, wp:button", 28 | "body": [ 29 | "", 30 | "
", 31 | "", 32 | "
My button 1
", 33 | "", 34 | "", 35 | "", 36 | "
My button 2
", 37 | "", 38 | "
", 39 | "" 40 | ], 41 | }, 42 | "Calendar block": { 43 | "prefix": "block-calendar wp:calendar", 44 | "body": [ 45 | "" 46 | ], 47 | }, 48 | "Categories block": { 49 | "prefix": "block-categories, wp:categories", 50 | "body": [ 51 | "" 52 | ], 53 | }, 54 | "Code block": { 55 | "prefix": "block-code, wp:code", 56 | "body": [ 57 | "", 58 | "
", 59 | "" 60 | ], 61 | }, 62 | "Columns block": { 63 | "prefix": "block-columns, block-column, wp:columns, wp:column", 64 | "body": [ 65 | "", 66 | "
", 67 | "", 68 | "
", 69 | "
", 70 | "", 71 | "
", 72 | "", 73 | ], 74 | }, 75 | "Comments template part": { 76 | "prefix": "comments template part, comments area", 77 | "body": [ 78 | "" 79 | ], 80 | }, 81 | "Comment author avatar block": { 82 | "prefix": "block-comment-author-avatar, wp:comment-author-avatar, comment author avatar, comment avatar", 83 | "body": [ 84 | "" 85 | ], 86 | }, 87 | "Comment author name block": { 88 | "prefix": "block-comment-author-name, wp:comment-author-name, comment author name,", 89 | "body": [ 90 | "" 91 | ], 92 | }, 93 | "Comment content block": { 94 | "prefix": "block-comment-content, wp:comment-content, comment content,", 95 | "body": [ 96 | "" 97 | ], 98 | }, 99 | "Comment date block": { 100 | "prefix": "block-comment-date, wp:comment-date, comment date,", 101 | "body": [ 102 | "" 103 | ], 104 | }, 105 | "Comment edit link block": { 106 | "prefix": "block-comment-edit-link, wp:comment-edit-link, comment edit link,", 107 | "body": [ 108 | "" 109 | ], 110 | }, 111 | "Comment reply link block": { 112 | "prefix": "block-comment-reply-link, wp:comment-reply-link, wp:comment-reply, comment reply,", 113 | "body": [ 114 | "" 115 | ], 116 | }, 117 | "Comment template block": { 118 | "prefix": "wp:comment-template, comment template, block-comment-template, wp:comment-template", 119 | "body": [ 120 | "" 121 | ], 122 | }, 123 | "Comments pagination block": { 124 | "prefix": "block-comments-pagination, wp:comments-pagination", 125 | "body": [ 126 | "", 127 | "", 128 | "", 129 | "", 130 | "" 131 | ], 132 | }, 133 | "Comments query loop block": { 134 | "prefix": "block-comments-query, block-comments-query-loop, wp:comments-query-loop", 135 | "body": [ 136 | "", 137 | "
", 138 | "", 139 | ], 140 | }, 141 | "Comments title block": { 142 | "prefix": "wp:comments-title, comments title, block-comments-title", 143 | "body": [ 144 | "" 145 | ], 146 | }, 147 | "Cover block legacy": { 148 | "prefix": "block-cover legacy, wp:cover legacy", 149 | "body": [ 150 | "", 151 | "
", 153 | "
", 154 | "
", 155 | "
", 156 | "" 157 | ], 158 | }, 159 | "Cover block": { 160 | "prefix": "block-cover, wp:cover", 161 | "body": [ 162 | "", 163 | "
", 164 | "
", 165 | "
", 166 | "
", 167 | "" 168 | ], 169 | }, 170 | "File block": { 171 | "prefix": "block-file, wp:file", 172 | "body": [ 173 | "", 174 | "
Download
", 175 | "" 176 | ], 177 | }, 178 | "Footer template part": { 179 | "prefix": "footer template part, wp:footer", 180 | "body": [ 181 | "" 182 | ], 183 | }, 184 | "Gallery block": { 185 | "prefix": "block-gallery, wp:gallery", 186 | "body": [ 187 | "", 188 | "", 194 | "" 195 | ], 196 | }, 197 | "Group block": { 198 | "prefix": "block-group, wp:group", 199 | "body": [ 200 | "", 201 | "
", 202 | "
", 203 | "" 204 | ], 205 | }, 206 | "Header template part": { 207 | "prefix": "header template part, wp:header", 208 | "body": [ 209 | "" 210 | ], 211 | }, 212 | "Heading block": { 213 | "prefix": "block-heading, wp:heading", 214 | "body": [ 215 | "", 216 | "

", 217 | "" 218 | ], 219 | }, 220 | "HTML block": { 221 | "prefix": "block-html, wp:html", 222 | "body": [ 223 | "" 224 | ], 225 | }, 226 | "Image block": { 227 | "prefix": "block-image, wp:image", 228 | "body": [ 229 | "", 230 | "
\"\"/
", 231 | "", 232 | ], 233 | }, 234 | "Latest comments block": { 235 | "prefix": "block-latest-comments, wp:latest-comments", 236 | "body": [ 237 | "" 238 | ], 239 | }, 240 | "Latest posts block": { 241 | "prefix": "block-latest-posts, wp:latest-posts", 242 | "body": [ 243 | "" 244 | ], 245 | }, 246 | "List block": { 247 | "prefix": "block-list, wp:list", 248 | "body": [ 249 | "", 250 | "", 251 | "" 252 | ], 253 | }, 254 | "Login/out block": { 255 | "prefix": "block-loginout, wp:loginout", 256 | "body": [ 257 | "" 258 | ], 259 | }, 260 | "Media & text block": { 261 | "prefix": "block-media-text, wp:media-text", 262 | "body": [ 263 | "", 264 | "
", 265 | "
", 266 | "\"\"/", 267 | "
", 268 | "
", 269 | "
", 270 | "
", 271 | "" 272 | ], 273 | }, 274 | "More block": { 275 | "prefix": "block-more, wp:more, read more, wp:read-more", 276 | "body": [ 277 | "", 278 | "", 279 | "" 280 | ], 281 | }, 282 | "Navigation block": { 283 | "prefix": "block-navigation, wp:navigation", 284 | "body": [ 285 | "" 286 | ], 287 | }, 288 | "Next page block": { 289 | "prefix": "block-next-page, wp:nextpage, page break", 290 | "body": [ 291 | "", 292 | "", 293 | "" 294 | ], 295 | }, 296 | "Page list block": { 297 | "prefix": "block-page-list, wp:pagelist", 298 | "body": [ 299 | "" 300 | ], 301 | }, 302 | "Paragraph block": { 303 | "prefix": "block-paragraph, wp:paragraph", 304 | "body": [ 305 | "

" 306 | ], 307 | }, 308 | "Pattern block": { 309 | "prefix": "block-pattern, wp:pattern", 310 | "body": [ 311 | "" 312 | ], 313 | }, 314 | "Post Author block": { 315 | "prefix": "block-post-author, wp:post-author", 316 | "body": [ 317 | "" 318 | ], 319 | }, 320 | "Post Author Biography block": { 321 | "prefix": "block-post-author-biography, wp:post-author-biography", 322 | "body": [ 323 | "" 324 | ], 325 | }, 326 | "Post Author Name block": { 327 | "prefix": "block-post-author-name, wp:post-author-name", 328 | "body": [ 329 | "" 330 | ], 331 | }, 332 | "Post comment block": { 333 | "prefix": "block-post-comment, wp:post-comment", 334 | "body": [ 335 | "", 336 | "
", 337 | "" 338 | ], 339 | }, 340 | "Post comments count block": { 341 | "prefix": "block-post-comments-count, wp:post-comments-count", 342 | "body": [ 343 | "" 344 | ], 345 | }, 346 | "Post comments block": { 347 | "prefix": "block-post-comments, wp:post-comments", 348 | "body": [ 349 | "" 350 | ], 351 | }, 352 | "Post comments form block": { 353 | "prefix": "block-post-comment-form, wp:post-comments-form", 354 | "body": [ 355 | "" 356 | ], 357 | }, 358 | "Post comments link block": { 359 | "prefix": "block-post-comment-link, wp:post-comments-link", 360 | "body": [ 361 | "" 362 | ], 363 | }, 364 | "Post Content block": { 365 | "prefix": "block-post-content, wp:post-content", 366 | "body": [ 367 | "" 368 | ], 369 | }, 370 | "Post Date block": { 371 | "prefix": "block-post-date, wp:post-date", 372 | "body": [ 373 | "" 374 | ], 375 | }, 376 | "Post Excerpt block": { 377 | "prefix": "block-post-excerpt, wp:post-excerpt", 378 | "body": [ 379 | "" 380 | ], 381 | }, 382 | "Post featured image block": { 383 | "prefix": "block-post-featured-image, wp:post-featured-image, block-featured-image", 384 | "body": [ 385 | "" 386 | ], 387 | }, 388 | "Post navigation block": { 389 | "prefix": "block-post-navigation, wp:post-navigation-link, next post, previous post", 390 | "body": [ 391 | "", 392 | "" 393 | ], 394 | }, 395 | "Post terms block": { 396 | "prefix": "block-post-terms, wp:post-terms, post categories, post tags, wp:post-tags, wp:post-categories", 397 | "body": [ 398 | "", 399 | "" 400 | ], 401 | }, 402 | "Post Title block": { 403 | "prefix": "block-post-title, wp:post-title", 404 | "body": [ 405 | "" 406 | ], 407 | }, 408 | "Preformatted block": { 409 | "prefix": "block-preformatted, wp:preformatted", 410 | "body": [ 411 | "", 412 | "
",
413 | 			""
414 | 		],
415 | 	},
416 | 	"Pullquote block": {
417 | 		"prefix": "block-pull-quote, wp:pullquote",
418 | 		"body": [
419 | 			"",
420 | 			"

", 421 | "" 422 | ], 423 | }, 424 | "Query block": { 425 | "prefix": "block-query, wp:query, post list, posts list, block-loop, query-loop", 426 | "body": [ 427 | "
" 428 | ], 429 | }, 430 | "Post template block": { 431 | "prefix": "wp:post-template, post template, block-post-template, wp:query-loop", 432 | "body": [ 433 | "" 434 | ], 435 | }, 436 | "Query No Results block": { 437 | "prefix": "wp:query-no-results, no results", 438 | "body": [ 439 | "", 440 | "", 441 | "

", 442 | "", 443 | "", 444 | ], 445 | }, 446 | "Query pagination block": { 447 | "prefix": "block-query-pagination, query-pagination, wp:query-pagination", 448 | "body": [ 449 | "", 450 | "", 451 | "", 452 | "", 453 | "", 454 | ], 455 | }, 456 | "Quote block": { 457 | "prefix": "block-quote, wp:quote ", 458 | "body": [ 459 | "", 460 | "

", 461 | "", 462 | ], 463 | }, 464 | "Reusable block": { 465 | "prefix": "reusable, wp:core, block-reusable", 466 | "body": [ 467 | "" 468 | ], 469 | }, 470 | "Read More block": { 471 | "prefix": "read more, wp:read-more", 472 | "body": [ 473 | "" 474 | ], 475 | }, 476 | "RSS block": { 477 | "prefix": "block-rss, wp:rss", 478 | "body": [ 479 | "" 480 | ], 481 | }, 482 | "Row group block variation": { 483 | "prefix": "block-row, wp:row, wp:flex-group, wp:flex", 484 | "body": [ 485 | "", 486 | "
", 487 | "" 488 | ], 489 | }, 490 | "Search block": { 491 | "prefix": "block-search, wp:search", 492 | "body": [ 493 | "" 494 | ], 495 | }, 496 | "Separator block": { 497 | "prefix": "block-separator, wp:separator", 498 | "body": [ 499 | "", 500 | "
", 501 | "", 502 | ], 503 | }, 504 | "Site Title block": { 505 | "prefix": "block-site-title, wp:site-title", 506 | "body": [ 507 | "" 508 | ], 509 | }, 510 | "Site Tagline block": { 511 | "prefix": "block-site-tagline, wp:site-tagline", 512 | "body": [ 513 | "" 514 | ], 515 | }, 516 | "Site Logo block": { 517 | "prefix": "block-site-logo, wp:site-logo", 518 | "body": [ 519 | "" 520 | ], 521 | }, 522 | "Shortcode block": { 523 | "prefix": "block-shortcode, wp:shortcode", 524 | "body": [ 525 | "" 526 | ], 527 | }, 528 | "Social link block": { 529 | "prefix": "block-social-link, wp:social-link", 530 | "body": [ 531 | "" 532 | ], 533 | }, 534 | "Social links block": { 535 | "prefix": "block-social-links, block-social, wp:social-links", 536 | "body": [ 537 | "", 538 | "", 541 | "" 542 | ], 543 | }, 544 | "Spacer block": { 545 | "prefix": "block-spacer, wp:spacer", 546 | "body": [ 547 | "", 548 | "
", 549 | "", 550 | ], 551 | }, 552 | "Table block": { 553 | "prefix": "block-table, wp:table", 554 | "body": [ 555 | "", 556 | "
", 557 | "" 558 | ], 559 | }, 560 | "Table of Contents block": { 561 | "prefix": "table of contents, wp:table-of-contents", 562 | "body": [ 563 | "", 564 | ], 565 | }, 566 | "Tag cloud block": { 567 | "prefix": "block-tag-cloud, wp:tag-cloud", 568 | "body": [ 569 | "", 570 | ], 571 | }, 572 | "Template part block": { 573 | "prefix": "block-template-part, wp:template-part", 574 | "body": [ 575 | "" 576 | ], 577 | }, 578 | "Term description block": { 579 | "prefix": "block-term-description, wp:term-description, description", 580 | "body": [ 581 | "" 582 | ], 583 | }, 584 | "Verse block": { 585 | "prefix": "block-verse, wp:verse", 586 | "body": [ 587 | "", 588 | "
",
589 | 			"",
590 | 		],
591 | 	},
592 | 	"Video block": {
593 | 		"prefix": "block-video, wp:video",
594 | 		"body": [
595 | 			"",
596 | 			"
", 597 | "" 598 | ], 599 | }, 600 | "pattern file header": { 601 | "prefix": "pattern header, pattern file", 602 | "body": [ 603 | "", 612 | ], 613 | } 614 | } -------------------------------------------------------------------------------- /.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | "parser": "@typescript-eslint/parser", 4 | "parserOptions": { 5 | "ecmaVersion": 6, 6 | "sourceType": "module" 7 | }, 8 | "plugins": [ 9 | "@typescript-eslint" 10 | ], 11 | "rules": { 12 | "@typescript-eslint/naming-convention": "warn", 13 | "@typescript-eslint/semi": "warn", 14 | "curly": "warn", 15 | "eqeqeq": "warn", 16 | "no-throw-literal": "warn", 17 | "semi": "off" 18 | }, 19 | "ignorePatterns": [ 20 | "out", 21 | "dist", 22 | "**/*.d.ts" 23 | ] 24 | } 25 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | out 2 | dist 3 | node_modules 4 | .vscode-test/ 5 | *.vsix 6 | -------------------------------------------------------------------------------- /.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | out/test/** 4 | 5 | src/** 6 | .gitignore 7 | .yarnrc 8 | vsc-extension-quickstart.md 9 | **/tsconfig.json 10 | **/.eslintrc.json 11 | **/*.map 12 | **/*.ts 13 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Change Log 2 | 3 | All notable changes to the "wordpress-block-markup" extension will be documented in this file. 4 | 5 | ## 1.2.0 6 | 7 | Added new blocks: 8 | Comments query loop 9 | Comment template 10 | Comments pagination 11 | Comment author avatar 12 | Comment author name 13 | Comment content 14 | Comment reply link 15 | Comment edit link 16 | Post author name 17 | 18 | Added Shortcuts for header and footer template parts, 19 | row group block variation. 20 | 21 | Updated blocks: 22 | Archives 23 | Gallery 24 | Navigation 25 | Query pagination 26 | 27 | Removed blocks: 28 | Navigation link. This markup is no longer used, because the navigation block uses a reference ID instead. 29 | 30 | ## 1.1.1 31 | 32 | Bug fix 33 | 34 | ## 1.1.0 35 | 36 | Replaced the query-loop block with post-template. 37 | Added the inner div to the query block. 38 | Updated: Query pagination, Search. 39 | 40 | ## 1.0.0 41 | 42 | - Initial release 43 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # WordPress block markup 2 | 3 | The WordPress block markup extension includes autocomplete snippets that helps you add blocks to your templates faster. 4 | 5 | ## Features 6 | 7 | Add blocks to your full site editing templates faster by typing the name of the block. 8 | 9 | For example, to add a template part, start typing "wp:template-part" or just "template part": 10 | 11 | ![Template part](images/template-part-animation.gif) 12 | 13 | ## Release Notes 14 | 15 | ### 1.3.0 16 | Added new blocks: 17 | Avatar 18 | Pattern 19 | No results 20 | Read more 21 | Table of contents 22 | 23 | Updated blocks: 24 | Cover 25 | 26 | Extra: 27 | Block pattern file header 28 | Comment template part 29 | 30 | ### 1.2.0 31 | 32 | Added new blocks: 33 | Comments query loop 34 | Comment template 35 | Comments pagination 36 | Comment author avatar 37 | Comment author name 38 | Comment content 39 | Comment reply link 40 | Comment edit link 41 | Post author name 42 | 43 | Added Shortcuts for header and footer template parts, 44 | row group block variation. 45 | 46 | Updated blocks: 47 | Archives 48 | Gallery 49 | Navigation 50 | Query pagination 51 | 52 | Removed blocks: 53 | Navigation link. This markup is no longer used, because the navigation block uses a reference ID instead. 54 | 55 | ### 1.1.1 56 | 57 | Bug fix 58 | 59 | ### 1.1.0 60 | 61 | Replaced the query-loop block with post-template. 62 | Added the inner div to the query block. 63 | Updated: Query pagination, Search. 64 | 65 | ### 1.0.0 66 | 67 | Initial release of WordPress block markup. 68 | Gutenberg version: 10.6 RC1. 69 | 70 | ## License 71 | 72 | GPL 2.0 or later 73 | -------------------------------------------------------------------------------- /images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/carolinan/block-markup-snippets/4f1a678ddae8ec9fc5bb1cd2b6c36d4884ef2b86/images/icon.png -------------------------------------------------------------------------------- /images/template-part-animation.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/carolinan/block-markup-snippets/4f1a678ddae8ec9fc5bb1cd2b6c36d4884ef2b86/images/template-part-animation.gif -------------------------------------------------------------------------------- /license.txt: -------------------------------------------------------------------------------- 1 | GNU GENERAL PUBLIC LICENSE 2 | Version 2, June 1991 3 | 4 | Copyright (C) 1989, 1991 Free Software Foundation, Inc., 5 | 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 6 | Everyone is permitted to copy and distribute verbatim copies 7 | of this license document, but changing it is not allowed. 8 | 9 | Preamble 10 | 11 | The licenses for most software are designed to take away your 12 | freedom to share and change it. By contrast, the GNU General Public 13 | License is intended to guarantee your freedom to share and change free 14 | software--to make sure the software is free for all its users. This 15 | General Public License applies to most of the Free Software 16 | Foundation's software and to any other program whose authors commit to 17 | using it. (Some other Free Software Foundation software is covered by 18 | the GNU Lesser General Public License instead.) You can apply it to 19 | your programs, too. 20 | 21 | When we speak of free software, we are referring to freedom, not 22 | price. Our General Public Licenses are designed to make sure that you 23 | have the freedom to distribute copies of free software (and charge for 24 | this service if you wish), that you receive source code or can get it 25 | if you want it, that you can change the software or use pieces of it 26 | in new free programs; and that you know you can do these things. 27 | 28 | To protect your rights, we need to make restrictions that forbid 29 | anyone to deny you these rights or to ask you to surrender the rights. 30 | These restrictions translate to certain responsibilities for you if you 31 | distribute copies of the software, or if you modify it. 32 | 33 | For example, if you distribute copies of such a program, whether 34 | gratis or for a fee, you must give the recipients all the rights that 35 | you have. You must make sure that they, too, receive or can get the 36 | source code. And you must show them these terms so they know their 37 | rights. 38 | 39 | We protect your rights with two steps: (1) copyright the software, and 40 | (2) offer you this license which gives you legal permission to copy, 41 | distribute and/or modify the software. 42 | 43 | Also, for each author's protection and ours, we want to make certain 44 | that everyone understands that there is no warranty for this free 45 | software. If the software is modified by someone else and passed on, we 46 | want its recipients to know that what they have is not the original, so 47 | that any problems introduced by others will not reflect on the original 48 | authors' reputations. 49 | 50 | Finally, any free program is threatened constantly by software 51 | patents. We wish to avoid the danger that redistributors of a free 52 | program will individually obtain patent licenses, in effect making the 53 | program proprietary. To prevent this, we have made it clear that any 54 | patent must be licensed for everyone's free use or not licensed at all. 55 | 56 | The precise terms and conditions for copying, distribution and 57 | modification follow. 58 | 59 | GNU GENERAL PUBLIC LICENSE 60 | TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 61 | 62 | 0. This License applies to any program or other work which contains 63 | a notice placed by the copyright holder saying it may be distributed 64 | under the terms of this General Public License. The "Program", below, 65 | refers to any such program or work, and a "work based on the Program" 66 | means either the Program or any derivative work under copyright law: 67 | that is to say, a work containing the Program or a portion of it, 68 | either verbatim or with modifications and/or translated into another 69 | language. (Hereinafter, translation is included without limitation in 70 | the term "modification".) Each licensee is addressed as "you". 71 | 72 | Activities other than copying, distribution and modification are not 73 | covered by this License; they are outside its scope. The act of 74 | running the Program is not restricted, and the output from the Program 75 | is covered only if its contents constitute a work based on the 76 | Program (independent of having been made by running the Program). 77 | Whether that is true depends on what the Program does. 78 | 79 | 1. You may copy and distribute verbatim copies of the Program's 80 | source code as you receive it, in any medium, provided that you 81 | conspicuously and appropriately publish on each copy an appropriate 82 | copyright notice and disclaimer of warranty; keep intact all the 83 | notices that refer to this License and to the absence of any warranty; 84 | and give any other recipients of the Program a copy of this License 85 | along with the Program. 86 | 87 | You may charge a fee for the physical act of transferring a copy, and 88 | you may at your option offer warranty protection in exchange for a fee. 89 | 90 | 2. You may modify your copy or copies of the Program or any portion 91 | of it, thus forming a work based on the Program, and copy and 92 | distribute such modifications or work under the terms of Section 1 93 | above, provided that you also meet all of these conditions: 94 | 95 | a) You must cause the modified files to carry prominent notices 96 | stating that you changed the files and the date of any change. 97 | 98 | b) You must cause any work that you distribute or publish, that in 99 | whole or in part contains or is derived from the Program or any 100 | part thereof, to be licensed as a whole at no charge to all third 101 | parties under the terms of this License. 102 | 103 | c) If the modified program normally reads commands interactively 104 | when run, you must cause it, when started running for such 105 | interactive use in the most ordinary way, to print or display an 106 | announcement including an appropriate copyright notice and a 107 | notice that there is no warranty (or else, saying that you provide 108 | a warranty) and that users may redistribute the program under 109 | these conditions, and telling the user how to view a copy of this 110 | License. (Exception: if the Program itself is interactive but 111 | does not normally print such an announcement, your work based on 112 | the Program is not required to print an announcement.) 113 | 114 | These requirements apply to the modified work as a whole. If 115 | identifiable sections of that work are not derived from the Program, 116 | and can be reasonably considered independent and separate works in 117 | themselves, then this License, and its terms, do not apply to those 118 | sections when you distribute them as separate works. But when you 119 | distribute the same sections as part of a whole which is a work based 120 | on the Program, the distribution of the whole must be on the terms of 121 | this License, whose permissions for other licensees extend to the 122 | entire whole, and thus to each and every part regardless of who wrote it. 123 | 124 | Thus, it is not the intent of this section to claim rights or contest 125 | your rights to work written entirely by you; rather, the intent is to 126 | exercise the right to control the distribution of derivative or 127 | collective works based on the Program. 128 | 129 | In addition, mere aggregation of another work not based on the Program 130 | with the Program (or with a work based on the Program) on a volume of 131 | a storage or distribution medium does not bring the other work under 132 | the scope of this License. 133 | 134 | 3. You may copy and distribute the Program (or a work based on it, 135 | under Section 2) in object code or executable form under the terms of 136 | Sections 1 and 2 above provided that you also do one of the following: 137 | 138 | a) Accompany it with the complete corresponding machine-readable 139 | source code, which must be distributed under the terms of Sections 140 | 1 and 2 above on a medium customarily used for software interchange; or, 141 | 142 | b) Accompany it with a written offer, valid for at least three 143 | years, to give any third party, for a charge no more than your 144 | cost of physically performing source distribution, a complete 145 | machine-readable copy of the corresponding source code, to be 146 | distributed under the terms of Sections 1 and 2 above on a medium 147 | customarily used for software interchange; or, 148 | 149 | c) Accompany it with the information you received as to the offer 150 | to distribute corresponding source code. (This alternative is 151 | allowed only for noncommercial distribution and only if you 152 | received the program in object code or executable form with such 153 | an offer, in accord with Subsection b above.) 154 | 155 | The source code for a work means the preferred form of the work for 156 | making modifications to it. For an executable work, complete source 157 | code means all the source code for all modules it contains, plus any 158 | associated interface definition files, plus the scripts used to 159 | control compilation and installation of the executable. However, as a 160 | special exception, the source code distributed need not include 161 | anything that is normally distributed (in either source or binary 162 | form) with the major components (compiler, kernel, and so on) of the 163 | operating system on which the executable runs, unless that component 164 | itself accompanies the executable. 165 | 166 | If distribution of executable or object code is made by offering 167 | access to copy from a designated place, then offering equivalent 168 | access to copy the source code from the same place counts as 169 | distribution of the source code, even though third parties are not 170 | compelled to copy the source along with the object code. 171 | 172 | 4. You may not copy, modify, sublicense, or distribute the Program 173 | except as expressly provided under this License. Any attempt 174 | otherwise to copy, modify, sublicense or distribute the Program is 175 | void, and will automatically terminate your rights under this License. 176 | However, parties who have received copies, or rights, from you under 177 | this License will not have their licenses terminated so long as such 178 | parties remain in full compliance. 179 | 180 | 5. You are not required to accept this License, since you have not 181 | signed it. However, nothing else grants you permission to modify or 182 | distribute the Program or its derivative works. These actions are 183 | prohibited by law if you do not accept this License. Therefore, by 184 | modifying or distributing the Program (or any work based on the 185 | Program), you indicate your acceptance of this License to do so, and 186 | all its terms and conditions for copying, distributing or modifying 187 | the Program or works based on it. 188 | 189 | 6. Each time you redistribute the Program (or any work based on the 190 | Program), the recipient automatically receives a license from the 191 | original licensor to copy, distribute or modify the Program subject to 192 | these terms and conditions. You may not impose any further 193 | restrictions on the recipients' exercise of the rights granted herein. 194 | You are not responsible for enforcing compliance by third parties to 195 | this License. 196 | 197 | 7. If, as a consequence of a court judgment or allegation of patent 198 | infringement or for any other reason (not limited to patent issues), 199 | conditions are imposed on you (whether by court order, agreement or 200 | otherwise) that contradict the conditions of this License, they do not 201 | excuse you from the conditions of this License. If you cannot 202 | distribute so as to satisfy simultaneously your obligations under this 203 | License and any other pertinent obligations, then as a consequence you 204 | may not distribute the Program at all. For example, if a patent 205 | license would not permit royalty-free redistribution of the Program by 206 | all those who receive copies directly or indirectly through you, then 207 | the only way you could satisfy both it and this License would be to 208 | refrain entirely from distribution of the Program. 209 | 210 | If any portion of this section is held invalid or unenforceable under 211 | any particular circumstance, the balance of the section is intended to 212 | apply and the section as a whole is intended to apply in other 213 | circumstances. 214 | 215 | It is not the purpose of this section to induce you to infringe any 216 | patents or other property right claims or to contest validity of any 217 | such claims; this section has the sole purpose of protecting the 218 | integrity of the free software distribution system, which is 219 | implemented by public license practices. Many people have made 220 | generous contributions to the wide range of software distributed 221 | through that system in reliance on consistent application of that 222 | system; it is up to the author/donor to decide if he or she is willing 223 | to distribute software through any other system and a licensee cannot 224 | impose that choice. 225 | 226 | This section is intended to make thoroughly clear what is believed to 227 | be a consequence of the rest of this License. 228 | 229 | 8. If the distribution and/or use of the Program is restricted in 230 | certain countries either by patents or by copyrighted interfaces, the 231 | original copyright holder who places the Program under this License 232 | may add an explicit geographical distribution limitation excluding 233 | those countries, so that distribution is permitted only in or among 234 | countries not thus excluded. In such case, this License incorporates 235 | the limitation as if written in the body of this License. 236 | 237 | 9. The Free Software Foundation may publish revised and/or new versions 238 | of the General Public License from time to time. Such new versions will 239 | be similar in spirit to the present version, but may differ in detail to 240 | address new problems or concerns. 241 | 242 | Each version is given a distinguishing version number. If the Program 243 | specifies a version number of this License which applies to it and "any 244 | later version", you have the option of following the terms and conditions 245 | either of that version or of any later version published by the Free 246 | Software Foundation. If the Program does not specify a version number of 247 | this License, you may choose any version ever published by the Free Software 248 | Foundation. 249 | 250 | 10. If you wish to incorporate parts of the Program into other free 251 | programs whose distribution conditions are different, write to the author 252 | to ask for permission. For software which is copyrighted by the Free 253 | Software Foundation, write to the Free Software Foundation; we sometimes 254 | make exceptions for this. Our decision will be guided by the two goals 255 | of preserving the free status of all derivatives of our free software and 256 | of promoting the sharing and reuse of software generally. 257 | 258 | NO WARRANTY 259 | 260 | 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY 261 | FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN 262 | OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES 263 | PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED 264 | OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 265 | MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS 266 | TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE 267 | PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, 268 | REPAIR OR CORRECTION. 269 | 270 | 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING 271 | WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR 272 | REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, 273 | INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING 274 | OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED 275 | TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY 276 | YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER 277 | PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE 278 | POSSIBILITY OF SUCH DAMAGES. 279 | 280 | END OF TERMS AND CONDITIONS 281 | 282 | How to Apply These Terms to Your New Programs 283 | 284 | If you develop a new program, and you want it to be of the greatest 285 | possible use to the public, the best way to achieve this is to make it 286 | free software which everyone can redistribute and change under these terms. 287 | 288 | To do so, attach the following notices to the program. It is safest 289 | to attach them to the start of each source file to most effectively 290 | convey the exclusion of warranty; and each file should have at least 291 | the "copyright" line and a pointer to where the full notice is found. 292 | 293 | 294 | Copyright (C) 295 | 296 | This program is free software; you can redistribute it and/or modify 297 | it under the terms of the GNU General Public License as published by 298 | the Free Software Foundation; either version 2 of the License, or 299 | (at your option) any later version. 300 | 301 | This program is distributed in the hope that it will be useful, 302 | but WITHOUT ANY WARRANTY; without even the implied warranty of 303 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 304 | GNU General Public License for more details. 305 | 306 | You should have received a copy of the GNU General Public License along 307 | with this program; if not, write to the Free Software Foundation, Inc., 308 | 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. 309 | 310 | Also add information on how to contact you by electronic and paper mail. 311 | 312 | If the program is interactive, make it output a short notice like this 313 | when it starts in an interactive mode: 314 | 315 | Gnomovision version 69, Copyright (C) year name of author 316 | Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. 317 | This is free software, and you are welcome to redistribute it 318 | under certain conditions; type `show c' for details. 319 | 320 | The hypothetical commands `show w' and `show c' should show the appropriate 321 | parts of the General Public License. Of course, the commands you use may 322 | be called something other than `show w' and `show c'; they could even be 323 | mouse-clicks or menu items--whatever suits your program. 324 | 325 | You should also get your employer (if you work as a programmer) or your 326 | school, if any, to sign a "copyright disclaimer" for the program, if 327 | necessary. Here is a sample; alter the names: 328 | 329 | Yoyodyne, Inc., hereby disclaims all copyright interest in the program 330 | `Gnomovision' (which makes passes at compilers) written by James Hacker. 331 | 332 | , 1 April 1989 333 | Ty Coon, President of Vice 334 | 335 | This General Public License does not permit incorporating your program into 336 | proprietary programs. If your program is a subroutine library, you may 337 | consider it more useful to permit linking proprietary applications with the 338 | library. If this is what you want to do, use the GNU Lesser General 339 | Public License instead of this License. 340 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wordpress-block-markup", 3 | "version": "1.2.0", 4 | "lockfileVersion": 1, 5 | "requires": true, 6 | "dependencies": { 7 | "@eslint/eslintrc": { 8 | "version": "1.3.0", 9 | "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.0.tgz", 10 | "integrity": "sha512-UWW0TMTmk2d7hLcWD1/e2g5HDM/HQ3csaLSqXCfqwh4uNDuNqlaKWXmEsL4Cs41Z0KnILNvwbHAah3C2yt06kw==", 11 | "dev": true, 12 | "requires": { 13 | "ajv": "^6.12.4", 14 | "debug": "^4.3.2", 15 | "espree": "^9.3.2", 16 | "globals": "^13.15.0", 17 | "ignore": "^5.2.0", 18 | "import-fresh": "^3.2.1", 19 | "js-yaml": "^4.1.0", 20 | "minimatch": "^3.1.2", 21 | "strip-json-comments": "^3.1.1" 22 | } 23 | }, 24 | "@humanwhocodes/config-array": { 25 | "version": "0.10.4", 26 | "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.10.4.tgz", 27 | "integrity": "sha512-mXAIHxZT3Vcpg83opl1wGlVZ9xydbfZO3r5YfRSH6Gpp2J/PfdBP0wbDa2sO6/qRbcalpoevVyW6A/fI6LfeMw==", 28 | "dev": true, 29 | "requires": { 30 | "@humanwhocodes/object-schema": "^1.2.1", 31 | "debug": "^4.1.1", 32 | "minimatch": "^3.0.4" 33 | } 34 | }, 35 | "@humanwhocodes/gitignore-to-minimatch": { 36 | "version": "1.0.2", 37 | "resolved": "https://registry.npmjs.org/@humanwhocodes/gitignore-to-minimatch/-/gitignore-to-minimatch-1.0.2.tgz", 38 | "integrity": "sha512-rSqmMJDdLFUsyxR6FMtD00nfQKKLFb1kv+qBbOVKqErvloEIJLo5bDTJTQNTYgeyp78JsA7u/NPi5jT1GR/MuA==", 39 | "dev": true 40 | }, 41 | "@humanwhocodes/object-schema": { 42 | "version": "1.2.1", 43 | "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", 44 | "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", 45 | "dev": true 46 | }, 47 | "@nodelib/fs.scandir": { 48 | "version": "2.1.5", 49 | "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", 50 | "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", 51 | "dev": true, 52 | "requires": { 53 | "@nodelib/fs.stat": "2.0.5", 54 | "run-parallel": "^1.1.9" 55 | } 56 | }, 57 | "@nodelib/fs.stat": { 58 | "version": "2.0.5", 59 | "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", 60 | "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", 61 | "dev": true 62 | }, 63 | "@nodelib/fs.walk": { 64 | "version": "1.2.8", 65 | "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", 66 | "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", 67 | "dev": true, 68 | "requires": { 69 | "@nodelib/fs.scandir": "2.1.5", 70 | "fastq": "^1.6.0" 71 | } 72 | }, 73 | "@tootallnate/once": { 74 | "version": "1.1.2", 75 | "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", 76 | "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", 77 | "dev": true 78 | }, 79 | "@types/glob": { 80 | "version": "7.2.0", 81 | "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz", 82 | "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==", 83 | "dev": true, 84 | "requires": { 85 | "@types/minimatch": "*", 86 | "@types/node": "*" 87 | } 88 | }, 89 | "@types/json-schema": { 90 | "version": "7.0.11", 91 | "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", 92 | "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", 93 | "dev": true 94 | }, 95 | "@types/minimatch": { 96 | "version": "3.0.5", 97 | "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", 98 | "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==", 99 | "dev": true 100 | }, 101 | "@types/mocha": { 102 | "version": "9.1.1", 103 | "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-9.1.1.tgz", 104 | "integrity": "sha512-Z61JK7DKDtdKTWwLeElSEBcWGRLY8g95ic5FoQqI9CMx0ns/Ghep3B4DfcEimiKMvtamNVULVNKEsiwV3aQmXw==", 105 | "dev": true 106 | }, 107 | "@types/node": { 108 | "version": "12.20.55", 109 | "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", 110 | "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==", 111 | "dev": true 112 | }, 113 | "@types/vscode": { 114 | "version": "1.69.1", 115 | "resolved": "https://registry.npmjs.org/@types/vscode/-/vscode-1.69.1.tgz", 116 | "integrity": "sha512-YZ77g3u9S9Xw3dwAgRgNAwnKNS3nPlhSu3XKOIYQzCcItUrZovfJUlf/29wjON2VZvHGuYQnhKuJUP15ccpVIQ==", 117 | "dev": true 118 | }, 119 | "@typescript-eslint/eslint-plugin": { 120 | "version": "5.32.0", 121 | "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.32.0.tgz", 122 | "integrity": "sha512-CHLuz5Uz7bHP2WgVlvoZGhf0BvFakBJKAD/43Ty0emn4wXWv5k01ND0C0fHcl/Im8Td2y/7h44E9pca9qAu2ew==", 123 | "dev": true, 124 | "requires": { 125 | "@typescript-eslint/scope-manager": "5.32.0", 126 | "@typescript-eslint/type-utils": "5.32.0", 127 | "@typescript-eslint/utils": "5.32.0", 128 | "debug": "^4.3.4", 129 | "functional-red-black-tree": "^1.0.1", 130 | "ignore": "^5.2.0", 131 | "regexpp": "^3.2.0", 132 | "semver": "^7.3.7", 133 | "tsutils": "^3.21.0" 134 | } 135 | }, 136 | "@typescript-eslint/parser": { 137 | "version": "5.32.0", 138 | "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.32.0.tgz", 139 | "integrity": "sha512-IxRtsehdGV9GFQ35IGm5oKKR2OGcazUoiNBxhRV160iF9FoyuXxjY+rIqs1gfnd+4eL98OjeGnMpE7RF/NBb3A==", 140 | "dev": true, 141 | "requires": { 142 | "@typescript-eslint/scope-manager": "5.32.0", 143 | "@typescript-eslint/types": "5.32.0", 144 | "@typescript-eslint/typescript-estree": "5.32.0", 145 | "debug": "^4.3.4" 146 | } 147 | }, 148 | "@typescript-eslint/scope-manager": { 149 | "version": "5.32.0", 150 | "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.32.0.tgz", 151 | "integrity": "sha512-KyAE+tUON0D7tNz92p1uetRqVJiiAkeluvwvZOqBmW9z2XApmk5WSMV9FrzOroAcVxJZB3GfUwVKr98Dr/OjOg==", 152 | "dev": true, 153 | "requires": { 154 | "@typescript-eslint/types": "5.32.0", 155 | "@typescript-eslint/visitor-keys": "5.32.0" 156 | } 157 | }, 158 | "@typescript-eslint/type-utils": { 159 | "version": "5.32.0", 160 | "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.32.0.tgz", 161 | "integrity": "sha512-0gSsIhFDduBz3QcHJIp3qRCvVYbqzHg8D6bHFsDMrm0rURYDj+skBK2zmYebdCp+4nrd9VWd13egvhYFJj/wZg==", 162 | "dev": true, 163 | "requires": { 164 | "@typescript-eslint/utils": "5.32.0", 165 | "debug": "^4.3.4", 166 | "tsutils": "^3.21.0" 167 | } 168 | }, 169 | "@typescript-eslint/types": { 170 | "version": "5.32.0", 171 | "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.32.0.tgz", 172 | "integrity": "sha512-EBUKs68DOcT/EjGfzywp+f8wG9Zw6gj6BjWu7KV/IYllqKJFPlZlLSYw/PTvVyiRw50t6wVbgv4p9uE2h6sZrQ==", 173 | "dev": true 174 | }, 175 | "@typescript-eslint/typescript-estree": { 176 | "version": "5.32.0", 177 | "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.32.0.tgz", 178 | "integrity": "sha512-ZVAUkvPk3ITGtCLU5J4atCw9RTxK+SRc6hXqLtllC2sGSeMFWN+YwbiJR9CFrSFJ3w4SJfcWtDwNb/DmUIHdhg==", 179 | "dev": true, 180 | "requires": { 181 | "@typescript-eslint/types": "5.32.0", 182 | "@typescript-eslint/visitor-keys": "5.32.0", 183 | "debug": "^4.3.4", 184 | "globby": "^11.1.0", 185 | "is-glob": "^4.0.3", 186 | "semver": "^7.3.7", 187 | "tsutils": "^3.21.0" 188 | } 189 | }, 190 | "@typescript-eslint/utils": { 191 | "version": "5.32.0", 192 | "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.32.0.tgz", 193 | "integrity": "sha512-W7lYIAI5Zlc5K082dGR27Fczjb3Q57ECcXefKU/f0ajM5ToM0P+N9NmJWip8GmGu/g6QISNT+K6KYB+iSHjXCQ==", 194 | "dev": true, 195 | "requires": { 196 | "@types/json-schema": "^7.0.9", 197 | "@typescript-eslint/scope-manager": "5.32.0", 198 | "@typescript-eslint/types": "5.32.0", 199 | "@typescript-eslint/typescript-estree": "5.32.0", 200 | "eslint-scope": "^5.1.1", 201 | "eslint-utils": "^3.0.0" 202 | } 203 | }, 204 | "@typescript-eslint/visitor-keys": { 205 | "version": "5.32.0", 206 | "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.32.0.tgz", 207 | "integrity": "sha512-S54xOHZgfThiZ38/ZGTgB2rqx51CMJ5MCfVT2IplK4Q7hgzGfe0nLzLCcenDnc/cSjP568hdeKfeDcBgqNHD/g==", 208 | "dev": true, 209 | "requires": { 210 | "@typescript-eslint/types": "5.32.0", 211 | "eslint-visitor-keys": "^3.3.0" 212 | } 213 | }, 214 | "@ungap/promise-all-settled": { 215 | "version": "1.1.2", 216 | "resolved": "https://registry.npmjs.org/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz", 217 | "integrity": "sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q==", 218 | "dev": true 219 | }, 220 | "@vscode/test-electron": { 221 | "version": "2.1.5", 222 | "resolved": "https://registry.npmjs.org/@vscode/test-electron/-/test-electron-2.1.5.tgz", 223 | "integrity": "sha512-O/ioqFpV+RvKbRykX2ItYPnbcZ4Hk5V0rY4uhQjQTLhGL9WZUvS7exzuYQCCI+ilSqJpctvxq2llTfGXf9UnnA==", 224 | "dev": true, 225 | "requires": { 226 | "http-proxy-agent": "^4.0.1", 227 | "https-proxy-agent": "^5.0.0", 228 | "rimraf": "^3.0.2", 229 | "unzipper": "^0.10.11" 230 | } 231 | }, 232 | "acorn": { 233 | "version": "8.8.0", 234 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", 235 | "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==", 236 | "dev": true 237 | }, 238 | "acorn-jsx": { 239 | "version": "5.3.2", 240 | "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", 241 | "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", 242 | "dev": true 243 | }, 244 | "agent-base": { 245 | "version": "6.0.2", 246 | "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", 247 | "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", 248 | "dev": true, 249 | "requires": { 250 | "debug": "4" 251 | } 252 | }, 253 | "ajv": { 254 | "version": "6.12.6", 255 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", 256 | "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", 257 | "dev": true, 258 | "requires": { 259 | "fast-deep-equal": "^3.1.1", 260 | "fast-json-stable-stringify": "^2.0.0", 261 | "json-schema-traverse": "^0.4.1", 262 | "uri-js": "^4.2.2" 263 | } 264 | }, 265 | "ansi-colors": { 266 | "version": "4.1.1", 267 | "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", 268 | "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", 269 | "dev": true 270 | }, 271 | "ansi-regex": { 272 | "version": "5.0.1", 273 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", 274 | "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", 275 | "dev": true 276 | }, 277 | "ansi-styles": { 278 | "version": "4.3.0", 279 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", 280 | "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", 281 | "dev": true, 282 | "requires": { 283 | "color-convert": "^2.0.1" 284 | } 285 | }, 286 | "anymatch": { 287 | "version": "3.1.2", 288 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", 289 | "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", 290 | "dev": true, 291 | "requires": { 292 | "normalize-path": "^3.0.0", 293 | "picomatch": "^2.0.4" 294 | } 295 | }, 296 | "argparse": { 297 | "version": "2.0.1", 298 | "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", 299 | "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", 300 | "dev": true 301 | }, 302 | "array-union": { 303 | "version": "2.1.0", 304 | "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", 305 | "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", 306 | "dev": true 307 | }, 308 | "balanced-match": { 309 | "version": "1.0.2", 310 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", 311 | "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", 312 | "dev": true 313 | }, 314 | "big-integer": { 315 | "version": "1.6.51", 316 | "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", 317 | "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==", 318 | "dev": true 319 | }, 320 | "binary": { 321 | "version": "0.3.0", 322 | "resolved": "https://registry.npmjs.org/binary/-/binary-0.3.0.tgz", 323 | "integrity": "sha512-D4H1y5KYwpJgK8wk1Cue5LLPgmwHKYSChkbspQg5JtVuR5ulGckxfR62H3AE9UDkdMC8yyXlqYihuz3Aqg2XZg==", 324 | "dev": true, 325 | "requires": { 326 | "buffers": "~0.1.1", 327 | "chainsaw": "~0.1.0" 328 | } 329 | }, 330 | "binary-extensions": { 331 | "version": "2.2.0", 332 | "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", 333 | "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", 334 | "dev": true 335 | }, 336 | "bluebird": { 337 | "version": "3.4.7", 338 | "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.4.7.tgz", 339 | "integrity": "sha512-iD3898SR7sWVRHbiQv+sHUtHnMvC1o3nW5rAcqnq3uOn07DSAppZYUkIGslDz6gXC7HfunPe7YVBgoEJASPcHA==", 340 | "dev": true 341 | }, 342 | "brace-expansion": { 343 | "version": "1.1.11", 344 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 345 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 346 | "dev": true, 347 | "requires": { 348 | "balanced-match": "^1.0.0", 349 | "concat-map": "0.0.1" 350 | } 351 | }, 352 | "braces": { 353 | "version": "3.0.2", 354 | "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", 355 | "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", 356 | "dev": true, 357 | "requires": { 358 | "fill-range": "^7.0.1" 359 | } 360 | }, 361 | "browser-stdout": { 362 | "version": "1.3.1", 363 | "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", 364 | "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", 365 | "dev": true 366 | }, 367 | "buffer-indexof-polyfill": { 368 | "version": "1.0.2", 369 | "resolved": "https://registry.npmjs.org/buffer-indexof-polyfill/-/buffer-indexof-polyfill-1.0.2.tgz", 370 | "integrity": "sha512-I7wzHwA3t1/lwXQh+A5PbNvJxgfo5r3xulgpYDB5zckTu/Z9oUK9biouBKQUjEqzaz3HnAT6TYoovmE+GqSf7A==", 371 | "dev": true 372 | }, 373 | "buffers": { 374 | "version": "0.1.1", 375 | "resolved": "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz", 376 | "integrity": "sha512-9q/rDEGSb/Qsvv2qvzIzdluL5k7AaJOTrw23z9reQthrbF7is4CtlT0DXyO1oei2DCp4uojjzQ7igaSHp1kAEQ==", 377 | "dev": true 378 | }, 379 | "callsites": { 380 | "version": "3.1.0", 381 | "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", 382 | "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", 383 | "dev": true 384 | }, 385 | "camelcase": { 386 | "version": "6.3.0", 387 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", 388 | "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", 389 | "dev": true 390 | }, 391 | "chainsaw": { 392 | "version": "0.1.0", 393 | "resolved": "https://registry.npmjs.org/chainsaw/-/chainsaw-0.1.0.tgz", 394 | "integrity": "sha512-75kWfWt6MEKNC8xYXIdRpDehRYY/tNSgwKaJq+dbbDcxORuVrrQ+SEHoWsniVn9XPYfP4gmdWIeDk/4YNp1rNQ==", 395 | "dev": true, 396 | "requires": { 397 | "traverse": ">=0.3.0 <0.4" 398 | } 399 | }, 400 | "chalk": { 401 | "version": "4.1.2", 402 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", 403 | "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", 404 | "dev": true, 405 | "requires": { 406 | "ansi-styles": "^4.1.0", 407 | "supports-color": "^7.1.0" 408 | } 409 | }, 410 | "chokidar": { 411 | "version": "3.5.3", 412 | "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", 413 | "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", 414 | "dev": true, 415 | "requires": { 416 | "anymatch": "~3.1.2", 417 | "braces": "~3.0.2", 418 | "fsevents": "~2.3.2", 419 | "glob-parent": "~5.1.2", 420 | "is-binary-path": "~2.1.0", 421 | "is-glob": "~4.0.1", 422 | "normalize-path": "~3.0.0", 423 | "readdirp": "~3.6.0" 424 | } 425 | }, 426 | "cliui": { 427 | "version": "7.0.4", 428 | "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", 429 | "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", 430 | "dev": true, 431 | "requires": { 432 | "string-width": "^4.2.0", 433 | "strip-ansi": "^6.0.0", 434 | "wrap-ansi": "^7.0.0" 435 | } 436 | }, 437 | "color-convert": { 438 | "version": "2.0.1", 439 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", 440 | "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", 441 | "dev": true, 442 | "requires": { 443 | "color-name": "~1.1.4" 444 | } 445 | }, 446 | "color-name": { 447 | "version": "1.1.4", 448 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", 449 | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", 450 | "dev": true 451 | }, 452 | "concat-map": { 453 | "version": "0.0.1", 454 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 455 | "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", 456 | "dev": true 457 | }, 458 | "core-util-is": { 459 | "version": "1.0.3", 460 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", 461 | "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", 462 | "dev": true 463 | }, 464 | "cross-spawn": { 465 | "version": "7.0.3", 466 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", 467 | "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", 468 | "dev": true, 469 | "requires": { 470 | "path-key": "^3.1.0", 471 | "shebang-command": "^2.0.0", 472 | "which": "^2.0.1" 473 | } 474 | }, 475 | "debug": { 476 | "version": "4.3.4", 477 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", 478 | "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", 479 | "dev": true, 480 | "requires": { 481 | "ms": "2.1.2" 482 | } 483 | }, 484 | "decamelize": { 485 | "version": "4.0.0", 486 | "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", 487 | "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", 488 | "dev": true 489 | }, 490 | "deep-is": { 491 | "version": "0.1.4", 492 | "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", 493 | "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", 494 | "dev": true 495 | }, 496 | "diff": { 497 | "version": "5.0.0", 498 | "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", 499 | "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", 500 | "dev": true 501 | }, 502 | "dir-glob": { 503 | "version": "3.0.1", 504 | "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", 505 | "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", 506 | "dev": true, 507 | "requires": { 508 | "path-type": "^4.0.0" 509 | } 510 | }, 511 | "doctrine": { 512 | "version": "3.0.0", 513 | "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", 514 | "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", 515 | "dev": true, 516 | "requires": { 517 | "esutils": "^2.0.2" 518 | } 519 | }, 520 | "duplexer2": { 521 | "version": "0.1.4", 522 | "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", 523 | "integrity": "sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==", 524 | "dev": true, 525 | "requires": { 526 | "readable-stream": "^2.0.2" 527 | } 528 | }, 529 | "emoji-regex": { 530 | "version": "8.0.0", 531 | "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", 532 | "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", 533 | "dev": true 534 | }, 535 | "escalade": { 536 | "version": "3.1.1", 537 | "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", 538 | "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", 539 | "dev": true 540 | }, 541 | "escape-string-regexp": { 542 | "version": "4.0.0", 543 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", 544 | "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", 545 | "dev": true 546 | }, 547 | "eslint": { 548 | "version": "8.21.0", 549 | "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.21.0.tgz", 550 | "integrity": "sha512-/XJ1+Qurf1T9G2M5IHrsjp+xrGT73RZf23xA1z5wB1ZzzEAWSZKvRwhWxTFp1rvkvCfwcvAUNAP31bhKTTGfDA==", 551 | "dev": true, 552 | "requires": { 553 | "@eslint/eslintrc": "^1.3.0", 554 | "@humanwhocodes/config-array": "^0.10.4", 555 | "@humanwhocodes/gitignore-to-minimatch": "^1.0.2", 556 | "ajv": "^6.10.0", 557 | "chalk": "^4.0.0", 558 | "cross-spawn": "^7.0.2", 559 | "debug": "^4.3.2", 560 | "doctrine": "^3.0.0", 561 | "escape-string-regexp": "^4.0.0", 562 | "eslint-scope": "^7.1.1", 563 | "eslint-utils": "^3.0.0", 564 | "eslint-visitor-keys": "^3.3.0", 565 | "espree": "^9.3.3", 566 | "esquery": "^1.4.0", 567 | "esutils": "^2.0.2", 568 | "fast-deep-equal": "^3.1.3", 569 | "file-entry-cache": "^6.0.1", 570 | "find-up": "^5.0.0", 571 | "functional-red-black-tree": "^1.0.1", 572 | "glob-parent": "^6.0.1", 573 | "globals": "^13.15.0", 574 | "globby": "^11.1.0", 575 | "grapheme-splitter": "^1.0.4", 576 | "ignore": "^5.2.0", 577 | "import-fresh": "^3.0.0", 578 | "imurmurhash": "^0.1.4", 579 | "is-glob": "^4.0.0", 580 | "js-yaml": "^4.1.0", 581 | "json-stable-stringify-without-jsonify": "^1.0.1", 582 | "levn": "^0.4.1", 583 | "lodash.merge": "^4.6.2", 584 | "minimatch": "^3.1.2", 585 | "natural-compare": "^1.4.0", 586 | "optionator": "^0.9.1", 587 | "regexpp": "^3.2.0", 588 | "strip-ansi": "^6.0.1", 589 | "strip-json-comments": "^3.1.0", 590 | "text-table": "^0.2.0", 591 | "v8-compile-cache": "^2.0.3" 592 | }, 593 | "dependencies": { 594 | "eslint-scope": { 595 | "version": "7.1.1", 596 | "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", 597 | "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", 598 | "dev": true, 599 | "requires": { 600 | "esrecurse": "^4.3.0", 601 | "estraverse": "^5.2.0" 602 | } 603 | }, 604 | "estraverse": { 605 | "version": "5.3.0", 606 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", 607 | "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", 608 | "dev": true 609 | }, 610 | "glob-parent": { 611 | "version": "6.0.2", 612 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", 613 | "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", 614 | "dev": true, 615 | "requires": { 616 | "is-glob": "^4.0.3" 617 | } 618 | } 619 | } 620 | }, 621 | "eslint-scope": { 622 | "version": "5.1.1", 623 | "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", 624 | "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", 625 | "dev": true, 626 | "requires": { 627 | "esrecurse": "^4.3.0", 628 | "estraverse": "^4.1.1" 629 | } 630 | }, 631 | "eslint-utils": { 632 | "version": "3.0.0", 633 | "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", 634 | "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", 635 | "dev": true, 636 | "requires": { 637 | "eslint-visitor-keys": "^2.0.0" 638 | }, 639 | "dependencies": { 640 | "eslint-visitor-keys": { 641 | "version": "2.1.0", 642 | "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", 643 | "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", 644 | "dev": true 645 | } 646 | } 647 | }, 648 | "eslint-visitor-keys": { 649 | "version": "3.3.0", 650 | "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", 651 | "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", 652 | "dev": true 653 | }, 654 | "espree": { 655 | "version": "9.3.3", 656 | "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.3.tgz", 657 | "integrity": "sha512-ORs1Rt/uQTqUKjDdGCyrtYxbazf5umATSf/K4qxjmZHORR6HJk+2s/2Pqe+Kk49HHINC/xNIrGfgh8sZcll0ng==", 658 | "dev": true, 659 | "requires": { 660 | "acorn": "^8.8.0", 661 | "acorn-jsx": "^5.3.2", 662 | "eslint-visitor-keys": "^3.3.0" 663 | } 664 | }, 665 | "esquery": { 666 | "version": "1.4.0", 667 | "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", 668 | "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", 669 | "dev": true, 670 | "requires": { 671 | "estraverse": "^5.1.0" 672 | }, 673 | "dependencies": { 674 | "estraverse": { 675 | "version": "5.3.0", 676 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", 677 | "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", 678 | "dev": true 679 | } 680 | } 681 | }, 682 | "esrecurse": { 683 | "version": "4.3.0", 684 | "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", 685 | "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", 686 | "dev": true, 687 | "requires": { 688 | "estraverse": "^5.2.0" 689 | }, 690 | "dependencies": { 691 | "estraverse": { 692 | "version": "5.3.0", 693 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", 694 | "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", 695 | "dev": true 696 | } 697 | } 698 | }, 699 | "estraverse": { 700 | "version": "4.3.0", 701 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", 702 | "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", 703 | "dev": true 704 | }, 705 | "esutils": { 706 | "version": "2.0.3", 707 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", 708 | "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", 709 | "dev": true 710 | }, 711 | "fast-deep-equal": { 712 | "version": "3.1.3", 713 | "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", 714 | "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", 715 | "dev": true 716 | }, 717 | "fast-glob": { 718 | "version": "3.2.11", 719 | "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz", 720 | "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==", 721 | "dev": true, 722 | "requires": { 723 | "@nodelib/fs.stat": "^2.0.2", 724 | "@nodelib/fs.walk": "^1.2.3", 725 | "glob-parent": "^5.1.2", 726 | "merge2": "^1.3.0", 727 | "micromatch": "^4.0.4" 728 | } 729 | }, 730 | "fast-json-stable-stringify": { 731 | "version": "2.1.0", 732 | "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", 733 | "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", 734 | "dev": true 735 | }, 736 | "fast-levenshtein": { 737 | "version": "2.0.6", 738 | "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", 739 | "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", 740 | "dev": true 741 | }, 742 | "fastq": { 743 | "version": "1.13.0", 744 | "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", 745 | "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", 746 | "dev": true, 747 | "requires": { 748 | "reusify": "^1.0.4" 749 | } 750 | }, 751 | "file-entry-cache": { 752 | "version": "6.0.1", 753 | "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", 754 | "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", 755 | "dev": true, 756 | "requires": { 757 | "flat-cache": "^3.0.4" 758 | } 759 | }, 760 | "fill-range": { 761 | "version": "7.0.1", 762 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", 763 | "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", 764 | "dev": true, 765 | "requires": { 766 | "to-regex-range": "^5.0.1" 767 | } 768 | }, 769 | "find-up": { 770 | "version": "5.0.0", 771 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", 772 | "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", 773 | "dev": true, 774 | "requires": { 775 | "locate-path": "^6.0.0", 776 | "path-exists": "^4.0.0" 777 | } 778 | }, 779 | "flat": { 780 | "version": "5.0.2", 781 | "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", 782 | "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", 783 | "dev": true 784 | }, 785 | "flat-cache": { 786 | "version": "3.0.4", 787 | "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", 788 | "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", 789 | "dev": true, 790 | "requires": { 791 | "flatted": "^3.1.0", 792 | "rimraf": "^3.0.2" 793 | } 794 | }, 795 | "flatted": { 796 | "version": "3.2.6", 797 | "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.6.tgz", 798 | "integrity": "sha512-0sQoMh9s0BYsm+12Huy/rkKxVu4R1+r96YX5cG44rHV0pQ6iC3Q+mkoMFaGWObMFYQxCVT+ssG1ksneA2MI9KQ==", 799 | "dev": true 800 | }, 801 | "fs.realpath": { 802 | "version": "1.0.0", 803 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 804 | "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", 805 | "dev": true 806 | }, 807 | "fsevents": { 808 | "version": "2.3.2", 809 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", 810 | "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", 811 | "dev": true, 812 | "optional": true 813 | }, 814 | "fstream": { 815 | "version": "1.0.12", 816 | "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", 817 | "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", 818 | "dev": true, 819 | "requires": { 820 | "graceful-fs": "^4.1.2", 821 | "inherits": "~2.0.0", 822 | "mkdirp": ">=0.5 0", 823 | "rimraf": "2" 824 | }, 825 | "dependencies": { 826 | "glob": { 827 | "version": "7.2.3", 828 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", 829 | "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", 830 | "dev": true, 831 | "requires": { 832 | "fs.realpath": "^1.0.0", 833 | "inflight": "^1.0.4", 834 | "inherits": "2", 835 | "minimatch": "^3.1.1", 836 | "once": "^1.3.0", 837 | "path-is-absolute": "^1.0.0" 838 | } 839 | }, 840 | "rimraf": { 841 | "version": "2.7.1", 842 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", 843 | "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", 844 | "dev": true, 845 | "requires": { 846 | "glob": "^7.1.3" 847 | } 848 | } 849 | } 850 | }, 851 | "functional-red-black-tree": { 852 | "version": "1.0.1", 853 | "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", 854 | "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", 855 | "dev": true 856 | }, 857 | "get-caller-file": { 858 | "version": "2.0.5", 859 | "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", 860 | "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", 861 | "dev": true 862 | }, 863 | "glob": { 864 | "version": "8.0.3", 865 | "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", 866 | "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", 867 | "dev": true, 868 | "requires": { 869 | "fs.realpath": "^1.0.0", 870 | "inflight": "^1.0.4", 871 | "inherits": "2", 872 | "minimatch": "^5.0.1", 873 | "once": "^1.3.0" 874 | }, 875 | "dependencies": { 876 | "brace-expansion": { 877 | "version": "2.0.1", 878 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", 879 | "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", 880 | "dev": true, 881 | "requires": { 882 | "balanced-match": "^1.0.0" 883 | } 884 | }, 885 | "minimatch": { 886 | "version": "5.1.0", 887 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", 888 | "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", 889 | "dev": true, 890 | "requires": { 891 | "brace-expansion": "^2.0.1" 892 | } 893 | } 894 | } 895 | }, 896 | "glob-parent": { 897 | "version": "5.1.2", 898 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", 899 | "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", 900 | "dev": true, 901 | "requires": { 902 | "is-glob": "^4.0.1" 903 | } 904 | }, 905 | "globals": { 906 | "version": "13.17.0", 907 | "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz", 908 | "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==", 909 | "dev": true, 910 | "requires": { 911 | "type-fest": "^0.20.2" 912 | } 913 | }, 914 | "globby": { 915 | "version": "11.1.0", 916 | "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", 917 | "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", 918 | "dev": true, 919 | "requires": { 920 | "array-union": "^2.1.0", 921 | "dir-glob": "^3.0.1", 922 | "fast-glob": "^3.2.9", 923 | "ignore": "^5.2.0", 924 | "merge2": "^1.4.1", 925 | "slash": "^3.0.0" 926 | } 927 | }, 928 | "graceful-fs": { 929 | "version": "4.2.10", 930 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", 931 | "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", 932 | "dev": true 933 | }, 934 | "grapheme-splitter": { 935 | "version": "1.0.4", 936 | "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", 937 | "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", 938 | "dev": true 939 | }, 940 | "has-flag": { 941 | "version": "4.0.0", 942 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", 943 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", 944 | "dev": true 945 | }, 946 | "he": { 947 | "version": "1.2.0", 948 | "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", 949 | "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", 950 | "dev": true 951 | }, 952 | "http-proxy-agent": { 953 | "version": "4.0.1", 954 | "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", 955 | "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", 956 | "dev": true, 957 | "requires": { 958 | "@tootallnate/once": "1", 959 | "agent-base": "6", 960 | "debug": "4" 961 | } 962 | }, 963 | "https-proxy-agent": { 964 | "version": "5.0.1", 965 | "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", 966 | "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", 967 | "dev": true, 968 | "requires": { 969 | "agent-base": "6", 970 | "debug": "4" 971 | } 972 | }, 973 | "ignore": { 974 | "version": "5.2.0", 975 | "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", 976 | "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", 977 | "dev": true 978 | }, 979 | "import-fresh": { 980 | "version": "3.3.0", 981 | "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", 982 | "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", 983 | "dev": true, 984 | "requires": { 985 | "parent-module": "^1.0.0", 986 | "resolve-from": "^4.0.0" 987 | } 988 | }, 989 | "imurmurhash": { 990 | "version": "0.1.4", 991 | "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", 992 | "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", 993 | "dev": true 994 | }, 995 | "inflight": { 996 | "version": "1.0.6", 997 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 998 | "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", 999 | "dev": true, 1000 | "requires": { 1001 | "once": "^1.3.0", 1002 | "wrappy": "1" 1003 | } 1004 | }, 1005 | "inherits": { 1006 | "version": "2.0.4", 1007 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 1008 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", 1009 | "dev": true 1010 | }, 1011 | "is-binary-path": { 1012 | "version": "2.1.0", 1013 | "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", 1014 | "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", 1015 | "dev": true, 1016 | "requires": { 1017 | "binary-extensions": "^2.0.0" 1018 | } 1019 | }, 1020 | "is-extglob": { 1021 | "version": "2.1.1", 1022 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 1023 | "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", 1024 | "dev": true 1025 | }, 1026 | "is-fullwidth-code-point": { 1027 | "version": "3.0.0", 1028 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", 1029 | "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", 1030 | "dev": true 1031 | }, 1032 | "is-glob": { 1033 | "version": "4.0.3", 1034 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", 1035 | "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", 1036 | "dev": true, 1037 | "requires": { 1038 | "is-extglob": "^2.1.1" 1039 | } 1040 | }, 1041 | "is-number": { 1042 | "version": "7.0.0", 1043 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", 1044 | "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", 1045 | "dev": true 1046 | }, 1047 | "is-plain-obj": { 1048 | "version": "2.1.0", 1049 | "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", 1050 | "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", 1051 | "dev": true 1052 | }, 1053 | "is-unicode-supported": { 1054 | "version": "0.1.0", 1055 | "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", 1056 | "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", 1057 | "dev": true 1058 | }, 1059 | "isarray": { 1060 | "version": "1.0.0", 1061 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 1062 | "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", 1063 | "dev": true 1064 | }, 1065 | "isexe": { 1066 | "version": "2.0.0", 1067 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", 1068 | "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", 1069 | "dev": true 1070 | }, 1071 | "js-yaml": { 1072 | "version": "4.1.0", 1073 | "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", 1074 | "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", 1075 | "dev": true, 1076 | "requires": { 1077 | "argparse": "^2.0.1" 1078 | } 1079 | }, 1080 | "json-schema-traverse": { 1081 | "version": "0.4.1", 1082 | "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", 1083 | "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", 1084 | "dev": true 1085 | }, 1086 | "json-stable-stringify-without-jsonify": { 1087 | "version": "1.0.1", 1088 | "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", 1089 | "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", 1090 | "dev": true 1091 | }, 1092 | "levn": { 1093 | "version": "0.4.1", 1094 | "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", 1095 | "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", 1096 | "dev": true, 1097 | "requires": { 1098 | "prelude-ls": "^1.2.1", 1099 | "type-check": "~0.4.0" 1100 | } 1101 | }, 1102 | "listenercount": { 1103 | "version": "1.0.1", 1104 | "resolved": "https://registry.npmjs.org/listenercount/-/listenercount-1.0.1.tgz", 1105 | "integrity": "sha512-3mk/Zag0+IJxeDrxSgaDPy4zZ3w05PRZeJNnlWhzFz5OkX49J4krc+A8X2d2M69vGMBEX0uyl8M+W+8gH+kBqQ==", 1106 | "dev": true 1107 | }, 1108 | "locate-path": { 1109 | "version": "6.0.0", 1110 | "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", 1111 | "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", 1112 | "dev": true, 1113 | "requires": { 1114 | "p-locate": "^5.0.0" 1115 | } 1116 | }, 1117 | "lodash.merge": { 1118 | "version": "4.6.2", 1119 | "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", 1120 | "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", 1121 | "dev": true 1122 | }, 1123 | "log-symbols": { 1124 | "version": "4.1.0", 1125 | "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", 1126 | "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", 1127 | "dev": true, 1128 | "requires": { 1129 | "chalk": "^4.1.0", 1130 | "is-unicode-supported": "^0.1.0" 1131 | } 1132 | }, 1133 | "lru-cache": { 1134 | "version": "6.0.0", 1135 | "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", 1136 | "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", 1137 | "dev": true, 1138 | "requires": { 1139 | "yallist": "^4.0.0" 1140 | } 1141 | }, 1142 | "merge2": { 1143 | "version": "1.4.1", 1144 | "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", 1145 | "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", 1146 | "dev": true 1147 | }, 1148 | "micromatch": { 1149 | "version": "4.0.5", 1150 | "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", 1151 | "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", 1152 | "dev": true, 1153 | "requires": { 1154 | "braces": "^3.0.2", 1155 | "picomatch": "^2.3.1" 1156 | } 1157 | }, 1158 | "minimatch": { 1159 | "version": "3.1.2", 1160 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", 1161 | "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", 1162 | "dev": true, 1163 | "requires": { 1164 | "brace-expansion": "^1.1.7" 1165 | } 1166 | }, 1167 | "minimist": { 1168 | "version": "1.2.6", 1169 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", 1170 | "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", 1171 | "dev": true 1172 | }, 1173 | "mkdirp": { 1174 | "version": "0.5.6", 1175 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", 1176 | "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", 1177 | "dev": true, 1178 | "requires": { 1179 | "minimist": "^1.2.6" 1180 | } 1181 | }, 1182 | "mocha": { 1183 | "version": "10.0.0", 1184 | "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.0.0.tgz", 1185 | "integrity": "sha512-0Wl+elVUD43Y0BqPZBzZt8Tnkw9CMUdNYnUsTfOM1vuhJVZL+kiesFYsqwBkEEuEixaiPe5ZQdqDgX2jddhmoA==", 1186 | "dev": true, 1187 | "requires": { 1188 | "@ungap/promise-all-settled": "1.1.2", 1189 | "ansi-colors": "4.1.1", 1190 | "browser-stdout": "1.3.1", 1191 | "chokidar": "3.5.3", 1192 | "debug": "4.3.4", 1193 | "diff": "5.0.0", 1194 | "escape-string-regexp": "4.0.0", 1195 | "find-up": "5.0.0", 1196 | "glob": "7.2.0", 1197 | "he": "1.2.0", 1198 | "js-yaml": "4.1.0", 1199 | "log-symbols": "4.1.0", 1200 | "minimatch": "5.0.1", 1201 | "ms": "2.1.3", 1202 | "nanoid": "3.3.3", 1203 | "serialize-javascript": "6.0.0", 1204 | "strip-json-comments": "3.1.1", 1205 | "supports-color": "8.1.1", 1206 | "workerpool": "6.2.1", 1207 | "yargs": "16.2.0", 1208 | "yargs-parser": "20.2.4", 1209 | "yargs-unparser": "2.0.0" 1210 | }, 1211 | "dependencies": { 1212 | "glob": { 1213 | "version": "7.2.0", 1214 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", 1215 | "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", 1216 | "dev": true, 1217 | "requires": { 1218 | "fs.realpath": "^1.0.0", 1219 | "inflight": "^1.0.4", 1220 | "inherits": "2", 1221 | "minimatch": "^3.0.4", 1222 | "once": "^1.3.0", 1223 | "path-is-absolute": "^1.0.0" 1224 | }, 1225 | "dependencies": { 1226 | "minimatch": { 1227 | "version": "3.1.2", 1228 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", 1229 | "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", 1230 | "dev": true, 1231 | "requires": { 1232 | "brace-expansion": "^1.1.7" 1233 | } 1234 | } 1235 | } 1236 | }, 1237 | "minimatch": { 1238 | "version": "5.0.1", 1239 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz", 1240 | "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==", 1241 | "dev": true, 1242 | "requires": { 1243 | "brace-expansion": "^2.0.1" 1244 | }, 1245 | "dependencies": { 1246 | "brace-expansion": { 1247 | "version": "2.0.1", 1248 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", 1249 | "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", 1250 | "dev": true, 1251 | "requires": { 1252 | "balanced-match": "^1.0.0" 1253 | } 1254 | } 1255 | } 1256 | }, 1257 | "ms": { 1258 | "version": "2.1.3", 1259 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", 1260 | "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", 1261 | "dev": true 1262 | }, 1263 | "supports-color": { 1264 | "version": "8.1.1", 1265 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", 1266 | "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", 1267 | "dev": true, 1268 | "requires": { 1269 | "has-flag": "^4.0.0" 1270 | } 1271 | } 1272 | } 1273 | }, 1274 | "ms": { 1275 | "version": "2.1.2", 1276 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", 1277 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", 1278 | "dev": true 1279 | }, 1280 | "nanoid": { 1281 | "version": "3.3.3", 1282 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz", 1283 | "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==", 1284 | "dev": true 1285 | }, 1286 | "natural-compare": { 1287 | "version": "1.4.0", 1288 | "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", 1289 | "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", 1290 | "dev": true 1291 | }, 1292 | "normalize-path": { 1293 | "version": "3.0.0", 1294 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", 1295 | "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", 1296 | "dev": true 1297 | }, 1298 | "once": { 1299 | "version": "1.4.0", 1300 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 1301 | "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", 1302 | "dev": true, 1303 | "requires": { 1304 | "wrappy": "1" 1305 | } 1306 | }, 1307 | "optionator": { 1308 | "version": "0.9.1", 1309 | "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", 1310 | "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", 1311 | "dev": true, 1312 | "requires": { 1313 | "deep-is": "^0.1.3", 1314 | "fast-levenshtein": "^2.0.6", 1315 | "levn": "^0.4.1", 1316 | "prelude-ls": "^1.2.1", 1317 | "type-check": "^0.4.0", 1318 | "word-wrap": "^1.2.3" 1319 | } 1320 | }, 1321 | "p-limit": { 1322 | "version": "3.1.0", 1323 | "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", 1324 | "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", 1325 | "dev": true, 1326 | "requires": { 1327 | "yocto-queue": "^0.1.0" 1328 | } 1329 | }, 1330 | "p-locate": { 1331 | "version": "5.0.0", 1332 | "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", 1333 | "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", 1334 | "dev": true, 1335 | "requires": { 1336 | "p-limit": "^3.0.2" 1337 | } 1338 | }, 1339 | "parent-module": { 1340 | "version": "1.0.1", 1341 | "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", 1342 | "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", 1343 | "dev": true, 1344 | "requires": { 1345 | "callsites": "^3.0.0" 1346 | } 1347 | }, 1348 | "path-exists": { 1349 | "version": "4.0.0", 1350 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", 1351 | "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", 1352 | "dev": true 1353 | }, 1354 | "path-is-absolute": { 1355 | "version": "1.0.1", 1356 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 1357 | "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", 1358 | "dev": true 1359 | }, 1360 | "path-key": { 1361 | "version": "3.1.1", 1362 | "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", 1363 | "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", 1364 | "dev": true 1365 | }, 1366 | "path-type": { 1367 | "version": "4.0.0", 1368 | "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", 1369 | "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", 1370 | "dev": true 1371 | }, 1372 | "picomatch": { 1373 | "version": "2.3.1", 1374 | "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", 1375 | "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", 1376 | "dev": true 1377 | }, 1378 | "prelude-ls": { 1379 | "version": "1.2.1", 1380 | "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", 1381 | "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", 1382 | "dev": true 1383 | }, 1384 | "process-nextick-args": { 1385 | "version": "2.0.1", 1386 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", 1387 | "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", 1388 | "dev": true 1389 | }, 1390 | "punycode": { 1391 | "version": "2.1.1", 1392 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", 1393 | "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", 1394 | "dev": true 1395 | }, 1396 | "queue-microtask": { 1397 | "version": "1.2.3", 1398 | "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", 1399 | "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", 1400 | "dev": true 1401 | }, 1402 | "randombytes": { 1403 | "version": "2.1.0", 1404 | "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", 1405 | "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", 1406 | "dev": true, 1407 | "requires": { 1408 | "safe-buffer": "^5.1.0" 1409 | } 1410 | }, 1411 | "readable-stream": { 1412 | "version": "2.3.7", 1413 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", 1414 | "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", 1415 | "dev": true, 1416 | "requires": { 1417 | "core-util-is": "~1.0.0", 1418 | "inherits": "~2.0.3", 1419 | "isarray": "~1.0.0", 1420 | "process-nextick-args": "~2.0.0", 1421 | "safe-buffer": "~5.1.1", 1422 | "string_decoder": "~1.1.1", 1423 | "util-deprecate": "~1.0.1" 1424 | } 1425 | }, 1426 | "readdirp": { 1427 | "version": "3.6.0", 1428 | "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", 1429 | "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", 1430 | "dev": true, 1431 | "requires": { 1432 | "picomatch": "^2.2.1" 1433 | } 1434 | }, 1435 | "regexpp": { 1436 | "version": "3.2.0", 1437 | "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", 1438 | "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", 1439 | "dev": true 1440 | }, 1441 | "require-directory": { 1442 | "version": "2.1.1", 1443 | "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", 1444 | "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", 1445 | "dev": true 1446 | }, 1447 | "resolve-from": { 1448 | "version": "4.0.0", 1449 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", 1450 | "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", 1451 | "dev": true 1452 | }, 1453 | "reusify": { 1454 | "version": "1.0.4", 1455 | "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", 1456 | "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", 1457 | "dev": true 1458 | }, 1459 | "rimraf": { 1460 | "version": "3.0.2", 1461 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", 1462 | "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", 1463 | "dev": true, 1464 | "requires": { 1465 | "glob": "^7.1.3" 1466 | }, 1467 | "dependencies": { 1468 | "glob": { 1469 | "version": "7.2.3", 1470 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", 1471 | "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", 1472 | "dev": true, 1473 | "requires": { 1474 | "fs.realpath": "^1.0.0", 1475 | "inflight": "^1.0.4", 1476 | "inherits": "2", 1477 | "minimatch": "^3.1.1", 1478 | "once": "^1.3.0", 1479 | "path-is-absolute": "^1.0.0" 1480 | } 1481 | } 1482 | } 1483 | }, 1484 | "run-parallel": { 1485 | "version": "1.2.0", 1486 | "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", 1487 | "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", 1488 | "dev": true, 1489 | "requires": { 1490 | "queue-microtask": "^1.2.2" 1491 | } 1492 | }, 1493 | "safe-buffer": { 1494 | "version": "5.1.2", 1495 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", 1496 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", 1497 | "dev": true 1498 | }, 1499 | "semver": { 1500 | "version": "7.3.7", 1501 | "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", 1502 | "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", 1503 | "dev": true, 1504 | "requires": { 1505 | "lru-cache": "^6.0.0" 1506 | } 1507 | }, 1508 | "serialize-javascript": { 1509 | "version": "6.0.0", 1510 | "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", 1511 | "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", 1512 | "dev": true, 1513 | "requires": { 1514 | "randombytes": "^2.1.0" 1515 | } 1516 | }, 1517 | "setimmediate": { 1518 | "version": "1.0.5", 1519 | "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", 1520 | "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", 1521 | "dev": true 1522 | }, 1523 | "shebang-command": { 1524 | "version": "2.0.0", 1525 | "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", 1526 | "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", 1527 | "dev": true, 1528 | "requires": { 1529 | "shebang-regex": "^3.0.0" 1530 | } 1531 | }, 1532 | "shebang-regex": { 1533 | "version": "3.0.0", 1534 | "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", 1535 | "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", 1536 | "dev": true 1537 | }, 1538 | "slash": { 1539 | "version": "3.0.0", 1540 | "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", 1541 | "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", 1542 | "dev": true 1543 | }, 1544 | "string-width": { 1545 | "version": "4.2.3", 1546 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", 1547 | "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", 1548 | "dev": true, 1549 | "requires": { 1550 | "emoji-regex": "^8.0.0", 1551 | "is-fullwidth-code-point": "^3.0.0", 1552 | "strip-ansi": "^6.0.1" 1553 | } 1554 | }, 1555 | "string_decoder": { 1556 | "version": "1.1.1", 1557 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", 1558 | "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", 1559 | "dev": true, 1560 | "requires": { 1561 | "safe-buffer": "~5.1.0" 1562 | } 1563 | }, 1564 | "strip-ansi": { 1565 | "version": "6.0.1", 1566 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", 1567 | "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", 1568 | "dev": true, 1569 | "requires": { 1570 | "ansi-regex": "^5.0.1" 1571 | } 1572 | }, 1573 | "strip-json-comments": { 1574 | "version": "3.1.1", 1575 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", 1576 | "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", 1577 | "dev": true 1578 | }, 1579 | "supports-color": { 1580 | "version": "7.2.0", 1581 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", 1582 | "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", 1583 | "dev": true, 1584 | "requires": { 1585 | "has-flag": "^4.0.0" 1586 | } 1587 | }, 1588 | "text-table": { 1589 | "version": "0.2.0", 1590 | "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", 1591 | "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", 1592 | "dev": true 1593 | }, 1594 | "to-regex-range": { 1595 | "version": "5.0.1", 1596 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", 1597 | "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", 1598 | "dev": true, 1599 | "requires": { 1600 | "is-number": "^7.0.0" 1601 | } 1602 | }, 1603 | "traverse": { 1604 | "version": "0.3.9", 1605 | "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.3.9.tgz", 1606 | "integrity": "sha512-iawgk0hLP3SxGKDfnDJf8wTz4p2qImnyihM5Hh/sGvQ3K37dPi/w8sRhdNIxYA1TwFwc5mDhIJq+O0RsvXBKdQ==", 1607 | "dev": true 1608 | }, 1609 | "tslib": { 1610 | "version": "1.14.1", 1611 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", 1612 | "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", 1613 | "dev": true 1614 | }, 1615 | "tsutils": { 1616 | "version": "3.21.0", 1617 | "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", 1618 | "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", 1619 | "dev": true, 1620 | "requires": { 1621 | "tslib": "^1.8.1" 1622 | } 1623 | }, 1624 | "type-check": { 1625 | "version": "0.4.0", 1626 | "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", 1627 | "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", 1628 | "dev": true, 1629 | "requires": { 1630 | "prelude-ls": "^1.2.1" 1631 | } 1632 | }, 1633 | "type-fest": { 1634 | "version": "0.20.2", 1635 | "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", 1636 | "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", 1637 | "dev": true 1638 | }, 1639 | "typescript": { 1640 | "version": "4.7.4", 1641 | "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz", 1642 | "integrity": "sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==", 1643 | "dev": true 1644 | }, 1645 | "unzipper": { 1646 | "version": "0.10.11", 1647 | "resolved": "https://registry.npmjs.org/unzipper/-/unzipper-0.10.11.tgz", 1648 | "integrity": "sha512-+BrAq2oFqWod5IESRjL3S8baohbevGcVA+teAIOYWM3pDVdseogqbzhhvvmiyQrUNKFUnDMtELW3X8ykbyDCJw==", 1649 | "dev": true, 1650 | "requires": { 1651 | "big-integer": "^1.6.17", 1652 | "binary": "~0.3.0", 1653 | "bluebird": "~3.4.1", 1654 | "buffer-indexof-polyfill": "~1.0.0", 1655 | "duplexer2": "~0.1.4", 1656 | "fstream": "^1.0.12", 1657 | "graceful-fs": "^4.2.2", 1658 | "listenercount": "~1.0.1", 1659 | "readable-stream": "~2.3.6", 1660 | "setimmediate": "~1.0.4" 1661 | } 1662 | }, 1663 | "uri-js": { 1664 | "version": "4.4.1", 1665 | "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", 1666 | "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", 1667 | "dev": true, 1668 | "requires": { 1669 | "punycode": "^2.1.0" 1670 | } 1671 | }, 1672 | "util-deprecate": { 1673 | "version": "1.0.2", 1674 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 1675 | "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", 1676 | "dev": true 1677 | }, 1678 | "v8-compile-cache": { 1679 | "version": "2.3.0", 1680 | "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", 1681 | "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", 1682 | "dev": true 1683 | }, 1684 | "which": { 1685 | "version": "2.0.2", 1686 | "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", 1687 | "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", 1688 | "dev": true, 1689 | "requires": { 1690 | "isexe": "^2.0.0" 1691 | } 1692 | }, 1693 | "word-wrap": { 1694 | "version": "1.2.3", 1695 | "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", 1696 | "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", 1697 | "dev": true 1698 | }, 1699 | "workerpool": { 1700 | "version": "6.2.1", 1701 | "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.2.1.tgz", 1702 | "integrity": "sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw==", 1703 | "dev": true 1704 | }, 1705 | "wrap-ansi": { 1706 | "version": "7.0.0", 1707 | "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", 1708 | "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", 1709 | "dev": true, 1710 | "requires": { 1711 | "ansi-styles": "^4.0.0", 1712 | "string-width": "^4.1.0", 1713 | "strip-ansi": "^6.0.0" 1714 | } 1715 | }, 1716 | "wrappy": { 1717 | "version": "1.0.2", 1718 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 1719 | "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", 1720 | "dev": true 1721 | }, 1722 | "y18n": { 1723 | "version": "5.0.8", 1724 | "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", 1725 | "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", 1726 | "dev": true 1727 | }, 1728 | "yallist": { 1729 | "version": "4.0.0", 1730 | "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", 1731 | "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", 1732 | "dev": true 1733 | }, 1734 | "yargs": { 1735 | "version": "16.2.0", 1736 | "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", 1737 | "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", 1738 | "dev": true, 1739 | "requires": { 1740 | "cliui": "^7.0.2", 1741 | "escalade": "^3.1.1", 1742 | "get-caller-file": "^2.0.5", 1743 | "require-directory": "^2.1.1", 1744 | "string-width": "^4.2.0", 1745 | "y18n": "^5.0.5", 1746 | "yargs-parser": "^20.2.2" 1747 | } 1748 | }, 1749 | "yargs-parser": { 1750 | "version": "20.2.4", 1751 | "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", 1752 | "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", 1753 | "dev": true 1754 | }, 1755 | "yargs-unparser": { 1756 | "version": "2.0.0", 1757 | "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", 1758 | "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", 1759 | "dev": true, 1760 | "requires": { 1761 | "camelcase": "^6.0.0", 1762 | "decamelize": "^4.0.0", 1763 | "flat": "^5.0.2", 1764 | "is-plain-obj": "^2.1.0" 1765 | } 1766 | }, 1767 | "yocto-queue": { 1768 | "version": "0.1.0", 1769 | "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", 1770 | "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", 1771 | "dev": true 1772 | } 1773 | } 1774 | } 1775 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wordpress-block-markup", 3 | "publisher": "CarolinaNymark", 4 | "displayName": "WordPress block markup", 5 | "description": "WordPress block markup autocomplete snippets for full site editing", 6 | "icon": "images/icon.png", 7 | "repository": "https://github.com/carolinan/block-markup-snippets", 8 | "license": "GPL-2.0-or-later", 9 | "author": { 10 | "name": "Carolina Nymark" 11 | }, 12 | "version": "1.3.0", 13 | "engines": { 14 | "vscode": "^1.55.0" 15 | }, 16 | "categories": [ 17 | "Snippets" 18 | ], 19 | "keywords": [ 20 | "WordPress", 21 | "Full site editing" 22 | ], 23 | "galleryBanner": { 24 | "color": "#3f2b6e", 25 | "theme": "dark" 26 | }, 27 | "contributes": { 28 | "snippets": [ 29 | { 30 | "language": "html", 31 | "path": "./.code-snippets" 32 | }, 33 | { 34 | "language": "php", 35 | "path": "./.code-snippets" 36 | } 37 | ] 38 | }, 39 | "scripts": { 40 | "vscode:prepublish": "npm run compile", 41 | "compile": "tsc -p ./", 42 | "watch": "tsc -watch -p ./", 43 | "pretest": "npm run compile && npm run lint", 44 | "lint": "eslint src --ext ts", 45 | "test": "node ./out/test/runTest.js" 46 | }, 47 | "devDependencies": { 48 | "@types/vscode": "^1.55.0", 49 | "@types/glob": "^7.2.0", 50 | "@types/mocha": "9.1.1", 51 | "@types/node": "^12.11.7", 52 | "eslint": "^8.2.1", 53 | "@typescript-eslint/eslint-plugin": "^5.32.0", 54 | "@typescript-eslint/parser": "^5.32.0", 55 | "glob": "^8.0.3", 56 | "mocha": "^10.0.0", 57 | "typescript": "^4.7.4", 58 | "@vscode/test-electron": "^2.1.5" 59 | } 60 | } 61 | -------------------------------------------------------------------------------- /src/extension.ts: -------------------------------------------------------------------------------- 1 | // The module 'vscode' contains the VS Code extensibility API 2 | // Import the module and reference it with the alias vscode in your code below 3 | import * as vscode from 'vscode'; 4 | 5 | // this method is called when your extension is activated 6 | // your extension is activated the very first time the command is executed 7 | export function activate(context: vscode.ExtensionContext) {} 8 | 9 | // this method is called when your extension is deactivated 10 | export function deactivate() {} 11 | -------------------------------------------------------------------------------- /src/test/runTest.ts: -------------------------------------------------------------------------------- 1 | import * as path from 'path'; 2 | 3 | import { runTests } from '@vscode/test-electron'; 4 | 5 | async function main() { 6 | try { 7 | // The folder containing the Extension Manifest package.json 8 | // Passed to `--extensionDevelopmentPath` 9 | const extensionDevelopmentPath = path.resolve(__dirname, '../../'); 10 | 11 | // The path to test runner 12 | // Passed to --extensionTestsPath 13 | const extensionTestsPath = path.resolve(__dirname, './suite/index'); 14 | 15 | // Download VS Code, unzip it and run the integration test 16 | await runTests({ extensionDevelopmentPath, extensionTestsPath }); 17 | } catch (err) { 18 | console.error('Failed to run tests'); 19 | process.exit(1); 20 | } 21 | } 22 | 23 | main(); 24 | -------------------------------------------------------------------------------- /src/test/suite/extension.test.ts: -------------------------------------------------------------------------------- 1 | import * as assert from 'assert'; 2 | import { after } from 'mocha'; 3 | 4 | // You can import and use all API from the 'vscode' module 5 | // as well as import your extension to test it 6 | import * as vscode from 'vscode'; 7 | // import * as myExtension from '../extension'; 8 | 9 | suite('Extension Test Suite', () => { 10 | after(() => { 11 | vscode.window.showInformationMessage('All tests done!'); 12 | }); 13 | 14 | test('Sample test', () => { 15 | assert.strictEqual(-1, [1, 2, 3].indexOf(5)); 16 | assert.strictEqual(-1, [1, 2, 3].indexOf(0)); 17 | }); 18 | }); 19 | -------------------------------------------------------------------------------- /src/test/suite/index.ts: -------------------------------------------------------------------------------- 1 | import * as path from 'path'; 2 | import * as Mocha from 'mocha'; 3 | import * as glob from 'glob'; 4 | 5 | export function run(): Promise { 6 | // Create the mocha test 7 | const mocha = new Mocha({ 8 | ui: 'tdd', 9 | color: true 10 | }); 11 | 12 | const testsRoot = path.resolve(__dirname, '..'); 13 | 14 | return new Promise((c, e) => { 15 | glob('**/**.test.js', { cwd: testsRoot }, (err, files) => { 16 | if (err) { 17 | return e(err); 18 | } 19 | 20 | // Add files to the test suite 21 | files.forEach(f => mocha.addFile(path.resolve(testsRoot, f))); 22 | 23 | try { 24 | // Run the mocha test 25 | mocha.run(failures => { 26 | if (failures > 0) { 27 | e(new Error(`${failures} tests failed.`)); 28 | } else { 29 | c(); 30 | } 31 | }); 32 | } catch (err) { 33 | console.error(err); 34 | e(err); 35 | } 36 | }); 37 | }); 38 | } 39 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "module": "commonjs", 4 | "target": "es6", 5 | "outDir": "out", 6 | "lib": [ 7 | "es6" 8 | ], 9 | "sourceMap": true, 10 | "rootDir": "src", 11 | "strict": true /* enable all strict type-checking options */ 12 | /* Additional Checks */ 13 | // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */ 14 | // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */ 15 | // "noUnusedParameters": true, /* Report errors on unused parameters. */ 16 | }, 17 | "exclude": [ 18 | "node_modules", 19 | ".vscode-test" 20 | ] 21 | } 22 | --------------------------------------------------------------------------------