From 1ea8dfd99517fdfe98c81aa206ad2615c1113426 Mon Sep 17 00:00:00 2001 From: Tan Kian-ting Date: Mon, 25 Mar 2024 00:32:19 +0800 Subject: [PATCH] add ocaml EoC ast viewet --- 3rdparty/harfbuzzjs/LICENSE | 22 - 3rdparty/harfbuzzjs/hb.wasm | Bin 315017 -> 0 bytes README.md | 26 - lexicalSyntaxesDraft.pdf | Bin 199186 -> 0 bytes ocaml_yacc/Makefile | 19 + ocaml_yacc/Makefile~ | 20 + ocaml_yacc/ast.cmi | Bin 0 -> 407 bytes ocaml_yacc/ast.cmo | Bin 0 -> 167 bytes ocaml_yacc/ast.ml | 1 + ocaml_yacc/calc | Bin 0 -> 209400 bytes ocaml_yacc/calc.cmi | Bin 0 -> 1127 bytes ocaml_yacc/calc.cmo | Bin 0 -> 3240 bytes ocaml_yacc/calc.ml | 17 + ocaml_yacc/lexer.cmi | Bin 0 -> 709 bytes ocaml_yacc/lexer.cmo | Bin 0 -> 3810 bytes ocaml_yacc/lexer.ml | 281 + ocaml_yacc/lexer.mll | 22 + ocaml_yacc/parser.cmi | Bin 0 -> 993 bytes ocaml_yacc/parser.cmo | Bin 0 -> 5217 bytes ocaml_yacc/parser.ml | 327 + ocaml_yacc/parser.mli | 17 + ocaml_yacc/parser.mly | 63 + package-lock.json | 11481 ---------------------------------- package.json | 45 - parserRule.txt | 8 - parserRuleRefOnly.txt | 65 - src/harfbuzz.js | 45 - src/harfbuzz.ts | 57 - src/index.d.ts | 1 - src/index.js | 404 -- src/index.ts | 476 -- src/pdfManipulate.js | 32 - src/pdfManipulate.ts | 25 - src/tokenize.ts | 565 -- tests/index.d.ts | 86 - tests/index.js | 95 - tests/index.ts | 122 - tsconfig.json | 109 - tslint.json | 9 - 39 files changed, 767 insertions(+), 13673 deletions(-) delete mode 100644 3rdparty/harfbuzzjs/LICENSE delete mode 100755 3rdparty/harfbuzzjs/hb.wasm delete mode 100644 README.md delete mode 100644 lexicalSyntaxesDraft.pdf create mode 100644 ocaml_yacc/Makefile create mode 100644 ocaml_yacc/Makefile~ create mode 100644 ocaml_yacc/ast.cmi create mode 100644 ocaml_yacc/ast.cmo create mode 100644 ocaml_yacc/ast.ml create mode 100755 ocaml_yacc/calc create mode 100644 ocaml_yacc/calc.cmi create mode 100644 ocaml_yacc/calc.cmo create mode 100644 ocaml_yacc/calc.ml create mode 100644 ocaml_yacc/lexer.cmi create mode 100644 ocaml_yacc/lexer.cmo create mode 100644 ocaml_yacc/lexer.ml create mode 100644 ocaml_yacc/lexer.mll create mode 100644 ocaml_yacc/parser.cmi create mode 100644 ocaml_yacc/parser.cmo create mode 100644 ocaml_yacc/parser.ml create mode 100644 ocaml_yacc/parser.mli create mode 100644 ocaml_yacc/parser.mly delete mode 100644 package-lock.json delete mode 100644 package.json delete mode 100644 parserRule.txt delete mode 100644 parserRuleRefOnly.txt delete mode 100644 src/harfbuzz.js delete mode 100644 src/harfbuzz.ts delete mode 100644 src/index.d.ts delete mode 100644 src/index.js delete mode 100644 src/index.ts delete mode 100644 src/pdfManipulate.js delete mode 100644 src/pdfManipulate.ts delete mode 100644 src/tokenize.ts delete mode 100644 tests/index.d.ts delete mode 100644 tests/index.js delete mode 100644 tests/index.ts delete mode 100644 tsconfig.json delete mode 100644 tslint.json diff --git a/3rdparty/harfbuzzjs/LICENSE b/3rdparty/harfbuzzjs/LICENSE deleted file mode 100644 index 14ad32e..0000000 --- a/3rdparty/harfbuzzjs/LICENSE +++ /dev/null @@ -1,22 +0,0 @@ -Apache license for Zephyr libc implementations (zephyr-string.c), -emmalloc.cpp (from emscripten project) and MIT for rest of the project - -Copyright (c) 2019 Ebrahim Byagowi - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/3rdparty/harfbuzzjs/hb.wasm b/3rdparty/harfbuzzjs/hb.wasm deleted file mode 100755 index 42dcd82754dd1c1f88054423654d2f6c61ca623e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 315017 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⁣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�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 diff --git a/README.md b/README.md deleted file mode 100644 index 9431772..0000000 --- a/README.md +++ /dev/null @@ -1,26 +0,0 @@ -# uann -another personal draught of a language and its compiler fork from Clo -website: https://kianting.info/wiki/w/Project:Uann -License: MIT - -## changing journal - - 20230904 建立 thenDo、matchRange的函數、refactor harfbuzzjs 以及libpdf 等測試界面 - - 20230905-06: 建立 : `toSome`, initial of basic tokenizer (`tokenize`), - `matchAny`, `notDo`, `orDo`, `zeroOrMoreDo`, `zeroOrOnceDo` - - 20230905-07:強化`tokenize`, 加強功能,加`Token`界面。 - - 20230907-08:強化`tokenize`。 - - 20230910 : add basic parser `CONST` rule, and add the grammar rule. - - 20230914-15: 追加一寡 tokenizer ê 功能。 - - 20230918: 重新tuì下kàu頂起做parser. add rule - - 20230921-22:add rule, report issue - - 20230925-26: 試驗án-tsuánn解決[issue1](https://kianting.info/pipermail/clo_kianting.info/2023-September/000004.html), iáu-buē成功。 - - 凡勢用? - ``` - FuncApp ::= Single FuncAppAux | Single - FuncAppAUx ::= FunCallee FuncAppAUx - FuncCallee ::= "(" ")" | "(" ARGS ")" - ARGS = SINGLE "," ARGS | SINGLE - ``` - - 20230928:basically fix `issue1`。其他ê物件猶著做。 - - 20230929:add multi args parsing for `callee`. - - 分ue,改名做uann diff --git a/lexicalSyntaxesDraft.pdf b/lexicalSyntaxesDraft.pdf deleted file mode 100644 index 33983e8bcf456ea0e51f0e3459f8b1f7c617cb88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 199186 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 diff --git a/ocaml_yacc/Makefile b/ocaml_yacc/Makefile new file mode 100644 index 0000000..c726863 --- /dev/null +++ b/ocaml_yacc/Makefile @@ -0,0 +1,19 @@ +calc: lexer.cmo parser.cmo calc.cmo + ocamlc -o calc lexer.cmo parser.cmo calc.cmo +lexer.cmo: lexer.ml parser.cmo + ocamlc -c lexer.ml +parser.cmo: parser.ml + ocamlc -c parser.ml +calc.cmo: calc.ml + ocamlc -c calc.ml +parser.ml: parser.mli + ocamlc -c parser.mli +lexer.ml: lexer.mll + ocamllex lexer.mll +parser.mli: parser.mly ast.cmo + ocamlyacc parser.mly +ast.cmo: ast.ml + ocamlc -c ast.ml + +clean: + rm -rf *.cmo *.mli parser.ml lexer.ml calc *.cmi diff --git a/ocaml_yacc/Makefile~ b/ocaml_yacc/Makefile~ new file mode 100644 index 0000000..1be5d68 --- /dev/null +++ b/ocaml_yacc/Makefile~ @@ -0,0 +1,20 @@ +calc: lexer.cmo parser.cmo calc.cmo + ocamlc -o calc lexer.cmo parser.cmo calc.cmo + +lexer.cmo: lexer.ml + ocaml -c lexer.ml + +parser.cmo: parser.ml + ocaml -c parser.ml + +calc.cmo: calc.ml + ocaml -c calc.ml + +parser.ml: parser.mli + ocamlc -c parser.mli + +lexer.ml: lexer.mll + ocamllex lexer.mll + +parser.mli: parser.mly + ocamlyacc parser.mly diff --git a/ocaml_yacc/ast.cmi b/ocaml_yacc/ast.cmi new file mode 100644 index 0000000000000000000000000000000000000000..6902fe77242484dfc54141d6571c28a0af566a25 GIT binary patch literal 407 zcmZ=x%*`>hw6ydzFg9qJx@;c<1H&sIb_C)#K>U1xvSV?{f`bc`6N^h2LOB>1EEpUd z7A|vCoEPgE-A{)OZRt};K0QC^&x`;!#@Xy4F}YKn)GsW938w5 zurN6~L;`iPNH~Ht`{k#kG6X|3tK?)Bmw1BAVNpRC@CU*C3o?sE%+Vq00E@VzLk`Fo zT_>P1%AR>83?UFxlr!^691(hcgY~F6I^-T;QFnBx1nIGLc5rZX00E$JT0j;H3y8B2 zNCG)f-zNfn%@4%pK&-m}?EMJ_hTbz=_nMc)S5KVgfB&`c+XV~Mf=g0zGLt44=yIr~ z?W;euYhqrJv1Q4``wJFWI0M5J=$h1`yu=*0{G!~%5~sxC%;e$;21m9wFIRt~@paGa Z#aVY!&L4+a$^x{E35Z!ic)hw6yd$Fg9RdV34r_5|%&=0xeUQ?E_NfKr8~pK0xfm!N8!wpzK&&65z97 z!K6tntR4;v7N`Z6q~v5KO)${qP)plae`wdlydq=El8N^hEU<6}T9BDnl3J9PnB$gT zl$%)MlvtdZTs*Tfi@?wP$f>rTq~;|mtB2u?6C^q%3m*SsXYdg3(y`>%!H HI)DKHDK0sE literal 0 HcmV?d00001 diff --git a/ocaml_yacc/ast.ml b/ocaml_yacc/ast.ml new file mode 100644 index 0000000..530229f --- /dev/null +++ b/ocaml_yacc/ast.ml @@ -0,0 +1 @@ +type ast = Leaf of string | Node of ast list | Int of int diff --git a/ocaml_yacc/calc b/ocaml_yacc/calc new file mode 100755 index 0000000000000000000000000000000000000000..668198787df66ef1aa65e1ec842be6fd08239374 GIT binary patch literal 209400 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 literal 0 HcmV?d00001 diff --git a/ocaml_yacc/calc.cmi b/ocaml_yacc/calc.cmi new file mode 100644 index 0000000000000000000000000000000000000000..c6dfff1e8e4f13f569799a9511e1da76680462ed GIT binary patch literal 1127 zcmZuxYe*D99G^KyGAdEb>O&vOtLtIvnt@&<%&K?gX()wZg)Q58=H+>3cN-W5MOP68 zGFRFIp(d`Bit0-IP?U|5DFrF?phA)!1f`bcBQ33Fy@wLP&d##)o8M#q|Jh8r+?K4@ z>$8Ov;ZRLo69Aem0DuDkzyUr!(M6fE%}iUU)=+7Na9sod3jpzIEtU4Qm{8V0ygHZS zwAy#%VS+W`LvH~FJs68VrjzUryG6nn{6QKKUqG=q15+POkX?$TI3)iz2(vp`GiD7J z$O*0JQnY+^lBxIq0)0WHFWASHn7PBma$A;7VMvo@10v>PNg}4Lbh*{8Sez9SpCB|% zn8&v;3ppM1Fm{o(>ijUwuK2AW9nwyk7*S1VIYgX%HyU*CGx+d}p}B$l-vaaZkj_9S zURdc9MKm9a4D&C+sVItrFqd#e6vrCSv`O->LC$_24+%LCjPi@2WEqCJVc0P>-!>x; z_>iI`2y^9PXm~jg{W~k1PLrCG8Aw-9CG`E zBRQFRi&6K}cr|_KJFfqSEghpZ3>gA6V}W^`@PsQU3J>c1o?u<9vc~Ze`MV7^^KLWp zPJ?{zp#F9v!m^Lc?XTx;NbiXnJN;^g;T)w28jxXS5gB+%V-Q8dtsFoYF^Wd7W>vi-&uP%3B z3P-M`k{=5q6pkF-l)3cv~dFZpjI|X8}Dy0@4X3?dmvGtnc($z1YD)S(}cinfB3O0COwcS{%c({86qqlttn zsUhIB3yLYxAyv@e2dX4~>&9qGgh*6GMIuIxi2|{SfHhI;IlKG9umNv4efQpX|MyKx zg*zCST~=0Bqm^okl3stmq9}C&KR~PEKOKq#XF8A*mldS~XCXkdTa&tRIH{il%unjB z!8skcEh$TVT2e3N8?InSeF4DyB*vFM+2HemF~BWAQIemE^J+laQDzO}0mkFqeE^9) zsDSimKZNZ2cks-8I;m&=u|OU013;2G=|lVDNyvNIKWFq1l_17w1MKs&-`)8?cbwlO zfVsG@PXNxL5|H&3gC|iZcf*r;uLsyC?!GvPx)yS3t;?Y!F)w?yzl*yd6C~bW>0PAm;~v=>Vw# zU~R0CwM|LNa?ad~ea`%LDRTz2mwREYl<6mT&AhaedF70C=t#^x6}TDTo8!J^Kb%`G zzG0tRw^Z;->!2OZ(0oEe@XgfWrqn`VyNa|P@ zXPyT<2+&sgaW;|%8;`-dIIFF|vChpLdt9GdtIWwBWsDN=Ie@H_e+%T@9mzY{n-}s* z;5*EMG30w$4W9K2P(F{TV-nmK zx^7rjPw&hXhBx4Ea=DiI+YKe@m%TrxPDt3j5mP57xc$1W)YGLzx~woF{?J-w4V486 zrP7+n+<*wv6MlU$H8;WS(siM1gteL}ly06`LU}PBvI758@P`avB;*d%)ClDW!bA)5 z-L0*GP9cysI@bdeS9?6AD-c@dx6 zD;%gUs$M4?k1_cIp%&uK9GL45wRRZU{?NnjfZv-P>IgRZB4}W>OE^k}V`)rnNN|m4 zK)oM6yLHPPP@7=my;q2GAsS<0TONzW5!C+^0&}X!Sy+yi6!;qOZnzI2y3);})^JtFv z+FM-Vu*>fiX&3>zDdZa{soLN{beiTgD8coh z9^njJlByPu$Y>T$RNte%Eu8U(@t$z*q&z5`d?4y<;rxN;$08ji_4ca2iu6j|vS!J* zxYE<&j+k1wY`EiK`}PIz%sG1K?}mRGEi2`zt(7SH|Zfzq>Ow3xov-a-|2U{x>yppR)b^}AlRNnHw~>=4vNrV>Ec?TjBQbeXs~_pEt7tf` z?#RrFKJi;szpdA$A)|DTseL^rU92uVK63cl!+)Gws!p{9sqz~wK8z#pr7x%K9ka!? z@6%TBntq s +| Ast.Node ls -> "[" ^ String.concat " " (List.map ast_to_string ls) ^ "]" +;; + + let _ = + try + let lexbuf = Lexing.from_channel stdin in + while true do + let result = Parser.main Lexer.token lexbuf in + Printf.printf "%s" (ast_to_string result); print_newline(); flush stdout + done + with Lexer.Eof -> + exit 0 + + diff --git a/ocaml_yacc/lexer.cmi b/ocaml_yacc/lexer.cmi new file mode 100644 index 0000000000000000000000000000000000000000..c88f556693749ee161dcf5572bcde43e1952cee5 GIT binary patch literal 709 zcmZ=x%*`>hw6ydzFg9qJx@;c<17j@%1A{-1Rs&-31*$%&6{$rF4lPi2%}--wILyJo zpujL;v2tofp1Z>Y2M5Ou2h`&8^7B&T9UK_`voJY2EM(zxaB^6%VS!P6e10;}{P>*I ziujVmq@2`ZMusC74s2eyaKa?D;F6S_%p^6S@tJw)S_maTLz!5=K4frU_~EeOfCf+^ zwMZ{F$DJXQA@=|a6Ns*N09vBt2(m-9BtJVfkCEZ%g#!m2Kqj+@u?VXHH6@j%Ax!!O zlmS{9kXTflS_IL8ko*I)?=F=`u2GVbq$(sI}+-iyn-<9b}uIvx5U9 zLKyx4BSZs;CjxQV0%(j(F!*wOzj@`xtFg>)MFl-?{AgaVKo1h8@$tbWMZiFvV4&CR zbRuQydanRIH8vZ#2H{nY}pcPRjY? s3l=Cl7MDygF!Y|`y4SoUzIx&`|NF0n-@?L!1sD!YK+Fol3xH`501)^LvH$=8 literal 0 HcmV?d00001 diff --git a/ocaml_yacc/lexer.cmo b/ocaml_yacc/lexer.cmo new file mode 100644 index 0000000000000000000000000000000000000000..6b2c6c9a59b546b01f4d505e53867203f1af5062 GIT binary patch literal 3810 zcmeHJU1%It6uxINY5xDHjYa&aCXLxumx+-yfud{vq)9cYX=^pcHQn9Rt(ycl`%qC( zNG(1nPEt}L2D}n9h?b@WL8P{e6k71X7ZpJ1>G++Q+;n!bW>?9Bpm+H8 z+;h%%&pr3dox8Vfa5&!3($dmnG#Wx^sog>d69@w(KqF8GZkCP#=M9jgE$55z=-_X_}{e_B?@((V_X2FV1rYhU4*e(Ji`Dy2f%} zFi6^NklzVP^Hfo-5SOsTE7n!(H|uwc#2;3-*dwI4hNWK=P4ugE*_uz)t5`coOp};F zux_GSqUN9z25hTb@GrLl^zyO0^K6TbnzD61r58R-^eEBZlwQr4&-=15%{v23*XCGeHLB+Q*~lzVq~+atTr*&E}`bo@@ z?_2UMxQqsg_sMsS{F=+yMB)ST-$wo#mvK9Z!xw#{Ml{KpZsbdZ*f!Aj&GL6rEG4)RXaA4 zj3!0~ +# 7 "lexer.mll" + ( token lexbuf ) +# 186 "lexer.ml" + + | 1 -> +# 8 "lexer.mll" + ( EOL ) +# 191 "lexer.ml" + + | 2 -> +# 9 "lexer.mll" + ( IN ) +# 196 "lexer.ml" + + | 3 -> +let +# 10 "lexer.mll" + lxm +# 202 "lexer.ml" += Lexing.sub_lexeme_char lexbuf lexbuf.Lexing.lex_start_pos in +# 10 "lexer.mll" + ( ID((String.make 1 lxm)) ) +# 206 "lexer.ml" + + | 4 -> +let +# 11 "lexer.mll" + lxm +# 212 "lexer.ml" += Lexing.sub_lexeme lexbuf lexbuf.Lexing.lex_start_pos lexbuf.Lexing.lex_curr_pos in +# 11 "lexer.mll" + ( ID(lxm) ) +# 216 "lexer.ml" + + | 5 -> +let +# 12 "lexer.mll" + lxm +# 222 "lexer.ml" += Lexing.sub_lexeme lexbuf lexbuf.Lexing.lex_start_pos lexbuf.Lexing.lex_curr_pos in +# 12 "lexer.mll" + ( INT(lxm) ) +# 226 "lexer.ml" + + | 6 -> +# 13 "lexer.mll" + ( PLUS ) +# 231 "lexer.ml" + + | 7 -> +# 14 "lexer.mll" + ( MINUS ) +# 236 "lexer.ml" + + | 8 -> +# 15 "lexer.mll" + ( TIMES ) +# 241 "lexer.ml" + + | 9 -> +# 16 "lexer.mll" + ( DIV ) +# 246 "lexer.ml" + + | 10 -> +# 17 "lexer.mll" + ( LPAREN ) +# 251 "lexer.ml" + + | 11 -> +# 18 "lexer.mll" + ( RPAREN ) +# 256 "lexer.ml" + + | 12 -> +# 19 "lexer.mll" + ( IMPLY ) +# 261 "lexer.ml" + + | 13 -> +# 20 "lexer.mll" + ( FUNC ) +# 266 "lexer.ml" + + | 14 -> +# 21 "lexer.mll" + ( ASSIGN ) +# 271 "lexer.ml" + + | 15 -> +# 22 "lexer.mll" + ( raise Eof ) +# 276 "lexer.ml" + + | __ocaml_lex_state -> lexbuf.Lexing.refill_buff lexbuf; + __ocaml_lex_token_rec lexbuf __ocaml_lex_state + +;; + diff --git a/ocaml_yacc/lexer.mll b/ocaml_yacc/lexer.mll new file mode 100644 index 0000000..a134e2e --- /dev/null +++ b/ocaml_yacc/lexer.mll @@ -0,0 +1,22 @@ +(* File lexer.mll *) +{ +open Parser(* The type token is defined in parser.mli *) +exception Eof +} +rule token = parse + [' ' '\t'] { token lexbuf } (* skip blanks *) + | ['\n' ]{ EOL } + | ['i']['n'] { IN } + | ('_'|['a'-'z']|['A'-'Z']) as lxm { ID((String.make 1 lxm)) } + | ('_'|['a'-'z']|['A'-'Z'])(['0'-'9']|'_'|['a'-'z']|['A'-'Z'])+ as lxm { ID(lxm) } + | ['0'-'9']+ as lxm { INT(lxm) } + | '+' { PLUS } + | '-' { MINUS } + | '*' { TIMES } + | '/' { DIV } + | '(' { LPAREN } + | ')' { RPAREN } + | ['-']['>'] { IMPLY } + | ['=']['>'] { FUNC } + | '=' { ASSIGN } + | eof { raise Eof } diff --git a/ocaml_yacc/parser.cmi b/ocaml_yacc/parser.cmi new file mode 100644 index 0000000000000000000000000000000000000000..3f174a7c327aa2bb7685fd7f8ae4bc0fe6bfa7d4 GIT binary patch literal 993 zcmZ|OOH30%7y#gZn<3$(5HE0)!fG&L2`17+lkH<$wzS*A@+gABQi>_Ii*{E;Edc`| zK9dE6Xoz8J6Yyd}LQK#o4#vcT2R(T*L9ad%FCaeS3}e%i%})M*JKsM$lbP|TsbsCw z>69FGj)~dDH2~Wd06Zdbm9#~RkEm%qp0?JlDr4|;T!Tz8Ks^XT)_QN*CAkHfO$)D> zIbJu?3GGx^Fa=xD<_8eqn;N7j_HK}C69SUP)bBB6JF)DMB`U=Sl%1${dE!1t% zI<(uP#xN@Js5<4moAAm=uvLK;bEm(|YYbsj?lm&B|B#3DSA`^*fK~?fiX)>KRfr?t zqoUqRMT-;?6=-9k+6R7+FgieEgd&$nklib_K|3RLerN&(qr)^tDGB%p;e!!ZvnWH9 zsiO_h0i75fqcKL6;-{*asSc(@3HqQPBOi?#Rb35KxfDh6%W#}2IRJxj7NanY7pRI$ zL{&&KbTZN22p1uPQItdu#wgJOgj7kPNU#ICnCb~~aG8T~j8v9gqwstqft9{i*#jq- zON2PM&cRKL23R&j-B^$~yBH3_NygGL2e&ww!$@b@JY`oyg5VP9kL=hG$q=G1S#*Q^ zZ7o}sDK(+N$Q!&a&}Su^HK%#S=u0Mg`CxpQoEJVBAMQQZU)cR^a+uIU;r)C5IQ{rH z0xJ1m=}+%pH(QkHh;CnL^K`yNv%5-XCO(Qe zQq73zI9Sa0uZ=!`Jf)@UoW|6KWz~DgElg-eJguoo-(WhW8g5lj#B|f~;^FwxzR&wN vpUme5-u1nHX<2l6rlYp;w)pgj(S2!ZF1+z+&zJm^5t*uuv?AIpvUPs}Kk#ER literal 0 HcmV?d00001 diff --git a/ocaml_yacc/parser.cmo b/ocaml_yacc/parser.cmo new file mode 100644 index 0000000000000000000000000000000000000000..55ec28e9e6dfecd8b5ada0fc5a7c531df574b5c3 GIT binary patch literal 5217 zcmds4dvH|M89(3d-hCulB%2swOiYDj^MJqtRmqHlHzq-r0Es4GtT36)14-N@n5+dP zt))_H+tJy8qF9{XmQH1=Z7GFmhp9Bv(#JGTajIiyTBr0MXF9D;Gb7CKhr0d!&fSZ< zcY=fdVQ2cC{m%Ee-|IZ?Id@wVqsf)c&CQ*$)iI?)@AoLBek)2ffHnfbYAggD2Hpr< z10)myYk)qWA9xFp;5?^qEzkoT1Tu#6EDSyh^a2NfS9>;}-(uMB1TueaJn9+eULYeE z>t1Q<{|+GQt_SAUW-4Ac1!DH-QBDa7+YK_ex!t!#m@3p529T$2t16IZOry#-OyxKFk-7=ZP0pE&zvzO`_CoN+p~^NrxdAUojcF7A|@_#IBxCdQD?o1b|oezhbFot^p0gsA6(I$8cYuN_w`XdJodm&%SxwDMt5nW z6Eh7qvwSou>YEbTFOg?we0UdZ{sq%iCZj~{C~7?fU#S`-StRN!q!pr$l2(a2MOrNC zBIyzlZ5|cT_6;Hjs9z>xk**N=1?ei0*HF}VO)Gt}rZzd0Ix*9DrK-K#rF@x`_n|18 z8!$~%JTW@9h^LpdO*}gAUE)C@cA&*gYxBbNOGTqpbRvw+-L1p?f$m$yGe>%#c#BB4 ziMO7#PrPlU{o>u`gsrPhCPw=Q6M3;8l&UeQI*8adcZ9LMPtf-v@tz<}iC5>^ExuC9 zkBD!X6Ej+y*tILUH!tLbR6i%xXAsinW*E|^NBa%&VcHL^8o9T#IK=}TfD zZPvRf&-)RnX_1--;catC?fo*n&WP~_=__JjH)g#X^St*-?SRxi32&Qwir)Tmdc7)s zUBh|tW9V7$6?xuM55+1&Hm>s97_SNs=A z=Oo}GeNO_F*(hldFJ2xIpY9Fa`*k1CeNguy-52P-Q1?Z;52MG>0@z%Kmg&_S?;q(K ze0Y}xu$}QzhGLnF;6urSKQCTFO@7*aJPGAHr@*qe5W=Ud|W z4YTxQLoytL3Ys72)f}n)gq+i;VaVu+cz!3I*TL3}iZ>x%Y-tJbEkKo9?E{F17hw^Q zm$Ct5oxFT)U}!gl^&#eH17LWV@-HY8uNW8aQSrVEHukU>N{od}Jg5`j>d|u$!ZBKi z<1~!p_c|P%^jouAj1n;xgKgd`#+Vpire88!a6s+J=q#Y*ihv_P$!afsIF(tM>DLl1 z*hVs;Ou4pJ>Y>b(ZuG4H_Gx9k&RzZlbC?^G?~e_Q;Qm^qa{kR`SVw_%)CLhivO|%g5Wz;T!Pyqh!;-+Q}$#rl2W)N;l=yJ z26}d@4hfD+@KNwRYLf(KCHOab;;q5@;?j{|fvUp7+=#_0QP*Qp1yTg95=-g>HGnl( zw21ngx*7kym*CE;Rduk8!m=#e>Om`kjnJ1tzYq(!FsI$5H9_uU}F@?-idEiik&o;0h!p0SSv!V;K4>%yK1=mWKGH zMg`$fAPuNJjGn&EvjC!a@T?Gh_=>g=+9GJN%$bk0L1+uKHk@Odug#B5{{mfWZoYgQ zO0;980d1Sf_%sb@eI^qS?yn&=AmQ~Az8Cxsm6GE9QmoI9qxMU2d)LM--D*>OGy0zR zruJ^t7T>BicD3BozFFO4la}u8_+6V-9KTIn8}C!=wrp-y?VTI-+dihgD8)ym_@_uP zF6yfixm_Y_xgy`!8S3JjdsMtl+wK;1Kq4&?*$U%5qP{MXQHhMx7?;DeAzzcwddoU^ z(2yr3^iNzj?hmGP%y{kWmXh8--SEe@b7z0})?mA3EpXc%f3+X8tR}}KK9*X&DjoZaCm>&_ zfAjKe+3b54;=Vhi+2A00XN_}swk zuO9!-i|Z_FO)I_$@JTQKhJDzKQ<+fDczUjlA7ye!Hu8G*+1D?c failwith "parser") +; (fun __caml_parser_env -> + let _1 = (Parsing.peek_val __caml_parser_env 1 : 'blocks) in + Obj.repr( +# 15 "parser.mly" + ( _1 ) +# 145 "parser.ml" + : Ast.ast)) +; (fun __caml_parser_env -> + let _1 = (Parsing.peek_val __caml_parser_env 0 : 'block) in + Obj.repr( +# 18 "parser.mly" + ( _1 ) +# 152 "parser.ml" + : 'blocks)) +; (fun __caml_parser_env -> + let _1 = (Parsing.peek_val __caml_parser_env 1 : 'blocks) in + let _2 = (Parsing.peek_val __caml_parser_env 0 : 'block) in + Obj.repr( +# 19 "parser.mly" + (match _1 with Ast.Node x -> Ast.Node (x @ [_2]) + | Ast.Int x -> Ast.Node[_1; _2] | Ast.Leaf x -> Ast.Node [_1; _2]) +# 161 "parser.ml" + : 'blocks)) +; (fun __caml_parser_env -> + let _1 = (Parsing.peek_val __caml_parser_env 0 : 'expr) in + Obj.repr( +# 24 "parser.mly" + (_1) +# 168 "parser.ml" + : 'block)) +; (fun __caml_parser_env -> + let _1 = (Parsing.peek_val __caml_parser_env 0 : 'let_bind) in + Obj.repr( +# 25 "parser.mly" + (_1) +# 175 "parser.ml" + : 'block)) +; (fun __caml_parser_env -> + let _1 = (Parsing.peek_val __caml_parser_env 5 : 'typ) in + let _2 = (Parsing.peek_val __caml_parser_env 4 : string) in + let _4 = (Parsing.peek_val __caml_parser_env 2 : 'expr) in + let _6 = (Parsing.peek_val __caml_parser_env 0 : 'block) in + Obj.repr( +# 29 "parser.mly" + (Ast.Node [Ast.Leaf "%let"; Ast.Node[_1; Ast.Leaf _2; _4]; _6]) +# 185 "parser.ml" + : 'let_bind)) +; (fun __caml_parser_env -> + let _1 = (Parsing.peek_val __caml_parser_env 0 : string) in + Obj.repr( +# 33 "parser.mly" + (Ast.Leaf _1) +# 192 "parser.ml" + : 'typ)) +; (fun __caml_parser_env -> + let _1 = (Parsing.peek_val __caml_parser_env 2 : 'typ) in + let _3 = (Parsing.peek_val __caml_parser_env 0 : 'typ) in + Obj.repr( +# 34 "parser.mly" + (Ast.Node [Ast.Leaf "->"; _1 ; _3]) +# 200 "parser.ml" + : 'typ)) +; (fun __caml_parser_env -> + let _1 = (Parsing.peek_val __caml_parser_env 0 : 'app_expr) in + Obj.repr( +# 37 "parser.mly" + (_1) +# 207 "parser.ml" + : 'expr)) +; (fun __caml_parser_env -> + let _1 = (Parsing.peek_val __caml_parser_env 0 : 'bin_expr) in + Obj.repr( +# 38 "parser.mly" + (_1) +# 214 "parser.ml" + : 'expr)) +; (fun __caml_parser_env -> + let _1 = (Parsing.peek_val __caml_parser_env 0 : 'lam_expr) in + Obj.repr( +# 39 "parser.mly" + (_1) +# 221 "parser.ml" + : 'expr)) +; (fun __caml_parser_env -> + let _1 = (Parsing.peek_val __caml_parser_env 2 : 'arg) in + let _3 = (Parsing.peek_val __caml_parser_env 0 : 'block) in + Obj.repr( +# 43 "parser.mly" + (Ast.Node [Ast.Leaf "%lambda"; _1 ; _3]) +# 229 "parser.ml" + : 'lam_expr)) +; (fun __caml_parser_env -> + let _1 = (Parsing.peek_val __caml_parser_env 1 : 'typ) in + let _2 = (Parsing.peek_val __caml_parser_env 0 : string) in + Obj.repr( +# 46 "parser.mly" + ( Ast.Node [_1;Ast.Leaf _2] ) +# 237 "parser.ml" + : 'arg)) +; (fun __caml_parser_env -> + let _1 = (Parsing.peek_val __caml_parser_env 1 : 'expr) in + let _2 = (Parsing.peek_val __caml_parser_env 0 : 'expr) in + Obj.repr( +# 50 "parser.mly" + ( Ast.Node [ Ast.Leaf "%apply"; _1; _2] ) +# 245 "parser.ml" + : 'app_expr)) +; (fun __caml_parser_env -> + let _1 = (Parsing.peek_val __caml_parser_env 0 : string) in + Obj.repr( +# 54 "parser.mly" + ( Ast.Int (int_of_string _1)) +# 252 "parser.ml" + : 'bin_expr)) +; (fun __caml_parser_env -> + let _1 = (Parsing.peek_val __caml_parser_env 0 : string) in + Obj.repr( +# 55 "parser.mly" + ( Ast.Leaf _1 ) +# 259 "parser.ml" + : 'bin_expr)) +; (fun __caml_parser_env -> + let _2 = (Parsing.peek_val __caml_parser_env 1 : 'expr) in + Obj.repr( +# 56 "parser.mly" + ( _2 ) +# 266 "parser.ml" + : 'bin_expr)) +; (fun __caml_parser_env -> + let _1 = (Parsing.peek_val __caml_parser_env 2 : 'expr) in + let _3 = (Parsing.peek_val __caml_parser_env 0 : 'expr) in + Obj.repr( +# 57 "parser.mly" + ( Ast.Node [ Ast.Leaf "+"; _1; _3] ) +# 274 "parser.ml" + : 'bin_expr)) +; (fun __caml_parser_env -> + let _1 = (Parsing.peek_val __caml_parser_env 2 : 'expr) in + let _3 = (Parsing.peek_val __caml_parser_env 0 : 'expr) in + Obj.repr( +# 58 "parser.mly" + ( Ast.Node[ Ast.Leaf "-"; _1 ; _3] ) +# 282 "parser.ml" + : 'bin_expr)) +; (fun __caml_parser_env -> + let _1 = (Parsing.peek_val __caml_parser_env 2 : 'expr) in + let _3 = (Parsing.peek_val __caml_parser_env 0 : 'expr) in + Obj.repr( +# 59 "parser.mly" + ( Ast.Node[ Ast.Leaf "*"; _1 ;_3] ) +# 290 "parser.ml" + : 'bin_expr)) +; (fun __caml_parser_env -> + let _1 = (Parsing.peek_val __caml_parser_env 2 : 'expr) in + let _3 = (Parsing.peek_val __caml_parser_env 0 : 'expr) in + Obj.repr( +# 60 "parser.mly" + ( Ast.Node[ Ast.Leaf "/"; _1; _3] ) +# 298 "parser.ml" + : 'bin_expr)) +; (fun __caml_parser_env -> + let _2 = (Parsing.peek_val __caml_parser_env 0 : 'expr) in + Obj.repr( +# 61 "parser.mly" + ( Ast.Node[ Ast.Leaf "-" ; _2] ) +# 305 "parser.ml" + : 'bin_expr)) +(* Entry main *) +; (fun __caml_parser_env -> raise (Parsing.YYexit (Parsing.peek_val __caml_parser_env 0))) +|] +let yytables = + { Parsing.actions=yyact; + Parsing.transl_const=yytransl_const; + Parsing.transl_block=yytransl_block; + Parsing.lhs=yylhs; + Parsing.len=yylen; + Parsing.defred=yydefred; + Parsing.dgoto=yydgoto; + Parsing.sindex=yysindex; + Parsing.rindex=yyrindex; + Parsing.gindex=yygindex; + Parsing.tablesize=yytablesize; + Parsing.table=yytable; + Parsing.check=yycheck; + Parsing.error_function=parse_error; + Parsing.names_const=yynames_const; + Parsing.names_block=yynames_block } +let main (lexfun : Lexing.lexbuf -> token) (lexbuf : Lexing.lexbuf) = + (Parsing.yyparse yytables 1 lexfun lexbuf : Ast.ast) diff --git a/ocaml_yacc/parser.mli b/ocaml_yacc/parser.mli new file mode 100644 index 0000000..2a8b331 --- /dev/null +++ b/ocaml_yacc/parser.mli @@ -0,0 +1,17 @@ +type token = + | INT of (string) + | ID of (string) + | PLUS + | MINUS + | TIMES + | DIV + | LPAREN + | RPAREN + | ASSIGN + | IN + | IMPLY + | FUNC + | EOL + +val main : + (Lexing.lexbuf -> token) -> Lexing.lexbuf -> Ast.ast diff --git a/ocaml_yacc/parser.mly b/ocaml_yacc/parser.mly new file mode 100644 index 0000000..225f3d9 --- /dev/null +++ b/ocaml_yacc/parser.mly @@ -0,0 +1,63 @@ +/* File parser.mly */ +%token INT +%token ID +%token PLUS MINUS TIMES DIV +%token LPAREN RPAREN ASSIGN IN IMPLY FUNC +%token EOL +%right IMPLY FUNC +%left PLUS MINUS/* lowest precedence */ +%left TIMES DIV /* medium precedence */ +%nonassoc UMINUS/* highest precedence */ +%start main /* the entry point */ +%type main +%% +main: + blocks EOL{ $1 } +; +blocks: +block{ $1 } +|blocks block{match $1 with Ast.Node x -> Ast.Node (x @ [$2]) + | Ast.Int x -> Ast.Node[$1; $2] | Ast.Leaf x -> Ast.Node [$1; $2]} /* It Must not be entered */ +; + +block: + expr {$1} +| let_bind {$1} +; + +let_bind: +| typ ID ASSIGN expr IN block {Ast.Node [Ast.Leaf "%let"; Ast.Node[$1; Ast.Leaf $2; $4]; $6]} +; + +typ: +| ID {Ast.Leaf $1} +| typ IMPLY typ {Ast.Node [Ast.Leaf "->"; $1 ; $3]} + +expr: + app_expr {$1} +| bin_expr {$1} +| lam_expr{$1} +; + +lam_expr: +arg FUNC block {Ast.Node [Ast.Leaf "%lambda"; $1 ; $3]} +; +arg: +typ ID { Ast.Node [$1;Ast.Leaf $2] } +; + +app_expr: + expr expr { Ast.Node [ Ast.Leaf "%apply"; $1; $2] } +; +; +bin_expr: + INT { Ast.Int (int_of_string $1)} + | ID { Ast.Leaf $1 } + | LPAREN expr RPAREN { $2 } + | expr PLUS expr { Ast.Node [ Ast.Leaf "+"; $1; $3] } + | expr MINUS expr { Ast.Node[ Ast.Leaf "-"; $1 ; $3] } + | expr TIMES expr { Ast.Node[ Ast.Leaf "*"; $1 ;$3] } + | expr DIV expr { Ast.Node[ Ast.Leaf "/"; $1; $3] } + | MINUS expr %prec UMINUS { Ast.Node[ Ast.Leaf "-" ; $2] } +; + diff --git a/package-lock.json b/package-lock.json deleted file mode 100644 index 0a50d8e..0000000 --- a/package-lock.json +++ /dev/null @@ -1,11481 +0,0 @@ -{ - "name": "clo", - "version": "0.0.1", - "lockfileVersion": 2, - "requires": true, - "packages": { - "": { - "name": "clo", - "version": "0.0.1", - "license": "MIT", - "dependencies": { - "@pdf-lib/fontkit": "^1.1.1", - "harfbuzzjs": "^0.3.3", - "npx": "^3.0.0", - "pdf-lib": "^1.17.1" - }, - "devDependencies": { - "@types/chai": "^4.3.5", - "@types/mocha": "^10.0.1", - "@types/node": "^20.5.7", - "@typescript-eslint/eslint-plugin": "^6.5.0", - "chai": "^4.3.8", - "eslint": "^8.48.0", - "eslint-config-standard-with-typescript": "^39.0.0", - "eslint-plugin-import": "^2.28.1", - "eslint-plugin-n": "^16.0.2", - "eslint-plugin-promise": "^6.1.1", - "mocha": "^10.2.0", - "nyc": "^15.1.0", - "ts-node": "^10.9.1", - "tslint": "^6.1.3", - "typescript": "^5.2.2" - } - }, - "node_modules/@aashutoshrathi/word-wrap": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", - "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@ampproject/remapping": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", - "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", - "dev": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/code-frame": { - "version": "7.22.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", - "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.22.13", - "chalk": "^2.4.2" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/compat-data": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz", - "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.11.tgz", - "integrity": "sha512-lh7RJrtPdhibbxndr6/xx0w8+CVlY5FJZiaSz908Fpy+G0xkBFTvwLcKJFF4PJxVfGhVWNebikpWGnOoC71juQ==", - "dev": true, - "dependencies": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.22.10", - "@babel/generator": "^7.22.10", - "@babel/helper-compilation-targets": "^7.22.10", - "@babel/helper-module-transforms": "^7.22.9", - "@babel/helpers": "^7.22.11", - "@babel/parser": "^7.22.11", - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.11", - "@babel/types": "^7.22.11", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.3", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@babel/core/node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "dev": true, - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@babel/core/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/generator": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.10.tgz", - "integrity": "sha512-79KIf7YiWjjdZ81JnLujDRApWtl7BxTqWD88+FFdQEIOG8LJ0etDOM7CXuIgGJa55sGOwZVwuEsaLEm0PJ5/+A==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.10", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.10.tgz", - "integrity": "sha512-JMSwHD4J7SLod0idLq5PKgI+6g/hLD/iuWBq08ZX49xE14VpVEojJ5rHWptpirV2j020MvypRLAXAO50igCJ5Q==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.22.9", - "@babel/helper-validator-option": "^7.22.5", - "browserslist": "^4.21.9", - "lru-cache": "^5.1.1", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-compilation-targets/node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "dependencies": { - "yallist": "^3.0.2" - } - }, - "node_modules/@babel/helper-compilation-targets/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-compilation-targets/node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", - "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz", - "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==", - "dev": true, - "dependencies": { - "@babel/template": "^7.22.5", - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", - "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-imports": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz", - "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz", - "integrity": "sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-module-imports": "^7.22.5", - "@babel/helper-simple-access": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/helper-validator-identifier": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-simple-access": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", - "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", - "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-string-parser": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", - "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", - "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-option": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz", - "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.11.tgz", - "integrity": "sha512-vyOXC8PBWaGc5h7GMsNx68OH33cypkEDJCHvYVVgVbbxJDROYVtexSk0gK5iCF1xNjRIN2s8ai7hwkWDq5szWg==", - "dev": true, - "dependencies": { - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.11", - "@babel/types": "^7.22.11" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.22.13", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.13.tgz", - "integrity": "sha512-C/BaXcnnvBCmHTpz/VGZ8jgtE2aYlW4hxDhseJAWZb7gqGM/qtCK6iZUb0TyKFf7BOUsBH7Q7fkRsDRhg1XklQ==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.22.5", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/parser": { - "version": "7.22.14", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.14.tgz", - "integrity": "sha512-1KucTHgOvaw/LzCVrEOAyXkr9rQlp0A1HiHRYnSUE9dmb8PvPW7o5sscg+5169r54n3vGlbx6GevTE/Iw/P3AQ==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/template": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", - "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.22.5", - "@babel/parser": "^7.22.5", - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.11.tgz", - "integrity": "sha512-mzAenteTfomcB7mfPtyi+4oe5BZ6MXxWcn4CX+h4IRJ+OOGXBrWU6jDQavkQI9Vuc5P+donFabBfFCcmWka9lQ==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.22.10", - "@babel/generator": "^7.22.10", - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-function-name": "^7.22.5", - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.22.11", - "@babel/types": "^7.22.11", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse/node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/types": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.11.tgz", - "integrity": "sha512-siazHiGuZRz9aB9NpHy9GOs9xiQPKnMzgdr493iI1M67vRXpnEq8ZOOKzezC5q7zwuQ6sDhdSp4SD9ixKSqKZg==", - "dev": true, - "dependencies": { - "@babel/helper-string-parser": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.5", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", - "dev": true, - "dependencies": { - "@jridgewell/trace-mapping": "0.3.9" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "node_modules/@eslint-community/eslint-utils": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", - "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", - "dev": true, - "dependencies": { - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" - } - }, - "node_modules/@eslint-community/regexpp": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.8.0.tgz", - "integrity": "sha512-JylOEEzDiOryeUnFbQz+oViCXS0KsvR1mvHkoMiu5+UiBvy+RYX7tzlIIIEstF/gVa2tj9AQXk3dgnxv6KxhFg==", - "dev": true, - "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" - } - }, - "node_modules/@eslint/eslintrc": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", - "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", - "dev": true, - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.6.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint/eslintrc/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "node_modules/@eslint/eslintrc/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/@eslint/js": { - "version": "8.48.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.48.0.tgz", - "integrity": "sha512-ZSjtmelB7IJfWD2Fvb7+Z+ChTIKWq6kjda95fLcQKNS5aheVHn4IkfgRQE3sIIzTcSLwLcLZUD9UBt+V7+h+Pw==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.11.11", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz", - "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==", - "dev": true, - "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", - "minimatch": "^3.0.5" - }, - "engines": { - "node": ">=10.10.0" - } - }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "dev": true, - "engines": { - "node": ">=12.22" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", - "dev": true - }, - "node_modules/@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", - "dev": true, - "dependencies": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", - "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", - "dev": true - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.19", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz", - "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@pdf-lib/fontkit": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@pdf-lib/fontkit/-/fontkit-1.1.1.tgz", - "integrity": "sha512-KjMd7grNapIWS/Dm0gvfHEilSyAmeLvrEGVcqLGi0VYebuqqzTbgF29efCx7tvx+IEbG3zQciRSWl3GkUSvjZg==", - "dependencies": { - "pako": "^1.0.6" - } - }, - "node_modules/@pdf-lib/standard-fonts": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@pdf-lib/standard-fonts/-/standard-fonts-1.0.0.tgz", - "integrity": "sha512-hU30BK9IUN/su0Mn9VdlVKsWBS6GyhVfqjwl1FjZN4TxP6cCw0jP2w7V3Hf5uX7M0AZJ16vey9yE0ny7Sa59ZA==", - "dependencies": { - "pako": "^1.0.6" - } - }, - "node_modules/@pdf-lib/upng": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@pdf-lib/upng/-/upng-1.0.1.tgz", - "integrity": "sha512-dQK2FUMQtowVP00mtIksrlZhdFXQZPC+taih1q4CvPZ5vqdxR/LKBaFg0oAfzd1GlHZXXSPdQfzQnt+ViGvEIQ==", - "dependencies": { - "pako": "^1.0.10" - } - }, - "node_modules/@tsconfig/node10": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", - "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", - "dev": true - }, - "node_modules/@tsconfig/node12": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", - "dev": true - }, - "node_modules/@tsconfig/node14": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", - "dev": true - }, - "node_modules/@tsconfig/node16": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", - "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", - "dev": true - }, - "node_modules/@types/chai": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.5.tgz", - "integrity": "sha512-mEo1sAde+UCE6b2hxn332f1g1E8WfYRu6p5SvTKr2ZKC1f7gFJXk4h5PyGP9Dt6gCaG8y8XhwnXWC6Iy2cmBng==", - "dev": true - }, - "node_modules/@types/json-schema": { - "version": "7.0.12", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.12.tgz", - "integrity": "sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==", - "dev": true - }, - "node_modules/@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", - "dev": true - }, - "node_modules/@types/mocha": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.1.tgz", - "integrity": "sha512-/fvYntiO1GeICvqbQ3doGDIP97vWmvFt83GKguJ6prmQM2iXZfFcq6YE8KteFyRtX2/h5Hf91BYvPodJKFYv5Q==", - "dev": true - }, - "node_modules/@types/node": { - "version": "20.5.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.5.7.tgz", - "integrity": "sha512-dP7f3LdZIysZnmvP3ANJYTSwg+wLLl8p7RqniVlV7j+oXSXAbt9h0WIBFmJy5inWZoX9wZN6eXx+YXd9Rh3RBA==", - "dev": true - }, - "node_modules/@types/semver": { - "version": "7.5.1", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.1.tgz", - "integrity": "sha512-cJRQXpObxfNKkFAZbJl2yjWtJCqELQIdShsogr1d2MilP8dKD9TE/nEKHkJgUNHdGKCQaf9HbIynuV2csLGVLg==", - "dev": true - }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.5.0.tgz", - "integrity": "sha512-2pktILyjvMaScU6iK3925uvGU87E+N9rh372uGZgiMYwafaw9SXq86U04XPq3UH6tzRvNgBsub6x2DacHc33lw==", - "dev": true, - "dependencies": { - "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.5.0", - "@typescript-eslint/type-utils": "6.5.0", - "@typescript-eslint/utils": "6.5.0", - "@typescript-eslint/visitor-keys": "6.5.0", - "debug": "^4.3.4", - "graphemer": "^1.4.0", - "ignore": "^5.2.4", - "natural-compare": "^1.4.0", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/parser": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.5.0.tgz", - "integrity": "sha512-LMAVtR5GN8nY0G0BadkG0XIe4AcNMeyEy3DyhKGAh9k4pLSMBO7rF29JvDBpZGCmp5Pgz5RLHP6eCpSYZJQDuQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/scope-manager": "6.5.0", - "@typescript-eslint/types": "6.5.0", - "@typescript-eslint/typescript-estree": "6.5.0", - "@typescript-eslint/visitor-keys": "6.5.0", - "debug": "^4.3.4" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.5.0.tgz", - "integrity": "sha512-A8hZ7OlxURricpycp5kdPTH3XnjG85UpJS6Fn4VzeoH4T388gQJ/PGP4ole5NfKt4WDVhmLaQ/dBLNDC4Xl/Kw==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "6.5.0", - "@typescript-eslint/visitor-keys": "6.5.0" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/type-utils": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.5.0.tgz", - "integrity": "sha512-f7OcZOkRivtujIBQ4yrJNIuwyCQO1OjocVqntl9dgSIZAdKqicj3xFDqDOzHDlGCZX990LqhLQXWRnQvsapq8A==", - "dev": true, - "dependencies": { - "@typescript-eslint/typescript-estree": "6.5.0", - "@typescript-eslint/utils": "6.5.0", - "debug": "^4.3.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/types": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.5.0.tgz", - "integrity": "sha512-eqLLOEF5/lU8jW3Bw+8auf4lZSbbljHR2saKnYqON12G/WsJrGeeDHWuQePoEf9ro22+JkbPfWQwKEC5WwLQ3w==", - "dev": true, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.5.0.tgz", - "integrity": "sha512-q0rGwSe9e5Kk/XzliB9h2LBc9tmXX25G0833r7kffbl5437FPWb2tbpIV9wAATebC/018pGa9fwPDuvGN+LxWQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "6.5.0", - "@typescript-eslint/visitor-keys": "6.5.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/utils": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.5.0.tgz", - "integrity": "sha512-9nqtjkNykFzeVtt9Pj6lyR9WEdd8npPhhIPM992FWVkZuS6tmxHfGVnlUcjpUP2hv8r4w35nT33mlxd+Be1ACQ==", - "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "@types/json-schema": "^7.0.12", - "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.5.0", - "@typescript-eslint/types": "6.5.0", - "@typescript-eslint/typescript-estree": "6.5.0", - "semver": "^7.5.4" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - } - }, - "node_modules/@typescript-eslint/utils/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.5.0.tgz", - "integrity": "sha512-yCB/2wkbv3hPsh02ZS8dFQnij9VVQXJMN/gbQsaaY+zxALkZnxa/wagvLEFsAWMPv7d7lxQmNsIzGU1w/T/WyA==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "6.5.0", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/acorn": { - "version": "8.10.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", - "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/append-transform": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-2.0.0.tgz", - "integrity": "sha512-7yeyCEurROLQJFv5Xj4lEGTy0borxepjFv1g22oAdqFu//SrAlDl1O1Nxx15SH1RoliUml6p8dwJW9jvZughhg==", - "dev": true, - "dependencies": { - "default-require-extensions": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/archy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", - "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", - "dev": true - }, - "node_modules/arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - "dev": true - }, - "node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/array-buffer-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", - "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "is-array-buffer": "^3.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array-includes": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz", - "integrity": "sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "get-intrinsic": "^1.1.3", - "is-string": "^1.0.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/array.prototype.findlastindex": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz", - "integrity": "sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0", - "get-intrinsic": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flat": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz", - "integrity": "sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-shim-unscopables": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flatmap": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz", - "integrity": "sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-shim-unscopables": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.1.tgz", - "integrity": "sha512-09x0ZWFEjj4WD8PDbykUwo3t9arLn8NIzmmYEJFpYekOAQjpkGSyrQhNoRTcwwcFRu+ycWF78QZ63oWTqSjBcw==", - "dev": true, - "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "get-intrinsic": "^1.2.1", - "is-array-buffer": "^3.0.2", - "is-shared-array-buffer": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browser-stdout": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", - "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", - "dev": true - }, - "node_modules/browserslist": { - "version": "4.21.10", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz", - "integrity": "sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "caniuse-lite": "^1.0.30001517", - "electron-to-chromium": "^1.4.477", - "node-releases": "^2.0.13", - "update-browserslist-db": "^1.0.11" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha512-wxXCdllwGhI2kCC0MnvTGYTMvnVZTvqgypkiTI8Pa5tcz2i6VqsqwYGgqwXji+4RgCzms6EajE4IxiUH6HH8nQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/builtins": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", - "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", - "dev": true, - "dependencies": { - "semver": "^7.0.0" - } - }, - "node_modules/builtins/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/caching-transform": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-4.0.0.tgz", - "integrity": "sha512-kpqOvwXnjjN44D89K5ccQC+RUrsy7jB/XLlRrx0D7/2HNcTPqzsb6XgYoErwko6QsV184CA2YgS1fxDiiDZMWA==", - "dev": true, - "dependencies": { - "hasha": "^5.0.0", - "make-dir": "^3.0.0", - "package-hash": "^4.0.0", - "write-file-atomic": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001525", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001525.tgz", - "integrity": "sha512-/3z+wB4icFt3r0USMwxujAqRvaD/B7rvGTsKhbhSQErVrJvkZCLhgNLJxU8MevahQVH6hCU9FsHdNUFbiwmE7Q==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ] - }, - "node_modules/chai": { - "version": "4.3.8", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.8.tgz", - "integrity": "sha512-vX4YvVVtxlfSZ2VecZgFUTU5qPCYsobVI2O9FmwEXBhDigYGQA6jRXCycIs1yJnnWbZ6/+a2zNIF5DfVCcJBFQ==", - "dev": true, - "dependencies": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.2", - "deep-eql": "^4.1.2", - "get-func-name": "^2.0.0", - "loupe": "^2.3.1", - "pathval": "^1.1.1", - "type-detect": "^4.0.5" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/check-error": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", - "integrity": "sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/chokidar/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "node_modules/commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", - "dev": true - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" - }, - "node_modules/convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", - "dev": true - }, - "node_modules/create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "dev": true - }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/deep-eql": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.3.tgz", - "integrity": "sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==", - "dev": true, - "dependencies": { - "type-detect": "^4.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true - }, - "node_modules/default-require-extensions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-3.0.1.tgz", - "integrity": "sha512-eXTJmRbm2TIt9MgWTsOH1wEuhew6XGZcMeGKCtLedIg/NCsg1iBePXkceTdK4Fii7pzmN9tGsZhKzZ4h7O/fxw==", - "dev": true, - "dependencies": { - "strip-bom": "^4.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-require-extensions/node_modules/strip-bom": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/define-properties": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", - "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", - "dev": true, - "dependencies": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "dev": true, - "engines": { - "node": ">=0.3.1" - } - }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/electron-to-chromium": { - "version": "1.4.506", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.506.tgz", - "integrity": "sha512-xxGct4GPAKSRlrLBtJxJFYy74W11zX6PO9GyHgl/U+2s3Dp0ZEwAklDfNHXOWcvH7zWMpsmgbR0ggEuaYAVvHA==", - "dev": true - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/es-abstract": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.1.tgz", - "integrity": "sha512-ioRRcXMO6OFyRpyzV3kE1IIBd4WG5/kltnzdxSCqoP8CMGs/Li+M1uF5o7lOkZVFjDs+NLesthnF66Pg/0q0Lw==", - "dev": true, - "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "arraybuffer.prototype.slice": "^1.0.1", - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-set-tostringtag": "^2.0.1", - "es-to-primitive": "^1.2.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.2.1", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.5", - "is-array-buffer": "^3.0.2", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.10", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.3", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.0", - "safe-array-concat": "^1.0.0", - "safe-regex-test": "^1.0.0", - "string.prototype.trim": "^1.2.7", - "string.prototype.trimend": "^1.0.6", - "string.prototype.trimstart": "^1.0.6", - "typed-array-buffer": "^1.0.0", - "typed-array-byte-length": "^1.0.0", - "typed-array-byte-offset": "^1.0.0", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.10" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-set-tostringtag": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", - "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-shim-unscopables": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", - "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", - "dev": true, - "dependencies": { - "has": "^1.0.3" - } - }, - "node_modules/es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dev": true, - "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es6-error": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", - "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", - "dev": true - }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/eslint": { - "version": "8.48.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.48.0.tgz", - "integrity": "sha512-sb6DLeIuRXxeM1YljSe1KEx9/YYeZFQWcV8Rq9HfigmdDEugjLEVEa1ozDjL6YDjBpQHPJxJzze+alxi4T3OLg==", - "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.2", - "@eslint/js": "8.48.0", - "@humanwhocodes/config-array": "^0.11.10", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.3", - "espree": "^9.6.1", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-config-standard": { - "version": "17.1.0", - "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-17.1.0.tgz", - "integrity": "sha512-IwHwmaBNtDK4zDHQukFDW5u/aTb8+meQWZvNFWkiGmbWjD6bqyuSSBxxXKkCftCUzc1zwCH2m/baCNDLGmuO5Q==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "eslint": "^8.0.1", - "eslint-plugin-import": "^2.25.2", - "eslint-plugin-n": "^15.0.0 || ^16.0.0 ", - "eslint-plugin-promise": "^6.0.0" - } - }, - "node_modules/eslint-config-standard-with-typescript": { - "version": "39.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-standard-with-typescript/-/eslint-config-standard-with-typescript-39.0.0.tgz", - "integrity": "sha512-CiV2LS4NUeeRmDTDf1ocUMpMxitSyW0g+Y/N7ecElwGj188GahbcQgqfBNyVsIXQxHlZVBlOjkbg3oUI0R3KBg==", - "dev": true, - "dependencies": { - "@typescript-eslint/parser": "^6.4.0", - "eslint-config-standard": "17.1.0" - }, - "peerDependencies": { - "@typescript-eslint/eslint-plugin": "^6.4.0", - "eslint": "^8.0.1", - "eslint-plugin-import": "^2.25.2", - "eslint-plugin-n": "^15.0.0 || ^16.0.0 ", - "eslint-plugin-promise": "^6.0.0", - "typescript": "*" - } - }, - "node_modules/eslint-import-resolver-node": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", - "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", - "dev": true, - "dependencies": { - "debug": "^3.2.7", - "is-core-module": "^2.13.0", - "resolve": "^1.22.4" - } - }, - "node_modules/eslint-import-resolver-node/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-module-utils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz", - "integrity": "sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==", - "dev": true, - "dependencies": { - "debug": "^3.2.7" - }, - "engines": { - "node": ">=4" - }, - "peerDependenciesMeta": { - "eslint": { - "optional": true - } - } - }, - "node_modules/eslint-module-utils/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-plugin-es-x": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-es-x/-/eslint-plugin-es-x-7.2.0.tgz", - "integrity": "sha512-9dvv5CcvNjSJPqnS5uZkqb3xmbeqRLnvXKK7iI5+oK/yTusyc46zbBZKENGsOfojm/mKfszyZb+wNqNPAPeGXA==", - "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.1.2", - "@eslint-community/regexpp": "^4.6.0" - }, - "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ota-meshi" - }, - "peerDependencies": { - "eslint": ">=8" - } - }, - "node_modules/eslint-plugin-import": { - "version": "2.28.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.1.tgz", - "integrity": "sha512-9I9hFlITvOV55alzoKBI+K9q74kv0iKMeY6av5+umsNwayt59fz692daGyjR+oStBQgx6nwR9rXldDev3Clw+A==", - "dev": true, - "dependencies": { - "array-includes": "^3.1.6", - "array.prototype.findlastindex": "^1.2.2", - "array.prototype.flat": "^1.3.1", - "array.prototype.flatmap": "^1.3.1", - "debug": "^3.2.7", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.8.0", - "has": "^1.0.3", - "is-core-module": "^2.13.0", - "is-glob": "^4.0.3", - "minimatch": "^3.1.2", - "object.fromentries": "^2.0.6", - "object.groupby": "^1.0.0", - "object.values": "^1.1.6", - "semver": "^6.3.1", - "tsconfig-paths": "^3.14.2" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" - } - }, - "node_modules/eslint-plugin-import/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-plugin-import/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint-plugin-import/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/eslint-plugin-n": { - "version": "16.0.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-16.0.2.tgz", - "integrity": "sha512-Y66uDfUNbBzypsr0kELWrIz+5skicECrLUqlWuXawNSLUq3ltGlCwu6phboYYOTSnoTdHgTLrc+5Ydo6KjzZog==", - "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "builtins": "^5.0.1", - "eslint-plugin-es-x": "^7.1.0", - "ignore": "^5.2.4", - "is-core-module": "^2.12.1", - "minimatch": "^3.1.2", - "resolve": "^1.22.2", - "semver": "^7.5.3" - }, - "engines": { - "node": ">=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=7.0.0" - } - }, - "node_modules/eslint-plugin-n/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/eslint-plugin-promise": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-6.1.1.tgz", - "integrity": "sha512-tjqWDwVZQo7UIPMeDReOpUgHCmCiH+ePnVT+5zVapL0uuHnegBUs2smM13CzOs2Xb5+MHMRFTs9v24yjba4Oig==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - } - }, - "node_modules/eslint-scope": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", - "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", - "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/eslint/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "node_modules/eslint/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/eslint/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/eslint/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/eslint/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/eslint/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/espree": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", - "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", - "dev": true, - "dependencies": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", - "dev": true, - "dependencies": { - "estraverse": "^5.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "node_modules/fast-glob": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", - "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fast-glob/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true - }, - "node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", - "dev": true, - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, - "dependencies": { - "flat-cache": "^3.0.4" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", - "dev": true, - "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/avajs/find-cache-dir?sponsor=1" - } - }, - "node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/flat": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", - "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", - "dev": true, - "bin": { - "flat": "cli.js" - } - }, - "node_modules/flat-cache": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.1.0.tgz", - "integrity": "sha512-OHx4Qwrrt0E4jEIcI5/Xb+f+QmJYNj2rrK8wiIdQOIrB9WrrJL8cjZvXdXuBTkkEwEqLycb5BeZDV1o2i9bTew==", - "dev": true, - "dependencies": { - "flatted": "^3.2.7", - "keyv": "^4.5.3", - "rimraf": "^3.0.2" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", - "dev": true - }, - "node_modules/for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "dev": true, - "dependencies": { - "is-callable": "^1.1.3" - } - }, - "node_modules/foreground-child": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", - "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/fromentries": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz", - "integrity": "sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" - }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "node_modules/function.prototype.name": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", - "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "functions-have-names": "^1.2.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/get-func-name": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", - "integrity": "sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/get-intrinsic": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz", - "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "dev": true, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/globals": { - "version": "13.21.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", - "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", - "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, - "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true - }, - "node_modules/graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "dev": true - }, - "node_modules/harfbuzzjs": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/harfbuzzjs/-/harfbuzzjs-0.3.3.tgz", - "integrity": "sha512-48C/LOUweD//LTqaQAS9VMOBNPh7DhyJEmdzh5/1GgjNA8kGZMVZKTzkvarBDtiKKaKG5whx7qXU8OeSNLmWcA==" - }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", - "dev": true, - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/hasha": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz", - "integrity": "sha512-Hrp5vIK/xr5SkeN2onO32H0MgNZ0f17HRNH39WfL0SYUNOTZ5Lz1TJ8Pajo/87dYGEFlLMm7mIc/k/s6Bvz9HQ==", - "dev": true, - "dependencies": { - "is-stream": "^2.0.0", - "type-fest": "^0.8.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/hasha/node_modules/type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "dev": true, - "bin": { - "he": "bin/he" - } - }, - "node_modules/html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "node_modules/ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true, - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "node_modules/internal-slot": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", - "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.2.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/is-array-buffer": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", - "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", - "dev": true, - "dependencies": { - "has-bigints": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-core-module": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", - "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", - "dev": true, - "dependencies": { - "has": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", - "dev": true, - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-typed-array": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz", - "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==", - "dev": true, - "dependencies": { - "which-typed-array": "^1.1.11" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", - "dev": true - }, - "node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "node_modules/istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-hook": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-3.0.0.tgz", - "integrity": "sha512-Pt/uge1Q9s+5VAZ+pCo16TYMWPBIl+oaNIjgLQxcX0itS6ueeaA+pEfThZpH8WxhFgCiEb8sAJY6MdUKgiIWaQ==", - "dev": true, - "dependencies": { - "append-transform": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", - "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", - "dev": true, - "dependencies": { - "@babel/core": "^7.7.5", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.0.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/istanbul-lib-processinfo": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-processinfo/-/istanbul-lib-processinfo-2.0.3.tgz", - "integrity": "sha512-NkwHbo3E00oybX6NGJi6ar0B29vxyvNwoC7eJ4G4Yq28UfY758Hgn/heV8VRFhevPED4LXfFz0DQ8z/0kw9zMg==", - "dev": true, - "dependencies": { - "archy": "^1.0.0", - "cross-spawn": "^7.0.3", - "istanbul-lib-coverage": "^3.2.0", - "p-map": "^3.0.0", - "rimraf": "^3.0.0", - "uuid": "^8.3.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-report": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", - "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", - "dev": true, - "dependencies": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^4.0.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-report/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-report/node_modules/make-dir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", - "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", - "dev": true, - "dependencies": { - "semver": "^7.5.3" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/istanbul-lib-report/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-report/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-source-maps": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", - "dev": true, - "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-reports": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", - "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", - "dev": true, - "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "dev": true - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true - }, - "node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/keyv": { - "version": "4.5.3", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.3.tgz", - "integrity": "sha512-QCiSav9WaX1PgETJ+SpNnx2PRRapJ/oRSXM4VO5OGYGSjrxbKPVFVhB3l2OCbLCk329N8qyAtsJjSjvVBWzEug==", - "dev": true, - "dependencies": { - "json-buffer": "3.0.1" - } - }, - "node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lodash.flattendeep": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", - "integrity": "sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==", - "dev": true - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, - "node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/log-symbols/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/log-symbols/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/log-symbols/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/log-symbols/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/log-symbols/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/log-symbols/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/loupe": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.6.tgz", - "integrity": "sha512-RaPMZKiMy8/JruncMU5Bt6na1eftNoo++R4Y+N2FrxkDVTrGvcyzFTsaGif4QTeKESheMGegbhw6iUAq+5A8zA==", - "dev": true, - "dependencies": { - "get-func-name": "^2.0.0" - } - }, - "node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/make-dir/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/mocha": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz", - "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==", - "dev": true, - "dependencies": { - "ansi-colors": "4.1.1", - "browser-stdout": "1.3.1", - "chokidar": "3.5.3", - "debug": "4.3.4", - "diff": "5.0.0", - "escape-string-regexp": "4.0.0", - "find-up": "5.0.0", - "glob": "7.2.0", - "he": "1.2.0", - "js-yaml": "4.1.0", - "log-symbols": "4.1.0", - "minimatch": "5.0.1", - "ms": "2.1.3", - "nanoid": "3.3.3", - "serialize-javascript": "6.0.0", - "strip-json-comments": "3.1.1", - "supports-color": "8.1.1", - "workerpool": "6.2.1", - "yargs": "16.2.0", - "yargs-parser": "20.2.4", - "yargs-unparser": "2.0.0" - }, - "bin": { - "_mocha": "bin/_mocha", - "mocha": "bin/mocha.js" - }, - "engines": { - "node": ">= 14.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mochajs" - } - }, - "node_modules/mocha/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "node_modules/mocha/node_modules/diff": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", - "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", - "dev": true, - "engines": { - "node": ">=0.3.1" - } - }, - "node_modules/mocha/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/mocha/node_modules/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/mocha/node_modules/glob/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/mocha/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/mocha/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/mocha/node_modules/minimatch": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz", - "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/mocha/node_modules/minimatch/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/mocha/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, - "node_modules/mocha/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/nanoid": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz", - "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==", - "dev": true, - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true - }, - "node_modules/node-preload": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", - "integrity": "sha512-RM5oyBy45cLEoHqCeh+MNuFAxO0vTFBLskvQbOKnEE7YTTSN4tbN8QWDIPQ6L+WvKsB/qLEGpYe2ZZ9d4W9OIQ==", - "dev": true, - "dependencies": { - "process-on-spawn": "^1.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/node-releases": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", - "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", - "dev": true - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/npx/-/npx-3.0.0.tgz", - "integrity": "sha512-4KNE+u9lp5+iDDRkv3GuxHJjQGV+AZs6vqB9HNbxmPRmJLAZRxdLVeka8zp4pQh6FEvp8B0JYrKIx+Ibd5krog==", - "bundleDependencies": [ - "bluebird", - "npm-package-arg", - "update-notifier", - "which", - "yargs" - ], - "dependencies": { - "bluebird": "^3.5.0", - "npm-package-arg": "^5.0.1", - "rimraf": "^2.6.1", - "update-notifier": "^2.1.0", - "which": "^1.2.14", - "yargs": "^8.0.1" - }, - "bin": { - "npx": "index.js" - } - }, - "node_modules/npx/node_modules/ansi-align": { - "version": "2.0.0", - "inBundle": true, - "license": "ISC", - "dependencies": { - "string-width": "^2.0.0" - } - }, - "node_modules/npx/node_modules/ansi-regex": { - "version": "2.1.1", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/ansi-styles": { - "version": "2.2.1", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/bluebird": { - "version": "3.5.0", - "inBundle": true, - "license": "MIT" - }, - "node_modules/npx/node_modules/boxen": { - "version": "1.1.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "ansi-align": "^2.0.0", - "camelcase": "^4.0.0", - "chalk": "^1.1.1", - "cli-boxes": "^1.0.0", - "string-width": "^2.0.0", - "term-size": "^0.1.0", - "widest-line": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/builtin-modules": { - "version": "1.1.1", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/builtins": { - "version": "1.0.3", - "inBundle": true, - "license": "MIT" - }, - "node_modules/npx/node_modules/camelcase": { - "version": "4.1.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/capture-stack-trace": { - "version": "1.0.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/chalk": { - "version": "1.1.3", - "inBundle": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/cli-boxes": { - "version": "1.0.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/cliui": { - "version": "3.2.0", - "inBundle": true, - "license": "ISC", - "dependencies": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wrap-ansi": "^2.0.0" - } - }, - "node_modules/npx/node_modules/cliui/node_modules/string-width": { - "version": "1.0.2", - "inBundle": true, - "license": "MIT", - "dependencies": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/code-point-at": { - "version": "1.1.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/configstore": { - "version": "3.1.0", - "inBundle": true, - "license": "BSD-2-Clause", - "dependencies": { - "dot-prop": "^4.1.0", - "graceful-fs": "^4.1.2", - "make-dir": "^1.0.0", - "unique-string": "^1.0.0", - "write-file-atomic": "^2.0.0", - "xdg-basedir": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/configstore/node_modules/dot-prop": { - "version": "4.1.1", - "inBundle": true, - "license": "MIT", - "dependencies": { - "is-obj": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/create-error-class": { - "version": "3.0.2", - "inBundle": true, - "license": "MIT", - "dependencies": { - "capture-stack-trace": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/cross-spawn": { - "version": "4.0.2", - "inBundle": true, - "license": "MIT", - "dependencies": { - "lru-cache": "^4.0.1", - "which": "^1.2.9" - } - }, - "node_modules/npx/node_modules/cross-spawn-async": { - "version": "2.2.5", - "inBundle": true, - "license": "MIT", - "dependencies": { - "lru-cache": "^4.0.0", - "which": "^1.2.8" - } - }, - "node_modules/npx/node_modules/crypto-random-string": { - "version": "1.0.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/decamelize": { - "version": "1.2.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/deep-extend": { - "version": "0.4.2", - "inBundle": true, - "license": "MIT", - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.12.0" - } - }, - "node_modules/npx/node_modules/duplexer3": { - "version": "0.1.4", - "inBundle": true, - "license": "BSD-3-Clause" - }, - "node_modules/npx/node_modules/error-ex": { - "version": "1.3.1", - "inBundle": true, - "license": "MIT", - "dependencies": { - "is-arrayish": "^0.2.1" - } - }, - "node_modules/npx/node_modules/escape-string-regexp": { - "version": "1.0.5", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/npx/node_modules/execa": { - "version": "0.5.1", - "inBundle": true, - "license": "MIT", - "dependencies": { - "cross-spawn": "^4.0.0", - "get-stream": "^2.2.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/find-up": { - "version": "2.1.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "locate-path": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/get-caller-file": { - "version": "1.0.2", - "inBundle": true, - "license": "ISC" - }, - "node_modules/npx/node_modules/get-stream": { - "version": "2.3.1", - "inBundle": true, - "license": "MIT", - "dependencies": { - "object-assign": "^4.0.1", - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/got": { - "version": "6.7.1", - "inBundle": true, - "license": "MIT", - "dependencies": { - "create-error-class": "^3.0.0", - "duplexer3": "^0.1.4", - "get-stream": "^3.0.0", - "is-redirect": "^1.0.0", - "is-retry-allowed": "^1.0.0", - "is-stream": "^1.0.0", - "lowercase-keys": "^1.0.0", - "safe-buffer": "^5.0.1", - "timed-out": "^4.0.0", - "unzip-response": "^2.0.1", - "url-parse-lax": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/got/node_modules/get-stream": { - "version": "3.0.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/graceful-fs": { - "version": "4.1.11", - "inBundle": true, - "license": "ISC", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/npx/node_modules/has-ansi": { - "version": "2.0.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/hosted-git-info": { - "version": "2.4.2", - "inBundle": true, - "license": "ISC" - }, - "node_modules/npx/node_modules/imurmurhash": { - "version": "0.1.4", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/npx/node_modules/ini": { - "version": "1.3.4", - "inBundle": true, - "license": "ISC", - "engines": { - "node": "*" - } - }, - "node_modules/npx/node_modules/invert-kv": { - "version": "1.0.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/is-arrayish": { - "version": "0.2.1", - "inBundle": true, - "license": "MIT" - }, - "node_modules/npx/node_modules/is-builtin-module": { - "version": "1.0.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "builtin-modules": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/is-fullwidth-code-point": { - "version": "1.0.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "number-is-nan": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/is-npm": { - "version": "1.0.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/is-obj": { - "version": "1.0.1", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/is-redirect": { - "version": "1.0.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/is-retry-allowed": { - "version": "1.1.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/is-stream": { - "version": "1.1.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/isexe": { - "version": "2.0.0", - "inBundle": true, - "license": "ISC" - }, - "node_modules/npx/node_modules/latest-version": { - "version": "3.1.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "package-json": "^4.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/lazy-req": { - "version": "2.0.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/lcid": { - "version": "1.0.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "invert-kv": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/load-json-file": { - "version": "2.0.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "strip-bom": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/locate-path": { - "version": "2.0.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/lowercase-keys": { - "version": "1.0.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/lru-cache": { - "version": "4.0.2", - "inBundle": true, - "license": "ISC", - "dependencies": { - "pseudomap": "^1.0.1", - "yallist": "^2.0.0" - } - }, - "node_modules/npx/node_modules/make-dir": { - "version": "1.0.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "pify": "^2.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/mem": { - "version": "1.1.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "mimic-fn": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/mimic-fn": { - "version": "1.1.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/normalize-package-data": { - "version": "2.3.8", - "inBundle": true, - "license": "BSD-2-Clause", - "dependencies": { - "hosted-git-info": "^2.1.4", - "is-builtin-module": "^1.0.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "node_modules/npx/node_modules/npm-package-arg": { - "version": "5.0.1", - "inBundle": true, - "license": "ISC", - "dependencies": { - "hosted-git-info": "^2.4.2", - "osenv": "^0.1.4", - "semver": "^5.1.0", - "validate-npm-package-name": "^3.0.0" - } - }, - "node_modules/npx/node_modules/npm-run-path": { - "version": "2.0.2", - "inBundle": true, - "license": "MIT", - "dependencies": { - "path-key": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/number-is-nan": { - "version": "1.0.1", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/object-assign": { - "version": "4.1.1", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/os-homedir": { - "version": "1.0.2", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/os-locale": { - "version": "2.0.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "execa": "^0.5.0", - "lcid": "^1.0.0", - "mem": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/os-tmpdir": { - "version": "1.0.2", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/osenv": { - "version": "0.1.4", - "inBundle": true, - "license": "ISC", - "dependencies": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "node_modules/npx/node_modules/p-finally": { - "version": "1.0.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/p-limit": { - "version": "1.1.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/p-locate": { - "version": "2.0.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "p-limit": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/package-json": { - "version": "4.0.1", - "inBundle": true, - "license": "MIT", - "dependencies": { - "got": "^6.7.1", - "registry-auth-token": "^3.0.1", - "registry-url": "^3.0.3", - "semver": "^5.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/parse-json": { - "version": "2.2.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "error-ex": "^1.2.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/path-exists": { - "version": "3.0.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/path-key": { - "version": "2.0.1", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/path-type": { - "version": "2.0.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "pify": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/pify": { - "version": "2.3.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/pinkie": { - "version": "2.0.4", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/pinkie-promise": { - "version": "2.0.1", - "inBundle": true, - "license": "MIT", - "dependencies": { - "pinkie": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/prepend-http": { - "version": "1.0.4", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/pseudomap": { - "version": "1.0.2", - "inBundle": true, - "license": "ISC" - }, - "node_modules/npx/node_modules/rc": { - "version": "1.2.1", - "inBundle": true, - "license": "(BSD-2-Clause OR MIT OR Apache-2.0)", - "dependencies": { - "deep-extend": "~0.4.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "bin": { - "rc": "index.js" - } - }, - "node_modules/npx/node_modules/rc/node_modules/minimist": { - "version": "1.2.0", - "inBundle": true, - "license": "MIT" - }, - "node_modules/npx/node_modules/read-pkg": { - "version": "2.0.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "load-json-file": "^2.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/read-pkg-up": { - "version": "2.0.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "find-up": "^2.0.0", - "read-pkg": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/registry-auth-token": { - "version": "3.3.1", - "inBundle": true, - "license": "MIT", - "dependencies": { - "rc": "^1.1.6", - "safe-buffer": "^5.0.1" - } - }, - "node_modules/npx/node_modules/registry-url": { - "version": "3.1.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "rc": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/require-directory": { - "version": "2.1.1", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/require-main-filename": { - "version": "1.0.1", - "inBundle": true, - "license": "ISC" - }, - "node_modules/npx/node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - } - }, - "node_modules/npx/node_modules/safe-buffer": { - "version": "5.0.1", - "inBundle": true, - "license": "MIT" - }, - "node_modules/npx/node_modules/semver": { - "version": "5.3.0", - "inBundle": true, - "license": "ISC", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/npx/node_modules/semver-diff": { - "version": "2.1.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "semver": "^5.0.3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/set-blocking": { - "version": "2.0.0", - "inBundle": true, - "license": "ISC" - }, - "node_modules/npx/node_modules/signal-exit": { - "version": "3.0.2", - "inBundle": true, - "license": "ISC" - }, - "node_modules/npx/node_modules/slide": { - "version": "1.1.6", - "inBundle": true, - "license": "ISC", - "engines": { - "node": "*" - } - }, - "node_modules/npx/node_modules/spdx-correct": { - "version": "1.0.2", - "inBundle": true, - "license": "Apache-2.0", - "dependencies": { - "spdx-license-ids": "^1.0.2" - } - }, - "node_modules/npx/node_modules/spdx-expression-parse": { - "version": "1.0.4", - "inBundle": true, - "license": "(MIT AND CC-BY-3.0)" - }, - "node_modules/npx/node_modules/spdx-license-ids": { - "version": "1.2.2", - "inBundle": true, - "license": "Unlicense" - }, - "node_modules/npx/node_modules/string-width": { - "version": "2.0.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/string-width/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/strip-ansi": { - "version": "3.0.1", - "inBundle": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/strip-bom": { - "version": "3.0.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/strip-eof": { - "version": "1.0.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/strip-json-comments": { - "version": "2.0.1", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/supports-color": { - "version": "2.0.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/npx/node_modules/term-size": { - "version": "0.1.1", - "inBundle": true, - "license": "MIT", - "dependencies": { - "execa": "^0.4.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/term-size/node_modules/execa": { - "version": "0.4.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "cross-spawn-async": "^2.1.1", - "is-stream": "^1.1.0", - "npm-run-path": "^1.0.0", - "object-assign": "^4.0.1", - "path-key": "^1.0.0", - "strip-eof": "^1.0.0" - }, - "engines": { - "node": ">=0.12" - } - }, - "node_modules/npx/node_modules/term-size/node_modules/npm-run-path": { - "version": "1.0.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "path-key": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/term-size/node_modules/path-key": { - "version": "1.0.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/timed-out": { - "version": "4.0.1", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/unique-string": { - "version": "1.0.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "crypto-random-string": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/unzip-response": { - "version": "2.0.1", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/update-notifier": { - "version": "2.1.0", - "inBundle": true, - "license": "BSD-2-Clause", - "dependencies": { - "boxen": "^1.0.0", - "chalk": "^1.0.0", - "configstore": "^3.0.0", - "is-npm": "^1.0.0", - "latest-version": "^3.0.0", - "lazy-req": "^2.0.0", - "semver-diff": "^2.0.0", - "xdg-basedir": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/url-parse-lax": { - "version": "1.0.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "prepend-http": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/validate-npm-package-license": { - "version": "3.0.1", - "inBundle": true, - "license": "Apache-2.0", - "dependencies": { - "spdx-correct": "~1.0.0", - "spdx-expression-parse": "~1.0.0" - } - }, - "node_modules/npx/node_modules/validate-npm-package-name": { - "version": "3.0.0", - "inBundle": true, - "license": "ISC", - "dependencies": { - "builtins": "^1.0.3" - } - }, - "node_modules/npx/node_modules/which": { - "version": "1.2.14", - "inBundle": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/npx/node_modules/which-module": { - "version": "2.0.0", - "inBundle": true, - "license": "ISC" - }, - "node_modules/npx/node_modules/widest-line": { - "version": "1.0.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "string-width": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/widest-line/node_modules/string-width": { - "version": "1.0.2", - "inBundle": true, - "license": "MIT", - "dependencies": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/wrap-ansi": { - "version": "2.1.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/wrap-ansi/node_modules/string-width": { - "version": "1.0.2", - "inBundle": true, - "license": "MIT", - "dependencies": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npx/node_modules/write-file-atomic": { - "version": "2.1.0", - "inBundle": true, - "license": "ISC", - "dependencies": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "slide": "^1.1.5" - } - }, - "node_modules/npx/node_modules/xdg-basedir": { - "version": "3.0.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/npx/node_modules/y18n": { - "version": "3.2.1", - "inBundle": true, - "license": "ISC" - }, - "node_modules/npx/node_modules/yallist": { - "version": "2.1.2", - "inBundle": true, - "license": "ISC" - }, - "node_modules/npx/node_modules/yargs": { - "version": "8.0.1", - "inBundle": true, - "license": "MIT", - "dependencies": { - "camelcase": "^4.1.0", - "cliui": "^3.2.0", - "decamelize": "^1.1.1", - "get-caller-file": "^1.0.1", - "os-locale": "^2.0.0", - "read-pkg-up": "^2.0.0", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^2.0.0", - "which-module": "^2.0.0", - "y18n": "^3.2.1", - "yargs-parser": "^7.0.0" - } - }, - "node_modules/npx/node_modules/yargs-parser": { - "version": "7.0.0", - "inBundle": true, - "license": "ISC", - "dependencies": { - "camelcase": "^4.1.0" - } - }, - "node_modules/nyc": { - "version": "15.1.0", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-15.1.0.tgz", - "integrity": "sha512-jMW04n9SxKdKi1ZMGhvUTHBN0EICCRkHemEoE5jm6mTYcqcdas0ATzgUgejlQUHMvpnOZqGB5Xxsv9KxJW1j8A==", - "dev": true, - "dependencies": { - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "caching-transform": "^4.0.0", - "convert-source-map": "^1.7.0", - "decamelize": "^1.2.0", - "find-cache-dir": "^3.2.0", - "find-up": "^4.1.0", - "foreground-child": "^2.0.0", - "get-package-type": "^0.1.0", - "glob": "^7.1.6", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-hook": "^3.0.0", - "istanbul-lib-instrument": "^4.0.0", - "istanbul-lib-processinfo": "^2.0.2", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.0.2", - "make-dir": "^3.0.0", - "node-preload": "^0.2.1", - "p-map": "^3.0.0", - "process-on-spawn": "^1.0.0", - "resolve-from": "^5.0.0", - "rimraf": "^3.0.0", - "signal-exit": "^3.0.2", - "spawn-wrap": "^2.0.0", - "test-exclude": "^6.0.0", - "yargs": "^15.0.2" - }, - "bin": { - "nyc": "bin/nyc.js" - }, - "engines": { - "node": ">=8.9" - } - }, - "node_modules/nyc/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/nyc/node_modules/cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "node_modules/nyc/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/nyc/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/nyc/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/nyc/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "node_modules/nyc/node_modules/yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "dependencies": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/object-inspect": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", - "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.fromentries": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.7.tgz", - "integrity": "sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.groupby": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.1.tgz", - "integrity": "sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1" - } - }, - "node_modules/object.values": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.7.tgz", - "integrity": "sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/optionator": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", - "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", - "dev": true, - "dependencies": { - "@aashutoshrathi/word-wrap": "^1.2.3", - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-map": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", - "dev": true, - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/package-hash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-4.0.0.tgz", - "integrity": "sha512-whdkPIooSu/bASggZ96BWVvZTRMOFxnyUG5PnTSGKoJE2gd5mbVNmR2Nj20QFzxYYgAXpoqC+AiXzl+UMRh7zQ==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.15", - "hasha": "^5.0.0", - "lodash.flattendeep": "^4.4.0", - "release-zalgo": "^1.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/pathval": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", - "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/pdf-lib": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/pdf-lib/-/pdf-lib-1.17.1.tgz", - "integrity": "sha512-V/mpyJAoTsN4cnP31vc0wfNA1+p20evqqnap0KLoRUN0Yk/p3wN52DOEsL4oBFcLdb76hlpKPtzJIgo67j/XLw==", - "dependencies": { - "@pdf-lib/standard-fonts": "^1.0.0", - "@pdf-lib/upng": "^1.0.1", - "pako": "^1.0.11", - "tslib": "^1.11.1" - } - }, - "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-dir/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-dir/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-dir/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/pkg-dir/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/process-on-spawn": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/process-on-spawn/-/process-on-spawn-1.0.0.tgz", - "integrity": "sha512-1WsPDsUSMmZH5LeMLegqkPDrsGgsWwk1Exipy2hvB0o/F0ASzbpIctSCcZIK1ykJvtTJULEH+20WOFjMvGnCTg==", - "dev": true, - "dependencies": { - "fromentries": "^1.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/regexp.prototype.flags": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz", - "integrity": "sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "functions-have-names": "^1.2.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/release-zalgo": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", - "integrity": "sha512-gUAyHVHPPC5wdqX/LG4LWtRYtgjxyX78oanFNTMMyFEfOqdC54s3eE82imuWKbOeqYht2CrNf64Qb8vgmmtZGA==", - "dev": true, - "dependencies": { - "es6-error": "^4.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "node_modules/resolve": { - "version": "1.22.4", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", - "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", - "dev": true, - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true, - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/safe-array-concat": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.0.0.tgz", - "integrity": "sha512-9dVEFruWIsnie89yym+xWTAYASdpw3CJV7Li/6zBewGf9z2i1j31rP6jnY0pHEO4QZh6N0K11bFjWmdR8UGdPQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "has-symbols": "^1.0.3", - "isarray": "^2.0.5" - }, - "engines": { - "node": ">=0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/safe-regex-test": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-regex": "^1.1.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", - "dev": true, - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "dev": true - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, - "node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/spawn-wrap": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-2.0.0.tgz", - "integrity": "sha512-EeajNjfN9zMnULLwhZZQU3GWBoFNkbngTUPfaawT4RkMiviTxcX0qfhVbGey39mfctfDHkWtuecgQ8NJcyQWHg==", - "dev": true, - "dependencies": { - "foreground-child": "^2.0.0", - "is-windows": "^1.0.2", - "make-dir": "^3.0.0", - "rimraf": "^3.0.0", - "signal-exit": "^3.0.2", - "which": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/string.prototype.trim": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.7.tgz", - "integrity": "sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimend": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", - "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", - "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, - "dependencies": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/ts-api-utils": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.2.tgz", - "integrity": "sha512-Cbu4nIqnEdd+THNEsBdkolnOXhg0I8XteoHaEKgvsxpsbWda4IsUut2c187HxywQCvveojow0Dgw/amxtSKVkQ==", - "dev": true, - "engines": { - "node": ">=16.13.0" - }, - "peerDependencies": { - "typescript": ">=4.2.0" - } - }, - "node_modules/ts-node": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", - "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", - "dev": true, - "dependencies": { - "@cspotcode/source-map-support": "^0.8.0", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "v8-compile-cache-lib": "^3.0.1", - "yn": "3.1.1" - }, - "bin": { - "ts-node": "dist/bin.js", - "ts-node-cwd": "dist/bin-cwd.js", - "ts-node-esm": "dist/bin-esm.js", - "ts-node-script": "dist/bin-script.js", - "ts-node-transpile-only": "dist/bin-transpile.js", - "ts-script": "dist/bin-script-deprecated.js" - }, - "peerDependencies": { - "@swc/core": ">=1.2.50", - "@swc/wasm": ">=1.2.50", - "@types/node": "*", - "typescript": ">=2.7" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "@swc/wasm": { - "optional": true - } - } - }, - "node_modules/tsconfig-paths": { - "version": "3.14.2", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz", - "integrity": "sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==", - "dev": true, - "dependencies": { - "@types/json5": "^0.0.29", - "json5": "^1.0.2", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" - } - }, - "node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/tslint": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/tslint/-/tslint-6.1.3.tgz", - "integrity": "sha512-IbR4nkT96EQOvKE2PW/djGz8iGNeJ4rF2mBfiYaR/nvUWYKJhLwimoJKgjIFEIDibBtOevj7BqCRL4oHeWWUCg==", - "deprecated": "TSLint has been deprecated in favor of ESLint. Please see https://github.com/palantir/tslint/issues/4534 for more information.", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.0.0", - "builtin-modules": "^1.1.1", - "chalk": "^2.3.0", - "commander": "^2.12.1", - "diff": "^4.0.1", - "glob": "^7.1.1", - "js-yaml": "^3.13.1", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.3", - "resolve": "^1.3.2", - "semver": "^5.3.0", - "tslib": "^1.13.0", - "tsutils": "^2.29.0" - }, - "bin": { - "tslint": "bin/tslint" - }, - "engines": { - "node": ">=4.8.0" - }, - "peerDependencies": { - "typescript": ">=2.3.0-dev || >=2.4.0-dev || >=2.5.0-dev || >=2.6.0-dev || >=2.7.0-dev || >=2.8.0-dev || >=2.9.0-dev || >=3.0.0-dev || >= 3.1.0-dev || >= 3.2.0-dev || >= 4.0.0-dev" - } - }, - "node_modules/tsutils": { - "version": "2.29.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", - "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", - "dev": true, - "dependencies": { - "tslib": "^1.8.1" - }, - "peerDependencies": { - "typescript": ">=2.1.0 || >=2.1.0-dev || >=2.2.0-dev || >=2.3.0-dev || >=2.4.0-dev || >=2.5.0-dev || >=2.6.0-dev || >=2.7.0-dev || >=2.8.0-dev || >=2.9.0-dev || >= 3.0.0-dev || >= 3.1.0-dev" - } - }, - "node_modules/type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "dependencies": { - "prelude-ls": "^1.2.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/typed-array-buffer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz", - "integrity": "sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1", - "is-typed-array": "^1.1.10" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/typed-array-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz", - "integrity": "sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typed-array-byte-offset": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz", - "integrity": "sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==", - "dev": true, - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typed-array-length": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", - "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", - "dev": true, - "dependencies": { - "is-typedarray": "^1.0.0" - } - }, - "node_modules/typescript": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz", - "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", - "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, - "node_modules/unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/update-browserslist-db": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", - "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - }, - "bin": { - "update-browserslist-db": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "dev": true, - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/v8-compile-cache-lib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", - "dev": true - }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/which-boxed-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", - "dev": true, - "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-module": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", - "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", - "dev": true - }, - "node_modules/which-typed-array": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.11.tgz", - "integrity": "sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==", - "dev": true, - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/workerpool": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.2.1.tgz", - "integrity": "sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw==", - "dev": true - }, - "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/wrap-ansi/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" - }, - "node_modules/write-file-atomic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", - "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" - } - }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs-parser": { - "version": "20.2.4", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", - "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs-unparser": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", - "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", - "dev": true, - "dependencies": { - "camelcase": "^6.0.0", - "decamelize": "^4.0.0", - "flat": "^5.0.2", - "is-plain-obj": "^2.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs-unparser/node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/yargs-unparser/node_modules/decamelize": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", - "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - } - }, - "dependencies": { - "@aashutoshrathi/word-wrap": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", - "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", - "dev": true - }, - "@ampproject/remapping": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", - "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", - "dev": true, - "requires": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "@babel/code-frame": { - "version": "7.22.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", - "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", - "dev": true, - "requires": { - "@babel/highlight": "^7.22.13", - "chalk": "^2.4.2" - } - }, - "@babel/compat-data": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz", - "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==", - "dev": true - }, - "@babel/core": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.11.tgz", - "integrity": "sha512-lh7RJrtPdhibbxndr6/xx0w8+CVlY5FJZiaSz908Fpy+G0xkBFTvwLcKJFF4PJxVfGhVWNebikpWGnOoC71juQ==", - "dev": true, - "requires": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.22.10", - "@babel/generator": "^7.22.10", - "@babel/helper-compilation-targets": "^7.22.10", - "@babel/helper-module-transforms": "^7.22.9", - "@babel/helpers": "^7.22.11", - "@babel/parser": "^7.22.11", - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.11", - "@babel/types": "^7.22.11", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.3", - "semver": "^6.3.1" - }, - "dependencies": { - "json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "dev": true - }, - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } - } - }, - "@babel/generator": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.10.tgz", - "integrity": "sha512-79KIf7YiWjjdZ81JnLujDRApWtl7BxTqWD88+FFdQEIOG8LJ0etDOM7CXuIgGJa55sGOwZVwuEsaLEm0PJ5/+A==", - "dev": true, - "requires": { - "@babel/types": "^7.22.10", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" - } - }, - "@babel/helper-compilation-targets": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.10.tgz", - "integrity": "sha512-JMSwHD4J7SLod0idLq5PKgI+6g/hLD/iuWBq08ZX49xE14VpVEojJ5rHWptpirV2j020MvypRLAXAO50igCJ5Q==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.22.9", - "@babel/helper-validator-option": "^7.22.5", - "browserslist": "^4.21.9", - "lru-cache": "^5.1.1", - "semver": "^6.3.1" - }, - "dependencies": { - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "requires": { - "yallist": "^3.0.2" - } - }, - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - } - } - }, - "@babel/helper-environment-visitor": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", - "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==", - "dev": true - }, - "@babel/helper-function-name": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz", - "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==", - "dev": true, - "requires": { - "@babel/template": "^7.22.5", - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", - "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", - "dev": true, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-module-imports": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz", - "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==", - "dev": true, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-module-transforms": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz", - "integrity": "sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-module-imports": "^7.22.5", - "@babel/helper-simple-access": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/helper-validator-identifier": "^7.22.5" - } - }, - "@babel/helper-simple-access": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", - "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", - "dev": true, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", - "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", - "dev": true, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-string-parser": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", - "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", - "dev": true - }, - "@babel/helper-validator-identifier": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", - "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==", - "dev": true - }, - "@babel/helper-validator-option": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz", - "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==", - "dev": true - }, - "@babel/helpers": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.11.tgz", - "integrity": "sha512-vyOXC8PBWaGc5h7GMsNx68OH33cypkEDJCHvYVVgVbbxJDROYVtexSk0gK5iCF1xNjRIN2s8ai7hwkWDq5szWg==", - "dev": true, - "requires": { - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.11", - "@babel/types": "^7.22.11" - } - }, - "@babel/highlight": { - "version": "7.22.13", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.13.tgz", - "integrity": "sha512-C/BaXcnnvBCmHTpz/VGZ8jgtE2aYlW4hxDhseJAWZb7gqGM/qtCK6iZUb0TyKFf7BOUsBH7Q7fkRsDRhg1XklQ==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.22.5", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.22.14", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.14.tgz", - "integrity": "sha512-1KucTHgOvaw/LzCVrEOAyXkr9rQlp0A1HiHRYnSUE9dmb8PvPW7o5sscg+5169r54n3vGlbx6GevTE/Iw/P3AQ==", - "dev": true - }, - "@babel/template": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", - "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.22.5", - "@babel/parser": "^7.22.5", - "@babel/types": "^7.22.5" - } - }, - "@babel/traverse": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.11.tgz", - "integrity": "sha512-mzAenteTfomcB7mfPtyi+4oe5BZ6MXxWcn4CX+h4IRJ+OOGXBrWU6jDQavkQI9Vuc5P+donFabBfFCcmWka9lQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.22.10", - "@babel/generator": "^7.22.10", - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-function-name": "^7.22.5", - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.22.11", - "@babel/types": "^7.22.11", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "dependencies": { - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - } - } - }, - "@babel/types": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.11.tgz", - "integrity": "sha512-siazHiGuZRz9aB9NpHy9GOs9xiQPKnMzgdr493iI1M67vRXpnEq8ZOOKzezC5q7zwuQ6sDhdSp4SD9ixKSqKZg==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.5", - "to-fast-properties": "^2.0.0" - } - }, - "@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", - "dev": true, - "requires": { - "@jridgewell/trace-mapping": "0.3.9" - }, - "dependencies": { - "@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - } - } - }, - "@eslint-community/eslint-utils": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", - "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", - "dev": true, - "requires": { - "eslint-visitor-keys": "^3.3.0" - } - }, - "@eslint-community/regexpp": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.8.0.tgz", - "integrity": "sha512-JylOEEzDiOryeUnFbQz+oViCXS0KsvR1mvHkoMiu5+UiBvy+RYX7tzlIIIEstF/gVa2tj9AQXk3dgnxv6KxhFg==", - "dev": true - }, - "@eslint/eslintrc": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", - "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", - "dev": true, - "requires": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.6.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "dependencies": { - "argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "requires": { - "argparse": "^2.0.1" - } - } - } - }, - "@eslint/js": { - "version": "8.48.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.48.0.tgz", - "integrity": "sha512-ZSjtmelB7IJfWD2Fvb7+Z+ChTIKWq6kjda95fLcQKNS5aheVHn4IkfgRQE3sIIzTcSLwLcLZUD9UBt+V7+h+Pw==", - "dev": true - }, - "@humanwhocodes/config-array": { - "version": "0.11.11", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz", - "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==", - "dev": true, - "requires": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", - "minimatch": "^3.0.5" - } - }, - "@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "dev": true - }, - "@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", - "dev": true - }, - "@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", - "dev": true, - "requires": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - }, - "dependencies": { - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true - } - } - }, - "@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true - }, - "@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "@jridgewell/resolve-uri": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", - "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", - "dev": true - }, - "@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "dev": true - }, - "@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", - "dev": true - }, - "@jridgewell/trace-mapping": { - "version": "0.3.19", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz", - "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true - }, - "@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - } - }, - "@pdf-lib/fontkit": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@pdf-lib/fontkit/-/fontkit-1.1.1.tgz", - "integrity": "sha512-KjMd7grNapIWS/Dm0gvfHEilSyAmeLvrEGVcqLGi0VYebuqqzTbgF29efCx7tvx+IEbG3zQciRSWl3GkUSvjZg==", - "requires": { - "pako": "^1.0.6" - } - }, - "@pdf-lib/standard-fonts": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@pdf-lib/standard-fonts/-/standard-fonts-1.0.0.tgz", - "integrity": "sha512-hU30BK9IUN/su0Mn9VdlVKsWBS6GyhVfqjwl1FjZN4TxP6cCw0jP2w7V3Hf5uX7M0AZJ16vey9yE0ny7Sa59ZA==", - "requires": { - "pako": "^1.0.6" - } - }, - "@pdf-lib/upng": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@pdf-lib/upng/-/upng-1.0.1.tgz", - "integrity": "sha512-dQK2FUMQtowVP00mtIksrlZhdFXQZPC+taih1q4CvPZ5vqdxR/LKBaFg0oAfzd1GlHZXXSPdQfzQnt+ViGvEIQ==", - "requires": { - "pako": "^1.0.10" - } - }, - "@tsconfig/node10": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", - "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", - "dev": true - }, - "@tsconfig/node12": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", - "dev": true - }, - "@tsconfig/node14": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", - "dev": true - }, - "@tsconfig/node16": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", - "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", - "dev": true - }, - "@types/chai": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.5.tgz", - "integrity": "sha512-mEo1sAde+UCE6b2hxn332f1g1E8WfYRu6p5SvTKr2ZKC1f7gFJXk4h5PyGP9Dt6gCaG8y8XhwnXWC6Iy2cmBng==", - "dev": true - }, - "@types/json-schema": { - "version": "7.0.12", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.12.tgz", - "integrity": "sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==", - "dev": true - }, - "@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", - "dev": true - }, - "@types/mocha": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.1.tgz", - "integrity": "sha512-/fvYntiO1GeICvqbQ3doGDIP97vWmvFt83GKguJ6prmQM2iXZfFcq6YE8KteFyRtX2/h5Hf91BYvPodJKFYv5Q==", - "dev": true - }, - "@types/node": { - "version": "20.5.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.5.7.tgz", - "integrity": "sha512-dP7f3LdZIysZnmvP3ANJYTSwg+wLLl8p7RqniVlV7j+oXSXAbt9h0WIBFmJy5inWZoX9wZN6eXx+YXd9Rh3RBA==", - "dev": true - }, - "@types/semver": { - "version": "7.5.1", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.1.tgz", - "integrity": "sha512-cJRQXpObxfNKkFAZbJl2yjWtJCqELQIdShsogr1d2MilP8dKD9TE/nEKHkJgUNHdGKCQaf9HbIynuV2csLGVLg==", - "dev": true - }, - "@typescript-eslint/eslint-plugin": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.5.0.tgz", - "integrity": "sha512-2pktILyjvMaScU6iK3925uvGU87E+N9rh372uGZgiMYwafaw9SXq86U04XPq3UH6tzRvNgBsub6x2DacHc33lw==", - "dev": true, - "requires": { - "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.5.0", - "@typescript-eslint/type-utils": "6.5.0", - "@typescript-eslint/utils": "6.5.0", - "@typescript-eslint/visitor-keys": "6.5.0", - "debug": "^4.3.4", - "graphemer": "^1.4.0", - "ignore": "^5.2.4", - "natural-compare": "^1.4.0", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "dependencies": { - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - } - } - }, - "@typescript-eslint/parser": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.5.0.tgz", - "integrity": "sha512-LMAVtR5GN8nY0G0BadkG0XIe4AcNMeyEy3DyhKGAh9k4pLSMBO7rF29JvDBpZGCmp5Pgz5RLHP6eCpSYZJQDuQ==", - "dev": true, - "requires": { - "@typescript-eslint/scope-manager": "6.5.0", - "@typescript-eslint/types": "6.5.0", - "@typescript-eslint/typescript-estree": "6.5.0", - "@typescript-eslint/visitor-keys": "6.5.0", - "debug": "^4.3.4" - } - }, - "@typescript-eslint/scope-manager": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.5.0.tgz", - "integrity": "sha512-A8hZ7OlxURricpycp5kdPTH3XnjG85UpJS6Fn4VzeoH4T388gQJ/PGP4ole5NfKt4WDVhmLaQ/dBLNDC4Xl/Kw==", - "dev": true, - "requires": { - "@typescript-eslint/types": "6.5.0", - "@typescript-eslint/visitor-keys": "6.5.0" - } - }, - "@typescript-eslint/type-utils": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.5.0.tgz", - "integrity": "sha512-f7OcZOkRivtujIBQ4yrJNIuwyCQO1OjocVqntl9dgSIZAdKqicj3xFDqDOzHDlGCZX990LqhLQXWRnQvsapq8A==", - "dev": true, - "requires": { - "@typescript-eslint/typescript-estree": "6.5.0", - "@typescript-eslint/utils": "6.5.0", - "debug": "^4.3.4", - "ts-api-utils": "^1.0.1" - } - }, - "@typescript-eslint/types": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.5.0.tgz", - "integrity": "sha512-eqLLOEF5/lU8jW3Bw+8auf4lZSbbljHR2saKnYqON12G/WsJrGeeDHWuQePoEf9ro22+JkbPfWQwKEC5WwLQ3w==", - "dev": true - }, - "@typescript-eslint/typescript-estree": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.5.0.tgz", - "integrity": "sha512-q0rGwSe9e5Kk/XzliB9h2LBc9tmXX25G0833r7kffbl5437FPWb2tbpIV9wAATebC/018pGa9fwPDuvGN+LxWQ==", - "dev": true, - "requires": { - "@typescript-eslint/types": "6.5.0", - "@typescript-eslint/visitor-keys": "6.5.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "dependencies": { - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - } - } - }, - "@typescript-eslint/utils": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.5.0.tgz", - "integrity": "sha512-9nqtjkNykFzeVtt9Pj6lyR9WEdd8npPhhIPM992FWVkZuS6tmxHfGVnlUcjpUP2hv8r4w35nT33mlxd+Be1ACQ==", - "dev": true, - "requires": { - "@eslint-community/eslint-utils": "^4.4.0", - "@types/json-schema": "^7.0.12", - "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.5.0", - "@typescript-eslint/types": "6.5.0", - "@typescript-eslint/typescript-estree": "6.5.0", - "semver": "^7.5.4" - }, - "dependencies": { - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - } - } - }, - "@typescript-eslint/visitor-keys": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.5.0.tgz", - "integrity": "sha512-yCB/2wkbv3hPsh02ZS8dFQnij9VVQXJMN/gbQsaaY+zxALkZnxa/wagvLEFsAWMPv7d7lxQmNsIzGU1w/T/WyA==", - "dev": true, - "requires": { - "@typescript-eslint/types": "6.5.0", - "eslint-visitor-keys": "^3.4.1" - } - }, - "acorn": { - "version": "8.10.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", - "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", - "dev": true - }, - "acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "requires": {} - }, - "acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", - "dev": true - }, - "aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - } - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "dev": true - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "append-transform": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-2.0.0.tgz", - "integrity": "sha512-7yeyCEurROLQJFv5Xj4lEGTy0borxepjFv1g22oAdqFu//SrAlDl1O1Nxx15SH1RoliUml6p8dwJW9jvZughhg==", - "dev": true, - "requires": { - "default-require-extensions": "^3.0.0" - } - }, - "archy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", - "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", - "dev": true - }, - "arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - "dev": true - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "array-buffer-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", - "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "is-array-buffer": "^3.0.1" - } - }, - "array-includes": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz", - "integrity": "sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "get-intrinsic": "^1.1.3", - "is-string": "^1.0.7" - } - }, - "array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true - }, - "array.prototype.findlastindex": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz", - "integrity": "sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0", - "get-intrinsic": "^1.2.1" - } - }, - "array.prototype.flat": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz", - "integrity": "sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-shim-unscopables": "^1.0.0" - } - }, - "array.prototype.flatmap": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz", - "integrity": "sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-shim-unscopables": "^1.0.0" - } - }, - "arraybuffer.prototype.slice": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.1.tgz", - "integrity": "sha512-09x0ZWFEjj4WD8PDbykUwo3t9arLn8NIzmmYEJFpYekOAQjpkGSyrQhNoRTcwwcFRu+ycWF78QZ63oWTqSjBcw==", - "dev": true, - "requires": { - "array-buffer-byte-length": "^1.0.0", - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "get-intrinsic": "^1.2.1", - "is-array-buffer": "^3.0.2", - "is-shared-array-buffer": "^1.0.2" - } - }, - "assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", - "dev": true - }, - "available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", - "dev": true - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "browser-stdout": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", - "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", - "dev": true - }, - "browserslist": { - "version": "4.21.10", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz", - "integrity": "sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001517", - "electron-to-chromium": "^1.4.477", - "node-releases": "^2.0.13", - "update-browserslist-db": "^1.0.11" - } - }, - "builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha512-wxXCdllwGhI2kCC0MnvTGYTMvnVZTvqgypkiTI8Pa5tcz2i6VqsqwYGgqwXji+4RgCzms6EajE4IxiUH6HH8nQ==", - "dev": true - }, - "builtins": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", - "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", - "dev": true, - "requires": { - "semver": "^7.0.0" - }, - "dependencies": { - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - } - } - }, - "caching-transform": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-4.0.0.tgz", - "integrity": "sha512-kpqOvwXnjjN44D89K5ccQC+RUrsy7jB/XLlRrx0D7/2HNcTPqzsb6XgYoErwko6QsV184CA2YgS1fxDiiDZMWA==", - "dev": true, - "requires": { - "hasha": "^5.0.0", - "make-dir": "^3.0.0", - "package-hash": "^4.0.0", - "write-file-atomic": "^3.0.0" - } - }, - "call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - } - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "caniuse-lite": { - "version": "1.0.30001525", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001525.tgz", - "integrity": "sha512-/3z+wB4icFt3r0USMwxujAqRvaD/B7rvGTsKhbhSQErVrJvkZCLhgNLJxU8MevahQVH6hCU9FsHdNUFbiwmE7Q==", - "dev": true - }, - "chai": { - "version": "4.3.8", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.8.tgz", - "integrity": "sha512-vX4YvVVtxlfSZ2VecZgFUTU5qPCYsobVI2O9FmwEXBhDigYGQA6jRXCycIs1yJnnWbZ6/+a2zNIF5DfVCcJBFQ==", - "dev": true, - "requires": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.2", - "deep-eql": "^4.1.2", - "get-func-name": "^2.0.0", - "loupe": "^2.3.1", - "pathval": "^1.1.1", - "type-detect": "^4.0.5" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "check-error": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", - "integrity": "sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==", - "dev": true - }, - "chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "dependencies": { - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - } - } - }, - "clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true - }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" - }, - "convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", - "dev": true - }, - "create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "dev": true - }, - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", - "dev": true - }, - "deep-eql": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.3.tgz", - "integrity": "sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==", - "dev": true, - "requires": { - "type-detect": "^4.0.0" - } - }, - "deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true - }, - "default-require-extensions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-3.0.1.tgz", - "integrity": "sha512-eXTJmRbm2TIt9MgWTsOH1wEuhew6XGZcMeGKCtLedIg/NCsg1iBePXkceTdK4Fii7pzmN9tGsZhKzZ4h7O/fxw==", - "dev": true, - "requires": { - "strip-bom": "^4.0.0" - }, - "dependencies": { - "strip-bom": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", - "dev": true - } - } - }, - "define-properties": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", - "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", - "dev": true, - "requires": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - } - }, - "diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "dev": true - }, - "dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "requires": { - "path-type": "^4.0.0" - } - }, - "doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "electron-to-chromium": { - "version": "1.4.506", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.506.tgz", - "integrity": "sha512-xxGct4GPAKSRlrLBtJxJFYy74W11zX6PO9GyHgl/U+2s3Dp0ZEwAklDfNHXOWcvH7zWMpsmgbR0ggEuaYAVvHA==", - "dev": true - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "es-abstract": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.1.tgz", - "integrity": "sha512-ioRRcXMO6OFyRpyzV3kE1IIBd4WG5/kltnzdxSCqoP8CMGs/Li+M1uF5o7lOkZVFjDs+NLesthnF66Pg/0q0Lw==", - "dev": true, - "requires": { - "array-buffer-byte-length": "^1.0.0", - "arraybuffer.prototype.slice": "^1.0.1", - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-set-tostringtag": "^2.0.1", - "es-to-primitive": "^1.2.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.2.1", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.5", - "is-array-buffer": "^3.0.2", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.10", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.3", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.0", - "safe-array-concat": "^1.0.0", - "safe-regex-test": "^1.0.0", - "string.prototype.trim": "^1.2.7", - "string.prototype.trimend": "^1.0.6", - "string.prototype.trimstart": "^1.0.6", - "typed-array-buffer": "^1.0.0", - "typed-array-byte-length": "^1.0.0", - "typed-array-byte-offset": "^1.0.0", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.10" - } - }, - "es-set-tostringtag": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", - "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "has-tostringtag": "^1.0.0" - } - }, - "es-shim-unscopables": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", - "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dev": true, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "es6-error": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", - "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", - "dev": true - }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true - }, - "eslint": { - "version": "8.48.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.48.0.tgz", - "integrity": "sha512-sb6DLeIuRXxeM1YljSe1KEx9/YYeZFQWcV8Rq9HfigmdDEugjLEVEa1ozDjL6YDjBpQHPJxJzze+alxi4T3OLg==", - "dev": true, - "requires": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.2", - "@eslint/js": "8.48.0", - "@humanwhocodes/config-array": "^0.11.10", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.3", - "espree": "^9.6.1", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "requires": { - "argparse": "^2.0.1" - } - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "eslint-config-standard": { - "version": "17.1.0", - "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-17.1.0.tgz", - "integrity": "sha512-IwHwmaBNtDK4zDHQukFDW5u/aTb8+meQWZvNFWkiGmbWjD6bqyuSSBxxXKkCftCUzc1zwCH2m/baCNDLGmuO5Q==", - "dev": true, - "requires": {} - }, - "eslint-config-standard-with-typescript": { - "version": "39.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-standard-with-typescript/-/eslint-config-standard-with-typescript-39.0.0.tgz", - "integrity": "sha512-CiV2LS4NUeeRmDTDf1ocUMpMxitSyW0g+Y/N7ecElwGj188GahbcQgqfBNyVsIXQxHlZVBlOjkbg3oUI0R3KBg==", - "dev": true, - "requires": { - "@typescript-eslint/parser": "^6.4.0", - "eslint-config-standard": "17.1.0" - } - }, - "eslint-import-resolver-node": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", - "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", - "dev": true, - "requires": { - "debug": "^3.2.7", - "is-core-module": "^2.13.0", - "resolve": "^1.22.4" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "eslint-module-utils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz", - "integrity": "sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==", - "dev": true, - "requires": { - "debug": "^3.2.7" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "eslint-plugin-es-x": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-es-x/-/eslint-plugin-es-x-7.2.0.tgz", - "integrity": "sha512-9dvv5CcvNjSJPqnS5uZkqb3xmbeqRLnvXKK7iI5+oK/yTusyc46zbBZKENGsOfojm/mKfszyZb+wNqNPAPeGXA==", - "dev": true, - "requires": { - "@eslint-community/eslint-utils": "^4.1.2", - "@eslint-community/regexpp": "^4.6.0" - } - }, - "eslint-plugin-import": { - "version": "2.28.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.1.tgz", - "integrity": "sha512-9I9hFlITvOV55alzoKBI+K9q74kv0iKMeY6av5+umsNwayt59fz692daGyjR+oStBQgx6nwR9rXldDev3Clw+A==", - "dev": true, - "requires": { - "array-includes": "^3.1.6", - "array.prototype.findlastindex": "^1.2.2", - "array.prototype.flat": "^1.3.1", - "array.prototype.flatmap": "^1.3.1", - "debug": "^3.2.7", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.8.0", - "has": "^1.0.3", - "is-core-module": "^2.13.0", - "is-glob": "^4.0.3", - "minimatch": "^3.1.2", - "object.fromentries": "^2.0.6", - "object.groupby": "^1.0.0", - "object.values": "^1.1.6", - "semver": "^6.3.1", - "tsconfig-paths": "^3.14.2" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } - } - }, - "eslint-plugin-n": { - "version": "16.0.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-16.0.2.tgz", - "integrity": "sha512-Y66uDfUNbBzypsr0kELWrIz+5skicECrLUqlWuXawNSLUq3ltGlCwu6phboYYOTSnoTdHgTLrc+5Ydo6KjzZog==", - "dev": true, - "requires": { - "@eslint-community/eslint-utils": "^4.4.0", - "builtins": "^5.0.1", - "eslint-plugin-es-x": "^7.1.0", - "ignore": "^5.2.4", - "is-core-module": "^2.12.1", - "minimatch": "^3.1.2", - "resolve": "^1.22.2", - "semver": "^7.5.3" - }, - "dependencies": { - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - } - } - }, - "eslint-plugin-promise": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-6.1.1.tgz", - "integrity": "sha512-tjqWDwVZQo7UIPMeDReOpUgHCmCiH+ePnVT+5zVapL0uuHnegBUs2smM13CzOs2Xb5+MHMRFTs9v24yjba4Oig==", - "dev": true, - "requires": {} - }, - "eslint-scope": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", - "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", - "dev": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - } - }, - "eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true - }, - "espree": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", - "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", - "dev": true, - "requires": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" - } - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", - "dev": true, - "requires": { - "estraverse": "^5.1.0" - } - }, - "esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "requires": { - "estraverse": "^5.2.0" - } - }, - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-glob": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", - "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "dependencies": { - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - } - } - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true - }, - "fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", - "dev": true, - "requires": { - "reusify": "^1.0.4" - } - }, - "file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, - "requires": { - "flat-cache": "^3.0.4" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - } - }, - "find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "flat": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", - "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", - "dev": true - }, - "flat-cache": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.1.0.tgz", - "integrity": "sha512-OHx4Qwrrt0E4jEIcI5/Xb+f+QmJYNj2rrK8wiIdQOIrB9WrrJL8cjZvXdXuBTkkEwEqLycb5BeZDV1o2i9bTew==", - "dev": true, - "requires": { - "flatted": "^3.2.7", - "keyv": "^4.5.3", - "rimraf": "^3.0.2" - } - }, - "flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", - "dev": true - }, - "for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "dev": true, - "requires": { - "is-callable": "^1.1.3" - } - }, - "foreground-child": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", - "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.0", - "signal-exit": "^3.0.2" - } - }, - "fromentries": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz", - "integrity": "sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg==", - "dev": true - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" - }, - "fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "optional": true - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "function.prototype.name": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", - "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "functions-have-names": "^1.2.3" - } - }, - "functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true - }, - "gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "get-func-name": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", - "integrity": "sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig==", - "dev": true - }, - "get-intrinsic": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz", - "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3" - } - }, - "get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "dev": true - }, - "get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "requires": { - "is-glob": "^4.0.3" - } - }, - "globals": { - "version": "13.21.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", - "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", - "dev": true, - "requires": { - "type-fest": "^0.20.2" - } - }, - "globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", - "dev": true, - "requires": { - "define-properties": "^1.1.3" - } - }, - "globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, - "requires": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - } - }, - "gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.3" - } - }, - "graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true - }, - "graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "dev": true - }, - "harfbuzzjs": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/harfbuzzjs/-/harfbuzzjs-0.3.3.tgz", - "integrity": "sha512-48C/LOUweD//LTqaQAS9VMOBNPh7DhyJEmdzh5/1GgjNA8kGZMVZKTzkvarBDtiKKaKG5whx7qXU8OeSNLmWcA==" - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true - }, - "has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.1" - } - }, - "has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", - "dev": true - }, - "has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true - }, - "has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", - "dev": true, - "requires": { - "has-symbols": "^1.0.2" - } - }, - "hasha": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz", - "integrity": "sha512-Hrp5vIK/xr5SkeN2onO32H0MgNZ0f17HRNH39WfL0SYUNOTZ5Lz1TJ8Pajo/87dYGEFlLMm7mIc/k/s6Bvz9HQ==", - "dev": true, - "requires": { - "is-stream": "^2.0.0", - "type-fest": "^0.8.0" - }, - "dependencies": { - "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true - } - } - }, - "he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "dev": true - }, - "html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", - "dev": true - }, - "import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true - }, - "indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "internal-slot": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", - "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", - "dev": true, - "requires": { - "get-intrinsic": "^1.2.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" - } - }, - "is-array-buffer": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", - "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" - } - }, - "is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", - "dev": true, - "requires": { - "has-bigints": "^1.0.1" - } - }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "dev": true - }, - "is-core-module": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", - "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "dev": true - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true - }, - "is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", - "dev": true - }, - "is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2" - } - }, - "is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true - }, - "is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", - "dev": true, - "requires": { - "has-symbols": "^1.0.2" - } - }, - "is-typed-array": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz", - "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==", - "dev": true, - "requires": { - "which-typed-array": "^1.1.11" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", - "dev": true - }, - "is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true - }, - "is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2" - } - }, - "is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "dev": true - }, - "isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", - "dev": true - }, - "istanbul-lib-hook": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-3.0.0.tgz", - "integrity": "sha512-Pt/uge1Q9s+5VAZ+pCo16TYMWPBIl+oaNIjgLQxcX0itS6ueeaA+pEfThZpH8WxhFgCiEb8sAJY6MdUKgiIWaQ==", - "dev": true, - "requires": { - "append-transform": "^2.0.0" - } - }, - "istanbul-lib-instrument": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", - "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", - "dev": true, - "requires": { - "@babel/core": "^7.7.5", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.0.0", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } - } - }, - "istanbul-lib-processinfo": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-processinfo/-/istanbul-lib-processinfo-2.0.3.tgz", - "integrity": "sha512-NkwHbo3E00oybX6NGJi6ar0B29vxyvNwoC7eJ4G4Yq28UfY758Hgn/heV8VRFhevPED4LXfFz0DQ8z/0kw9zMg==", - "dev": true, - "requires": { - "archy": "^1.0.0", - "cross-spawn": "^7.0.3", - "istanbul-lib-coverage": "^3.2.0", - "p-map": "^3.0.0", - "rimraf": "^3.0.0", - "uuid": "^8.3.2" - } - }, - "istanbul-lib-report": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", - "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", - "dev": true, - "requires": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^4.0.0", - "supports-color": "^7.1.0" - }, - "dependencies": { - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "make-dir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", - "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", - "dev": true, - "requires": { - "semver": "^7.5.3" - } - }, - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "istanbul-lib-source-maps": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", - "dev": true, - "requires": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - } - }, - "istanbul-reports": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", - "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", - "dev": true, - "requires": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - } - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true - }, - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "keyv": { - "version": "4.5.3", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.3.tgz", - "integrity": "sha512-QCiSav9WaX1PgETJ+SpNnx2PRRapJ/oRSXM4VO5OGYGSjrxbKPVFVhB3l2OCbLCk329N8qyAtsJjSjvVBWzEug==", - "dev": true, - "requires": { - "json-buffer": "3.0.1" - } - }, - "levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "requires": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - } - }, - "locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "requires": { - "p-locate": "^5.0.0" - } - }, - "lodash.flattendeep": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", - "integrity": "sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==", - "dev": true - }, - "lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, - "log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "requires": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "loupe": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.6.tgz", - "integrity": "sha512-RaPMZKiMy8/JruncMU5Bt6na1eftNoo++R4Y+N2FrxkDVTrGvcyzFTsaGif4QTeKESheMGegbhw6iUAq+5A8zA==", - "dev": true, - "requires": { - "get-func-name": "^2.0.0" - } - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - }, - "dependencies": { - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } - } - }, - "make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true - }, - "merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true - }, - "micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "dev": true - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "requires": { - "minimist": "^1.2.6" - } - }, - "mocha": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz", - "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==", - "dev": true, - "requires": { - "ansi-colors": "4.1.1", - "browser-stdout": "1.3.1", - "chokidar": "3.5.3", - "debug": "4.3.4", - "diff": "5.0.0", - "escape-string-regexp": "4.0.0", - "find-up": "5.0.0", - "glob": "7.2.0", - "he": "1.2.0", - "js-yaml": "4.1.0", - "log-symbols": "4.1.0", - "minimatch": "5.0.1", - "ms": "2.1.3", - "nanoid": "3.3.3", - "serialize-javascript": "6.0.0", - "strip-json-comments": "3.1.1", - "supports-color": "8.1.1", - "workerpool": "6.2.1", - "yargs": "16.2.0", - "yargs-parser": "20.2.4", - "yargs-unparser": "2.0.0" - }, - "dependencies": { - "argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "diff": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", - "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", - "dev": true - }, - "escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true - }, - "glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "dependencies": { - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "requires": { - "argparse": "^2.0.1" - } - }, - "minimatch": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz", - "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==", - "dev": true, - "requires": { - "brace-expansion": "^2.0.1" - }, - "dependencies": { - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0" - } - } - } - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, - "supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "nanoid": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz", - "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==", - "dev": true - }, - "natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true - }, - "node-preload": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", - "integrity": "sha512-RM5oyBy45cLEoHqCeh+MNuFAxO0vTFBLskvQbOKnEE7YTTSN4tbN8QWDIPQ6L+WvKsB/qLEGpYe2ZZ9d4W9OIQ==", - "dev": true, - "requires": { - "process-on-spawn": "^1.0.0" - } - }, - "node-releases": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", - "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", - "dev": true - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "npx": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/npx/-/npx-3.0.0.tgz", - "integrity": "sha512-4KNE+u9lp5+iDDRkv3GuxHJjQGV+AZs6vqB9HNbxmPRmJLAZRxdLVeka8zp4pQh6FEvp8B0JYrKIx+Ibd5krog==", - "requires": { - "bluebird": "^3.5.0", - "npm-package-arg": "^5.0.1", - "rimraf": "^2.6.1", - "update-notifier": "^2.1.0", - "which": "^1.2.14", - "yargs": "^8.0.1" - }, - "dependencies": { - "ansi-align": { - "version": "2.0.0", - "bundled": true, - "requires": { - "string-width": "^2.0.0" - } - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true - }, - "ansi-styles": { - "version": "2.2.1", - "bundled": true - }, - "bluebird": { - "version": "3.5.0", - "bundled": true - }, - "boxen": { - "version": "1.1.0", - "bundled": true, - "requires": { - "ansi-align": "^2.0.0", - "camelcase": "^4.0.0", - "chalk": "^1.1.1", - "cli-boxes": "^1.0.0", - "string-width": "^2.0.0", - "term-size": "^0.1.0", - "widest-line": "^1.0.0" - } - }, - "builtin-modules": { - "version": "1.1.1", - "bundled": true - }, - "builtins": { - "version": "1.0.3", - "bundled": true - }, - "camelcase": { - "version": "4.1.0", - "bundled": true - }, - "capture-stack-trace": { - "version": "1.0.0", - "bundled": true - }, - "chalk": { - "version": "1.1.3", - "bundled": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "cli-boxes": { - "version": "1.0.0", - "bundled": true - }, - "cliui": { - "version": "3.2.0", - "bundled": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wrap-ansi": "^2.0.0" - }, - "dependencies": { - "string-width": { - "version": "1.0.2", - "bundled": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - } - } - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true - }, - "configstore": { - "version": "3.1.0", - "bundled": true, - "requires": { - "dot-prop": "^4.1.0", - "graceful-fs": "^4.1.2", - "make-dir": "^1.0.0", - "unique-string": "^1.0.0", - "write-file-atomic": "^2.0.0", - "xdg-basedir": "^3.0.0" - }, - "dependencies": { - "dot-prop": { - "version": "4.1.1", - "bundled": true, - "requires": { - "is-obj": "^1.0.0" - } - } - } - }, - "create-error-class": { - "version": "3.0.2", - "bundled": true, - "requires": { - "capture-stack-trace": "^1.0.0" - } - }, - "cross-spawn": { - "version": "4.0.2", - "bundled": true, - "requires": { - "lru-cache": "^4.0.1", - "which": "^1.2.9" - } - }, - "cross-spawn-async": { - "version": "2.2.5", - "bundled": true, - "requires": { - "lru-cache": "^4.0.0", - "which": "^1.2.8" - } - }, - "crypto-random-string": { - "version": "1.0.0", - "bundled": true - }, - "decamelize": { - "version": "1.2.0", - "bundled": true - }, - "deep-extend": { - "version": "0.4.2", - "bundled": true - }, - "duplexer3": { - "version": "0.1.4", - "bundled": true - }, - "error-ex": { - "version": "1.3.1", - "bundled": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "bundled": true - }, - "execa": { - "version": "0.5.1", - "bundled": true, - "requires": { - "cross-spawn": "^4.0.0", - "get-stream": "^2.2.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - } - }, - "find-up": { - "version": "2.1.0", - "bundled": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "get-caller-file": { - "version": "1.0.2", - "bundled": true - }, - "get-stream": { - "version": "2.3.1", - "bundled": true, - "requires": { - "object-assign": "^4.0.1", - "pinkie-promise": "^2.0.0" - } - }, - "got": { - "version": "6.7.1", - "bundled": true, - "requires": { - "create-error-class": "^3.0.0", - "duplexer3": "^0.1.4", - "get-stream": "^3.0.0", - "is-redirect": "^1.0.0", - "is-retry-allowed": "^1.0.0", - "is-stream": "^1.0.0", - "lowercase-keys": "^1.0.0", - "safe-buffer": "^5.0.1", - "timed-out": "^4.0.0", - "unzip-response": "^2.0.1", - "url-parse-lax": "^1.0.0" - }, - "dependencies": { - "get-stream": { - "version": "3.0.0", - "bundled": true - } - } - }, - "graceful-fs": { - "version": "4.1.11", - "bundled": true - }, - "has-ansi": { - "version": "2.0.0", - "bundled": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "hosted-git-info": { - "version": "2.4.2", - "bundled": true - }, - "imurmurhash": { - "version": "0.1.4", - "bundled": true - }, - "ini": { - "version": "1.3.4", - "bundled": true - }, - "invert-kv": { - "version": "1.0.0", - "bundled": true - }, - "is-arrayish": { - "version": "0.2.1", - "bundled": true - }, - "is-builtin-module": { - "version": "1.0.0", - "bundled": true, - "requires": { - "builtin-modules": "^1.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-npm": { - "version": "1.0.0", - "bundled": true - }, - "is-obj": { - "version": "1.0.1", - "bundled": true - }, - "is-redirect": { - "version": "1.0.0", - "bundled": true - }, - "is-retry-allowed": { - "version": "1.1.0", - "bundled": true - }, - "is-stream": { - "version": "1.1.0", - "bundled": true - }, - "isexe": { - "version": "2.0.0", - "bundled": true - }, - "latest-version": { - "version": "3.1.0", - "bundled": true, - "requires": { - "package-json": "^4.0.0" - } - }, - "lazy-req": { - "version": "2.0.0", - "bundled": true - }, - "lcid": { - "version": "1.0.0", - "bundled": true, - "requires": { - "invert-kv": "^1.0.0" - } - }, - "load-json-file": { - "version": "2.0.0", - "bundled": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "strip-bom": "^3.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "bundled": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "lowercase-keys": { - "version": "1.0.0", - "bundled": true - }, - "lru-cache": { - "version": "4.0.2", - "bundled": true, - "requires": { - "pseudomap": "^1.0.1", - "yallist": "^2.0.0" - } - }, - "make-dir": { - "version": "1.0.0", - "bundled": true, - "requires": { - "pify": "^2.3.0" - } - }, - "mem": { - "version": "1.1.0", - "bundled": true, - "requires": { - "mimic-fn": "^1.0.0" - } - }, - "mimic-fn": { - "version": "1.1.0", - "bundled": true - }, - "normalize-package-data": { - "version": "2.3.8", - "bundled": true, - "requires": { - "hosted-git-info": "^2.1.4", - "is-builtin-module": "^1.0.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "npm-package-arg": { - "version": "5.0.1", - "bundled": true, - "requires": { - "hosted-git-info": "^2.4.2", - "osenv": "^0.1.4", - "semver": "^5.1.0", - "validate-npm-package-name": "^3.0.0" - } - }, - "npm-run-path": { - "version": "2.0.2", - "bundled": true, - "requires": { - "path-key": "^2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true - }, - "os-locale": { - "version": "2.0.0", - "bundled": true, - "requires": { - "execa": "^0.5.0", - "lcid": "^1.0.0", - "mem": "^1.1.0" - } - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true - }, - "osenv": { - "version": "0.1.4", - "bundled": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "p-finally": { - "version": "1.0.0", - "bundled": true - }, - "p-limit": { - "version": "1.1.0", - "bundled": true - }, - "p-locate": { - "version": "2.0.0", - "bundled": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "package-json": { - "version": "4.0.1", - "bundled": true, - "requires": { - "got": "^6.7.1", - "registry-auth-token": "^3.0.1", - "registry-url": "^3.0.3", - "semver": "^5.1.0" - } - }, - "parse-json": { - "version": "2.2.0", - "bundled": true, - "requires": { - "error-ex": "^1.2.0" - } - }, - "path-exists": { - "version": "3.0.0", - "bundled": true - }, - "path-key": { - "version": "2.0.1", - "bundled": true - }, - "path-type": { - "version": "2.0.0", - "bundled": true, - "requires": { - "pify": "^2.0.0" - } - }, - "pify": { - "version": "2.3.0", - "bundled": true - }, - "pinkie": { - "version": "2.0.4", - "bundled": true - }, - "pinkie-promise": { - "version": "2.0.1", - "bundled": true, - "requires": { - "pinkie": "^2.0.0" - } - }, - "prepend-http": { - "version": "1.0.4", - "bundled": true - }, - "pseudomap": { - "version": "1.0.2", - "bundled": true - }, - "rc": { - "version": "1.2.1", - "bundled": true, - "requires": { - "deep-extend": "~0.4.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true - } - } - }, - "read-pkg": { - "version": "2.0.0", - "bundled": true, - "requires": { - "load-json-file": "^2.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^2.0.0" - } - }, - "read-pkg-up": { - "version": "2.0.0", - "bundled": true, - "requires": { - "find-up": "^2.0.0", - "read-pkg": "^2.0.0" - } - }, - "registry-auth-token": { - "version": "3.3.1", - "bundled": true, - "requires": { - "rc": "^1.1.6", - "safe-buffer": "^5.0.1" - } - }, - "registry-url": { - "version": "3.1.0", - "bundled": true, - "requires": { - "rc": "^1.0.1" - } - }, - "require-directory": { - "version": "2.1.1", - "bundled": true - }, - "require-main-filename": { - "version": "1.0.1", - "bundled": true - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.0.1", - "bundled": true - }, - "semver": { - "version": "5.3.0", - "bundled": true - }, - "semver-diff": { - "version": "2.1.0", - "bundled": true, - "requires": { - "semver": "^5.0.3" - } - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true - }, - "slide": { - "version": "1.1.6", - "bundled": true - }, - "spdx-correct": { - "version": "1.0.2", - "bundled": true, - "requires": { - "spdx-license-ids": "^1.0.2" - } - }, - "spdx-expression-parse": { - "version": "1.0.4", - "bundled": true - }, - "spdx-license-ids": { - "version": "1.2.2", - "bundled": true - }, - "string-width": { - "version": "2.0.0", - "bundled": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^3.0.0" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "2.0.0", - "bundled": true - } - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-bom": { - "version": "3.0.0", - "bundled": true - }, - "strip-eof": { - "version": "1.0.0", - "bundled": true - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true - }, - "supports-color": { - "version": "2.0.0", - "bundled": true - }, - "term-size": { - "version": "0.1.1", - "bundled": true, - "requires": { - "execa": "^0.4.0" - }, - "dependencies": { - "execa": { - "version": "0.4.0", - "bundled": true, - "requires": { - "cross-spawn-async": "^2.1.1", - "is-stream": "^1.1.0", - "npm-run-path": "^1.0.0", - "object-assign": "^4.0.1", - "path-key": "^1.0.0", - "strip-eof": "^1.0.0" - } - }, - "npm-run-path": { - "version": "1.0.0", - "bundled": true, - "requires": { - "path-key": "^1.0.0" - } - }, - "path-key": { - "version": "1.0.0", - "bundled": true - } - } - }, - "timed-out": { - "version": "4.0.1", - "bundled": true - }, - "unique-string": { - "version": "1.0.0", - "bundled": true, - "requires": { - "crypto-random-string": "^1.0.0" - } - }, - "unzip-response": { - "version": "2.0.1", - "bundled": true - }, - "update-notifier": { - "version": "2.1.0", - "bundled": true, - "requires": { - "boxen": "^1.0.0", - "chalk": "^1.0.0", - "configstore": "^3.0.0", - "is-npm": "^1.0.0", - "latest-version": "^3.0.0", - "lazy-req": "^2.0.0", - "semver-diff": "^2.0.0", - "xdg-basedir": "^3.0.0" - } - }, - "url-parse-lax": { - "version": "1.0.0", - "bundled": true, - "requires": { - "prepend-http": "^1.0.1" - } - }, - "validate-npm-package-license": { - "version": "3.0.1", - "bundled": true, - "requires": { - "spdx-correct": "~1.0.0", - "spdx-expression-parse": "~1.0.0" - } - }, - "validate-npm-package-name": { - "version": "3.0.0", - "bundled": true, - "requires": { - "builtins": "^1.0.3" - } - }, - "which": { - "version": "1.2.14", - "bundled": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "which-module": { - "version": "2.0.0", - "bundled": true - }, - "widest-line": { - "version": "1.0.0", - "bundled": true, - "requires": { - "string-width": "^1.0.1" - }, - "dependencies": { - "string-width": { - "version": "1.0.2", - "bundled": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - } - } - }, - "wrap-ansi": { - "version": "2.1.0", - "bundled": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" - }, - "dependencies": { - "string-width": { - "version": "1.0.2", - "bundled": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - } - } - }, - "write-file-atomic": { - "version": "2.1.0", - "bundled": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "slide": "^1.1.5" - } - }, - "xdg-basedir": { - "version": "3.0.0", - "bundled": true - }, - "y18n": { - "version": "3.2.1", - "bundled": true - }, - "yallist": { - "version": "2.1.2", - "bundled": true - }, - "yargs": { - "version": "8.0.1", - "bundled": true, - "requires": { - "camelcase": "^4.1.0", - "cliui": "^3.2.0", - "decamelize": "^1.1.1", - "get-caller-file": "^1.0.1", - "os-locale": "^2.0.0", - "read-pkg-up": "^2.0.0", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^2.0.0", - "which-module": "^2.0.0", - "y18n": "^3.2.1", - "yargs-parser": "^7.0.0" - } - }, - "yargs-parser": { - "version": "7.0.0", - "bundled": true, - "requires": { - "camelcase": "^4.1.0" - } - } - } - }, - "nyc": { - "version": "15.1.0", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-15.1.0.tgz", - "integrity": "sha512-jMW04n9SxKdKi1ZMGhvUTHBN0EICCRkHemEoE5jm6mTYcqcdas0ATzgUgejlQUHMvpnOZqGB5Xxsv9KxJW1j8A==", - "dev": true, - "requires": { - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "caching-transform": "^4.0.0", - "convert-source-map": "^1.7.0", - "decamelize": "^1.2.0", - "find-cache-dir": "^3.2.0", - "find-up": "^4.1.0", - "foreground-child": "^2.0.0", - "get-package-type": "^0.1.0", - "glob": "^7.1.6", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-hook": "^3.0.0", - "istanbul-lib-instrument": "^4.0.0", - "istanbul-lib-processinfo": "^2.0.2", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.0.2", - "make-dir": "^3.0.0", - "node-preload": "^0.2.1", - "p-map": "^3.0.0", - "process-on-spawn": "^1.0.0", - "resolve-from": "^5.0.0", - "rimraf": "^3.0.0", - "signal-exit": "^3.0.2", - "spawn-wrap": "^2.0.0", - "test-exclude": "^6.0.0", - "yargs": "^15.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "object-inspect": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", - "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", - "dev": true - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - }, - "object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - } - }, - "object.fromentries": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.7.tgz", - "integrity": "sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" - } - }, - "object.groupby": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.1.tgz", - "integrity": "sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1" - } - }, - "object.values": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.7.tgz", - "integrity": "sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" - } - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "requires": { - "wrappy": "1" - } - }, - "optionator": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", - "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", - "dev": true, - "requires": { - "@aashutoshrathi/word-wrap": "^1.2.3", - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0" - } - }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "requires": { - "p-limit": "^3.0.2" - } - }, - "p-map": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "package-hash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-4.0.0.tgz", - "integrity": "sha512-whdkPIooSu/bASggZ96BWVvZTRMOFxnyUG5PnTSGKoJE2gd5mbVNmR2Nj20QFzxYYgAXpoqC+AiXzl+UMRh7zQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.15", - "hasha": "^5.0.0", - "lodash.flattendeep": "^4.4.0", - "release-zalgo": "^1.0.0" - } - }, - "pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" - }, - "parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "requires": { - "callsites": "^3.0.0" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==" - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true - }, - "pathval": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", - "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", - "dev": true - }, - "pdf-lib": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/pdf-lib/-/pdf-lib-1.17.1.tgz", - "integrity": "sha512-V/mpyJAoTsN4cnP31vc0wfNA1+p20evqqnap0KLoRUN0Yk/p3wN52DOEsL4oBFcLdb76hlpKPtzJIgo67j/XLw==", - "requires": { - "@pdf-lib/standard-fonts": "^1.0.0", - "@pdf-lib/upng": "^1.0.1", - "pako": "^1.0.11", - "tslib": "^1.11.1" - } - }, - "picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true - }, - "pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "requires": { - "find-up": "^4.0.0" - }, - "dependencies": { - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - } - } - }, - "prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true - }, - "process-on-spawn": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/process-on-spawn/-/process-on-spawn-1.0.0.tgz", - "integrity": "sha512-1WsPDsUSMmZH5LeMLegqkPDrsGgsWwk1Exipy2hvB0o/F0ASzbpIctSCcZIK1ykJvtTJULEH+20WOFjMvGnCTg==", - "dev": true, - "requires": { - "fromentries": "^1.2.0" - } - }, - "punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", - "dev": true - }, - "queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true - }, - "randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "requires": { - "safe-buffer": "^5.1.0" - } - }, - "readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "requires": { - "picomatch": "^2.2.1" - } - }, - "regexp.prototype.flags": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz", - "integrity": "sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "functions-have-names": "^1.2.3" - } - }, - "release-zalgo": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", - "integrity": "sha512-gUAyHVHPPC5wdqX/LG4LWtRYtgjxyX78oanFNTMMyFEfOqdC54s3eE82imuWKbOeqYht2CrNf64Qb8vgmmtZGA==", - "dev": true, - "requires": { - "es6-error": "^4.0.1" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "resolve": { - "version": "1.22.4", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", - "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", - "dev": true, - "requires": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - }, - "reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "requires": { - "queue-microtask": "^1.2.2" - } - }, - "safe-array-concat": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.0.0.tgz", - "integrity": "sha512-9dVEFruWIsnie89yym+xWTAYASdpw3CJV7Li/6zBewGf9z2i1j31rP6jnY0pHEO4QZh6N0K11bFjWmdR8UGdPQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "has-symbols": "^1.0.3", - "isarray": "^2.0.5" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "safe-regex-test": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-regex": "^1.1.4" - } - }, - "semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true - }, - "serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", - "dev": true, - "requires": { - "randombytes": "^2.1.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "dev": true - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dev": true, - "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - } - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "spawn-wrap": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-2.0.0.tgz", - "integrity": "sha512-EeajNjfN9zMnULLwhZZQU3GWBoFNkbngTUPfaawT4RkMiviTxcX0qfhVbGey39mfctfDHkWtuecgQ8NJcyQWHg==", - "dev": true, - "requires": { - "foreground-child": "^2.0.0", - "is-windows": "^1.0.2", - "make-dir": "^3.0.0", - "rimraf": "^3.0.0", - "signal-exit": "^3.0.2", - "which": "^2.0.1" - } - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "string.prototype.trim": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.7.tgz", - "integrity": "sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "string.prototype.trimend": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", - "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "string.prototype.trimstart": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", - "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", - "dev": true - }, - "strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, - "requires": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - } - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "ts-api-utils": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.2.tgz", - "integrity": "sha512-Cbu4nIqnEdd+THNEsBdkolnOXhg0I8XteoHaEKgvsxpsbWda4IsUut2c187HxywQCvveojow0Dgw/amxtSKVkQ==", - "dev": true, - "requires": {} - }, - "ts-node": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", - "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", - "dev": true, - "requires": { - "@cspotcode/source-map-support": "^0.8.0", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "v8-compile-cache-lib": "^3.0.1", - "yn": "3.1.1" - } - }, - "tsconfig-paths": { - "version": "3.14.2", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz", - "integrity": "sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==", - "dev": true, - "requires": { - "@types/json5": "^0.0.29", - "json5": "^1.0.2", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "tslint": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/tslint/-/tslint-6.1.3.tgz", - "integrity": "sha512-IbR4nkT96EQOvKE2PW/djGz8iGNeJ4rF2mBfiYaR/nvUWYKJhLwimoJKgjIFEIDibBtOevj7BqCRL4oHeWWUCg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "builtin-modules": "^1.1.1", - "chalk": "^2.3.0", - "commander": "^2.12.1", - "diff": "^4.0.1", - "glob": "^7.1.1", - "js-yaml": "^3.13.1", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.3", - "resolve": "^1.3.2", - "semver": "^5.3.0", - "tslib": "^1.13.0", - "tsutils": "^2.29.0" - } - }, - "tsutils": { - "version": "2.29.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", - "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - } - }, - "type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "requires": { - "prelude-ls": "^1.2.1" - } - }, - "type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true - }, - "type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true - }, - "typed-array-buffer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz", - "integrity": "sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1", - "is-typed-array": "^1.1.10" - } - }, - "typed-array-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz", - "integrity": "sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" - } - }, - "typed-array-byte-offset": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz", - "integrity": "sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==", - "dev": true, - "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" - } - }, - "typed-array-length": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", - "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" - } - }, - "typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", - "dev": true, - "requires": { - "is-typedarray": "^1.0.0" - } - }, - "typescript": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz", - "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", - "dev": true - }, - "unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - } - }, - "update-browserslist-db": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", - "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "dev": true - }, - "v8-compile-cache-lib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", - "dev": true - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "which-boxed-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", - "dev": true, - "requires": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - } - }, - "which-module": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", - "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", - "dev": true - }, - "which-typed-array": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.11.tgz", - "integrity": "sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==", - "dev": true, - "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" - } - }, - "workerpool": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.2.1.tgz", - "integrity": "sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw==", - "dev": true - }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" - }, - "write-file-atomic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" - } - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - } - }, - "yargs-parser": { - "version": "20.2.4", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", - "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", - "dev": true - }, - "yargs-unparser": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", - "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", - "dev": true, - "requires": { - "camelcase": "^6.0.0", - "decamelize": "^4.0.0", - "flat": "^5.0.2", - "is-plain-obj": "^2.1.0" - }, - "dependencies": { - "camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true - }, - "decamelize": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", - "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", - "dev": true - } - } - }, - "yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - "dev": true - }, - "yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true - } - } -} diff --git a/package.json b/package.json deleted file mode 100644 index 0f7c93e..0000000 --- a/package.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "name": "clo", - "version": "0.0.1", - "description": "a little typesetting engine in TypeScript", - "main": "src/index.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/Yoxem/clo.git" - }, - "keywords": [ - "typesetting" - ], - "author": "Tan Kian-ting", - "license": "MIT", - "bugs": { - "url": "https://github.com/Yoxem/clo/issues" - }, - "homepage": "https://github.com/Yoxem/clo#readme", - "devDependencies": { - "@types/chai": "^4.3.5", - "@types/mocha": "^10.0.1", - "@types/node": "^20.5.7", - "@typescript-eslint/eslint-plugin": "^6.5.0", - "chai": "^4.3.8", - "eslint": "^8.48.0", - "eslint-config-standard-with-typescript": "^39.0.0", - "eslint-plugin-import": "^2.28.1", - "eslint-plugin-n": "^16.0.2", - "eslint-plugin-promise": "^6.1.1", - "mocha": "^10.2.0", - "nyc": "^15.1.0", - "ts-node": "^10.9.1", - "tslint": "^6.1.3", - "typescript": "^5.2.2" - }, - "dependencies": { - "@pdf-lib/fontkit": "^1.1.1", - "harfbuzzjs": "^0.3.3", - "npx": "^3.0.0", - "pdf-lib": "^1.17.1" - } -} diff --git a/parserRule.txt b/parserRule.txt deleted file mode 100644 index b1bcb74..0000000 --- a/parserRule.txt +++ /dev/null @@ -1,8 +0,0 @@ -single = "(" expr ")" | int -args = single , args | single -callees = "(" args ")" | "(" ")" -facAux = callees facAux | callees -single facAux | single -fac = single facAux | single -term = fac | fac (MUL | DIV) fac -expr = term (ADD | SUB) term diff --git a/parserRuleRefOnly.txt b/parserRuleRefOnly.txt deleted file mode 100644 index efff906..0000000 --- a/parserRuleRefOnly.txt +++ /dev/null @@ -1,65 +0,0 @@ -let sqrtSum = (int x, int y) -> int { -let x2 = x * x; -let y2 = y * y; -return x2+y2; -} - -let pi = 3.14159; -let _2p = (intToFLo 2) *. pi; - -let c = if (2 == 2) then 2 else 3; - -let aStr = "hello"; - -let rec fac = (int n)-> int { - if n == 0 then 1 else (fac (n - 1));}; - - -type student = Student {int id, string name}; - -let alice = Student {id=20, name="Alice"}; - -alice.name = "Siobhan"; - -let customAnd = (@ 'a has age) ('a x, 'a y) => {'a > 'b}; - -type list 'a = (Cons 'a (List 'a)) | Nil; - -import("alifbata.clo"); # 匯入檔案 alifbata # - -t of import :== string -> Option string string -Error("string") | Ok("import aaa") -# 型別構造子統一大寫,型別小寫 # - - - -PROG ::= (STMT | COMMENT | STMT_COMMENT)* -COMMENT ::= # COMMENT_INNER # -COMMENT_INNER ::= [^#]+ -STMT ::= (TYPE_DEF | VAR_DEF | SET | EXPR ) ";" -TYPE_DEF ::= type ID "=" UNION - | type ID TYPE_VARS+ "=" UNIOM -TYPE_VARS = ' ID -UNION ::= (REC "|" UNION) | REC -REC ::= ID ( TYPES ) -TYPES ::= TYPE+ -TYPE ::= ID - -EXPR ::= if SUB_EXPR then IF_BRANCH else IF_BRANCH | SUB_EXPR -IF_BRANCH ::= EXPR | { BLOCK } -SUB_EXPR ::= COMPAREE| COMPAREE (LE|GE|LT|GT|EQ|NE) EXPR -COMPAREE ::= FAC| (FAC(ADD | SUB) FAC) -FAC ::= APPLY | (APPLIER (MUL | DIV) APPLY) -APPLY ::= "(" ID APPLYEE* ")" | APPLYEE -APPLYEE ::= REF | CONST | EXPR | FUNC -* CONST ::= INT | STR | FLO | BOOL -BOOL ::= "true" | "false" -FUNC ::= FUNC_OPTION? ( ARGS? ) -> TYPE {BLOCK} -BLOCK ::= PROG (return ID |noReturn) ; - -REF ::= VAR "." ID | VAR -VAR ::= ID -VAR_DEF ::= "let" VAR "=" EXPR -SET ::= VAR "=" EXPR -FUNC_OPTION ::= ( @ TYPE_HAS (, TYPE_HAS)* ) -TYPE_HAS ::= TYPE_VAR "has" ID \ No newline at end of file diff --git a/src/harfbuzz.js b/src/harfbuzz.js deleted file mode 100644 index 7b9fa59..0000000 --- a/src/harfbuzz.js +++ /dev/null @@ -1,45 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.harfbuzzTest = void 0; -var hb = require('harfbuzzjs/hbjs'); -var fs = require('fs'); -// some part of code derived from that by Ebrahim Byagowi, -// under MIT License -function harfbuzzTest(inputString) { - WebAssembly.instantiate(fs.readFileSync(__dirname + "/../3rdparty/harfbuzzjs/hb.wasm")) - .then(function (wsm) { - hb = hb(wsm.instance); - let fontdata = fs.readFileSync("/usr/share/fonts/truetype/freefont/FreeSerif.ttf"); - //hbjs(fontdata.instance); - //console.log(a); - var blob = hb.createBlob(fontdata); // Load the font data into something Harfbuzz can use - var face = hb.createFace(blob, 0); // Select the first font in the file (there's normally only one!) - var font = hb.createFont(face); // Create a Harfbuzz font object from the face - var buffer = hb.createBuffer(); // Make a buffer to hold some text - buffer.addText(inputString); // Fill it with some stuff - buffer.guessSegmentProperties(); // Set script, language and direction - hb.shape(font, buffer); // Shape the text, determining glyph IDs and positions - var output = buffer.json(); - // Enumerate the glyphs - console.log("id\tax\tdx\tdy"); - var xCursor = 0; - var yCursor = 0; - for (var glyph of output) { - var glyphId = glyph.g; - var xAdvance = glyph.ax; - var xDisplacement = glyph.dx; - var yDisplacement = glyph.dy; - var svgPath = font.glyphToPath(glyphId); - console.log(glyphId + "\t" + xAdvance + "\t" + xDisplacement + "\t" + yDisplacement); - // You need to supply this bit - //drawAGlyph(svgPath, xCursor + xDisplacement, yDisplacement); - // xCursor += xAdvance; - } - // Release memory - buffer.destroy(); - font.destroy(); - face.destroy(); - blob.destroy(); - }); -} -exports.harfbuzzTest = harfbuzzTest; diff --git a/src/harfbuzz.ts b/src/harfbuzz.ts deleted file mode 100644 index c7be4f0..0000000 --- a/src/harfbuzz.ts +++ /dev/null @@ -1,57 +0,0 @@ -var hb = require('harfbuzzjs/hbjs'); -var fs = require('fs'); -// some part of code derived from that by Ebrahim Byagowi, -// under MIT License -export function harfbuzzTest(inputString: string){ - WebAssembly.instantiate(fs.readFileSync(__dirname+"/../3rdparty/harfbuzzjs/hb.wasm")) - .then(function (wsm) { - - hb = hb(wsm.instance); - - - let fontdata = fs.readFileSync("/usr/share/fonts/truetype/freefont/FreeSerif.ttf"); - - //hbjs(fontdata.instance); - - //console.log(a); - - var blob = hb.createBlob(fontdata); // Load the font data into something Harfbuzz can use - var face = hb.createFace(blob, 0); // Select the first font in the file (there's normally only one!) - var font = hb.createFont(face); // Create a Harfbuzz font object from the face - var buffer = hb.createBuffer(); // Make a buffer to hold some text - buffer.addText(inputString); // Fill it with some stuff - buffer.guessSegmentProperties(); // Set script, language and direction - hb.shape(font, buffer); // Shape the text, determining glyph IDs and positions - var output : Array<{g : number, - ax : number, - dx : number, - dy : number}> = buffer.json(); - - // Enumerate the glyphs - console.log("id\tax\tdx\tdy"); - - var xCursor = 0; - var yCursor = 0; - for (var glyph of output) { - var glyphId = glyph.g; - var xAdvance = glyph.ax; - var xDisplacement = glyph.dx; - var yDisplacement = glyph.dy; - - var svgPath = font.glyphToPath(glyphId); - - console.log(glyphId + "\t" + xAdvance + "\t" + xDisplacement + "\t" + yDisplacement); - - // You need to supply this bit - //drawAGlyph(svgPath, xCursor + xDisplacement, yDisplacement); - - // xCursor += xAdvance; - } - - // Release memory - buffer.destroy(); - font.destroy(); - face.destroy(); - blob.destroy(); - }); -} \ No newline at end of file diff --git a/src/index.d.ts b/src/index.d.ts deleted file mode 100644 index cb0ff5c..0000000 --- a/src/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/src/index.js b/src/index.js deleted file mode 100644 index c424e5b..0000000 --- a/src/index.js +++ /dev/null @@ -1,404 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.OnceOrMoreDo = exports.matchAny = exports.m1TType = exports.tkTreeToSExp = void 0; -var fs = require('fs'); -const node_process_1 = require("node:process"); -const tk = __importStar(require("./tokenize.js")); -const util = __importStar(require("util")); -/** - * debug reprensenting - */ -let repr = (x) => { return util.inspect(x, { depth: null }); }; -/** - * concated 2 `tkTree`s - * @param x the array to be concated - * @param y the item or array to ve concated - * @returns concated tkTree array, or thrown error if can't be concated. - */ -function concat(x, y) { - if (Array.isArray(x)) { - return x.concat(y); - } - else { - throw new Error("the tkTree can't be concated, because it's not an array."); - } -} -function slice(x, index, end) { - if (Array.isArray(x)) { - return x.slice(index, end); - } - else { - throw new Error("the tkTree can't be concated, because it's not an array."); - } -} -/** - * convert a `tkTree` AST to S-expr string - * @param t the `tkTree` - * @returns S-expr String - */ -function tkTreeToSExp(t) { - var str = ""; - if (Array.isArray(t)) { - let strArray = t.map((x) => tkTreeToSExp(x)); - str = "(" + strArray.join(" ") + ")"; - } - else { - if (t === undefined) { - str = "%undefined"; - } - else { - str = t.text; - } - } - return str; -} -exports.tkTreeToSExp = tkTreeToSExp; -/** - * @description - * match one token type. - * - * it returns a function which test if the type of first token of the `remained` part of - * the argument of the function is `typ` , if it's true, update the `TokenMatcheePair` wrapped - * in `Some`. Otherwise, it returns `None`. - * * @param typ : the type to be test. - * @returns the updated `TokenMatcheePair` wrapped in `Some(x)` or `None`. - */ -function m1TType(typ) { - return (m) => { - if (m.remained.length == 0) { - return { _tag: "None" }; - } - /** - * token to be matched - * */ - const ttbm = m.remained[0]; - if (ttbm.type == typ) { - let new_matched = m.matched.concat(ttbm); - let result = { - _tag: "Some", value: { - matched: new_matched, - remained: m.remained.slice(1), - ast: ([ttbm]), - } - }; - return result; - } - else { - return { _tag: "None" }; - } - }; -} -exports.m1TType = m1TType; -; -/** - * type int - */ -let tInt = m1TType(tk.TokenType.INT); -let tId = m1TType(tk.TokenType.ID); -let tAdd = m1TType(tk.TokenType.I_ADD); -let tSub = m1TType(tk.TokenType.I_SUB); -let tMul = m1TType(tk.TokenType.I_MUL); -let tDiv = m1TType(tk.TokenType.I_DIV); -let tLParen = m1TType(tk.TokenType.L_PAREN); -let tRParen = m1TType(tk.TokenType.R_PAREN); -let tComma = m1TType(tk.TokenType.COMMA); -let toSome = tk.toSome; -node_process_1.argv.forEach((val, index) => { - console.log(`${index}=${val}`); -}); -/** - * like `m ==> f` in ocaml - * @param m matchee wrapped - * @param f matching function - * @returns wrapped result - */ -function thenDo(m, f) { - if (m._tag == "None") { - return m; - } - else { - var a = f(m.value); - if (a._tag == "Some") { - a.value.ast = concat(m.value.ast, a.value.ast); - } - return a; - } -} -/** - * like `f1 | f2` in regex - * @param f1 the first tried function - * @param f2 the second tried function - * @returns wrapped result - */ -function orDo(f1, f2) { - return (x) => { - let res1 = f1(x); - if (res1._tag == "Some") { - return res1; - } - else { - let res2 = f2(x); - return res2; - } - }; -} -/** - * - * @param m : the `MatcheePair` to be consumed. - * @returns if the length of `m.remained` >= 1; consumes the matchee by 1 token - * and wraps it in `Some`, - * otherwise, returns `None`. - */ -function matchAny(m) { - if (m.remained.length >= 1) { - return { - _tag: "Some", value: { - matched: m.matched.concat(m.remained[0]), - remained: m.remained.slice(1), - ast: [m.remained[0]], - } - }; - } - else { - return { _tag: "None" }; - } -} -exports.matchAny = matchAny; -/** - * Danger : Maybe it's not enough to work. -* @description repeating matching function `f` -* zero or more times, like the asterisk `*` in regex `f*` . -* @param f : the function to be repeated 0+ times. -* @returns:the combined function -*/ -function OnceOrMoreDo(f) { - return (x) => { - var wrappedOldX = { _tag: "Some", value: x }; - var wrappedNewX = wrappedOldX; - var counter = -1; - while (wrappedNewX._tag != "None") { - wrappedOldX = wrappedNewX; - wrappedNewX = thenDo(wrappedOldX, f); - counter += 1; - } - ; - if (counter <= 0) { - return { _tag: "None" }; - } - let ast = wrappedOldX.value.ast; - wrappedOldX.value.ast = ast.slice(ast.length - counter); - console.log(repr(wrappedOldX.value.ast)); - return wrappedOldX; - }; -} -exports.OnceOrMoreDo = OnceOrMoreDo; -/** - * aux function for midfix operator - * @param f function - * @param signal the rule name - * @returns - */ -let midfix = (f, signal) => (x) => { - var a = f(x); - if (a._tag == "Some") { - let ast_tail = slice(a.value.ast, a.value.ast.length - 3); - let new_ast = [ast_tail]; - a.value.ast = new_ast; - // console.log("+"+signal+"+"+repr(a)); - } - return a; -}; -let circumfix = (f, signal) => (x) => { - var a = f(x); - if (a._tag == "Some") { - console.log("$$$" + repr(a.value.ast)); - let inner = a.value.ast[a.value.ast.length - 2]; - var ast_middle; - // the list should not be (%list) (%apply) (%lambda) etc. - if (Array.isArray(inner)) { - if ('text' in inner[0] && (inner[0].text.slice(0, 1) != "%")) { - ast_middle = inner; - } - else { - ast_middle = [inner]; - } - } - else { - ast_middle = [inner]; - } - let new_ast = [ast_middle]; - a.value.ast = new_ast; - } - return a; -}; -/** single1 = tInt | "(" expr ")"*/ -let single1 = circumfix((x) => thenDo(thenDo(thenDo(toSome(x), tLParen), expr), tRParen), "fac1"); -let single2 = tInt; -let single = orDo(single1, single2); -/** args = single "," args | single */ -let args1 = (x) => { - var ret = thenDo(thenDo(thenDo(toSome(x), single), tComma), args); - if (ret._tag == "Some") { - let retLength = ret.value.ast.length; - ret.value.ast = [[ret.value.ast[retLength - 3]].concat(ret.value.ast[retLength - 1])]; - console.log("$$" + repr(ret.value.ast)); - } - return ret; -}; -let args2 = single; -let args = orDo(args1, args2); -/** callees = "(" args ")" | "(" ")" */ -let callees1 = circumfix((x) => thenDo(thenDo(thenDo(toSome(x), tLParen), args), tRParen), "callees1"); -let callees2 = (x) => { - let ret = thenDo(thenDo(toSome(x), tLParen), tRParen); - if (ret._tag == "Some") { - let new_ast = [[]]; - ret.value.ast = new_ast; - } - return ret; -}; -let callees = orDo(callees1, callees2); -/** %apply R combinating token */ -let applyToken = { - text: "%apply", - type: tk.TokenType.ID, - col: 0, - ln: 0, -}; -/** facAux = callees facAux | callees */ -let facAux1 = (x) => { - var ret = thenDo(thenDo(toSome(x), callees), facAux); - if (ret._tag == "Some") { - console.log("1232345" + repr(tkTreeToSExp(ret.value.ast[ret.value.ast.length - 1]))); - let last1 = ret.value.ast[ret.value.ast.length - 1]; - let last2 = ret.value.ast[ret.value.ast.length - 2]; - let b = [applyToken]; - ret.value.ast = [b.concat([last2, last1])]; - console.log("11111" + repr(tkTreeToSExp(ret.value.ast))); - } - ; - return ret; -}; -let facAux2 = callees; -let facAux = orDo(facAux1, facAux2); -/** fac = single facAux | single - * Issue1 to be fixed. - */ -let fac1 = (x) => { - var ret = thenDo(thenDo(toSome(x), single), facAux); - if (ret._tag == "Some") { - console.log("777" + repr(tkTreeToSExp(ret.value.ast))); - ret.value.ast = [applyToken, ret.value.ast[ret.value.ast.length - 2], - ret.value.ast[ret.value.ast.length - 1]]; - ret.value.ast; - rearrangeTree(ret.value.ast); - console.log("888" + repr(tkTreeToSExp(ret.value.ast))); - } - return ret; -}; -let fac2 = single; -let fac = orDo(fac1, fac2); -/** - * rearrangeTree : for applyToken subtree from right-combination to - * left-combination - * @input x a ast - * @return another ast - */ -function rearrangeTree(x) { - if (x !== undefined) { - for (var i = 1; i < x.length; i++) { - rearrangeTree(x[i]); - } - console.log("@@" + repr(x[0])); - if (x[0] == applyToken) { - if (Array.isArray(x[2]) && x[2][0] == applyToken) { - let rl = rearrangeTree(x[2][1]); - let rr = rearrangeTree(x[2][2]); - let l = rearrangeTree(x[1]); - x[0] = applyToken; - x[1] = [applyToken, l, rl]; - x[2] = rr; - console.log("@@==" + repr(x)); - return x; - } - else { - x[0] = applyToken; - x[1] = rearrangeTree(x[1]); - x[2] = rearrangeTree(x[2]); - console.log("@@==" + repr(x)); - return x; - } - } - return x; - } -} -/** - * - * term1 = fac (MUL | DIV) fac - */ -let term1 = midfix((x) => thenDo(thenDo(thenDo(toSome(x), fac), orDo(tMul, tDiv)), fac), "term1"); -/** - * - * term2 = int MUL int - */ -let term2 = fac; -/** - * term = term1 | term2 - */ -let term = orDo(term1, term2); -/** - * - * expr1 = term ADD term - */ -let expr1 = midfix((x) => thenDo(thenDo(thenDo(toSome(x), term), orDo(tAdd, tSub)), term), "expr1"); -/** - * expr2 = term - */ -let expr2 = term; -/** - * expr = expr1 | expr2 - */ -let expr = orDo(expr1, expr2); -let tokens = tk.tokenize("1"); -let tokens2 = tk.tokenize("1(2)"); -let tokens3 = tk.tokenize("1(2)(3)"); -let tokens4 = tk.tokenize("2()(4)(5,6)(7,8,9,10)"); -//let tokens = tk.tokenize("(4-(3/4))"); -//tk.tokenize(argv[2]); -let tokensFiltered = tokens4.filter((x) => { - return (x.type != tk.TokenType.NL - && x.type != tk.TokenType.SP); -}); -let beta = expr({ - matched: [], - remained: tokensFiltered, - ast: [] -}); -if (beta._tag == "Some") { - beta.value.ast = rearrangeTree(beta.value.ast); - console.log(tkTreeToSExp(beta.value.ast)); -} -console.log("RESULT=" + repr(beta)); diff --git a/src/index.ts b/src/index.ts deleted file mode 100644 index 46c4a72..0000000 --- a/src/index.ts +++ /dev/null @@ -1,476 +0,0 @@ -var fs = require('fs'); -import { argv, resourceUsage } from 'node:process'; -import * as tk from './tokenize.js'; -import * as util from 'util'; -import { drawEllipsePath, reduceRotation } from 'pdf-lib'; -import { isAnyArrayBuffer, isTypedArray } from 'node:util/types'; -import { error } from 'node:console'; -import { isUndefined } from 'node:util'; - -/** - * debug reprensenting - */ -let repr = (x : any)=>{return util.inspect(x, {depth: null})}; - -/** - * token tree type. - */ -type tkTree = tkTree[] | tk.Token - -/** - * concated 2 `tkTree`s - * @param x the array to be concated - * @param y the item or array to ve concated - * @returns concated tkTree array, or thrown error if can't be concated. - */ -function concat(x: tkTree, y:tkTree): tkTree[] { - if (Array.isArray(x)){ - return x.concat(y); - }else{ - throw new Error("the tkTree can't be concated, because it's not an array."); - - } -} - -function slice(x: tkTree, index?:number, end?:number): tkTree[] { - if (Array.isArray(x)){ - return x.slice(index,end); - }else{ - throw new Error("the tkTree can't be concated, because it's not an array."); - - } -} - -/** - * TokenMatcheePair for tokens' parser combinator - * - * matched: the matched (now and before) tokens - * - * remained: tokens to be matched - * - * ast: abstract syntax tree - */ -export interface TokenMatcheePair { - matched: tk.Token[] - remained: tk.Token[] - ast : tkTree[] -} - -/** - * convert a `tkTree` AST to S-expr string - * @param t the `tkTree` - * @returns S-expr String - */ -export function tkTreeToSExp(t: tkTree): string{ - var str = ""; - - if (Array.isArray(t)){ - let strArray = t.map((x)=>tkTreeToSExp(x)); - str = "(" + strArray.join(" ") + ")"; - }else{ - if (t=== undefined){ - str = "%undefined" - }else{ - str = t.text; - } - } - - return str; -} - -/** - * @description - * match one token type. - * - * it returns a function which test if the type of first token of the `remained` part of - * the argument of the function is `typ` , if it's true, update the `TokenMatcheePair` wrapped - * in `Some`. Otherwise, it returns `None`. - * * @param typ : the type to be test. - * @returns the updated `TokenMatcheePair` wrapped in `Some(x)` or `None`. - */ -export function m1TType(typ: tk.TokenType): - (m: TokenMatcheePair) => tk.Maybe { - return (m: TokenMatcheePair) => { - if (m.remained.length == 0) { - return { _tag: "None" }; - } - /** - * token to be matched - * */ - const ttbm = m.remained[0]; - - if (ttbm.type == typ) { - let new_matched = m.matched.concat(ttbm); - let result : tk.Some = { - _tag: "Some", value: { - matched: new_matched, - remained: m.remained.slice(1), - ast: ([ttbm]), - } - }; - return result; - } - else { - return { _tag: "None" }; - } - } -}; - -/** - * type int - */ -let tInt = m1TType(tk.TokenType.INT); -let tId = m1TType(tk.TokenType.ID); - - -let tAdd = m1TType(tk.TokenType.I_ADD); -let tSub = m1TType(tk.TokenType.I_SUB); -let tMul = m1TType(tk.TokenType.I_MUL); -let tDiv = m1TType(tk.TokenType.I_DIV); -let tLParen = m1TType(tk.TokenType.L_PAREN); -let tRParen = m1TType(tk.TokenType.R_PAREN); -let tComma = m1TType(tk.TokenType.COMMA); -let toSome = tk.toSome; - - -argv.forEach((val, index) => { - console.log(`${index}=${val}`); -}); - - -/** - * like `m ==> f` in ocaml - * @param m matchee wrapped - * @param f matching function - * @returns wrapped result - */ -function thenDo(m : tk.Maybe, f : Function){ - if (m._tag == "None"){ - return m; - }else{ - var a : tk.Maybe = f(m.value); - if (a._tag == "Some"){ - a.value.ast = concat(m.value.ast, a.value.ast); - } - - return a; - } -} - -/** - * like `f1 | f2` in regex - * @param f1 the first tried function - * @param f2 the second tried function - * @returns wrapped result - */ -function orDo(f1 : Function, f2 : Function){ - return (x : TokenMatcheePair) =>{ - let res1 : tk.Maybe = f1(x); - if (res1._tag == "Some"){ - return res1; - }else{ - let res2 : tk.Maybe = f2(x); - return res2; - } - } -} - - -/** - * - * @param m : the `MatcheePair` to be consumed. - * @returns if the length of `m.remained` >= 1; consumes the matchee by 1 token - * and wraps it in `Some`, - * otherwise, returns `None`. - */ -export function matchAny(m: TokenMatcheePair): tk.Maybe { - if (m.remained.length >= 1) { - return { - _tag: "Some", value: { - matched: m.matched.concat(m.remained[0]), - remained: m.remained.slice(1), - ast : [m.remained[0]], - } - }; - } else { - return { _tag: "None" }; - } -} - -/** - * Danger : Maybe it's not enough to work. -* @description repeating matching function `f` -* zero or more times, like the asterisk `*` in regex `f*` . -* @param f : the function to be repeated 0+ times. -* @returns:the combined function -*/ -export function OnceOrMoreDo(f: Function): (x: TokenMatcheePair) => - tk.Maybe { - return (x) => { - var wrappedOldX: tk.Maybe = { _tag: "Some", value: x }; - var wrappedNewX: tk.Maybe = wrappedOldX; - - var counter = -1; - - while (wrappedNewX._tag != "None") { - wrappedOldX = wrappedNewX; - wrappedNewX = thenDo(wrappedOldX, f); - counter += 1; - - }; - - if (counter <= 0){ - return { _tag: "None"}; - } - let ast = wrappedOldX.value.ast ; - wrappedOldX.value.ast =ast.slice(ast.length-counter); - console.log(repr(wrappedOldX.value.ast)); - - return wrappedOldX; }; -} - -/** - * aux function for midfix operator - * @param f function - * @param signal the rule name - * @returns - */ -let midfix = (f : Function, signal? : string) => (x : TokenMatcheePair)=>{ - var a = f(x); - if (a._tag == "Some"){ - let ast_tail : tkTree[] = slice(a.value.ast,a.value.ast.length-3); - let new_ast = [ast_tail]; - a.value.ast = new_ast; - - // console.log("+"+signal+"+"+repr(a)); - - - } - return a; -} - -let circumfix = (f : Function, signal? : string) => (x : TokenMatcheePair)=>{ - var a : tk.Maybe = f(x); - if (a._tag == "Some"){ - console.log("$$$"+repr(a.value.ast)); - let inner = a.value.ast[a.value.ast.length-2]; - var ast_middle : tkTree[]; - // the list should not be (%list) (%apply) (%lambda) etc. - if (Array.isArray(inner)){ - if ('text' in inner[0] && (inner[0].text.slice(0,1) != "%")){ - ast_middle = inner; - } - else{ - ast_middle = [inner]; - } - } - else{ - ast_middle = [inner]; - } - let new_ast = [ast_middle]; - a.value.ast = new_ast; - } - return a; -} - -/** single1 = tInt | "(" expr ")"*/ -let single1 = circumfix((x : TokenMatcheePair) => - thenDo(thenDo(thenDo(toSome(x), tLParen), expr), tRParen), "fac1"); -let single2= tInt; -let single = orDo(single1, single2); - -/** args = single "," args | single */ -let args1 = (x: TokenMatcheePair)=>{ - var ret = thenDo(thenDo(thenDo(toSome(x), single), tComma), args); - if (ret._tag == "Some"){ - let retLength = ret.value.ast.length; - ret.value.ast = [[ret.value.ast[retLength-3]].concat(ret.value.ast[retLength-1])]; - console.log("$$"+repr(ret.value.ast)); - } - return ret; -}; - -let args2 = single; - -let args = orDo(args1, args2); - - -/** callees = "(" args ")" | "(" ")" */ - - -let callees1 = circumfix((x : TokenMatcheePair) => - thenDo(thenDo(thenDo(toSome(x), tLParen), args), tRParen), "callees1"); -let callees2 = (x: TokenMatcheePair)=>{ - let ret = thenDo(thenDo(toSome(x), tLParen), tRParen); - if (ret._tag == "Some"){ - let new_ast : tkTree[] = [[]]; - ret.value.ast = new_ast; - } - - return ret}; - -let callees = orDo(callees1, callees2); - - - -/** %apply R combinating token */ -let applyToken = { - text: "%apply", - type: tk.TokenType.ID, - col: 0, - ln: 0, -} - -/** facAux = callees facAux | callees */ -let facAux1 = (x: TokenMatcheePair)=>{ - var ret = thenDo(thenDo(toSome(x), callees), facAux); - if (ret._tag == "Some"){ - console.log("1232345"+repr(tkTreeToSExp(ret.value.ast[ret.value.ast.length-1]))); - let last1 = ret.value.ast[ret.value.ast.length-1]; - let last2 = ret.value.ast[ret.value.ast.length-2]; - - - let b : tkTree[] = [applyToken]; - ret.value.ast = [b.concat([last2, last1])]; - console.log("11111"+repr(tkTreeToSExp(ret.value.ast))); - - }; - -return ret;} -let facAux2 = callees; -let facAux = orDo(facAux1, facAux2); - - - -/** fac = single facAux | single - * Issue1 to be fixed. - */ -let fac1 = (x: TokenMatcheePair)=>{ - var ret = thenDo(thenDo(toSome(x), single),facAux); - if(ret._tag == "Some"){ - console.log("777"+repr(tkTreeToSExp(ret.value.ast))); - ret.value.ast = [applyToken, ret.value.ast[ret.value.ast.length-2], - ret.value.ast[ret.value.ast.length-1]]; - ret.value.ast; - rearrangeTree(ret.value.ast); - console.log("888"+repr(tkTreeToSExp(ret.value.ast))); - - } - - return ret;}; -let fac2 = single; -let fac = orDo(fac1, fac2); - - -/** - * rearrangeTree : for applyToken subtree from right-combination to - * left-combination - * @input x a ast - * @return another ast - */ -function rearrangeTree(x: any) : any { - - if (x !== undefined){ - for (var i=1;i - thenDo(thenDo(thenDo(toSome(x), fac), orDo(tMul,tDiv)), fac), "term1"); - - -/** - * - * term2 = int MUL int - */ -let term2 = fac; - -/** - * term = term1 | term2 - */ -let term = orDo(term1, term2); - - -/** - * - * expr1 = term ADD term - */ -let expr1 = midfix((x : TokenMatcheePair)=> - thenDo(thenDo(thenDo(toSome(x), term), orDo(tAdd,tSub)), term), "expr1"); -/** - * expr2 = term - */ -let expr2 = term; - -/** - * expr = expr1 | expr2 - */ -let expr = orDo(expr1, expr2); - - - -let tokens = tk.tokenize("1"); -let tokens2 = tk.tokenize("1(2)"); -let tokens3 = tk.tokenize("1(2)(3)"); -let tokens4 = tk.tokenize("2()(4)(5,6)(7,8,9,10)"); - -//let tokens = tk.tokenize("(4-(3/4))"); -//tk.tokenize(argv[2]); - -let tokensFiltered = tokens4.filter( - (x)=>{return (x.type != tk.TokenType.NL - && x.type != tk.TokenType.SP)}); - - - -let beta = expr({ - matched : [] , - remained : tokensFiltered, - ast : []}); - - - -if (beta._tag == "Some"){ - beta.value.ast = rearrangeTree(beta.value.ast); - console.log(tkTreeToSExp(beta.value.ast)); - -} - -console.log("RESULT="+repr(beta)); - diff --git a/src/pdfManipulate.js b/src/pdfManipulate.js deleted file mode 100644 index e8365b8..0000000 --- a/src/pdfManipulate.js +++ /dev/null @@ -1,32 +0,0 @@ -"use strict"; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.pdfGenerate = void 0; -const fs_1 = require("fs"); -const pdf_lib_1 = require("pdf-lib"); -var fontkit = require('@pdf-lib/fontkit'); -function pdfGenerate() { - return __awaiter(this, void 0, void 0, function* () { - const pdfDoc = yield pdf_lib_1.PDFDocument.create(); - const page = pdfDoc.addPage(); - pdfDoc.registerFontkit(fontkit); - const fontBytes = (0, fs_1.readFileSync)("/usr/share/fonts/uming.ttf"); - const font2 = yield pdfDoc.embedFont(fontBytes, { subset: true }); - const fontBytes2 = (0, fs_1.readFileSync)("/usr/share/fonts/truetype/noto/NotoSansArabic-Light.ttf"); - const font3 = yield pdfDoc.embedFont(fontBytes2, { subset: true }); - page.drawText("x=20, y=20", { x: 20, y: 20 }); - page.drawText("x:20, y:100 天地人", { x: 20, y: 100, font: font2 }); - page.drawText("عربي", { x: 50, y: 150, font: font3 }); - const pdfBytes = yield pdfDoc.save(); - (0, fs_1.writeFileSync)('/tmp/test.pdf', pdfBytes); - }); -} -exports.pdfGenerate = pdfGenerate; diff --git a/src/pdfManipulate.ts b/src/pdfManipulate.ts deleted file mode 100644 index 1b330df..0000000 --- a/src/pdfManipulate.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { readFileSync, writeFileSync } from "fs"; -import { PDFDocument } from "pdf-lib"; -var fontkit = require('@pdf-lib/fontkit'); - -export async function pdfGenerate(){ - - const pdfDoc = await PDFDocument.create() - const page = pdfDoc.addPage() - - pdfDoc.registerFontkit(fontkit); - const fontBytes = readFileSync("/usr/share/fonts/uming.ttf"); - const font2 = await pdfDoc.embedFont(fontBytes, {subset:true}) - - const fontBytes2 = readFileSync("/usr/share/fonts/truetype/noto/NotoSansArabic-Light.ttf") - - const font3 = await pdfDoc.embedFont(fontBytes2, {subset:true}) - - page.drawText("x=20, y=20", {x : 20, y : 20}) - page.drawText("x:20, y:100 天地人", {x : 20, y : 100, font: font2}) - page.drawText("عربي", {x : 50, y : 150, font: font3}) - - const pdfBytes = await pdfDoc.save(); - - writeFileSync('/tmp/test.pdf', pdfBytes); -} \ No newline at end of file diff --git a/src/tokenize.ts b/src/tokenize.ts deleted file mode 100644 index 144dbed..0000000 --- a/src/tokenize.ts +++ /dev/null @@ -1,565 +0,0 @@ -import * as util from 'util'; - -var fs = require('fs'); - -export type Some = { _tag: "Some"; value: T }; -export type None = { _tag: "None" }; -/** - * part for tokenize the input string - */ - -/** - * wrap a x in a `Some(T)` - * @param x : variable to be wrapped. - * @returns wrapped `x`. - */ -export function toSome(x: T): Some { - return { _tag: "Some", value: x }; -} -/** - * @description Like the `Some(a)` and `None` in Rust. - * - * @example - * ```ts - * let exam1 : Maybe = { _tag: "Some", value: 12 }; - * let exam2 : Maybe = None; - * ``` - */ -export type Maybe = Some | None; - - -/** - * @description - * the pair of the string to be matched later and the string that have been matched - * @var matched : have been matched - * @var remained : will be tested whether it'll be matched. - * @var matched_type (optional): the type of the matched string -*/ -export interface MatcheePair { - matched: string - remained: string - matched_type?: TokenType -} - -/** - * The types of Token - * NL, // newline - * - * SP, // half-width space and tab - * - * ID, // identifier - * - * STR, // string - * - * OP, // operator or something like it - * - * FLO, // float num - * - * INT, // integer - * - * I_* // integer manipulation - * - * F_* // float manipulation - * - * SEMI_C// semi-colon - */ -export enum TokenType { - NL, // newline - SP, // half-width space and tab - ID, // identifier - STR, // string - FLO, // float num - INT, // integer - F_ADD, - F_SUB, - F_MUL, - F_DIV, - I_ADD, - I_SUB, - I_MUL, - I_DIV, - L_PAREN, // ( - R_PAREN, // ) - L_BRACK, // [ - R_BRACK, // ] - L_BRACE, // { - R_BRACE, // } - COMMA, // , - DOT, // . - COLON, // : - SEMI_C, // ; - AT, // @ - HASH, // # - EQ, // == - SET, // = - GT, // > greater than - LT, // = - LE, // <= - NE, // <> - APOS, // ' - R_ARROW, // -> - TRUE, // true - FALSE, // false - IF, // if -} - -/** - * tokenized token. - * @var text : the content text - * @var type (optional): the type of the token - * @var col : the column number - * @var ln : the line number - */ -export interface Token { - text: string, - type?: TokenType, - col: number, - ln: number, -} - -/** - * @description - * it returns a function which test if the first char of the `remained` part of - * the argument of the function is `c`, if it's true, update the `MatchedPair` wrapped - * in `Some`. Otherwise, it returns `None`. - * * @param c : the char to be test. - * @returns the updated `MatchedPair` wrapped in `Some(x)` or `None`. - */ -export function match1Char(c: string): (m: MatcheePair) => Maybe { - return (m: MatcheePair) => { - if (m.remained.length == 0) { - return { _tag: "None" }; - } - const charToBeMatched = m.remained[0]; - if (charToBeMatched === c) { - return { - _tag: "Some", value: { - matched: m.matched + charToBeMatched, - remained: m.remained.substring(1) - } - }; - } - else { - return { _tag: "None" }; - } - } -}; - -/** - * - * @param m : the `MatcheePair` to be consumed. - * @returns if the length of `m.remained` >= 1; consumes the matchee by 1 char and wraps it in `Some`, - * otherwise, returns `None`. - */ -export function matchAny(m: MatcheePair): Maybe { - if (m.remained.length >= 1) { - return { - _tag: "Some", value: { - matched: m.matched + m.remained[0], - remained: m.remained.substring(1) - } - }; - } else { - return { _tag: "None" }; - } -} - -/** - * @description - * it returns a function which test if the first char of the `remained` part of - * the argument of the function is between `l` and `u`, if it's true, update the `MatchedPair` wrapped - * in `Some`. Otherwise, it returns `None`. - * * @param l : lower bound char, 1-char string - * * @param u : upper bound char, 1-char string - * @returns the updated `MatchedPair` wrapped in `Some(x)` or `None`. - */ -export function matchRange(l: string, u: string): (m: MatcheePair) => Maybe { - let lCodepoint = charToCodepoint(l); - let uCodepoint = charToCodepoint(u); - if (l > u) { - throw new Error("Error: the codepoint of `" + l + "` is not smaller than `" + u + "`)"); - } - return (m: MatcheePair) => { - if (m.remained.length < 1) { - return { _tag: "None" }; - } - const charToBeMatched = m.remained[0]; - const codePointToBeMatched = charToCodepoint(charToBeMatched); - if (codePointToBeMatched >= lCodepoint && codePointToBeMatched <= uCodepoint) { - return { - _tag: "Some", value: { - matched: m.matched + charToBeMatched, - remained: m.remained.substring(1) - } - }; - } - else { - return { _tag: "None" }; - } - } -}; - - -/** - * check if a matcheePair `m` matches a stringv `s`. - * @param s the checker string. - * @returns `None` or matched pair wrapped in `Some` - */ -export function matchWord(s: string, ): (m: MatcheePair) => Maybe { - return (m)=>{ - if (s.length==0){ - return { _tag: "None" }; - } - var someM : Maybe = toSome(m); - for (var idx : number=0; idx 1` return error; otherwise, return the codepoint of `s`. - */ -export function charToCodepoint(s: string): number { - if (s.length > 1) { - throw new Error("Error: the length of input string for " + s + "is " + s.length + `, - however, it should be 1.`); - } else { - return s.charCodeAt(0); - } -} - -/** - * @description thendo(input, f, ...) like - * a ==> f - * @param input: the wrapped input. - * @param f: the function to be applied. - * - * @returns:the applied wrapped result `MatcheePair`. - */ -export function thenDo(input: Maybe, f: Function): Maybe { - if (input._tag == "None") { - return input; - } - else { - let inner = input.value; - return f(inner); - } -} - -/** - * @description "or", like the regex `( f1 | f2 )` . - * It returns a function `f` of which the argument is`x`. - * if `f1(x)` is None, then `f` returns `f2(x)`. Otherwise, - * `F` returns `f1(x)`. - * @param f1 : 1st function to be compared - * @param f2 : 2nd function to be compared - * @returns:the combined function - */ -export function orDo(f1: Function, f2: Function): (x: T) => Maybe { - return (x) => { - let f1x: Maybe = (f1(x)); - { - if (f1x._tag == "None") { - return f2(x); - } - else { - return f1x; - } - } - }; -} - - -/** -* @description repeating matching function `f` -* zero or more times, like the asterisk `*` in regex `f*` . -* @param f : the function to be repeated 0+ times. -* @returns:the combined function -*/ -export function zeroOrMoreDo(f: Function): (x: T) => Maybe { - return (x) => { - var wrapped_old_x: Maybe = { _tag: "Some", value: x }; - var wrapped_new_x: Maybe = wrapped_old_x; - - while (wrapped_new_x._tag != "None") { - wrapped_old_x = wrapped_new_x; - wrapped_new_x = thenDo(wrapped_old_x, f); - }; - - return wrapped_old_x; - }; -} - -/** -* @description Not. like the `^` inside regex of [^f]. -* returns a function `F(x)` such that if `f(x)` is `None`, -* returns the x consuming a char; if `f(x)` is not None, F(x) -* returns `None`. -* @param f: the function forbidden to be matched. -* @returns: combined function `F`. -*/ -export function notDo(f: Function): (x: T) => Maybe { - return (x) => { - let wrapped_x: Maybe = { - _tag: "Some", - value: x - }; - let f_x = thenDo(wrapped_x, f); - - if (f_x._tag != "None") { - return { _tag: "None" }; - } else { - return thenDo(wrapped_x, matchAny); - } - }; -} - -/** - * if `x` is matched by `f` once, returns `f(x)`. Otherwise, - * returns x - * similar to `?` in regex `f?`. - * @param f : the function to be matched - * @returns return wrapped f(x) - */ -export function zeroOrOnceDo(f: Function): (x: T) => Maybe { - return (x) => { - var wrapped_old_x: Maybe = { _tag: "Some", value: x }; - var wrapped_new_x = thenDo(wrapped_old_x, f); - - if (wrapped_new_x._tag != "None") { - return wrapped_new_x; - } else { - return wrapped_old_x; - } - }; -} - - -export function tokenize(input: string): Array { - var input_matchee_pair: Maybe = toSome( - { - matched: "", - remained: input - }); - - /** - * generate a parser of a basic term (b_term) - * @param pattern : the pattern parser - * @param token_type : the returning token type - * @returns a wrapped parser. - */ - function bTerm(pattern: Function, token_type: TokenType) { - return (x: MatcheePair) => { - let wrapped_x = toSome(x); - let result = pattern(wrapped_x); - if (result._tag == "Some") { - result.value.matched_type = token_type; - } - return result; - } - } - - let d = matchRange('0', '9'); // \d - // [+-] - let plusMinus = orDo(match1Char('+'), match1Char('-')); - let s_aux = orDo(match1Char(' '), match1Char('\t')); // (" " | "\t") - - // integer = ([+]|[-])?\d\d* - let integer = bTerm((x: Maybe) => - thenDo(thenDo(thenDo(x, - zeroOrOnceDo(plusMinus)), d), - zeroOrMoreDo(d)), - TokenType.INT); - // space = [ \t]+ - let space = bTerm((x: Maybe) => - thenDo(thenDo(x, s_aux), zeroOrMoreDo(s_aux)), - TokenType.SP); - - // newline = \r?\n - let newline = bTerm((x: Maybe) => - thenDo(thenDo(x, - zeroOrOnceDo(match1Char('\r'))), - match1Char('\n')), - TokenType.NL); - - // [_A-Za-z] - let idHead = orDo(orDo(matchRange('a', 'z'), matchRange('A', 'Z')), match1Char('_')); - let idRemained = orDo(idHead, matchRange('0', '9')); // [_A-Za-z0-9] - - // id = [_A-Za-z][_A-Za-z0-9]* - let id = bTerm((x: Maybe) => - thenDo(thenDo(x, - idHead), - zeroOrMoreDo(idRemained)), - TokenType.ID); - let doublequote = match1Char("\""); - // [\\][\"] - let escapeReverseSlash = (x: MatcheePair) => - thenDo(thenDo(toSome(x), match1Char("\\")), doublequote); - // ([\\]["]|[^\"])* - let stringInnerPattern = zeroOrMoreDo( - orDo(escapeReverseSlash, notDo(match1Char("\"")))); - - // str = ["]([\\]["]|[^"])*["] - let str = bTerm((x: Maybe) => - thenDo(thenDo(thenDo(x, doublequote), - stringInnerPattern), doublequote), - TokenType.STR); - - // float = [+-]?\d+[.]\d+ - function floatPattern(x: Maybe) { - return thenDo(thenDo(thenDo(thenDo(thenDo(thenDo(x, - zeroOrOnceDo(plusMinus)), d), - zeroOrMoreDo(d)), - match1Char(".")), d), - zeroOrMoreDo(d)) - }; - let float = bTerm(floatPattern, TokenType.FLO); - - // operators - // +. - let floatAdd = bTerm((x: Maybe) => - thenDo(thenDo(x, match1Char("+")), match1Char(".")), - TokenType.F_ADD); - // +. - let floatSub = bTerm((x: Maybe) => - thenDo(thenDo(x, match1Char("-")), match1Char(".")), - TokenType.F_SUB); - - // *. - let floatMul = bTerm((x: Maybe) => - thenDo(thenDo(x, match1Char("*")), match1Char(".")), - TokenType.F_MUL); - - // /. - let floatDiv = bTerm((x: Maybe) => - thenDo(thenDo(x, match1Char("/")), match1Char(".")), - TokenType.F_DIV); - - // == - let eq = bTerm((x: Maybe) => - thenDo(thenDo(x, match1Char("=")), match1Char("=")), - TokenType.EQ); - - // >= - let ge = bTerm((x: Maybe) => - thenDo(thenDo(x, match1Char(">")), match1Char("=")), - TokenType.GE); - - // <= - let le = bTerm((x: Maybe) => - thenDo(thenDo(x, match1Char("<")), match1Char("=")), - TokenType.LE); - - // != - let ne = bTerm((x: Maybe) => - thenDo(thenDo(x, match1Char("!")), match1Char("=")), - TokenType.NE); - - // -> - let rightArrow = bTerm((x: Maybe) => - thenDo(thenDo(x, match1Char("-")), match1Char(">")), - TokenType.R_ARROW); - - - /** - * unary operator : generating the pattern of basic unary operator - * @param char : uniry char for the operator - * @param token_type : the corresponding token_type - */ - function unaryOp(char: string, token_type: TokenType) { - return bTerm((x: Maybe) => thenDo(x, match1Char(char)), - token_type); - }; - - let intAdd = unaryOp('+', TokenType.I_ADD); - let intSub = unaryOp('-', TokenType.I_SUB); - let intMul = unaryOp('*', TokenType.I_MUL); - let intDiv = unaryOp('/', TokenType.I_DIV); - let lParen = unaryOp('(', TokenType.L_PAREN); - let rParen = unaryOp(')', TokenType.R_PAREN); - let lBracket = unaryOp('[', TokenType.L_BRACK); - let rBracket = unaryOp(']', TokenType.R_BRACK); - let lBrace = unaryOp('{', TokenType.L_BRACE); - let rBrace = unaryOp('}', TokenType.R_BRACE); - let comma = unaryOp(',', TokenType.COMMA); - let dot = unaryOp('.', TokenType.DOT); - let colon = unaryOp(':', TokenType.COLON); - let semicolon = unaryOp(';', TokenType.SEMI_C); - let at = unaryOp('@', TokenType.AT); - let hash = unaryOp('#', TokenType.HASH); - let set = unaryOp('=', TokenType.SET); - let greaterthan = unaryOp('>', TokenType.GT); - let lessthan = unaryOp('<', TokenType.LE); - let apos = unaryOp('\'', TokenType.APOS); - - - - let term = (token_list: Array, x: Some) => { - var ln = 1; - var col = 0; - var old_x = x; - let term_list = [ - floatAdd, floatSub, floatMul, floatDiv, - intAdd, intSub, intMul, intDiv, - eq, ge, le, ne, rightArrow, - lParen, rParen, lBracket, rBracket, lBrace, rBrace, - comma, dot, colon, semicolon, at, hash, - set, greaterthan, lessthan, apos, - float, newline, space, id, integer, str]; - let term_aux = term_list.reduce((x, y) => orDo(x, y)); - - var new_x: Maybe = thenDo(old_x, term_aux); - while (new_x._tag != "None") { - if (new_x.value.matched_type != TokenType.NL) { - col += new_x.value.matched.length; - token_list.push({ - text: new_x.value.matched, - type: new_x.value.matched_type, - ln: ln, - col: col - }); - - } - else { - col = 0; - ln += 1; - - token_list.push({ - text: new_x.value.matched, - type: new_x.value.matched_type, - ln: ln, - col: col - }); - - } - - - old_x = toSome({ - matched: "", - remained: new_x.value.remained - }); - new_x = thenDo(old_x, term_aux); - } - - if (old_x.value.remained.length) { - console.log(token_list); - throw new Error("the code can't be tokenized is near Ln. " + ln + ", Col." + col - + ", starting with " + old_x.value.remained.substring(0, 10)); - } - - return token_list; - } - - return term([], input_matchee_pair); - - // TODO: id, string, space, basic operator, 3 marks: @, {, }. - -} - - diff --git a/tests/index.d.ts b/tests/index.d.ts deleted file mode 100644 index 57fe003..0000000 --- a/tests/index.d.ts +++ /dev/null @@ -1,86 +0,0 @@ -declare let assert: any; -declare let tokenize: any; -declare let a: any; -declare let example1: any; -declare let example2: any; -declare let thenDo: any; -declare let orDo: any; -declare let zeroOrMoreDo: any; -declare let notDo: any; -declare let matchAny: any; -declare let compPart1: any; -declare let compPart2: any; -declare let doThenTestee1: { - _tag: string; - value: { - matched: string; - remained: string; - }; -}; -declare let doTestRes1: any; -declare let doThenTestee2: { - _tag: string; - value: { - matched: string; - remained: string; - }; -}; -declare let doTestRes2: any; -declare let doThenTestee3: { - _tag: string; - value: { - matched: string; - remained: string; - }; -}; -declare let doTestRes3: any; -declare let doThenTestee4: { - _tag: string; - value: { - matched: string; - remained: string; - }; -}; -declare let doTestRes4: any; -declare let doThenTestee5: { - _tag: string; - value: { - matched: string; - remained: string; - }; -}; -declare let doTestRes5: any; -declare let doThenTestee6: { - _tag: string; - value: { - matched: string; - remained: string; - }; -}; -declare let doTestRes6: any; -declare let doThenTestee7: { - _tag: string; - value: { - matched: string; - remained: string; - }; -}; -declare let doTestRes7: any; -declare let doThenTestee8: { - _tag: string; - value: { - matched: string; - remained: string; - }; -}; -declare let doTestRes8: any; -declare let doThenTestee9: { - _tag: string; - value: { - matched: string; - remained: string; - }; -}; -declare let doTestRes9: any; -declare let harfbuzz: any; -declare let pdfManipulate: any; diff --git a/tests/index.js b/tests/index.js deleted file mode 100644 index ad27d27..0000000 --- a/tests/index.js +++ /dev/null @@ -1,95 +0,0 @@ -"use strict"; -let assert = require("assert"); -let tokenize = require("../src/tokenize"); -let a = tokenize.match1Char("我"); -let example1 = a({ matched: "", remained: "我的" }); -assert(example1._tag == "Some"); -assert(example1.value.matched == "我"); -assert(example1.value.remained == "的"); -let example2 = a({ matched: "", remained: "妳的" }); -assert(example2._tag == "None"); -let thenDo = tokenize.thenDo; -let orDo = tokenize.orDo; -let zeroOrMoreDo = tokenize.zeroOrMoreDo; -let notDo = tokenize.notDo; -let matchAny = tokenize.matchAny; -// composed part x -let compPart1 = tokenize.match1Char("我"); -let compPart2 = tokenize.match1Char("的"); -let doThenTestee1 = { _tag: "Some", value: { matched: "", remained: "我的貓" } }; -let doTestRes1 = thenDo(thenDo(doThenTestee1, compPart1), compPart2); -assert(doTestRes1._tag == "Some"); -assert(doTestRes1.value.matched == "我的"); -assert(doTestRes1.value.remained == "貓"); -let doThenTestee2 = { _tag: "Some", value: { matched: "", remained: "我們" } }; -let doTestRes2 = thenDo(thenDo(doThenTestee2, compPart1), compPart2); -assert(doTestRes2._tag == "None"); -let doThenTestee3 = { _tag: "Some", value: { matched: "", remained: "我的貓" } }; -let doTestRes3 = thenDo(thenDo(doThenTestee3, orDo(compPart1, compPart2)), compPart2); -assert(doTestRes3._tag == "Some"); -assert(doTestRes3.value.matched == "我的"); -assert(doTestRes3.value.remained == "貓"); -let doThenTestee4 = { _tag: "Some", value: { matched: "", remained: "的的貓" } }; -let doTestRes4 = thenDo(thenDo(doThenTestee4, orDo(compPart1, compPart2)), compPart2); -assert(doTestRes4._tag == "Some"); -assert(doTestRes4.value.matched == "的的"); -assert(doTestRes4.value.remained == "貓"); -let doThenTestee5 = { _tag: "Some", value: { matched: "", remained: "的貓" } }; -let doTestRes5 = thenDo(thenDo(doThenTestee5, zeroOrMoreDo(compPart1)), compPart2); -assert(doTestRes5._tag == "Some"); -assert(doTestRes5.value.matched == "的"); -assert(doTestRes5.value.remained == "貓"); -let doThenTestee6 = { _tag: "Some", value: { matched: "", remained: "我我我的貓" } }; -let doTestRes6 = thenDo(thenDo(doThenTestee6, zeroOrMoreDo(compPart1)), compPart2); -assert(doTestRes6._tag == "Some"); -assert(doTestRes6.value.matched == "我我我的"); -assert(doTestRes6.value.remained == "貓"); -let doThenTestee7 = { _tag: "Some", value: { matched: "", remained: "我的" } }; -let doTestRes7 = thenDo(thenDo(doThenTestee7, notDo(compPart1)), compPart2); -assert(doTestRes7._tag == "None"); -let doThenTestee8 = { _tag: "Some", value: { matched: "", remained: "妳的" } }; -let doTestRes8 = thenDo(thenDo(doThenTestee8, notDo(compPart1)), compPart2); -assert(doTestRes8._tag == "Some"); -assert(doTestRes8.value.matched == "妳的"); -let doThenTestee9 = { _tag: "Some", value: { matched: "", remained: "妳的" } }; -let doTestRes9 = thenDo(doThenTestee9, matchAny); -assert(doTestRes9._tag == "Some"); -assert(doTestRes9.value.matched == "妳"); -assert(doTestRes9.value.remained == "的"); -tokenize.tokenize("+123"); -tokenize.tokenize("123"); -tokenize.tokenize("-123"); -tokenize.tokenize(" 123"); -try { - tokenize.tokenize("c123"); -} -catch (error) { - console.log(error); -} -tokenize.tokenize(" "); -tokenize.tokenize(" "); -tokenize.tokenize(" \t"); -tokenize.tokenize(" \t123"); -try { - tokenize.tokenize(" \t123aaa456"); -} -catch (error) { - console.log(error); -} -tokenize.tokenize(" \t123\n456"); -tokenize.tokenize("\"\""); -tokenize.tokenize("\"123\""); -tokenize.tokenize("\"1\\\"23\""); -tokenize.tokenize("\"1\\\"23\" abc123"); -tokenize.tokenize("+0.012"); -tokenize.tokenize("0.0"); -tokenize.tokenize("-222.0"); -tokenize.tokenize("1+1 ==2; 3+8 foo(12)"); -console.log(tokenize.tokenize("2+2")); -// harfbuzz test -let harfbuzz = require("../src/harfbuzz.js"); -harfbuzz.harfbuzzTest("123.abc"); -// pdf test -let pdfManipulate = require("../src/pdfManipulate.js"); -pdfManipulate.pdfGenerate("123.abc"); -console.log("/tmp/test.pdf產出ah"); diff --git a/tests/index.ts b/tests/index.ts deleted file mode 100644 index 62da6f8..0000000 --- a/tests/index.ts +++ /dev/null @@ -1,122 +0,0 @@ - -let assert = require("assert"); -let tokenize = require("../src/tokenize"); - -let a = tokenize.match1Char("我"); - -let example1 = a({matched: "", remained: "我的"}); -assert(example1._tag == "Some"); -assert(example1.value.matched == "我"); -assert(example1.value.remained == "的"); - -let example2 = a({matched: "", remained: "妳的"}); -assert(example2._tag == "None"); - - - -let thenDo = tokenize.thenDo; -let orDo = tokenize.orDo; -let zeroOrMoreDo = tokenize.zeroOrMoreDo; -let notDo = tokenize.notDo; -let matchAny = tokenize.matchAny; - -// composed part x -let compPart1 = tokenize.match1Char("我"); -let compPart2 = tokenize.match1Char("的"); - -let doThenTestee1 = {_tag : "Some",value : {matched: "", remained: "我的貓"}}; -let doTestRes1 = thenDo(thenDo(doThenTestee1, compPart1), compPart2); -assert(doTestRes1._tag == "Some"); -assert(doTestRes1.value.matched == "我的"); -assert(doTestRes1.value.remained == "貓"); - - -let doThenTestee2 = {_tag : "Some",value : {matched: "", remained: "我們"}}; -let doTestRes2 = thenDo(thenDo(doThenTestee2, compPart1), compPart2); -assert(doTestRes2._tag == "None"); - -let doThenTestee3 = {_tag : "Some",value : {matched: "", remained: "我的貓"}}; -let doTestRes3 = thenDo(thenDo(doThenTestee3, orDo(compPart1, compPart2)), compPart2); -assert(doTestRes3._tag == "Some"); -assert(doTestRes3.value.matched == "我的"); -assert(doTestRes3.value.remained == "貓"); - -let doThenTestee4 = {_tag : "Some",value : {matched: "", remained: "的的貓"}}; -let doTestRes4 = thenDo(thenDo(doThenTestee4, orDo(compPart1, compPart2)), compPart2); -assert(doTestRes4._tag == "Some"); -assert(doTestRes4.value.matched == "的的"); -assert(doTestRes4.value.remained == "貓"); - -let doThenTestee5 = {_tag : "Some",value : {matched: "", remained: "的貓"}}; -let doTestRes5 = thenDo(thenDo(doThenTestee5, zeroOrMoreDo(compPart1)), compPart2); -assert(doTestRes5._tag == "Some"); -assert(doTestRes5.value.matched == "的"); -assert(doTestRes5.value.remained == "貓"); - -let doThenTestee6 = {_tag : "Some",value : {matched: "", remained: "我我我的貓"}}; -let doTestRes6 = thenDo(thenDo(doThenTestee6, zeroOrMoreDo(compPart1)), compPart2); -assert(doTestRes6._tag == "Some"); -assert(doTestRes6.value.matched == "我我我的"); -assert(doTestRes6.value.remained == "貓"); - -let doThenTestee7 = {_tag : "Some",value : {matched: "", remained: "我的"}}; -let doTestRes7 = thenDo(thenDo(doThenTestee7, notDo(compPart1)), compPart2); -assert(doTestRes7._tag == "None"); - -let doThenTestee8 = {_tag : "Some",value : {matched: "", remained: "妳的"}}; -let doTestRes8 = thenDo(thenDo(doThenTestee8, notDo(compPart1)), compPart2); -assert(doTestRes8._tag == "Some"); -assert(doTestRes8.value.matched == "妳的"); - -let doThenTestee9 = {_tag : "Some",value : {matched: "", remained: "妳的"}}; -let doTestRes9 = thenDo(doThenTestee9, matchAny); -assert(doTestRes9._tag == "Some"); -assert(doTestRes9.value.matched == "妳"); -assert(doTestRes9.value.remained == "的"); - -tokenize.tokenize("+123"); -tokenize.tokenize("123"); -tokenize.tokenize("-123"); -tokenize.tokenize(" 123"); -try { - tokenize.tokenize("c123"); - -} catch (error) { - console.log(error); -} - -tokenize.tokenize(" "); -tokenize.tokenize(" "); -tokenize.tokenize(" \t"); -tokenize.tokenize(" \t123"); - -try { - tokenize.tokenize(" \t123aaa456"); - - -} catch (error) { - console.log(error); -} -tokenize.tokenize(" \t123\n456"); - -tokenize.tokenize("\"\""); -tokenize.tokenize("\"123\""); -tokenize.tokenize("\"1\\\"23\""); -tokenize.tokenize("\"1\\\"23\" abc123"); - -tokenize.tokenize("+0.012"); -tokenize.tokenize("0.0"); -tokenize.tokenize("-222.0"); -tokenize.tokenize("1+1 ==2; 3+8 foo(12)"); - -console.log(tokenize.tokenize("2+2")); - -// harfbuzz test -let harfbuzz = require("../src/harfbuzz.js"); -harfbuzz.harfbuzzTest("123.abc"); - -// pdf test -let pdfManipulate = require("../src/pdfManipulate.js"); -pdfManipulate.pdfGenerate("123.abc"); -console.log("/tmp/test.pdf產出ah"); - diff --git a/tsconfig.json b/tsconfig.json deleted file mode 100644 index e075f97..0000000 --- a/tsconfig.json +++ /dev/null @@ -1,109 +0,0 @@ -{ - "compilerOptions": { - /* Visit https://aka.ms/tsconfig to read more about this file */ - - /* Projects */ - // "incremental": true, /* Save .tsbuildinfo files to allow for incremental compilation of projects. */ - // "composite": true, /* Enable constraints that allow a TypeScript project to be used with project references. */ - // "tsBuildInfoFile": "./.tsbuildinfo", /* Specify the path to .tsbuildinfo incremental compilation file. */ - // "disableSourceOfProjectReferenceRedirect": true, /* Disable preferring source files instead of declaration files when referencing composite projects. */ - // "disableSolutionSearching": true, /* Opt a project out of multi-project reference checking when editing. */ - // "disableReferencedProjectLoad": true, /* Reduce the number of projects loaded automatically by TypeScript. */ - - /* Language and Environment */ - "target": "es2016", /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */ - // "lib": [], /* Specify a set of bundled library declaration files that describe the target runtime environment. */ - // "jsx": "preserve", /* Specify what JSX code is generated. */ - // "experimentalDecorators": true, /* Enable experimental support for legacy experimental decorators. */ - // "emitDecoratorMetadata": true, /* Emit design-type metadata for decorated declarations in source files. */ - // "jsxFactory": "", /* Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h'. */ - // "jsxFragmentFactory": "", /* Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'. */ - // "jsxImportSource": "", /* Specify module specifier used to import the JSX factory functions when using 'jsx: react-jsx*'. */ - // "reactNamespace": "", /* Specify the object invoked for 'createElement'. This only applies when targeting 'react' JSX emit. */ - // "noLib": true, /* Disable including any library files, including the default lib.d.ts. */ - // "useDefineForClassFields": true, /* Emit ECMAScript-standard-compliant class fields. */ - // "moduleDetection": "auto", /* Control what method is used to detect module-format JS files. */ - - /* Modules */ - "module": "commonjs", /* Specify what module code is generated. */ - // "rootDir": "./", /* Specify the root folder within your source files. */ - // "moduleResolution": "node10", /* Specify how TypeScript looks up a file from a given module specifier. */ - // "baseUrl": "./", /* Specify the base directory to resolve non-relative module names. */ - // "paths": {}, /* Specify a set of entries that re-map imports to additional lookup locations. */ - // "rootDirs": [], /* Allow multiple folders to be treated as one when resolving modules. */ - // "typeRoots": [], /* Specify multiple folders that act like './node_modules/@types'. */ - // "types": [], /* Specify type package names to be included without being referenced in a source file. */ - // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */ - // "moduleSuffixes": [], /* List of file name suffixes to search when resolving a module. */ - // "allowImportingTsExtensions": true, /* Allow imports to include TypeScript file extensions. Requires '--moduleResolution bundler' and either '--noEmit' or '--emitDeclarationOnly' to be set. */ - // "resolvePackageJsonExports": true, /* Use the package.json 'exports' field when resolving package imports. */ - // "resolvePackageJsonImports": true, /* Use the package.json 'imports' field when resolving imports. */ - // "customConditions": [], /* Conditions to set in addition to the resolver-specific defaults when resolving imports. */ - // "resolveJsonModule": true, /* Enable importing .json files. */ - // "allowArbitraryExtensions": true, /* Enable importing files with any extension, provided a declaration file is present. */ - // "noResolve": true, /* Disallow 'import's, 'require's or ''s from expanding the number of files TypeScript should add to a project. */ - - /* JavaScript Support */ - // "allowJs": true, /* Allow JavaScript files to be a part of your program. Use the 'checkJS' option to get errors from these files. */ - // "checkJs": true, /* Enable error reporting in type-checked JavaScript files. */ - // "maxNodeModuleJsDepth": 1, /* Specify the maximum folder depth used for checking JavaScript files from 'node_modules'. Only applicable with 'allowJs'. */ - - /* Emit */ - // "declaration": true, /* Generate .d.ts files from TypeScript and JavaScript files in your project. */ - // "declarationMap": true, /* Create sourcemaps for d.ts files. */ - // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */ - // "sourceMap": true, /* Create source map files for emitted JavaScript files. */ - // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */ - // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output. */ - // "outDir": "./", /* Specify an output folder for all emitted files. */ - // "removeComments": true, /* Disable emitting comments. */ - // "noEmit": true, /* Disable emitting files from a compilation. */ - // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */ - // "importsNotUsedAsValues": "remove", /* Specify emit/checking behavior for imports that are only used for types. */ - // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */ - // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */ - // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */ - // "inlineSources": true, /* Include source code in the sourcemaps inside the emitted JavaScript. */ - // "emitBOM": true, /* Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files. */ - // "newLine": "crlf", /* Set the newline character for emitting files. */ - // "stripInternal": true, /* Disable emitting declarations that have '@internal' in their JSDoc comments. */ - // "noEmitHelpers": true, /* Disable generating custom helper functions like '__extends' in compiled output. */ - // "noEmitOnError": true, /* Disable emitting files if any type checking errors are reported. */ - // "preserveConstEnums": true, /* Disable erasing 'const enum' declarations in generated code. */ - // "declarationDir": "./", /* Specify the output directory for generated declaration files. */ - // "preserveValueImports": true, /* Preserve unused imported values in the JavaScript output that would otherwise be removed. */ - - /* Interop Constraints */ - // "isolatedModules": true, /* Ensure that each file can be safely transpiled without relying on other imports. */ - // "verbatimModuleSyntax": true, /* Do not transform or elide any imports or exports not marked as type-only, ensuring they are written in the output file's format based on the 'module' setting. */ - // "allowSyntheticDefaultImports": true, /* Allow 'import x from y' when a module doesn't have a default export. */ - "esModuleInterop": true, /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility. */ - // "preserveSymlinks": true, /* Disable resolving symlinks to their realpath. This correlates to the same flag in node. */ - "forceConsistentCasingInFileNames": true, /* Ensure that casing is correct in imports. */ - - /* Type Checking */ - "strict": true, /* Enable all strict type-checking options. */ - // "noImplicitAny": true, /* Enable error reporting for expressions and declarations with an implied 'any' type. */ - // "strictNullChecks": true, /* When type checking, take into account 'null' and 'undefined'. */ - // "strictFunctionTypes": true, /* When assigning functions, check to ensure parameters and the return values are subtype-compatible. */ - // "strictBindCallApply": true, /* Check that the arguments for 'bind', 'call', and 'apply' methods match the original function. */ - // "strictPropertyInitialization": true, /* Check for class properties that are declared but not set in the constructor. */ - // "noImplicitThis": true, /* Enable error reporting when 'this' is given the type 'any'. */ - // "useUnknownInCatchVariables": true, /* Default catch clause variables as 'unknown' instead of 'any'. */ - // "alwaysStrict": true, /* Ensure 'use strict' is always emitted. */ - // "noUnusedLocals": true, /* Enable error reporting when local variables aren't read. */ - // "noUnusedParameters": true, /* Raise an error when a function parameter isn't read. */ - // "exactOptionalPropertyTypes": true, /* Interpret optional property types as written, rather than adding 'undefined'. */ - // "noImplicitReturns": true, /* Enable error reporting for codepaths that do not explicitly return in a function. */ - // "noFallthroughCasesInSwitch": true, /* Enable error reporting for fallthrough cases in switch statements. */ - // "noUncheckedIndexedAccess": true, /* Add 'undefined' to a type when accessed using an index. */ - // "noImplicitOverride": true, /* Ensure overriding members in derived classes are marked with an override modifier. */ - // "noPropertyAccessFromIndexSignature": true, /* Enforces using indexed accessors for keys declared using an indexed type. */ - // "allowUnusedLabels": true, /* Disable error reporting for unused labels. */ - // "allowUnreachableCode": true, /* Disable error reporting for unreachable code. */ - - /* Completeness */ - // "skipDefaultLibCheck": true, /* Skip type checking .d.ts files that are included with TypeScript. */ - "skipLibCheck": true /* Skip type checking all .d.ts files. */ - } -} diff --git a/tslint.json b/tslint.json deleted file mode 100644 index 7b73ab8..0000000 --- a/tslint.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "defaultSeverity": "error", - "extends": [ - "tslint:recommended" - ], - "jsRules": {}, - "rules": {}, - "rulesDirectory": [] -} -- 2.39.2