From 8b206c23c0cf36d55146e819225c2ce833610fe7 Mon Sep 17 00:00:00 2001 From: arduinoGP <115203453+arduionoGP@users.noreply.github.com> Date: Sat, 26 Nov 2022 18:18:58 -0500 Subject: [PATCH 01/22] Added Encoding Position files --- static/documents/mqtt/EncodePositionFlow.txt | 1 + static/documents/mqtt/EncodingPosition.jpg | Bin 0 -> 146704 bytes 2 files changed, 1 insertion(+) create mode 100644 static/documents/mqtt/EncodePositionFlow.txt create mode 100644 static/documents/mqtt/EncodingPosition.jpg diff --git a/static/documents/mqtt/EncodePositionFlow.txt b/static/documents/mqtt/EncodePositionFlow.txt new file mode 100644 index 00000000..a51621a1 --- /dev/null +++ b/static/documents/mqtt/EncodePositionFlow.txt @@ -0,0 +1 @@ +[{"id":"32ca608d9e7c5236","type":"inject","z":"23dbb1ee.bc2e8e","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":96.5,"y":1952,"wires":[["2b536512e8c7aef2"]]},{"id":"20bbd2d1408b8dc5","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"channelId_outbound","pt":"flow","to":"LongFast","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":772,"y":2027,"wires":[[]]},{"id":"c6cb373157be01d6","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"gatewayId_outbound","pt":"flow","to":"\"!55c7312c\"","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":772,"y":2066,"wires":[[]]},{"id":"24199ec7eaf89c1a","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"portnum_outbound","pt":"flow","to":"3","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":774,"y":2106,"wires":[[]]},{"id":"de38ad5ef343623a","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"from_outbound","pt":"flow","to":"1439117612","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":781,"y":2146,"wires":[[]]},{"id":"d435e8abe0852f93","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"to_outbound","pt":"flow","to":"4294967295","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":790,"y":2188,"wires":[[]]},{"id":"1f8d172708898860","type":"function","z":"23dbb1ee.bc2e8e","name":"Assemble Position protobuf","func":"msg.protobufType=null;\nmsg.payload =\n{\n \"packet\": {\n \"from\": flow.get(\"from_outbound\"),\n \"to\": flow.get(\"to_outbound\"), \n \"decoded\":{\n //how ENUMS are handled here\n //portnum is decoded as string but encoded as number\n //in the encode/decode node-red nodes based on protobuf.js\n \"portnum\": flow.get(\"portnum_outbound\"),\n \"payload\": msg.payload \n } \n },\n\n \"channelId\": flow.get(\"channelId_outbound\"),\n \"gatewayId\": flow.get(\"gatewayId_outbound\"),\n};\nreturn msg;\n//info on how to get json data into protobuf \"bytes\" field\n//https://github.com/protobufjs/protobuf.js/wiki/Changes-in-ProtoBuf.js-3.8","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":1086,"y":2019,"wires":[["b8ccf1cfe8bf40a3"]]},{"id":"b8ccf1cfe8bf40a3","type":"encode","z":"23dbb1ee.bc2e8e","name":"","protofile":"a0d4288141f6a629","protoType":"ServiceEnvelope","x":1287,"y":2020,"wires":[["dbc78f035c9c2b56","a002c148f3a06bac"]]},{"id":"03a7e69ca6d471fe","type":"debug","z":"23dbb1ee.bc2e8e","name":"show hex string","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":1319,"y":2180,"wires":[]},{"id":"dbc78f035c9c2b56","type":"function","z":"23dbb1ee.bc2e8e","name":"dump payload as hex string","func":"var hex=Buffer.from(msg.payload,\"hex\");\nmsg.payload=hex.toString(\"hex\");\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":1096,"y":2178,"wires":[["03a7e69ca6d471fe"]]},{"id":"2b536512e8c7aef2","type":"function","z":"23dbb1ee.bc2e8e","name":"Inject lat lon alt","func":"msg.payload={\n \"latitudeI\": 399600000,\n \"longitudeI\": -862600000,\n \"altitude\": 100\n}\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":277.5,"y":1953,"wires":[["9443a9a980e54c75"]]},{"id":"9443a9a980e54c75","type":"encode","z":"23dbb1ee.bc2e8e","name":"encode Position as protobuf","protofile":"dbab6472b07929a0","protoType":"Position","x":506,"y":1953,"wires":[["5c36d3a7f4dca14e"]]},{"id":"5c36d3a7f4dca14e","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"nested_outbound","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":776,"y":1952,"wires":[["20bbd2d1408b8dc5","c6cb373157be01d6","24199ec7eaf89c1a","de38ad5ef343623a","d435e8abe0852f93","04d0c4a5f3485c6f"]]},{"id":"04d0c4a5f3485c6f","type":"function","z":"23dbb1ee.bc2e8e","name":"dump payload as base64 string","func":"var hex=Buffer.from(msg.payload,\"base64\");\nmsg.payload=hex.toString(\"base64\");\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":1082,"y":1952,"wires":[["1f8d172708898860"]]},{"id":"a002c148f3a06bac","type":"decode","z":"23dbb1ee.bc2e8e","name":"test decode Protobuf","protofile":"a0d4288141f6a629","protoType":"ServiceEnvelope","x":1249,"y":1860,"wires":[["4b6fc79398d05782"]]},{"id":"4b6fc79398d05782","type":"debug","z":"23dbb1ee.bc2e8e","name":"test entire payload","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":1458,"y":1859,"wires":[]},{"id":"a0d4288141f6a629","type":"protobuf-file","protopath":"E:\\Meshtastic-protobufs-master\\mqtt.proto","watchFile":true,"keepCase":false},{"id":"dbab6472b07929a0","type":"protobuf-file","protopath":"E:\\Meshtastic-protobufs-master\\mesh.proto","watchFile":true,"keepCase":false}] \ No newline at end of file diff --git a/static/documents/mqtt/EncodingPosition.jpg b/static/documents/mqtt/EncodingPosition.jpg new file mode 100644 index 0000000000000000000000000000000000000000..937b2f5dd58a97ed1b87756d1a783813adbdcf4d GIT binary patch literal 146704 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
x`hIQs$!C_SHEpYi5aRG@3lfVqvHsN8ANX+ zcLW}g1me@r;}@uy7s3dXIa<84z5L_ST}h~LMMgniesAd208O9+J)h>0F^%S$WSEU8 zJEq^O9-yEMqa=FLx>PD&aEy#bxm`Nu8Ew-i>n)XsUSFLvd55J+3Es$0gQ`sw1!0R< zd|sL9gyE6d2*b4jp`oYPGN~37wO%_ec50yLIEG|V;+}Zbgc5e}VECb8fV?ip@TUmP z>$IqZ^|#{u=!!Z^>mBD)WoK(0w)v~svlEV;_eEbHJh%7D^+s>~VPxusNJ|r+SGHFP zDMR{S*Q<#3`8oJWk_NU7_ysr^nmR*ReJ`j!*!JU!s;)i61?ANBF8q34igAv_&!*>J zYXyd&7PAukV(=@+t_s|_cnc>M&U@@Uw&5T;~ti<4guS6f9fa*%07+)TGwciyK&X=5dI9b`9>0XnJ-Y|sa}%>i&zhWOYw@g;wM?(xN;<4iq9=2oL^ zRYAN$h?0?z`rG_~AofBZtMsRf`Fj2iDBhQXpWZ8qOi|O87q7Kua`mw#0(9$ zu?z}i9M+0T%<)K6-n=es9Nj(Bd9CQmu+FU1a8qt$0Z6w1ApuZZvxd#72cK=~hDt1^ z_+8a1WY}1mw*>K%3u4^#g*1^NYG0!oL=HJ6l&A~Z?|Ey#SX=G&js!q8}toyuZ}0%(ZU$oo)t#_qg5lr)bRaj7ln|DGo+=Cjv z;_kMN*vu^ZYzECG?kW*R#}^REv_W5R)|1dRs0(T1M>zD-RI-pihj5L}{{N!q*L~F=momJe4{m>r(yHmY!zoHf& zSVn4?Ojq@b#5HBePf_gL01~%};>FXuFQV@eM|PhP>-sY@+EG7o9w#i#$G^h$>S0Wbo}3KeLNU6k zc{EWnI@0V5^Cnf;FM3D27R|*v`w=fg&9HB&uHN#3r7e{DoBR833A}h&bn#u&c|RVl z+L*vQ5&CTq?=DwbZ!%g~@&ns_Jm_3s2pr~|8J90>a1v%x+Tb%Z<4C4^1%shK;{|D) z!mA8v?ifyIf?_n8*|g*F3|?pzpkw;PAZ4X*)ilLN0Pb=66R&f0JFzn)hW!g-$Fc&;^$ERUdw{lBSrf5SQl!E3~u%RgR7|Rg$DRcmyqY0zvB# z(>id}LgG>)GdT{5m68M~5%sCyDK#$H7ESHG2t9=F58-`kIZL$(WA>*u^b$webY11H zN8*^QFwD>D2VF*FQ({Zbr#?i_UA=>bWX+DNDPGkp!e+1@m=&sg#$6 z&O%jMs(m;3H~WWmMJoj*Jko?}!GSv7!h+38fwFXp-GBOamKAfD_HechuYR43+M@xEt;l zW56P8HG9DQE!vVT5qeO47dU85^BTK9Xoz**2~guZr&oH5Aa)W~8h?aKsr`Ux>j2Uz zWfp+s+&&PTuWzfSEgL_b{Bh8H9o>y2*SJn;E_ z+{F3DX-If(DRyDN)HsL2FTBjCm-HWB^&hOCx98lBhj`uYBI$%AZ_f036=1QwoxxcO z0W$6^IIzRmNDRm#e5rCA)(pq>AyYBgH3z!!r-IDN{EUYVZc{1if@fW}_HnGAI0~Mv zbx)3Bs;~?y*W{K)X=1C!j9}Uk3w8%Bt_nTsY&hkv4QbE@XE+AOoUDF2Jd#Q>>^clho80Rd|v{=s7~y8Xgl*0vW9 z@$4S!LH=AB>2aT4M56AcI^t4R!czLnxW&Cs?LgO?V%CXfuH5J%$+~Q-L#amlP7B}C;&=oOG_2mAoN86tkxyqNdpieh4CU| zEpr}&kq_H;7vounl332{&UogKIODh!V=ztn&!hfes}VsEtgK0>YUyq(kuTNVbuRh( z@3`^biUz;IlK*_|AGSUmLRqXQ9vX{D$g@_yek#8ifcSrhe__FLlz3JWoE!P+Dxd?R zB@6PkJ%s$66kyA4Jejp43C=0^r*N|p;YYrKK1uX{1O1riWAbZt@z2Nab+rD->+!u@ oBJjP;Y@5Zm&rgT}8~Z~XJNh1AZBp_d&IF?${x=J;;@^h<3jfKI1^@s6 literal 0 HcmV?d00001 From ee14cd4c914580cf4b0227a37970180bd6d78c9a Mon Sep 17 00:00:00 2001 From: arduinoGP <115203453+arduionoGP@users.noreply.github.com> Date: Sat, 26 Nov 2022 18:32:12 -0500 Subject: [PATCH 02/22] Add encoding Position protobuf in node-red --- docs/software/mqtt/index.mdx | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/docs/software/mqtt/index.mdx b/docs/software/mqtt/index.mdx index df0becd7..a5bf2a8a 100644 --- a/docs/software/mqtt/index.mdx +++ b/docs/software/mqtt/index.mdx @@ -271,10 +271,19 @@ Injecting a json message to be sent by a device is also very simple. You do need Forwarding a text message from one device, through a broker, to another broker/device/channel would look like this. [](/documents/mqtt/Forward.jpg) If you want to decode text and position messages without json, it gets complicated: -[](/documents/mqtt/Decode.jpg) +[](/documents/mqtt/DecodeNewest.jpg) If you are interested in my flow for this it is here: + ``` +[{"id":"10fe1b2e9cb3feb2","type":"decode","z":"23dbb1ee.bc2e8e","name":"decode Protobuf","protofile":"a0d4288141f6a629","protoType":"ServiceEnvelope","x":295.5,"y":285,"wires":[["d3e396cf4f0a9608","d08865b41a69d85d","6f592d47b6a2eac4"]]},{"id":"40c9ee66fe7a34cb","type":"function","z":"23dbb1ee.bc2e8e","name":"function get the message as string from TEXT_MESSAGE_APP","func":"msg.payload = msg.payload.packet.decoded.payload;\n\nlet bufferObj = Buffer.from(msg.payload, \"base64\");\nlet decodedString = bufferObj.toString(\"utf8\");\nmsg.payload = decodedString;\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":410.5,"y":450,"wires":[["553374591214eaca"]]},{"id":"553374591214eaca","type":"debug","z":"23dbb1ee.bc2e8e","name":"text message out","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":762.5,"y":449,"wires":[]},{"id":"c6afbb9f1665b162","type":"debug","z":"23dbb1ee.bc2e8e","name":"channelId","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":785.5,"y":257,"wires":[]},{"id":"607ef387d5701985","type":"debug","z":"23dbb1ee.bc2e8e","name":"gatewayId","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":792.5,"y":293,"wires":[]},{"id":"d3e396cf4f0a9608","type":"debug","z":"23dbb1ee.bc2e8e","name":"entire payload","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":296.5,"y":247,"wires":[]},{"id":"2339b328bb9bb1d8","type":"comment","z":"23dbb1ee.bc2e8e","name":"Decode all cleartext text and position messages sent by Meshtastic devices into JSON without relying on JSON conversion on the device.","info":"","x":515.5,"y":214,"wires":[]},{"id":"408d796d997bb832","type":"function","z":"23dbb1ee.bc2e8e","name":"function get the nested payload as base64","func":"msg.payload = msg.payload.packet.decoded.payload;\n\nlet bufferObj = Buffer.from(msg.payload, \"base64\");\n//let decodedString = bufferObj.toString(\"hex\");\nmsg.payload = bufferObj;\nmsg.topic=\"\";\n//if you don't zero out the protubufTopic it will try to\n//decode it as part of the mqtt service envelope instead\n//of two-stage decoding\nmsg.protobufType=null;\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":349,"y":552,"wires":[["9435a3c605efedb4","1ed6f96c8214d7b3"]]},{"id":"61995c9f8e8266b3","type":"debug","z":"23dbb1ee.bc2e8e","name":"portnum","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":784.5,"y":330,"wires":[]},{"id":"9435a3c605efedb4","type":"debug","z":"23dbb1ee.bc2e8e","name":"nested payload","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":281.5,"y":603,"wires":[]},{"id":"b832775d386f7ac9","type":"mqtt in","z":"23dbb1ee.bc2e8e","name":"","topic":"msh/+/c/#","qos":"2","datatype":"buffer","broker":"37cadac381653b1e","nl":false,"rap":true,"rh":0,"inputs":0,"x":117.5,"y":286,"wires":[["10fe1b2e9cb3feb2"]]},{"id":"d08865b41a69d85d","type":"switch","z":"23dbb1ee.bc2e8e","name":"switch manual decoding nested message based on portum","property":"payload.packet.decoded.portnum","propertyType":"msg","rules":[{"t":"eq","v":"TEXT_MESSAGE_APP","vt":"str"},{"t":"eq","v":"POSITION_APP","vt":"str"}],"checkall":"true","repair":false,"outputs":2,"x":281.5,"y":505,"wires":[["40c9ee66fe7a34cb"],["408d796d997bb832"]]},{"id":"8abb1bb458af2c4f","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"gatewayId","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":1021.5,"y":288,"wires":[[]]},{"id":"1ced0be28eeef0d3","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"latitude","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":1026.5,"y":407,"wires":[[]]},{"id":"313fd3cfe6d91850","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"longitude","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":1036.5,"y":450,"wires":[["d02e53cdfb565da6"]]},{"id":"33dd43e3c05f826c","type":"geofence","z":"23dbb1ee.bc2e8e","name":"geofence","mode":"circle","inside":"true","rad":69174.91569647488,"points":[],"centre":{"latitude":40.16287050252407,"longitude":-86.60385131835938},"floor":"","ceiling":"","worldmap":true,"outputs":2,"x":1202.5,"y":595,"wires":[[],["4d01eb8f1b31f039"]]},{"id":"d02e53cdfb565da6","type":"function","z":"23dbb1ee.bc2e8e","name":"trigger function to send a mapping point","func":"let lat = parseFloat(flow.get(\"latitude\"));\nlet lon = parseFloat(flow.get(\"longitude\"));\nlat=lat * 0.0000001;\nlon=lon * 0.0000001;\nlet name = flow.get(\"from\")\n\nmsg={\"payload\":{\"name\":name,\n \"lat\":lat,\n \"lon\":lon,\n \"action\":\"send\",\n \"icon\": \"car\",\n \"label\":name\n }}\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":1181.5,"y":520,"wires":[["33dd43e3c05f826c","4d01eb8f1b31f039"]]},{"id":"4d01eb8f1b31f039","type":"worldmap","z":"23dbb1ee.bc2e8e","name":"","lat":"40","lon":"-86","zoom":"7","layer":"OSMG","cluster":"","maxage":"","usermenu":"show","layers":"show","panit":"false","panlock":"false","zoomlock":"false","hiderightclick":"false","coords":"none","showgrid":"false","showruler":"false","allowFileDrop":"false","path":"/worldmap","overlist":"DR,CO,RA,DN,HM","maplist":"OSMG,OSMC,EsriC,EsriS,EsriT,EsriDG,UKOS","mapname":"","mapurl":"","mapopt":"","mapwms":false,"x":1206.5,"y":675,"wires":[]},{"id":"1ed6f96c8214d7b3","type":"decode","z":"23dbb1ee.bc2e8e","name":"decode Position Protobuf","protofile":"dbab6472b07929a0","protoType":"Position","x":667.5,"y":548,"wires":[["db1933ba36503bd9","dad9f487318f21d9"]]},{"id":"db1933ba36503bd9","type":"debug","z":"23dbb1ee.bc2e8e","name":"Position decoded","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":673.5,"y":607,"wires":[]},{"id":"dad9f487318f21d9","type":"function","z":"23dbb1ee.bc2e8e","name":"Split","func":"var lat = { payload: msg.payload.latitudeI };\nvar lon = { payload: msg.payload.longitudeI };\nvar alt = { payload: msg.payload.altitude };\nvar tm = { payload: msg.payload.time };\n\nreturn [lat,lon,alt,tm];","outputs":4,"noerr":0,"initialize":"","finalize":"","libs":[],"x":875.5,"y":549,"wires":[["1ced0be28eeef0d3","8bb97f802662976c"],["313fd3cfe6d91850","c8e135f3e542bb1b"],["602fb2020680280c"],["ed424ae3d45dd2ac"]]},{"id":"8bb97f802662976c","type":"debug","z":"23dbb1ee.bc2e8e","name":"lat","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":1017.5,"y":583,"wires":[]},{"id":"c8e135f3e542bb1b","type":"debug","z":"23dbb1ee.bc2e8e","name":"lon","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":1018.5,"y":618,"wires":[]},{"id":"602fb2020680280c","type":"debug","z":"23dbb1ee.bc2e8e","name":"alt","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":1017.5,"y":654,"wires":[]},{"id":"ed424ae3d45dd2ac","type":"debug","z":"23dbb1ee.bc2e8e","name":"time","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":1018.5,"y":688,"wires":[]},{"id":"6f592d47b6a2eac4","type":"function","z":"23dbb1ee.bc2e8e","name":"Split Decoded 1","func":"var channelId = { payload: msg.payload.channelId};\nvar gatewayId = { payload: msg.payload.gatewayId};\nvar portnum = { payload: msg.payload.packet.decoded.portnum};\nvar fr= {payload: \"!\" + msg.payload.packet.from.toString(16)};\nvar to = {payload:\"!\"+ msg.payload.packet.to.toString(16)};\n\nreturn [channelId, gatewayId, portnum, fr, to ];","outputs":5,"noerr":0,"initialize":"","finalize":"","libs":[],"x":577.5,"y":294,"wires":[["c6afbb9f1665b162"],["607ef387d5701985","8abb1bb458af2c4f"],["61995c9f8e8266b3"],["fd881fac22422773","a389f9875da672ec"],["cf066ad415df30ae"]]},{"id":"fd881fac22422773","type":"debug","z":"23dbb1ee.bc2e8e","name":"from","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":772.5,"y":365,"wires":[]},{"id":"cf066ad415df30ae","type":"debug","z":"23dbb1ee.bc2e8e","name":"to","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":771.5,"y":399,"wires":[]},{"id":"a389f9875da672ec","type":"change","z":"23dbb1ee.bc2e8e","name":"set flow.from","rules":[{"t":"set","p":"from","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":1012.5,"y":364,"wires":[[]]},{"id":"a0d4288141f6a629","type":"protobuf-file","protopath":"E:\\Meshtastic-protobufs-master\\mqtt.proto","watchFile":true,"keepCase":false},{"id":"37cadac381653b1e","type":"mqtt-broker","name":"","broker":"192.168.2.45","port":"1883","clientid":"","autoConnect":true,"usetls":false,"protocolVersion":"4","keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","birthMsg":{},"closeTopic":"","closeQos":"0","closePayload":"","closeMsg":{},"willTopic":"","willQos":"0","willPayload":"","willMsg":{},"userProps":"","sessionExpiry":""},{"id":"dbab6472b07929a0","type":"protobuf-file","protopath":"E:\\Meshtastic-protobufs-master\\mesh.proto","watchFile":true,"keepCase":false}] + ``` (documents/mqtt/Flow.txt) Node-red can rapidly (minutes vs days) put together some pretty impressive output when paired with meshtastic. Here is the output of that flow geofencing and mapping via mqtt data. [](/documents/mqtt/Mapping.jpg) +Advanced use, such as encoding Position and sending it to a device via MQTT without using JSON can get a little complicated. An example of how it can be done is below. +[](/documents/mqtt/EncodingPosition.jpg) +The flow is: +''' +[{"id":"32ca608d9e7c5236","type":"inject","z":"23dbb1ee.bc2e8e","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":96.5,"y":1952,"wires":[["2b536512e8c7aef2"]]},{"id":"20bbd2d1408b8dc5","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"channelId_outbound","pt":"flow","to":"LongFast","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":772,"y":2027,"wires":[[]]},{"id":"c6cb373157be01d6","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"gatewayId_outbound","pt":"flow","to":"\"!55c7312c\"","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":772,"y":2066,"wires":[[]]},{"id":"24199ec7eaf89c1a","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"portnum_outbound","pt":"flow","to":"3","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":774,"y":2106,"wires":[[]]},{"id":"de38ad5ef343623a","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"from_outbound","pt":"flow","to":"1439117612","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":781,"y":2146,"wires":[[]]},{"id":"d435e8abe0852f93","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"to_outbound","pt":"flow","to":"4294967295","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":790,"y":2188,"wires":[[]]},{"id":"1f8d172708898860","type":"function","z":"23dbb1ee.bc2e8e","name":"Assemble Position protobuf","func":"msg.protobufType=null;\nmsg.payload =\n{\n \"packet\": {\n \"from\": flow.get(\"from_outbound\"),\n \"to\": flow.get(\"to_outbound\"), \n \"decoded\":{\n //how ENUMS are handled here\n //portnum is decoded as string but encoded as number\n //in the encode/decode node-red nodes based on protobuf.js\n \"portnum\": flow.get(\"portnum_outbound\"),\n \"payload\": msg.payload \n } \n },\n\n \"channelId\": flow.get(\"channelId_outbound\"),\n \"gatewayId\": flow.get(\"gatewayId_outbound\"),\n};\nreturn msg;\n//info on how to get json data into protobuf \"bytes\" field\n//https://github.com/protobufjs/protobuf.js/wiki/Changes-in-ProtoBuf.js-3.8","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":1086,"y":2019,"wires":[["b8ccf1cfe8bf40a3"]]},{"id":"b8ccf1cfe8bf40a3","type":"encode","z":"23dbb1ee.bc2e8e","name":"","protofile":"a0d4288141f6a629","protoType":"ServiceEnvelope","x":1287,"y":2020,"wires":[["dbc78f035c9c2b56","a002c148f3a06bac"]]},{"id":"03a7e69ca6d471fe","type":"debug","z":"23dbb1ee.bc2e8e","name":"show hex string","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":1319,"y":2180,"wires":[]},{"id":"dbc78f035c9c2b56","type":"function","z":"23dbb1ee.bc2e8e","name":"dump payload as hex string","func":"var hex=Buffer.from(msg.payload,\"hex\");\nmsg.payload=hex.toString(\"hex\");\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":1096,"y":2178,"wires":[["03a7e69ca6d471fe"]]},{"id":"2b536512e8c7aef2","type":"function","z":"23dbb1ee.bc2e8e","name":"Inject lat lon alt","func":"msg.payload={\n \"latitudeI\": 399600000,\n \"longitudeI\": -862600000,\n \"altitude\": 100\n}\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":277.5,"y":1953,"wires":[["9443a9a980e54c75"]]},{"id":"9443a9a980e54c75","type":"encode","z":"23dbb1ee.bc2e8e","name":"encode Position as protobuf","protofile":"dbab6472b07929a0","protoType":"Position","x":506,"y":1953,"wires":[["5c36d3a7f4dca14e"]]},{"id":"5c36d3a7f4dca14e","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"nested_outbound","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":776,"y":1952,"wires":[["20bbd2d1408b8dc5","c6cb373157be01d6","24199ec7eaf89c1a","de38ad5ef343623a","d435e8abe0852f93","04d0c4a5f3485c6f"]]},{"id":"04d0c4a5f3485c6f","type":"function","z":"23dbb1ee.bc2e8e","name":"dump payload as base64 string","func":"var hex=Buffer.from(msg.payload,\"base64\");\nmsg.payload=hex.toString(\"base64\");\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":1082,"y":1952,"wires":[["1f8d172708898860"]]},{"id":"a002c148f3a06bac","type":"decode","z":"23dbb1ee.bc2e8e","name":"test decode Protobuf","protofile":"a0d4288141f6a629","protoType":"ServiceEnvelope","x":1249,"y":1860,"wires":[["4b6fc79398d05782"]]},{"id":"4b6fc79398d05782","type":"debug","z":"23dbb1ee.bc2e8e","name":"test entire payload","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":1458,"y":1859,"wires":[]},{"id":"a0d4288141f6a629","type":"protobuf-file","protopath":"E:\\Meshtastic-protobufs-master\\mqtt.proto","watchFile":true,"keepCase":false},{"id":"dbab6472b07929a0","type":"protobuf-file","protopath":"E:\\Meshtastic-protobufs-master\\mesh.proto","watchFile":true,"keepCase":false}] +''' From 182c112f7a5e8fc13090f1df47476859e7e294bb Mon Sep 17 00:00:00 2001 From: arduinoGP <115203453+arduionoGP@users.noreply.github.com> Date: Sat, 26 Nov 2022 18:33:05 -0500 Subject: [PATCH 03/22] Correct typo --- docs/software/mqtt/index.mdx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/software/mqtt/index.mdx b/docs/software/mqtt/index.mdx index a5bf2a8a..a593211d 100644 --- a/docs/software/mqtt/index.mdx +++ b/docs/software/mqtt/index.mdx @@ -284,6 +284,6 @@ Node-red can rapidly (minutes vs days) put together some pretty impressive outpu Advanced use, such as encoding Position and sending it to a device via MQTT without using JSON can get a little complicated. An example of how it can be done is below. [](/documents/mqtt/EncodingPosition.jpg) The flow is: -''' + ``` [{"id":"32ca608d9e7c5236","type":"inject","z":"23dbb1ee.bc2e8e","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":96.5,"y":1952,"wires":[["2b536512e8c7aef2"]]},{"id":"20bbd2d1408b8dc5","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"channelId_outbound","pt":"flow","to":"LongFast","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":772,"y":2027,"wires":[[]]},{"id":"c6cb373157be01d6","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"gatewayId_outbound","pt":"flow","to":"\"!55c7312c\"","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":772,"y":2066,"wires":[[]]},{"id":"24199ec7eaf89c1a","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"portnum_outbound","pt":"flow","to":"3","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":774,"y":2106,"wires":[[]]},{"id":"de38ad5ef343623a","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"from_outbound","pt":"flow","to":"1439117612","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":781,"y":2146,"wires":[[]]},{"id":"d435e8abe0852f93","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"to_outbound","pt":"flow","to":"4294967295","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":790,"y":2188,"wires":[[]]},{"id":"1f8d172708898860","type":"function","z":"23dbb1ee.bc2e8e","name":"Assemble Position protobuf","func":"msg.protobufType=null;\nmsg.payload =\n{\n \"packet\": {\n \"from\": flow.get(\"from_outbound\"),\n \"to\": flow.get(\"to_outbound\"), \n \"decoded\":{\n //how ENUMS are handled here\n //portnum is decoded as string but encoded as number\n //in the encode/decode node-red nodes based on protobuf.js\n \"portnum\": flow.get(\"portnum_outbound\"),\n \"payload\": msg.payload \n } \n },\n\n \"channelId\": flow.get(\"channelId_outbound\"),\n \"gatewayId\": flow.get(\"gatewayId_outbound\"),\n};\nreturn msg;\n//info on how to get json data into protobuf \"bytes\" field\n//https://github.com/protobufjs/protobuf.js/wiki/Changes-in-ProtoBuf.js-3.8","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":1086,"y":2019,"wires":[["b8ccf1cfe8bf40a3"]]},{"id":"b8ccf1cfe8bf40a3","type":"encode","z":"23dbb1ee.bc2e8e","name":"","protofile":"a0d4288141f6a629","protoType":"ServiceEnvelope","x":1287,"y":2020,"wires":[["dbc78f035c9c2b56","a002c148f3a06bac"]]},{"id":"03a7e69ca6d471fe","type":"debug","z":"23dbb1ee.bc2e8e","name":"show hex string","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":1319,"y":2180,"wires":[]},{"id":"dbc78f035c9c2b56","type":"function","z":"23dbb1ee.bc2e8e","name":"dump payload as hex string","func":"var hex=Buffer.from(msg.payload,\"hex\");\nmsg.payload=hex.toString(\"hex\");\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":1096,"y":2178,"wires":[["03a7e69ca6d471fe"]]},{"id":"2b536512e8c7aef2","type":"function","z":"23dbb1ee.bc2e8e","name":"Inject lat lon alt","func":"msg.payload={\n \"latitudeI\": 399600000,\n \"longitudeI\": -862600000,\n \"altitude\": 100\n}\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":277.5,"y":1953,"wires":[["9443a9a980e54c75"]]},{"id":"9443a9a980e54c75","type":"encode","z":"23dbb1ee.bc2e8e","name":"encode Position as protobuf","protofile":"dbab6472b07929a0","protoType":"Position","x":506,"y":1953,"wires":[["5c36d3a7f4dca14e"]]},{"id":"5c36d3a7f4dca14e","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"nested_outbound","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":776,"y":1952,"wires":[["20bbd2d1408b8dc5","c6cb373157be01d6","24199ec7eaf89c1a","de38ad5ef343623a","d435e8abe0852f93","04d0c4a5f3485c6f"]]},{"id":"04d0c4a5f3485c6f","type":"function","z":"23dbb1ee.bc2e8e","name":"dump payload as base64 string","func":"var hex=Buffer.from(msg.payload,\"base64\");\nmsg.payload=hex.toString(\"base64\");\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":1082,"y":1952,"wires":[["1f8d172708898860"]]},{"id":"a002c148f3a06bac","type":"decode","z":"23dbb1ee.bc2e8e","name":"test decode Protobuf","protofile":"a0d4288141f6a629","protoType":"ServiceEnvelope","x":1249,"y":1860,"wires":[["4b6fc79398d05782"]]},{"id":"4b6fc79398d05782","type":"debug","z":"23dbb1ee.bc2e8e","name":"test entire payload","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":1458,"y":1859,"wires":[]},{"id":"a0d4288141f6a629","type":"protobuf-file","protopath":"E:\\Meshtastic-protobufs-master\\mqtt.proto","watchFile":true,"keepCase":false},{"id":"dbab6472b07929a0","type":"protobuf-file","protopath":"E:\\Meshtastic-protobufs-master\\mesh.proto","watchFile":true,"keepCase":false}] -''' + ``` From aabf749a3a887e49f7d1ee893d03abb7f7de1673 Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Sun, 27 Nov 2022 13:05:40 -0700 Subject: [PATCH 04/22] updates to bluetooth.mdx --- .../configuration/device-config/bluetooth.mdx | 24 +++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/docs/configuration/device-config/bluetooth.mdx b/docs/configuration/device-config/bluetooth.mdx index 0434c829..8e13e8ff 100644 --- a/docs/configuration/device-config/bluetooth.mdx +++ b/docs/configuration/device-config/bluetooth.mdx @@ -11,7 +11,7 @@ import TabItem from '@theme/TabItem'; The Bluetooth config options are: Enabled, Pairing Mode and Fixed PIN Value. Bluetooth config uses an admin message sending a `Config.Bluetooth` protobuf. :::info -On ESP32 Bluetooth will be disabled if WiFi is enabled. The WiFi setting takes precedence. +ESP32 Devices: Bluetooth will be disabled if WiFi is enabled. The WiFi setting takes precedence. ::: ## Bluetooth Config Values @@ -30,7 +30,14 @@ Finally, `NO_PIN` disables PIN authentication. ### Fixed PIN -If your pairing mode is set to fixed PIN this is the value of that fixed 6 digit pin. Default value is 123456. For all other pairing modes, this number is ignored. +If your pairing mode is set to `FIXED_PIN`, the default value is 123456. For all other pairing modes, this number is ignored. A custom integer (6 digits) can be set via the Bluetooth config options. + +### Default Pairing Mode + +The default pairing mode will be determined based on whether the device has or does not have a screen attached to it during the first boot (or with a stale device state) unless manually configured via the Bluetooth config options. + +- **Screen Attached:** If your device boots up for the first time (or with with a stale device state), and a screen is detected, the default pairing mode will be set to `RANDOM_PIN`. Should the attached screen be removed after the device has already been booted, the default pairing mode of `RANDOM_PIN` will remain unless manually changed to `FIXED_PIN` or `NO_PIN`. It is recommended the pairing mode be updated prior to removing the attached screen. +- **No Screen Attached:** If your device boots up for the first time (or with with a stale device state), and no screen is detected, the default paring mode will be set to `FIXED_PIN` with the aforementioned default value unless manually configured to a custom value. ## Configure Bluetooth Config @@ -46,21 +53,28 @@ values={[ :::info -Bluetooth config is not available for Android. +All Bluetooth config values are available on Android. + +1. Open the Meshtastic App +2. Navigate to: **â‹® > Advanced Settings > Bluetooth Config** ::: +:::info All Bluetooth config values are available on iOS, iPadOS and macOS. 1. Open the Meshtastic App -2. Navigate to: **Settings > Radio Configuration > Position** +2. Navigate to: **Settings > Radio Configuration > Bluetooth (BLE)** +::: +:::info All Bluetooth module config options are available in the python CLI. Example commands are below: +::: | Setting | Acceptable Values | Default | | :-----------------------: | :-----------------: | :-----: | @@ -82,6 +96,8 @@ meshtastic --set bluetooth.fixed_pin 111111 :::info All Bluetooth module config options are available for the Web UI. +1. Open the Meshtastic Web Client +2. Navigate to: **Device Config > Bluetooth** ::: From a1bd6d8a37e944c148a152f23c17686eb5c74348 Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Sun, 27 Nov 2022 16:45:26 -0700 Subject: [PATCH 05/22] added wording for recommended flashing method --- docs/getting-started/flashing-firmware/esp32/index.mdx | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/getting-started/flashing-firmware/esp32/index.mdx b/docs/getting-started/flashing-firmware/esp32/index.mdx index 3af7e277..02e8bc75 100644 --- a/docs/getting-started/flashing-firmware/esp32/index.mdx +++ b/docs/getting-started/flashing-firmware/esp32/index.mdx @@ -5,9 +5,13 @@ sidebar_label: ESP32 Device sidebar_position: 2 --- +:::info +The recommended method for firmware flashing is the [Web-Based Installer.](https://flasher.meshtastic.org) +::: + ## Flashing Method for ESP32 Devices -1. The [Web-based installer](https://flasher.meshtastic.org) requires either Chrome or Edge browsers but is an excellent choice for quickly flashing devices. +1. The [Web-based installer](https://flasher.meshtastic.org) requires either Chrome or Edge browsers but is an excellent choice for quickly flashing devices. **This is the recommended method for firmware flashing, especially for those new to the project, due to its ease of use.** 2. The [Python Flasher](/docs/software/python/flasher) does a lot under the hood to prevent you from needing to use the terminal. It also allows you to configure your device. 3. The [CLI Script](/docs/getting-started/flashing-firmware/esp32/cli-script) is considered the "manual process" for flashing firmware. 4. Flashing your device using an [external serial adapter](/docs/getting-started/flashing-firmware/esp32/external-serial-adapter) should only be attempted as a last resort if no other method has been successful. \ No newline at end of file From 40fb93aeeec959eb6529c8e40dc20773a8fc81b8 Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Sun, 27 Nov 2022 16:48:07 -0700 Subject: [PATCH 06/22] does not configure (for docs consistency) --- docs/getting-started/flashing-firmware/esp32/index.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/getting-started/flashing-firmware/esp32/index.mdx b/docs/getting-started/flashing-firmware/esp32/index.mdx index 02e8bc75..50138837 100644 --- a/docs/getting-started/flashing-firmware/esp32/index.mdx +++ b/docs/getting-started/flashing-firmware/esp32/index.mdx @@ -12,6 +12,6 @@ The recommended method for firmware flashing is the [Web-Based Installer.](https ## Flashing Method for ESP32 Devices 1. The [Web-based installer](https://flasher.meshtastic.org) requires either Chrome or Edge browsers but is an excellent choice for quickly flashing devices. **This is the recommended method for firmware flashing, especially for those new to the project, due to its ease of use.** -2. The [Python Flasher](/docs/software/python/flasher) does a lot under the hood to prevent you from needing to use the terminal. It also allows you to configure your device. +2. The [Python Flasher](/docs/software/python/flasher) does a lot under the hood to prevent you from needing to use the terminal. 3. The [CLI Script](/docs/getting-started/flashing-firmware/esp32/cli-script) is considered the "manual process" for flashing firmware. 4. Flashing your device using an [external serial adapter](/docs/getting-started/flashing-firmware/esp32/external-serial-adapter) should only be attempted as a last resort if no other method has been successful. \ No newline at end of file From 7950fbbd1ff32b04ae33eba4c31f4888c33b50db Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Sun, 27 Nov 2022 16:49:34 -0700 Subject: [PATCH 07/22] fixed formatting --- docs/getting-started/flashing-firmware/esp32/index.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/getting-started/flashing-firmware/esp32/index.mdx b/docs/getting-started/flashing-firmware/esp32/index.mdx index 50138837..af7d5fd9 100644 --- a/docs/getting-started/flashing-firmware/esp32/index.mdx +++ b/docs/getting-started/flashing-firmware/esp32/index.mdx @@ -11,7 +11,7 @@ The recommended method for firmware flashing is the [Web-Based Installer.](https ## Flashing Method for ESP32 Devices -1. The [Web-based installer](https://flasher.meshtastic.org) requires either Chrome or Edge browsers but is an excellent choice for quickly flashing devices. **This is the recommended method for firmware flashing, especially for those new to the project, due to its ease of use.** +1. The [Web-Based Installer](https://flasher.meshtastic.org) requires either Chrome or Edge browsers but is an excellent choice for quickly flashing devices. **This is the recommended method for firmware flashing, especially for those new to the project, due to its ease of use.** 2. The [Python Flasher](/docs/software/python/flasher) does a lot under the hood to prevent you from needing to use the terminal. 3. The [CLI Script](/docs/getting-started/flashing-firmware/esp32/cli-script) is considered the "manual process" for flashing firmware. 4. Flashing your device using an [external serial adapter](/docs/getting-started/flashing-firmware/esp32/external-serial-adapter) should only be attempted as a last resort if no other method has been successful. \ No newline at end of file From 427a2cdbc8c1541f43c25100c1433fb09df4e1ef Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Tue, 29 Nov 2022 15:38:35 -0700 Subject: [PATCH 08/22] requested revisions --- docs/configuration/device-config/bluetooth.mdx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/configuration/device-config/bluetooth.mdx b/docs/configuration/device-config/bluetooth.mdx index 8e13e8ff..6c35a647 100644 --- a/docs/configuration/device-config/bluetooth.mdx +++ b/docs/configuration/device-config/bluetooth.mdx @@ -36,8 +36,8 @@ If your pairing mode is set to `FIXED_PIN`, the default value is 123456. For all The default pairing mode will be determined based on whether the device has or does not have a screen attached to it during the first boot (or with a stale device state) unless manually configured via the Bluetooth config options. -- **Screen Attached:** If your device boots up for the first time (or with with a stale device state), and a screen is detected, the default pairing mode will be set to `RANDOM_PIN`. Should the attached screen be removed after the device has already been booted, the default pairing mode of `RANDOM_PIN` will remain unless manually changed to `FIXED_PIN` or `NO_PIN`. It is recommended the pairing mode be updated prior to removing the attached screen. -- **No Screen Attached:** If your device boots up for the first time (or with with a stale device state), and no screen is detected, the default paring mode will be set to `FIXED_PIN` with the aforementioned default value unless manually configured to a custom value. +- **Screen Attached:** If your device boots up for the first time (or with a stale device state), and a screen is detected, the default pairing mode will be set to `RANDOM_PIN`. Should the attached screen be removed after the device has already been booted, the default pairing mode of `RANDOM_PIN` will remain unless manually changed to `FIXED_PIN` or `NO_PIN`. It is recommended the pairing mode be updated prior to removing the attached screen. +- **No Screen Attached:** If your device boots up for the first time (or with a stale device state), and no screen is detected, the default paring mode will be set to `FIXED_PIN` with the aforementioned default value unless manually configured to a custom value. ## Configure Bluetooth Config @@ -56,7 +56,7 @@ values={[ All Bluetooth config values are available on Android. 1. Open the Meshtastic App -2. Navigate to: **â‹® > Advanced Settings > Bluetooth Config** +2. Navigate to: ** Vertical Elipsis (top right) > Advanced Settings > Bluetooth Config** ::: From c92ee715105033a4821cd21dd609e0e3d3766bea Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Tue, 29 Nov 2022 15:46:38 -0700 Subject: [PATCH 09/22] erased all and rewrote --- docs/configuration/device-config/bluetooth.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/configuration/device-config/bluetooth.mdx b/docs/configuration/device-config/bluetooth.mdx index 6c35a647..4369b8d7 100644 --- a/docs/configuration/device-config/bluetooth.mdx +++ b/docs/configuration/device-config/bluetooth.mdx @@ -56,7 +56,7 @@ values={[ All Bluetooth config values are available on Android. 1. Open the Meshtastic App -2. Navigate to: ** Vertical Elipsis (top right) > Advanced Settings > Bluetooth Config** +2. Navigate to: **Vertical Elipsis (3 dots top right) > Advanced Settings > Bluetooth Config** ::: From 9787d5c15f0cf91237bebfabda1929d4b6893fd4 Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Tue, 29 Nov 2022 15:55:09 -0700 Subject: [PATCH 10/22] remove all lines, will readd --- docs/configuration/device-config/bluetooth.mdx | 9 --------- 1 file changed, 9 deletions(-) diff --git a/docs/configuration/device-config/bluetooth.mdx b/docs/configuration/device-config/bluetooth.mdx index 4369b8d7..6be7ee62 100644 --- a/docs/configuration/device-config/bluetooth.mdx +++ b/docs/configuration/device-config/bluetooth.mdx @@ -50,15 +50,6 @@ values={[ {label: 'CLI', value: 'cli'}, {label: 'Web', value: 'web'}, ]}> - - -:::info -All Bluetooth config values are available on Android. - -1. Open the Meshtastic App -2. Navigate to: **Vertical Elipsis (3 dots top right) > Advanced Settings > Bluetooth Config** -::: - From b9dcdcd32bcab32ac2d7c00dcf11daac07becc89 Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Tue, 29 Nov 2022 15:57:16 -0700 Subject: [PATCH 11/22] fourth times a charm? --- docs/configuration/device-config/bluetooth.mdx | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/docs/configuration/device-config/bluetooth.mdx b/docs/configuration/device-config/bluetooth.mdx index 6be7ee62..4369b8d7 100644 --- a/docs/configuration/device-config/bluetooth.mdx +++ b/docs/configuration/device-config/bluetooth.mdx @@ -50,6 +50,15 @@ values={[ {label: 'CLI', value: 'cli'}, {label: 'Web', value: 'web'}, ]}> + + +:::info +All Bluetooth config values are available on Android. + +1. Open the Meshtastic App +2. Navigate to: **Vertical Elipsis (3 dots top right) > Advanced Settings > Bluetooth Config** +::: + From a3bbc5f29c61e3ab576f55a0eaf1e760b2c1c021 Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Tue, 29 Nov 2022 16:31:16 -0700 Subject: [PATCH 12/22] please let this fix it --- docs/configuration/device-config/bluetooth.mdx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/configuration/device-config/bluetooth.mdx b/docs/configuration/device-config/bluetooth.mdx index 4369b8d7..e76d4a70 100644 --- a/docs/configuration/device-config/bluetooth.mdx +++ b/docs/configuration/device-config/bluetooth.mdx @@ -56,7 +56,7 @@ values={[ All Bluetooth config values are available on Android. 1. Open the Meshtastic App -2. Navigate to: **Vertical Elipsis (3 dots top right) > Advanced Settings > Bluetooth Config** +2. Navigate to: **Vertical Ellipsis (3 dots top right) > Advanced Settings > Bluetooth Config** ::: @@ -101,4 +101,4 @@ All Bluetooth module config options are available for the Web UI. ::: - + \ No newline at end of file From 263beb48ff0519cd93aecc2d75b52530d1547b4e Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Tue, 29 Nov 2022 17:16:45 -0700 Subject: [PATCH 13/22] added line --- docs/configuration/device-config/bluetooth.mdx | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/configuration/device-config/bluetooth.mdx b/docs/configuration/device-config/bluetooth.mdx index e76d4a70..680aa4ef 100644 --- a/docs/configuration/device-config/bluetooth.mdx +++ b/docs/configuration/device-config/bluetooth.mdx @@ -50,6 +50,7 @@ values={[ {label: 'CLI', value: 'cli'}, {label: 'Web', value: 'web'}, ]}> + :::info From 8a7a6918c2ad02a1981f99e33034a8c7fa83de48 Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Tue, 29 Nov 2022 17:28:40 -0700 Subject: [PATCH 14/22] edit line spacing --- docs/configuration/device-config/bluetooth.mdx | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/configuration/device-config/bluetooth.mdx b/docs/configuration/device-config/bluetooth.mdx index 680aa4ef..12812c98 100644 --- a/docs/configuration/device-config/bluetooth.mdx +++ b/docs/configuration/device-config/bluetooth.mdx @@ -61,6 +61,7 @@ All Bluetooth config values are available on Android. ::: + :::info @@ -71,6 +72,7 @@ All Bluetooth config values are available on iOS, iPadOS and macOS. ::: + :::info @@ -93,6 +95,7 @@ meshtastic --set bluetooth.mode FIXED_PIN meshtastic --set bluetooth.fixed_pin 111111 ``` + :::info From 93513e95a8bfda9ae5b23d628d7b863578ff5856 Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Tue, 29 Nov 2022 17:53:31 -0700 Subject: [PATCH 15/22] update --- package.json | 16 +- pnpm-lock.yaml | 1959 +++++++++++++++++++++++------------------------- 2 files changed, 932 insertions(+), 1043 deletions(-) diff --git a/package.json b/package.json index 5db5aaca..645a02c3 100644 --- a/package.json +++ b/package.json @@ -21,20 +21,20 @@ "@heroicons/react": "^2.0.13", "@leenguyen/react-flip-clock-countdown": "^1.3.1", "@mdx-js/react": "^1.6.22", - "@meshtastic/meshtasticjs": "^0.6.113", + "@meshtastic/meshtasticjs": "^0.6.115", "autoprefixer": "^10.4.13", "base64-js": "^1.5.1", "dotenv": "^16.0.3", "framer-motion": "^6.5.1", - "postcss": "^8.4.18", + "postcss": "^8.4.19", "react": "^17.0.2", "react-dom": "^17.0.2", - "react-icons": "^4.6.0", + "react-icons": "^4.7.1", "react-responsive-carousel": "^3.2.23", "swr": "^1.3.0", - "tailwindcss": "^3.2.3", + "tailwindcss": "^3.2.4", "url-search-params-polyfill": "^8.1.1", - "use-breakpoint": "^3.0.3" + "use-breakpoint": "^3.0.4" }, "devDependencies": { "@docusaurus/module-type-aliases": "2.2.0", @@ -43,8 +43,8 @@ "@tsconfig/docusaurus": "^1.0.6", "@types/node": "^18.11.9", "@types/react": "^18.0.25", - "@types/react-dom": "^18.0.8", - "prettier": "^2.7.1", - "typescript": "^4.8.4" + "@types/react-dom": "^18.0.9", + "prettier": "^2.8.0", + "typescript": "^4.9.3" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 30df93e5..0f94385a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -11,62 +11,62 @@ specifiers: '@leenguyen/react-flip-clock-countdown': ^1.3.1 '@mdx-js/react': ^1.6.22 '@meshtastic/eslint-config': ^1.0.8 - '@meshtastic/meshtasticjs': ^0.6.113 + '@meshtastic/meshtasticjs': ^0.6.115 '@tailwindcss/typography': ^0.5.8 '@tsconfig/docusaurus': ^1.0.6 '@types/node': ^18.11.9 '@types/react': ^18.0.25 - '@types/react-dom': ^18.0.8 + '@types/react-dom': ^18.0.9 autoprefixer: ^10.4.13 base64-js: ^1.5.1 dotenv: ^16.0.3 framer-motion: ^6.5.1 - postcss: ^8.4.18 - prettier: ^2.7.1 + postcss: ^8.4.19 + prettier: ^2.8.0 react: ^17.0.2 react-dom: ^17.0.2 - react-icons: ^4.6.0 + react-icons: ^4.7.1 react-responsive-carousel: ^3.2.23 swr: ^1.3.0 - tailwindcss: ^3.2.3 - typescript: ^4.8.4 + tailwindcss: ^3.2.4 + typescript: ^4.9.3 url-search-params-polyfill: ^8.1.1 - use-breakpoint: ^3.0.3 + use-breakpoint: ^3.0.4 dependencies: '@algolia/client-search': 4.14.2 - '@docusaurus/core': 2.2.0_56jbash75ng5psbctf36wqywr4 - '@docusaurus/plugin-content-docs': 2.2.0_56jbash75ng5psbctf36wqywr4 - '@docusaurus/preset-classic': 2.2.0_qealvalg3qigqrjomgx4rnwdxu + '@docusaurus/core': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu + '@docusaurus/plugin-content-docs': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu + '@docusaurus/preset-classic': 2.2.0_bsafmusoukf4e6aet6onn76mra '@headlessui/react': 1.7.4_sfoxds7t5ydpegc3knd667wn6m '@heroicons/react': 2.0.13_react@17.0.2 '@leenguyen/react-flip-clock-countdown': 1.3.1_react@17.0.2 '@mdx-js/react': 1.6.22_react@17.0.2 - '@meshtastic/meshtasticjs': 0.6.113 - autoprefixer: 10.4.13_postcss@8.4.18 + '@meshtastic/meshtasticjs': 0.6.115 + autoprefixer: 10.4.13_postcss@8.4.19 base64-js: 1.5.1 dotenv: 16.0.3 framer-motion: 6.5.1_sfoxds7t5ydpegc3knd667wn6m - postcss: 8.4.18 + postcss: 8.4.19 react: 17.0.2 react-dom: 17.0.2_react@17.0.2 - react-icons: 4.6.0_react@17.0.2 + react-icons: 4.7.1_react@17.0.2 react-responsive-carousel: 3.2.23 swr: 1.3.0_react@17.0.2 - tailwindcss: 3.2.3_postcss@8.4.18 + tailwindcss: 3.2.4_postcss@8.4.19 url-search-params-polyfill: 8.1.1 - use-breakpoint: 3.0.3_sfoxds7t5ydpegc3knd667wn6m + use-breakpoint: 3.0.4_sfoxds7t5ydpegc3knd667wn6m devDependencies: '@docusaurus/module-type-aliases': 2.2.0_sfoxds7t5ydpegc3knd667wn6m '@meshtastic/eslint-config': 1.0.8 - '@tailwindcss/typography': 0.5.8_tailwindcss@3.2.3 + '@tailwindcss/typography': 0.5.8_tailwindcss@3.2.4 '@tsconfig/docusaurus': 1.0.6 '@types/node': 18.11.9 '@types/react': 18.0.25 - '@types/react-dom': 18.0.8 - prettier: 2.7.1 - typescript: 4.8.4 + '@types/react-dom': 18.0.9 + prettier: 2.8.0 + typescript: 4.9.3 packages: @@ -200,8 +200,8 @@ packages: '@babel/highlight': 7.18.6 dev: false - /@babel/compat-data/7.20.1: - resolution: {integrity: sha512-EWZ4mE2diW3QALKvDMiXnbZpRvlj+nayZ112nK93SnhqOtpdsbVD4W+2tEoT3YNBAG9RBR0ISY758ZkOgsn6pQ==} + /@babel/compat-data/7.20.5: + resolution: {integrity: sha512-KZXo2t10+/jxmkhNXc7pZTqRvSOIvVv/+lJwHS+B2rErwOyjuVRh60yVpb7liQ1U5t7lLJ1bz+t8tSypUZdm0g==} engines: {node: '>=6.9.0'} dev: false @@ -210,13 +210,13 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/code-frame': 7.18.6 - '@babel/generator': 7.20.4 + '@babel/generator': 7.20.5 '@babel/helper-module-transforms': 7.20.2 - '@babel/helpers': 7.20.1 - '@babel/parser': 7.20.3 + '@babel/helpers': 7.20.6 + '@babel/parser': 7.20.5 '@babel/template': 7.18.10 - '@babel/traverse': 7.20.1 - '@babel/types': 7.20.2 + '@babel/traverse': 7.20.5 + '@babel/types': 7.20.5 convert-source-map: 1.9.0 debug: 4.3.4 gensync: 1.0.0-beta.2 @@ -229,20 +229,20 @@ packages: - supports-color dev: false - /@babel/core/7.20.2: - resolution: {integrity: sha512-w7DbG8DtMrJcFOi4VrLm+8QM4az8Mo+PuLBKLp2zrYRCow8W/f9xiXm5sN53C8HksCyDQwCKha9JiDoIyPjT2g==} + /@babel/core/7.20.5: + resolution: {integrity: sha512-UdOWmk4pNWTm/4DlPUl/Pt4Gz4rcEMb7CY0Y3eJl5Yz1vI8ZJGmHWaVE55LoxRjdpx0z259GE9U5STA9atUinQ==} engines: {node: '>=6.9.0'} dependencies: '@ampproject/remapping': 2.2.0 '@babel/code-frame': 7.18.6 - '@babel/generator': 7.20.4 - '@babel/helper-compilation-targets': 7.20.0_@babel+core@7.20.2 + '@babel/generator': 7.20.5 + '@babel/helper-compilation-targets': 7.20.0_@babel+core@7.20.5 '@babel/helper-module-transforms': 7.20.2 - '@babel/helpers': 7.20.1 - '@babel/parser': 7.20.3 + '@babel/helpers': 7.20.6 + '@babel/parser': 7.20.5 '@babel/template': 7.18.10 - '@babel/traverse': 7.20.1 - '@babel/types': 7.20.2 + '@babel/traverse': 7.20.5 + '@babel/types': 7.20.5 convert-source-map: 1.9.0 debug: 4.3.4 gensync: 1.0.0-beta.2 @@ -252,11 +252,11 @@ packages: - supports-color dev: false - /@babel/generator/7.20.4: - resolution: {integrity: sha512-luCf7yk/cm7yab6CAW1aiFnmEfBJplb/JojV56MYEK7ziWfGmFlTfmL9Ehwfy4gFhbjBfWO1wj7/TuSbVNEEtA==} + /@babel/generator/7.20.5: + resolution: {integrity: sha512-jl7JY2Ykn9S0yj4DQP82sYvPU+T3g0HFcWTqDLqiuA9tGRNIj9VfbtXGAYTTkyNEnQk1jkMGOdYka8aG/lulCA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.20.2 + '@babel/types': 7.20.5 '@jridgewell/gen-mapping': 0.3.2 jsesc: 2.5.2 dev: false @@ -265,7 +265,7 @@ packages: resolution: {integrity: sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.20.2 + '@babel/types': 7.20.5 dev: false /@babel/helper-builder-binary-assignment-operator-visitor/7.18.9: @@ -273,29 +273,29 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/helper-explode-assignable-expression': 7.18.6 - '@babel/types': 7.20.2 + '@babel/types': 7.20.5 dev: false - /@babel/helper-compilation-targets/7.20.0_@babel+core@7.20.2: + /@babel/helper-compilation-targets/7.20.0_@babel+core@7.20.5: resolution: {integrity: sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/compat-data': 7.20.1 - '@babel/core': 7.20.2 + '@babel/compat-data': 7.20.5 + '@babel/core': 7.20.5 '@babel/helper-validator-option': 7.18.6 browserslist: 4.21.4 semver: 6.3.0 dev: false - /@babel/helper-create-class-features-plugin/7.20.2_@babel+core@7.20.2: - resolution: {integrity: sha512-k22GoYRAHPYr9I+Gvy2ZQlAe5mGy8BqWst2wRt8cwIufWTxrsVshhIBvYNqC80N0GSFWTsqRVexOtfzlgOEDvA==} + /@babel/helper-create-class-features-plugin/7.20.5_@babel+core@7.20.5: + resolution: {integrity: sha512-3RCdA/EmEaikrhayahwToF0fpweU/8o2p8vhc1c/1kftHOdTKuC65kik/TLc+qfbS8JKw4qqJbne4ovICDhmww==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-annotate-as-pure': 7.18.6 '@babel/helper-environment-visitor': 7.18.9 '@babel/helper-function-name': 7.19.0 @@ -307,24 +307,24 @@ packages: - supports-color dev: false - /@babel/helper-create-regexp-features-plugin/7.19.0_@babel+core@7.20.2: - resolution: {integrity: sha512-htnV+mHX32DF81amCDrwIDr8nrp1PTm+3wfBN9/v8QJOLEioOCOG7qNyq0nHeFiWbT3Eb7gsPwEmV64UCQ1jzw==} + /@babel/helper-create-regexp-features-plugin/7.20.5_@babel+core@7.20.5: + resolution: {integrity: sha512-m68B1lkg3XDGX5yCvGO0kPx3v9WIYLnzjKfPcQiwntEQa5ZeRkPmo2X/ISJc8qxWGfwUr+kvZAeEzAwLec2r2w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-annotate-as-pure': 7.18.6 - regexpu-core: 5.2.1 + regexpu-core: 5.2.2 dev: false - /@babel/helper-define-polyfill-provider/0.3.3_@babel+core@7.20.2: + /@babel/helper-define-polyfill-provider/0.3.3_@babel+core@7.20.5: resolution: {integrity: sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==} peerDependencies: '@babel/core': ^7.4.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-compilation-targets': 7.20.0_@babel+core@7.20.2 + '@babel/core': 7.20.5 + '@babel/helper-compilation-targets': 7.20.0_@babel+core@7.20.5 '@babel/helper-plugin-utils': 7.20.2 debug: 4.3.4 lodash.debounce: 4.0.8 @@ -343,7 +343,7 @@ packages: resolution: {integrity: sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.20.2 + '@babel/types': 7.20.5 dev: false /@babel/helper-function-name/7.19.0: @@ -351,28 +351,28 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/template': 7.18.10 - '@babel/types': 7.20.2 + '@babel/types': 7.20.5 dev: false /@babel/helper-hoist-variables/7.18.6: resolution: {integrity: sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.20.2 + '@babel/types': 7.20.5 dev: false /@babel/helper-member-expression-to-functions/7.18.9: resolution: {integrity: sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.20.2 + '@babel/types': 7.20.5 dev: false /@babel/helper-module-imports/7.18.6: resolution: {integrity: sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.20.2 + '@babel/types': 7.20.5 dev: false /@babel/helper-module-transforms/7.20.2: @@ -385,8 +385,8 @@ packages: '@babel/helper-split-export-declaration': 7.18.6 '@babel/helper-validator-identifier': 7.19.1 '@babel/template': 7.18.10 - '@babel/traverse': 7.20.1 - '@babel/types': 7.20.2 + '@babel/traverse': 7.20.5 + '@babel/types': 7.20.5 transitivePeerDependencies: - supports-color dev: false @@ -395,7 +395,7 @@ packages: resolution: {integrity: sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.20.2 + '@babel/types': 7.20.5 dev: false /@babel/helper-plugin-utils/7.10.4: @@ -407,17 +407,17 @@ packages: engines: {node: '>=6.9.0'} dev: false - /@babel/helper-remap-async-to-generator/7.18.9_@babel+core@7.20.2: + /@babel/helper-remap-async-to-generator/7.18.9_@babel+core@7.20.5: resolution: {integrity: sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-annotate-as-pure': 7.18.6 '@babel/helper-environment-visitor': 7.18.9 - '@babel/helper-wrap-function': 7.19.0 - '@babel/types': 7.20.2 + '@babel/helper-wrap-function': 7.20.5 + '@babel/types': 7.20.5 transitivePeerDependencies: - supports-color dev: false @@ -429,8 +429,8 @@ packages: '@babel/helper-environment-visitor': 7.18.9 '@babel/helper-member-expression-to-functions': 7.18.9 '@babel/helper-optimise-call-expression': 7.18.6 - '@babel/traverse': 7.20.1 - '@babel/types': 7.20.2 + '@babel/traverse': 7.20.5 + '@babel/types': 7.20.5 transitivePeerDependencies: - supports-color dev: false @@ -439,21 +439,21 @@ packages: resolution: {integrity: sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.20.2 + '@babel/types': 7.20.5 dev: false /@babel/helper-skip-transparent-expression-wrappers/7.20.0: resolution: {integrity: sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.20.2 + '@babel/types': 7.20.5 dev: false /@babel/helper-split-export-declaration/7.18.6: resolution: {integrity: sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.20.2 + '@babel/types': 7.20.5 dev: false /@babel/helper-string-parser/7.19.4: @@ -471,25 +471,25 @@ packages: engines: {node: '>=6.9.0'} dev: false - /@babel/helper-wrap-function/7.19.0: - resolution: {integrity: sha512-txX8aN8CZyYGTwcLhlk87KRqncAzhh5TpQamZUa0/u3an36NtDpUP6bQgBCBcLeBs09R/OwQu3OjK0k/HwfNDg==} + /@babel/helper-wrap-function/7.20.5: + resolution: {integrity: sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q==} engines: {node: '>=6.9.0'} dependencies: '@babel/helper-function-name': 7.19.0 '@babel/template': 7.18.10 - '@babel/traverse': 7.20.1 - '@babel/types': 7.20.2 + '@babel/traverse': 7.20.5 + '@babel/types': 7.20.5 transitivePeerDependencies: - supports-color dev: false - /@babel/helpers/7.20.1: - resolution: {integrity: sha512-J77mUVaDTUJFZ5BpP6mMn6OIl3rEWymk2ZxDBQJUG3P+PbmyMcF3bYWvz0ma69Af1oobDqT/iAsvzhB58xhQUg==} + /@babel/helpers/7.20.6: + resolution: {integrity: sha512-Pf/OjgfgFRW5bApskEz5pvidpim7tEDPlFtKcNRXWmfHGn9IEI2W2flqRQXTFb7gIPTyK++N6rVHuwKut4XK6w==} engines: {node: '>=6.9.0'} dependencies: '@babel/template': 7.18.10 - '@babel/traverse': 7.20.1 - '@babel/types': 7.20.2 + '@babel/traverse': 7.20.5 + '@babel/types': 7.20.5 transitivePeerDependencies: - supports-color dev: false @@ -503,142 +503,142 @@ packages: js-tokens: 4.0.0 dev: false - /@babel/parser/7.20.3: - resolution: {integrity: sha512-OP/s5a94frIPXwjzEcv5S/tpQfc6XhxYUnmWpgdqMWGgYCuErA3SzozaRAMQgSZWKeTJxht9aWAkUY+0UzvOFg==} + /@babel/parser/7.20.5: + resolution: {integrity: sha512-r27t/cy/m9uKLXQNWWebeCUHgnAZq0CpG1OwKRxzJMP1vpSU4bSIK2hq+/cp0bQxetkXx38n09rNu8jVkcK/zA==} engines: {node: '>=6.0.0'} hasBin: true dependencies: - '@babel/types': 7.20.2 + '@babel/types': 7.20.5 dev: false - /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/7.18.6_@babel+core@7.20.2: + /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/7.18.9_@babel+core@7.20.2: + /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/7.18.9_@babel+core@7.20.5: resolution: {integrity: sha512-AHrP9jadvH7qlOj6PINbgSuphjQUAK7AOT7DPjBo9EHoLhQTnnK5u45e1Hd4DbSQEO9nqPWtQ89r+XEOWFScKg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.13.0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 '@babel/helper-skip-transparent-expression-wrappers': 7.20.0 - '@babel/plugin-proposal-optional-chaining': 7.18.9_@babel+core@7.20.2 + '@babel/plugin-proposal-optional-chaining': 7.18.9_@babel+core@7.20.5 dev: false - /@babel/plugin-proposal-async-generator-functions/7.20.1_@babel+core@7.20.2: + /@babel/plugin-proposal-async-generator-functions/7.20.1_@babel+core@7.20.5: resolution: {integrity: sha512-Gh5rchzSwE4kC+o/6T8waD0WHEQIsDmjltY8WnWRXHUdH8axZhuH86Ov9M72YhJfDrZseQwuuWaaIT/TmePp3g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-environment-visitor': 7.18.9 '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-remap-async-to-generator': 7.18.9_@babel+core@7.20.2 - '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.20.2 + '@babel/helper-remap-async-to-generator': 7.18.9_@babel+core@7.20.5 + '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.20.5 transitivePeerDependencies: - supports-color dev: false - /@babel/plugin-proposal-class-properties/7.18.6_@babel+core@7.20.2: + /@babel/plugin-proposal-class-properties/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-create-class-features-plugin': 7.20.2_@babel+core@7.20.2 + '@babel/core': 7.20.5 + '@babel/helper-create-class-features-plugin': 7.20.5_@babel+core@7.20.5 '@babel/helper-plugin-utils': 7.20.2 transitivePeerDependencies: - supports-color dev: false - /@babel/plugin-proposal-class-static-block/7.18.6_@babel+core@7.20.2: + /@babel/plugin-proposal-class-static-block/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-+I3oIiNxrCpup3Gi8n5IGMwj0gOCAjcJUSQEcotNnCCPMEnixawOQ+KeJPlgfjzx+FKQ1QSyZOWe7wmoJp7vhw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.12.0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-create-class-features-plugin': 7.20.2_@babel+core@7.20.2 + '@babel/core': 7.20.5 + '@babel/helper-create-class-features-plugin': 7.20.5_@babel+core@7.20.5 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-class-static-block': 7.14.5_@babel+core@7.20.2 + '@babel/plugin-syntax-class-static-block': 7.14.5_@babel+core@7.20.5 transitivePeerDependencies: - supports-color dev: false - /@babel/plugin-proposal-dynamic-import/7.18.6_@babel+core@7.20.2: + /@babel/plugin-proposal-dynamic-import/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.20.2 + '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.20.5 dev: false - /@babel/plugin-proposal-export-namespace-from/7.18.9_@babel+core@7.20.2: + /@babel/plugin-proposal-export-namespace-from/7.18.9_@babel+core@7.20.5: resolution: {integrity: sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-export-namespace-from': 7.8.3_@babel+core@7.20.2 + '@babel/plugin-syntax-export-namespace-from': 7.8.3_@babel+core@7.20.5 dev: false - /@babel/plugin-proposal-json-strings/7.18.6_@babel+core@7.20.2: + /@babel/plugin-proposal-json-strings/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.20.2 + '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.20.5 dev: false - /@babel/plugin-proposal-logical-assignment-operators/7.18.9_@babel+core@7.20.2: + /@babel/plugin-proposal-logical-assignment-operators/7.18.9_@babel+core@7.20.5: resolution: {integrity: sha512-128YbMpjCrP35IOExw2Fq+x55LMP42DzhOhX2aNNIdI9avSWl2PI0yuBWarr3RYpZBSPtabfadkH2yeRiMD61Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.20.2 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.20.5 dev: false - /@babel/plugin-proposal-nullish-coalescing-operator/7.18.6_@babel+core@7.20.2: + /@babel/plugin-proposal-nullish-coalescing-operator/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.20.2 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.20.5 dev: false - /@babel/plugin-proposal-numeric-separator/7.18.6_@babel+core@7.20.2: + /@babel/plugin-proposal-numeric-separator/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.20.2 + '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.20.5 dev: false /@babel/plugin-proposal-object-rest-spread/7.12.1_@babel+core@7.12.9: @@ -649,147 +649,147 @@ packages: '@babel/core': 7.12.9 '@babel/helper-plugin-utils': 7.10.4 '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.12.9 - '@babel/plugin-transform-parameters': 7.20.3_@babel+core@7.12.9 + '@babel/plugin-transform-parameters': 7.20.5_@babel+core@7.12.9 dev: false - /@babel/plugin-proposal-object-rest-spread/7.20.2_@babel+core@7.20.2: + /@babel/plugin-proposal-object-rest-spread/7.20.2_@babel+core@7.20.5: resolution: {integrity: sha512-Ks6uej9WFK+fvIMesSqbAto5dD8Dz4VuuFvGJFKgIGSkJuRGcrwGECPA1fDgQK3/DbExBJpEkTeYeB8geIFCSQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/compat-data': 7.20.1 - '@babel/core': 7.20.2 - '@babel/helper-compilation-targets': 7.20.0_@babel+core@7.20.2 + '@babel/compat-data': 7.20.5 + '@babel/core': 7.20.5 + '@babel/helper-compilation-targets': 7.20.0_@babel+core@7.20.5 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.20.2 - '@babel/plugin-transform-parameters': 7.20.3_@babel+core@7.20.2 + '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.20.5 + '@babel/plugin-transform-parameters': 7.20.5_@babel+core@7.20.5 dev: false - /@babel/plugin-proposal-optional-catch-binding/7.18.6_@babel+core@7.20.2: + /@babel/plugin-proposal-optional-catch-binding/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.20.2 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.20.5 dev: false - /@babel/plugin-proposal-optional-chaining/7.18.9_@babel+core@7.20.2: + /@babel/plugin-proposal-optional-chaining/7.18.9_@babel+core@7.20.5: resolution: {integrity: sha512-v5nwt4IqBXihxGsW2QmCWMDS3B3bzGIk/EQVZz2ei7f3NJl8NzAJVvUmpDW5q1CRNY+Beb/k58UAH1Km1N411w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 '@babel/helper-skip-transparent-expression-wrappers': 7.20.0 - '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.20.2 + '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.20.5 dev: false - /@babel/plugin-proposal-private-methods/7.18.6_@babel+core@7.20.2: + /@babel/plugin-proposal-private-methods/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-create-class-features-plugin': 7.20.2_@babel+core@7.20.2 + '@babel/core': 7.20.5 + '@babel/helper-create-class-features-plugin': 7.20.5_@babel+core@7.20.5 '@babel/helper-plugin-utils': 7.20.2 transitivePeerDependencies: - supports-color dev: false - /@babel/plugin-proposal-private-property-in-object/7.18.6_@babel+core@7.20.2: - resolution: {integrity: sha512-9Rysx7FOctvT5ouj5JODjAFAkgGoudQuLPamZb0v1TGLpapdNaftzifU8NTWQm0IRjqoYypdrSmyWgkocDQ8Dw==} + /@babel/plugin-proposal-private-property-in-object/7.20.5_@babel+core@7.20.5: + resolution: {integrity: sha512-Vq7b9dUA12ByzB4EjQTPo25sFhY+08pQDBSZRtUAkj7lb7jahaHR5igera16QZ+3my1nYR4dKsNdYj5IjPHilQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-annotate-as-pure': 7.18.6 - '@babel/helper-create-class-features-plugin': 7.20.2_@babel+core@7.20.2 + '@babel/helper-create-class-features-plugin': 7.20.5_@babel+core@7.20.5 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-private-property-in-object': 7.14.5_@babel+core@7.20.2 + '@babel/plugin-syntax-private-property-in-object': 7.14.5_@babel+core@7.20.5 transitivePeerDependencies: - supports-color dev: false - /@babel/plugin-proposal-unicode-property-regex/7.18.6_@babel+core@7.20.2: + /@babel/plugin-proposal-unicode-property-regex/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==} engines: {node: '>=4'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-create-regexp-features-plugin': 7.19.0_@babel+core@7.20.2 + '@babel/core': 7.20.5 + '@babel/helper-create-regexp-features-plugin': 7.20.5_@babel+core@7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-syntax-async-generators/7.8.4_@babel+core@7.20.2: + /@babel/plugin-syntax-async-generators/7.8.4_@babel+core@7.20.5: resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-syntax-class-properties/7.12.13_@babel+core@7.20.2: + /@babel/plugin-syntax-class-properties/7.12.13_@babel+core@7.20.5: resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-syntax-class-static-block/7.14.5_@babel+core@7.20.2: + /@babel/plugin-syntax-class-static-block/7.14.5_@babel+core@7.20.5: resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-syntax-dynamic-import/7.8.3_@babel+core@7.20.2: + /@babel/plugin-syntax-dynamic-import/7.8.3_@babel+core@7.20.5: resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-syntax-export-namespace-from/7.8.3_@babel+core@7.20.2: + /@babel/plugin-syntax-export-namespace-from/7.8.3_@babel+core@7.20.5: resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-syntax-import-assertions/7.20.0_@babel+core@7.20.2: + /@babel/plugin-syntax-import-assertions/7.20.0_@babel+core@7.20.5: resolution: {integrity: sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-syntax-json-strings/7.8.3_@babel+core@7.20.2: + /@babel/plugin-syntax-json-strings/7.8.3_@babel+core@7.20.5: resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false @@ -802,40 +802,40 @@ packages: '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-syntax-jsx/7.18.6_@babel+core@7.20.2: + /@babel/plugin-syntax-jsx/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-syntax-logical-assignment-operators/7.10.4_@babel+core@7.20.2: + /@babel/plugin-syntax-logical-assignment-operators/7.10.4_@babel+core@7.20.5: resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-syntax-nullish-coalescing-operator/7.8.3_@babel+core@7.20.2: + /@babel/plugin-syntax-nullish-coalescing-operator/7.8.3_@babel+core@7.20.5: resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-syntax-numeric-separator/7.10.4_@babel+core@7.20.2: + /@babel/plugin-syntax-numeric-separator/7.10.4_@babel+core@7.20.5: resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false @@ -848,116 +848,116 @@ packages: '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.20.2: + /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.20.5: resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-syntax-optional-catch-binding/7.8.3_@babel+core@7.20.2: + /@babel/plugin-syntax-optional-catch-binding/7.8.3_@babel+core@7.20.5: resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-syntax-optional-chaining/7.8.3_@babel+core@7.20.2: + /@babel/plugin-syntax-optional-chaining/7.8.3_@babel+core@7.20.5: resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-syntax-private-property-in-object/7.14.5_@babel+core@7.20.2: + /@babel/plugin-syntax-private-property-in-object/7.14.5_@babel+core@7.20.5: resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-syntax-top-level-await/7.14.5_@babel+core@7.20.2: + /@babel/plugin-syntax-top-level-await/7.14.5_@babel+core@7.20.5: resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-syntax-typescript/7.20.0_@babel+core@7.20.2: + /@babel/plugin-syntax-typescript/7.20.0_@babel+core@7.20.5: resolution: {integrity: sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-arrow-functions/7.18.6_@babel+core@7.20.2: + /@babel/plugin-transform-arrow-functions/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-9S9X9RUefzrsHZmKMbDXxweEH+YlE8JJEuat9FdvW9Qh1cw7W64jELCtWNkPBPX5En45uy28KGvA/AySqUh8CQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-async-to-generator/7.18.6_@babel+core@7.20.2: + /@babel/plugin-transform-async-to-generator/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-ARE5wZLKnTgPW7/1ftQmSi1CmkqqHo2DNmtztFhvgtOWSDfq0Cq9/9L+KnZNYSNrydBekhW3rwShduf59RoXag==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-module-imports': 7.18.6 '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-remap-async-to-generator': 7.18.9_@babel+core@7.20.2 + '@babel/helper-remap-async-to-generator': 7.18.9_@babel+core@7.20.5 transitivePeerDependencies: - supports-color dev: false - /@babel/plugin-transform-block-scoped-functions/7.18.6_@babel+core@7.20.2: + /@babel/plugin-transform-block-scoped-functions/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-block-scoping/7.20.2_@babel+core@7.20.2: - resolution: {integrity: sha512-y5V15+04ry69OV2wULmwhEA6jwSWXO1TwAtIwiPXcvHcoOQUqpyMVd2bDsQJMW8AurjulIyUV8kDqtjSwHy1uQ==} + /@babel/plugin-transform-block-scoping/7.20.5_@babel+core@7.20.5: + resolution: {integrity: sha512-WvpEIW9Cbj9ApF3yJCjIEEf1EiNJLtXagOrL5LNWEZOo3jv8pmPoYTSNJQvqej8OavVlgOoOPw6/htGZro6IkA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-classes/7.20.2_@babel+core@7.20.2: + /@babel/plugin-transform-classes/7.20.2_@babel+core@7.20.5: resolution: {integrity: sha512-9rbPp0lCVVoagvtEyQKSo5L8oo0nQS/iif+lwlAz29MccX2642vWDlSZK+2T2buxbopotId2ld7zZAzRfz9j1g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-annotate-as-pure': 7.18.6 - '@babel/helper-compilation-targets': 7.20.0_@babel+core@7.20.2 + '@babel/helper-compilation-targets': 7.20.0_@babel+core@7.20.5 '@babel/helper-environment-visitor': 7.18.9 '@babel/helper-function-name': 7.19.0 '@babel/helper-optimise-call-expression': 7.18.6 @@ -969,120 +969,120 @@ packages: - supports-color dev: false - /@babel/plugin-transform-computed-properties/7.18.9_@babel+core@7.20.2: + /@babel/plugin-transform-computed-properties/7.18.9_@babel+core@7.20.5: resolution: {integrity: sha512-+i0ZU1bCDymKakLxn5srGHrsAPRELC2WIbzwjLhHW9SIE1cPYkLCL0NlnXMZaM1vhfgA2+M7hySk42VBvrkBRw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-destructuring/7.20.2_@babel+core@7.20.2: + /@babel/plugin-transform-destructuring/7.20.2_@babel+core@7.20.5: resolution: {integrity: sha512-mENM+ZHrvEgxLTBXUiQ621rRXZes3KWUv6NdQlrnr1TkWVw+hUjQBZuP2X32qKlrlG2BzgR95gkuCRSkJl8vIw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-dotall-regex/7.18.6_@babel+core@7.20.2: + /@babel/plugin-transform-dotall-regex/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-create-regexp-features-plugin': 7.19.0_@babel+core@7.20.2 + '@babel/core': 7.20.5 + '@babel/helper-create-regexp-features-plugin': 7.20.5_@babel+core@7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-duplicate-keys/7.18.9_@babel+core@7.20.2: + /@babel/plugin-transform-duplicate-keys/7.18.9_@babel+core@7.20.5: resolution: {integrity: sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-exponentiation-operator/7.18.6_@babel+core@7.20.2: + /@babel/plugin-transform-exponentiation-operator/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-builder-binary-assignment-operator-visitor': 7.18.9 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-for-of/7.18.8_@babel+core@7.20.2: + /@babel/plugin-transform-for-of/7.18.8_@babel+core@7.20.5: resolution: {integrity: sha512-yEfTRnjuskWYo0k1mHUqrVWaZwrdq8AYbfrpqULOJOaucGSp4mNMVps+YtA8byoevxS/urwU75vyhQIxcCgiBQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-function-name/7.18.9_@babel+core@7.20.2: + /@babel/plugin-transform-function-name/7.18.9_@babel+core@7.20.5: resolution: {integrity: sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-compilation-targets': 7.20.0_@babel+core@7.20.2 + '@babel/core': 7.20.5 + '@babel/helper-compilation-targets': 7.20.0_@babel+core@7.20.5 '@babel/helper-function-name': 7.19.0 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-literals/7.18.9_@babel+core@7.20.2: + /@babel/plugin-transform-literals/7.18.9_@babel+core@7.20.5: resolution: {integrity: sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-member-expression-literals/7.18.6_@babel+core@7.20.2: + /@babel/plugin-transform-member-expression-literals/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-modules-amd/7.19.6_@babel+core@7.20.2: + /@babel/plugin-transform-modules-amd/7.19.6_@babel+core@7.20.5: resolution: {integrity: sha512-uG3od2mXvAtIFQIh0xrpLH6r5fpSQN04gIVovl+ODLdUMANokxQLZnPBHcjmv3GxRjnqwLuHvppjjcelqUFZvg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-module-transforms': 7.20.2 '@babel/helper-plugin-utils': 7.20.2 transitivePeerDependencies: - supports-color dev: false - /@babel/plugin-transform-modules-commonjs/7.19.6_@babel+core@7.20.2: + /@babel/plugin-transform-modules-commonjs/7.19.6_@babel+core@7.20.5: resolution: {integrity: sha512-8PIa1ym4XRTKuSsOUXqDG0YaOlEuTVvHMe5JCfgBMOtHvJKw/4NGovEGN33viISshG/rZNVrACiBmPQLvWN8xQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-module-transforms': 7.20.2 '@babel/helper-plugin-utils': 7.20.2 '@babel/helper-simple-access': 7.20.2 @@ -1090,13 +1090,13 @@ packages: - supports-color dev: false - /@babel/plugin-transform-modules-systemjs/7.19.6_@babel+core@7.20.2: + /@babel/plugin-transform-modules-systemjs/7.19.6_@babel+core@7.20.5: resolution: {integrity: sha512-fqGLBepcc3kErfR9R3DnVpURmckXP7gj7bAlrTQyBxrigFqszZCkFkcoxzCp2v32XmwXLvbw+8Yq9/b+QqksjQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-hoist-variables': 7.18.6 '@babel/helper-module-transforms': 7.20.2 '@babel/helper-plugin-utils': 7.20.2 @@ -1105,55 +1105,55 @@ packages: - supports-color dev: false - /@babel/plugin-transform-modules-umd/7.18.6_@babel+core@7.20.2: + /@babel/plugin-transform-modules-umd/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-module-transforms': 7.20.2 '@babel/helper-plugin-utils': 7.20.2 transitivePeerDependencies: - supports-color dev: false - /@babel/plugin-transform-named-capturing-groups-regex/7.19.1_@babel+core@7.20.2: - resolution: {integrity: sha512-oWk9l9WItWBQYS4FgXD4Uyy5kq898lvkXpXQxoJEY1RnvPk4R/Dvu2ebXU9q8lP+rlMwUQTFf2Ok6d78ODa0kw==} + /@babel/plugin-transform-named-capturing-groups-regex/7.20.5_@babel+core@7.20.5: + resolution: {integrity: sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-create-regexp-features-plugin': 7.19.0_@babel+core@7.20.2 + '@babel/core': 7.20.5 + '@babel/helper-create-regexp-features-plugin': 7.20.5_@babel+core@7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-new-target/7.18.6_@babel+core@7.20.2: + /@babel/plugin-transform-new-target/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-object-super/7.18.6_@babel+core@7.20.2: + /@babel/plugin-transform-object-super/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 '@babel/helper-replace-supers': 7.19.1 transitivePeerDependencies: - supports-color dev: false - /@babel/plugin-transform-parameters/7.20.3_@babel+core@7.12.9: - resolution: {integrity: sha512-oZg/Fpx0YDrj13KsLyO8I/CX3Zdw7z0O9qOd95SqcoIzuqy/WTGWvePeHAnZCN54SfdyjHcb1S30gc8zlzlHcA==} + /@babel/plugin-transform-parameters/7.20.5_@babel+core@7.12.9: + resolution: {integrity: sha512-h7plkOmcndIUWXZFLgpbrh2+fXAi47zcUX7IrOQuZdLD0I0KvjJ6cvo3BEcAOsDOcZhVKGJqv07mkSqK0y2isQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -1162,376 +1162,376 @@ packages: '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-parameters/7.20.3_@babel+core@7.20.2: - resolution: {integrity: sha512-oZg/Fpx0YDrj13KsLyO8I/CX3Zdw7z0O9qOd95SqcoIzuqy/WTGWvePeHAnZCN54SfdyjHcb1S30gc8zlzlHcA==} + /@babel/plugin-transform-parameters/7.20.5_@babel+core@7.20.5: + resolution: {integrity: sha512-h7plkOmcndIUWXZFLgpbrh2+fXAi47zcUX7IrOQuZdLD0I0KvjJ6cvo3BEcAOsDOcZhVKGJqv07mkSqK0y2isQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-property-literals/7.18.6_@babel+core@7.20.2: + /@babel/plugin-transform-property-literals/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-react-constant-elements/7.20.2_@babel+core@7.20.2: + /@babel/plugin-transform-react-constant-elements/7.20.2_@babel+core@7.20.5: resolution: {integrity: sha512-KS/G8YI8uwMGKErLFOHS/ekhqdHhpEloxs43NecQHVgo2QuQSyJhGIY1fL8UGl9wy5ItVwwoUL4YxVqsplGq2g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-react-display-name/7.18.6_@babel+core@7.20.2: + /@babel/plugin-transform-react-display-name/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-react-jsx-development/7.18.6_@babel+core@7.20.2: + /@babel/plugin-transform-react-jsx-development/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/plugin-transform-react-jsx': 7.19.0_@babel+core@7.20.2 + '@babel/core': 7.20.5 + '@babel/plugin-transform-react-jsx': 7.19.0_@babel+core@7.20.5 dev: false - /@babel/plugin-transform-react-jsx/7.19.0_@babel+core@7.20.2: + /@babel/plugin-transform-react-jsx/7.19.0_@babel+core@7.20.5: resolution: {integrity: sha512-UVEvX3tXie3Szm3emi1+G63jyw1w5IcMY0FSKM+CRnKRI5Mr1YbCNgsSTwoTwKphQEG9P+QqmuRFneJPZuHNhg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-annotate-as-pure': 7.18.6 '@babel/helper-module-imports': 7.18.6 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-jsx': 7.18.6_@babel+core@7.20.2 - '@babel/types': 7.20.2 + '@babel/plugin-syntax-jsx': 7.18.6_@babel+core@7.20.5 + '@babel/types': 7.20.5 dev: false - /@babel/plugin-transform-react-pure-annotations/7.18.6_@babel+core@7.20.2: + /@babel/plugin-transform-react-pure-annotations/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-I8VfEPg9r2TRDdvnHgPepTKvuRomzA8+u+nhY7qSI1fR2hRNebasZEETLyM5mAUr0Ku56OkXJ0I7NHJnO6cJiQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-annotate-as-pure': 7.18.6 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-regenerator/7.18.6_@babel+core@7.20.2: - resolution: {integrity: sha512-poqRI2+qiSdeldcz4wTSTXBRryoq3Gc70ye7m7UD5Ww0nE29IXqMl6r7Nd15WBgRd74vloEMlShtH6CKxVzfmQ==} + /@babel/plugin-transform-regenerator/7.20.5_@babel+core@7.20.5: + resolution: {integrity: sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 - regenerator-transform: 0.15.0 + regenerator-transform: 0.15.1 dev: false - /@babel/plugin-transform-reserved-words/7.18.6_@babel+core@7.20.2: + /@babel/plugin-transform-reserved-words/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-runtime/7.19.6_@babel+core@7.20.2: + /@babel/plugin-transform-runtime/7.19.6_@babel+core@7.20.5: resolution: {integrity: sha512-PRH37lz4JU156lYFW1p8OxE5i7d6Sl/zV58ooyr+q1J1lnQPyg5tIiXlIwNVhJaY4W3TmOtdc8jqdXQcB1v5Yw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-module-imports': 7.18.6 '@babel/helper-plugin-utils': 7.20.2 - babel-plugin-polyfill-corejs2: 0.3.3_@babel+core@7.20.2 - babel-plugin-polyfill-corejs3: 0.6.0_@babel+core@7.20.2 - babel-plugin-polyfill-regenerator: 0.4.1_@babel+core@7.20.2 + babel-plugin-polyfill-corejs2: 0.3.3_@babel+core@7.20.5 + babel-plugin-polyfill-corejs3: 0.6.0_@babel+core@7.20.5 + babel-plugin-polyfill-regenerator: 0.4.1_@babel+core@7.20.5 semver: 6.3.0 transitivePeerDependencies: - supports-color dev: false - /@babel/plugin-transform-shorthand-properties/7.18.6_@babel+core@7.20.2: + /@babel/plugin-transform-shorthand-properties/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-spread/7.19.0_@babel+core@7.20.2: + /@babel/plugin-transform-spread/7.19.0_@babel+core@7.20.5: resolution: {integrity: sha512-RsuMk7j6n+r752EtzyScnWkQyuJdli6LdO5Klv8Yx0OfPVTcQkIUfS8clx5e9yHXzlnhOZF3CbQ8C2uP5j074w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 '@babel/helper-skip-transparent-expression-wrappers': 7.20.0 dev: false - /@babel/plugin-transform-sticky-regex/7.18.6_@babel+core@7.20.2: + /@babel/plugin-transform-sticky-regex/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-template-literals/7.18.9_@babel+core@7.20.2: + /@babel/plugin-transform-template-literals/7.18.9_@babel+core@7.20.5: resolution: {integrity: sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-typeof-symbol/7.18.9_@babel+core@7.20.2: + /@babel/plugin-transform-typeof-symbol/7.18.9_@babel+core@7.20.5: resolution: {integrity: sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-typescript/7.20.2_@babel+core@7.20.2: + /@babel/plugin-transform-typescript/7.20.2_@babel+core@7.20.5: resolution: {integrity: sha512-jvS+ngBfrnTUBfOQq8NfGnSbF9BrqlR6hjJ2yVxMkmO5nL/cdifNbI30EfjRlN4g5wYWNnMPyj5Sa6R1pbLeag==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-create-class-features-plugin': 7.20.2_@babel+core@7.20.2 + '@babel/core': 7.20.5 + '@babel/helper-create-class-features-plugin': 7.20.5_@babel+core@7.20.5 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-typescript': 7.20.0_@babel+core@7.20.2 + '@babel/plugin-syntax-typescript': 7.20.0_@babel+core@7.20.5 transitivePeerDependencies: - supports-color dev: false - /@babel/plugin-transform-unicode-escapes/7.18.10_@babel+core@7.20.2: + /@babel/plugin-transform-unicode-escapes/7.18.10_@babel+core@7.20.5: resolution: {integrity: sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/plugin-transform-unicode-regex/7.18.6_@babel+core@7.20.2: + /@babel/plugin-transform-unicode-regex/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-create-regexp-features-plugin': 7.19.0_@babel+core@7.20.2 + '@babel/core': 7.20.5 + '@babel/helper-create-regexp-features-plugin': 7.20.5_@babel+core@7.20.5 '@babel/helper-plugin-utils': 7.20.2 dev: false - /@babel/preset-env/7.20.2_@babel+core@7.20.2: + /@babel/preset-env/7.20.2_@babel+core@7.20.5: resolution: {integrity: sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/compat-data': 7.20.1 - '@babel/core': 7.20.2 - '@babel/helper-compilation-targets': 7.20.0_@babel+core@7.20.2 + '@babel/compat-data': 7.20.5 + '@babel/core': 7.20.5 + '@babel/helper-compilation-targets': 7.20.0_@babel+core@7.20.5 '@babel/helper-plugin-utils': 7.20.2 '@babel/helper-validator-option': 7.18.6 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.18.9_@babel+core@7.20.2 - '@babel/plugin-proposal-async-generator-functions': 7.20.1_@babel+core@7.20.2 - '@babel/plugin-proposal-class-properties': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-proposal-class-static-block': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-proposal-dynamic-import': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-proposal-export-namespace-from': 7.18.9_@babel+core@7.20.2 - '@babel/plugin-proposal-json-strings': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-proposal-logical-assignment-operators': 7.18.9_@babel+core@7.20.2 - '@babel/plugin-proposal-nullish-coalescing-operator': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-proposal-numeric-separator': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-proposal-object-rest-spread': 7.20.2_@babel+core@7.20.2 - '@babel/plugin-proposal-optional-catch-binding': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-proposal-optional-chaining': 7.18.9_@babel+core@7.20.2 - '@babel/plugin-proposal-private-methods': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-proposal-private-property-in-object': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-proposal-unicode-property-regex': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.20.2 - '@babel/plugin-syntax-class-properties': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-syntax-class-static-block': 7.14.5_@babel+core@7.20.2 - '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.20.2 - '@babel/plugin-syntax-export-namespace-from': 7.8.3_@babel+core@7.20.2 - '@babel/plugin-syntax-import-assertions': 7.20.0_@babel+core@7.20.2 - '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.20.2 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.20.2 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.20.2 - '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.20.2 - '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.20.2 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.20.2 - '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.20.2 - '@babel/plugin-syntax-private-property-in-object': 7.14.5_@babel+core@7.20.2 - '@babel/plugin-syntax-top-level-await': 7.14.5_@babel+core@7.20.2 - '@babel/plugin-transform-arrow-functions': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-transform-async-to-generator': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-transform-block-scoped-functions': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-transform-block-scoping': 7.20.2_@babel+core@7.20.2 - '@babel/plugin-transform-classes': 7.20.2_@babel+core@7.20.2 - '@babel/plugin-transform-computed-properties': 7.18.9_@babel+core@7.20.2 - '@babel/plugin-transform-destructuring': 7.20.2_@babel+core@7.20.2 - '@babel/plugin-transform-dotall-regex': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-transform-duplicate-keys': 7.18.9_@babel+core@7.20.2 - '@babel/plugin-transform-exponentiation-operator': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-transform-for-of': 7.18.8_@babel+core@7.20.2 - '@babel/plugin-transform-function-name': 7.18.9_@babel+core@7.20.2 - '@babel/plugin-transform-literals': 7.18.9_@babel+core@7.20.2 - '@babel/plugin-transform-member-expression-literals': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-transform-modules-amd': 7.19.6_@babel+core@7.20.2 - '@babel/plugin-transform-modules-commonjs': 7.19.6_@babel+core@7.20.2 - '@babel/plugin-transform-modules-systemjs': 7.19.6_@babel+core@7.20.2 - '@babel/plugin-transform-modules-umd': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-transform-named-capturing-groups-regex': 7.19.1_@babel+core@7.20.2 - '@babel/plugin-transform-new-target': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-transform-object-super': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-transform-parameters': 7.20.3_@babel+core@7.20.2 - '@babel/plugin-transform-property-literals': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-transform-regenerator': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-transform-reserved-words': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-transform-shorthand-properties': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-transform-spread': 7.19.0_@babel+core@7.20.2 - '@babel/plugin-transform-sticky-regex': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-transform-template-literals': 7.18.9_@babel+core@7.20.2 - '@babel/plugin-transform-typeof-symbol': 7.18.9_@babel+core@7.20.2 - '@babel/plugin-transform-unicode-escapes': 7.18.10_@babel+core@7.20.2 - '@babel/plugin-transform-unicode-regex': 7.18.6_@babel+core@7.20.2 - '@babel/preset-modules': 0.1.5_@babel+core@7.20.2 - '@babel/types': 7.20.2 - babel-plugin-polyfill-corejs2: 0.3.3_@babel+core@7.20.2 - babel-plugin-polyfill-corejs3: 0.6.0_@babel+core@7.20.2 - babel-plugin-polyfill-regenerator: 0.4.1_@babel+core@7.20.2 - core-js-compat: 3.26.0 + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.18.9_@babel+core@7.20.5 + '@babel/plugin-proposal-async-generator-functions': 7.20.1_@babel+core@7.20.5 + '@babel/plugin-proposal-class-properties': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-proposal-class-static-block': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-proposal-dynamic-import': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-proposal-export-namespace-from': 7.18.9_@babel+core@7.20.5 + '@babel/plugin-proposal-json-strings': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-proposal-logical-assignment-operators': 7.18.9_@babel+core@7.20.5 + '@babel/plugin-proposal-nullish-coalescing-operator': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-proposal-numeric-separator': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-proposal-object-rest-spread': 7.20.2_@babel+core@7.20.5 + '@babel/plugin-proposal-optional-catch-binding': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-proposal-optional-chaining': 7.18.9_@babel+core@7.20.5 + '@babel/plugin-proposal-private-methods': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-proposal-private-property-in-object': 7.20.5_@babel+core@7.20.5 + '@babel/plugin-proposal-unicode-property-regex': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.20.5 + '@babel/plugin-syntax-class-properties': 7.12.13_@babel+core@7.20.5 + '@babel/plugin-syntax-class-static-block': 7.14.5_@babel+core@7.20.5 + '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.20.5 + '@babel/plugin-syntax-export-namespace-from': 7.8.3_@babel+core@7.20.5 + '@babel/plugin-syntax-import-assertions': 7.20.0_@babel+core@7.20.5 + '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.20.5 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.20.5 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.20.5 + '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.20.5 + '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.20.5 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.20.5 + '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.20.5 + '@babel/plugin-syntax-private-property-in-object': 7.14.5_@babel+core@7.20.5 + '@babel/plugin-syntax-top-level-await': 7.14.5_@babel+core@7.20.5 + '@babel/plugin-transform-arrow-functions': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-transform-async-to-generator': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-transform-block-scoped-functions': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-transform-block-scoping': 7.20.5_@babel+core@7.20.5 + '@babel/plugin-transform-classes': 7.20.2_@babel+core@7.20.5 + '@babel/plugin-transform-computed-properties': 7.18.9_@babel+core@7.20.5 + '@babel/plugin-transform-destructuring': 7.20.2_@babel+core@7.20.5 + '@babel/plugin-transform-dotall-regex': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-transform-duplicate-keys': 7.18.9_@babel+core@7.20.5 + '@babel/plugin-transform-exponentiation-operator': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-transform-for-of': 7.18.8_@babel+core@7.20.5 + '@babel/plugin-transform-function-name': 7.18.9_@babel+core@7.20.5 + '@babel/plugin-transform-literals': 7.18.9_@babel+core@7.20.5 + '@babel/plugin-transform-member-expression-literals': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-transform-modules-amd': 7.19.6_@babel+core@7.20.5 + '@babel/plugin-transform-modules-commonjs': 7.19.6_@babel+core@7.20.5 + '@babel/plugin-transform-modules-systemjs': 7.19.6_@babel+core@7.20.5 + '@babel/plugin-transform-modules-umd': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-transform-named-capturing-groups-regex': 7.20.5_@babel+core@7.20.5 + '@babel/plugin-transform-new-target': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-transform-object-super': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-transform-parameters': 7.20.5_@babel+core@7.20.5 + '@babel/plugin-transform-property-literals': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-transform-regenerator': 7.20.5_@babel+core@7.20.5 + '@babel/plugin-transform-reserved-words': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-transform-shorthand-properties': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-transform-spread': 7.19.0_@babel+core@7.20.5 + '@babel/plugin-transform-sticky-regex': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-transform-template-literals': 7.18.9_@babel+core@7.20.5 + '@babel/plugin-transform-typeof-symbol': 7.18.9_@babel+core@7.20.5 + '@babel/plugin-transform-unicode-escapes': 7.18.10_@babel+core@7.20.5 + '@babel/plugin-transform-unicode-regex': 7.18.6_@babel+core@7.20.5 + '@babel/preset-modules': 0.1.5_@babel+core@7.20.5 + '@babel/types': 7.20.5 + babel-plugin-polyfill-corejs2: 0.3.3_@babel+core@7.20.5 + babel-plugin-polyfill-corejs3: 0.6.0_@babel+core@7.20.5 + babel-plugin-polyfill-regenerator: 0.4.1_@babel+core@7.20.5 + core-js-compat: 3.26.1 semver: 6.3.0 transitivePeerDependencies: - supports-color dev: false - /@babel/preset-modules/0.1.5_@babel+core@7.20.2: + /@babel/preset-modules/0.1.5_@babel+core@7.20.5: resolution: {integrity: sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-proposal-unicode-property-regex': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-transform-dotall-regex': 7.18.6_@babel+core@7.20.2 - '@babel/types': 7.20.2 + '@babel/plugin-proposal-unicode-property-regex': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-transform-dotall-regex': 7.18.6_@babel+core@7.20.5 + '@babel/types': 7.20.5 esutils: 2.0.3 dev: false - /@babel/preset-react/7.18.6_@babel+core@7.20.2: + /@babel/preset-react/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-zXr6atUmyYdiWRVLOZahakYmOBHtWc2WGCkP8PYTgZi0iJXDY2CN180TdrIW4OGOAdLc7TifzDIvtx6izaRIzg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 '@babel/helper-validator-option': 7.18.6 - '@babel/plugin-transform-react-display-name': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-transform-react-jsx': 7.19.0_@babel+core@7.20.2 - '@babel/plugin-transform-react-jsx-development': 7.18.6_@babel+core@7.20.2 - '@babel/plugin-transform-react-pure-annotations': 7.18.6_@babel+core@7.20.2 + '@babel/plugin-transform-react-display-name': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-transform-react-jsx': 7.19.0_@babel+core@7.20.5 + '@babel/plugin-transform-react-jsx-development': 7.18.6_@babel+core@7.20.5 + '@babel/plugin-transform-react-pure-annotations': 7.18.6_@babel+core@7.20.5 dev: false - /@babel/preset-typescript/7.18.6_@babel+core@7.20.2: + /@babel/preset-typescript/7.18.6_@babel+core@7.20.5: resolution: {integrity: sha512-s9ik86kXBAnD760aybBucdpnLsAt0jK1xqJn2juOn9lkOvSHV60os5hxoVJsPzMQxvnUJFAlkont2DvvaYEBtQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 '@babel/helper-plugin-utils': 7.20.2 '@babel/helper-validator-option': 7.18.6 - '@babel/plugin-transform-typescript': 7.20.2_@babel+core@7.20.2 + '@babel/plugin-transform-typescript': 7.20.2_@babel+core@7.20.5 transitivePeerDependencies: - supports-color dev: false - /@babel/runtime-corejs3/7.20.1: - resolution: {integrity: sha512-CGulbEDcg/ND1Im7fUNRZdGXmX2MTWVVZacQi/6DiKE5HNwZ3aVTm5PV4lO8HHz0B2h8WQyvKKjbX5XgTtydsg==} + /@babel/runtime-corejs3/7.20.6: + resolution: {integrity: sha512-tqeujPiuEfcH067mx+7otTQWROVMKHXEaOQcAeNV5dDdbPWvPcFA8/W9LXw2NfjNmOetqLl03dfnG2WALPlsRQ==} engines: {node: '>=6.9.0'} dependencies: - core-js-pure: 3.26.0 - regenerator-runtime: 0.13.10 + core-js-pure: 3.26.1 + regenerator-runtime: 0.13.11 dev: false - /@babel/runtime/7.20.1: - resolution: {integrity: sha512-mrzLkl6U9YLF8qpqI7TB82PESyEGjm/0Ly91jG575eVxMMlb8fYfOXFZIJ8XfLrJZQbm7dlKry2bJmXBUEkdFg==} + /@babel/runtime/7.20.6: + resolution: {integrity: sha512-Q+8MqP7TiHMWzSfwiJwXCjyf4GYA4Dgw3emg/7xmwsdLJOZUp+nMqcOwOzzYheuM1rhDu8FSj2l0aoMygEuXuA==} engines: {node: '>=6.9.0'} dependencies: - regenerator-runtime: 0.13.10 + regenerator-runtime: 0.13.11 /@babel/template/7.18.10: resolution: {integrity: sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==} engines: {node: '>=6.9.0'} dependencies: '@babel/code-frame': 7.18.6 - '@babel/parser': 7.20.3 - '@babel/types': 7.20.2 + '@babel/parser': 7.20.5 + '@babel/types': 7.20.5 dev: false - /@babel/traverse/7.20.1: - resolution: {integrity: sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA==} + /@babel/traverse/7.20.5: + resolution: {integrity: sha512-WM5ZNN3JITQIq9tFZaw1ojLU3WgWdtkxnhM1AegMS+PvHjkM5IXjmYEGY7yukz5XS4sJyEf2VzWjI8uAavhxBQ==} engines: {node: '>=6.9.0'} dependencies: '@babel/code-frame': 7.18.6 - '@babel/generator': 7.20.4 + '@babel/generator': 7.20.5 '@babel/helper-environment-visitor': 7.18.9 '@babel/helper-function-name': 7.19.0 '@babel/helper-hoist-variables': 7.18.6 '@babel/helper-split-export-declaration': 7.18.6 - '@babel/parser': 7.20.3 - '@babel/types': 7.20.2 + '@babel/parser': 7.20.5 + '@babel/types': 7.20.5 debug: 4.3.4 globals: 11.12.0 transitivePeerDependencies: - supports-color dev: false - /@babel/types/7.20.2: - resolution: {integrity: sha512-FnnvsNWgZCr232sqtXggapvlkk/tuwR/qhGzcmxI0GXLCjmPYQPzio2FbdlWuY6y1sHFfQKk+rRbUZ9VStQMog==} + /@babel/types/7.20.5: + resolution: {integrity: sha512-c9fst/h2/dcF7H+MJKZ2T0KjEQ8hY/BNnDk/H3XY8C4Aw/eWQXWn/lWntHF9ooUBnGmEvbfGrTgLWc+um0YDUg==} engines: {node: '>=6.9.0'} dependencies: '@babel/helper-string-parser': 7.19.4 @@ -1575,7 +1575,7 @@ packages: - '@algolia/client-search' dev: false - /@docusaurus/core/2.2.0_56jbash75ng5psbctf36wqywr4: + /@docusaurus/core/2.2.0_aeigrxhfhc4abyd45ix2hknizy: resolution: {integrity: sha512-Vd6XOluKQqzG12fEs9prJgDtyn6DPok9vmUWDR2E6/nV5Fl9SVkhEQOBxwObjk3kQh7OY7vguFaLh0jqdApWsA==} engines: {node: '>=16.14'} hasBin: true @@ -1583,27 +1583,27 @@ packages: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@babel/core': 7.20.2 - '@babel/generator': 7.20.4 - '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.20.2 - '@babel/plugin-transform-runtime': 7.19.6_@babel+core@7.20.2 - '@babel/preset-env': 7.20.2_@babel+core@7.20.2 - '@babel/preset-react': 7.18.6_@babel+core@7.20.2 - '@babel/preset-typescript': 7.18.6_@babel+core@7.20.2 - '@babel/runtime': 7.20.1 - '@babel/runtime-corejs3': 7.20.1 - '@babel/traverse': 7.20.1 + '@babel/core': 7.20.5 + '@babel/generator': 7.20.5 + '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.20.5 + '@babel/plugin-transform-runtime': 7.19.6_@babel+core@7.20.5 + '@babel/preset-env': 7.20.2_@babel+core@7.20.5 + '@babel/preset-react': 7.18.6_@babel+core@7.20.5 + '@babel/preset-typescript': 7.18.6_@babel+core@7.20.5 + '@babel/runtime': 7.20.6 + '@babel/runtime-corejs3': 7.20.6 + '@babel/traverse': 7.20.5 '@docusaurus/cssnano-preset': 2.2.0 '@docusaurus/logger': 2.2.0 - '@docusaurus/mdx-loader': 2.2.0_sfoxds7t5ydpegc3knd667wn6m + '@docusaurus/mdx-loader': 2.2.0_zneentkx4scexj4pzosurqq55y '@docusaurus/react-loadable': 5.5.2_react@17.0.2 - '@docusaurus/utils': 2.2.0 - '@docusaurus/utils-common': 2.2.0 - '@docusaurus/utils-validation': 2.2.0 + '@docusaurus/utils': 2.2.0_@docusaurus+types@2.2.0 + '@docusaurus/utils-common': 2.2.0_@docusaurus+types@2.2.0 + '@docusaurus/utils-validation': 2.2.0_@docusaurus+types@2.2.0 '@slorber/static-site-generator-webpack-plugin': 4.0.7 '@svgr/webpack': 6.5.1 - autoprefixer: 10.4.13_postcss@8.4.18 - babel-loader: 8.3.0_npabyccmuonwo2rku4k53xo3hi + autoprefixer: 10.4.13_postcss@8.4.19 + babel-loader: 8.3.0_ztqwsvkb6z73luspkai6ilstpu babel-plugin-dynamic-import-node: 2.3.3 boxen: 6.2.1 chalk: 4.1.2 @@ -1613,10 +1613,10 @@ packages: combine-promises: 1.1.0 commander: 5.1.0 copy-webpack-plugin: 11.0.0_webpack@5.75.0 - core-js: 3.26.0 - css-loader: 6.7.1_webpack@5.75.0 + core-js: 3.26.1 + css-loader: 6.7.2_webpack@5.75.0 css-minimizer-webpack-plugin: 4.2.2_2xq5u4vuzw4op42d4uqzx2gxfa - cssnano: 5.1.14_postcss@8.4.18 + cssnano: 5.1.14_postcss@8.4.19 del: 6.1.1 detect-port: 1.5.1 escape-html: 1.0.3 @@ -1629,12 +1629,12 @@ packages: import-fresh: 3.3.0 leven: 3.1.0 lodash: 4.17.21 - mini-css-extract-plugin: 2.6.1_webpack@5.75.0 - postcss: 8.4.18 - postcss-loader: 7.0.1_sdypjwo5ssab3pyqgv4b4agnly + mini-css-extract-plugin: 2.7.1_webpack@5.75.0 + postcss: 8.4.19 + postcss-loader: 7.0.2_upg3rk2kpasnbk27hkqapxaxfq prompts: 2.4.2 react: 17.0.2 - react-dev-utils: 12.0.1_qw7fmzhoapcndkteb5rsc33stq + react-dev-utils: 12.0.1_vfotqvx6lgcbf3upbs6hgaza4q react-dom: 17.0.2_react@17.0.2 react-helmet-async: 1.3.0_sfoxds7t5ydpegc3knd667wn6m react-loadable: /@docusaurus/react-loadable/5.5.2_react@17.0.2 @@ -1675,7 +1675,7 @@ packages: - webpack-cli dev: false - /@docusaurus/core/2.2.0_ehuab5y7qm7umqkczzguzxp57i: + /@docusaurus/core/2.2.0_wfh3mw2ke2bdr53qfq544ltemu: resolution: {integrity: sha512-Vd6XOluKQqzG12fEs9prJgDtyn6DPok9vmUWDR2E6/nV5Fl9SVkhEQOBxwObjk3kQh7OY7vguFaLh0jqdApWsA==} engines: {node: '>=16.14'} hasBin: true @@ -1683,27 +1683,27 @@ packages: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@babel/core': 7.20.2 - '@babel/generator': 7.20.4 - '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.20.2 - '@babel/plugin-transform-runtime': 7.19.6_@babel+core@7.20.2 - '@babel/preset-env': 7.20.2_@babel+core@7.20.2 - '@babel/preset-react': 7.18.6_@babel+core@7.20.2 - '@babel/preset-typescript': 7.18.6_@babel+core@7.20.2 - '@babel/runtime': 7.20.1 - '@babel/runtime-corejs3': 7.20.1 - '@babel/traverse': 7.20.1 + '@babel/core': 7.20.5 + '@babel/generator': 7.20.5 + '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.20.5 + '@babel/plugin-transform-runtime': 7.19.6_@babel+core@7.20.5 + '@babel/preset-env': 7.20.2_@babel+core@7.20.5 + '@babel/preset-react': 7.18.6_@babel+core@7.20.5 + '@babel/preset-typescript': 7.18.6_@babel+core@7.20.5 + '@babel/runtime': 7.20.6 + '@babel/runtime-corejs3': 7.20.6 + '@babel/traverse': 7.20.5 '@docusaurus/cssnano-preset': 2.2.0 '@docusaurus/logger': 2.2.0 - '@docusaurus/mdx-loader': 2.2.0_zneentkx4scexj4pzosurqq55y + '@docusaurus/mdx-loader': 2.2.0_sfoxds7t5ydpegc3knd667wn6m '@docusaurus/react-loadable': 5.5.2_react@17.0.2 - '@docusaurus/utils': 2.2.0_@docusaurus+types@2.2.0 - '@docusaurus/utils-common': 2.2.0_@docusaurus+types@2.2.0 - '@docusaurus/utils-validation': 2.2.0_@docusaurus+types@2.2.0 + '@docusaurus/utils': 2.2.0 + '@docusaurus/utils-common': 2.2.0 + '@docusaurus/utils-validation': 2.2.0 '@slorber/static-site-generator-webpack-plugin': 4.0.7 '@svgr/webpack': 6.5.1 - autoprefixer: 10.4.13_postcss@8.4.18 - babel-loader: 8.3.0_npabyccmuonwo2rku4k53xo3hi + autoprefixer: 10.4.13_postcss@8.4.19 + babel-loader: 8.3.0_ztqwsvkb6z73luspkai6ilstpu babel-plugin-dynamic-import-node: 2.3.3 boxen: 6.2.1 chalk: 4.1.2 @@ -1713,10 +1713,10 @@ packages: combine-promises: 1.1.0 commander: 5.1.0 copy-webpack-plugin: 11.0.0_webpack@5.75.0 - core-js: 3.26.0 - css-loader: 6.7.1_webpack@5.75.0 + core-js: 3.26.1 + css-loader: 6.7.2_webpack@5.75.0 css-minimizer-webpack-plugin: 4.2.2_2xq5u4vuzw4op42d4uqzx2gxfa - cssnano: 5.1.14_postcss@8.4.18 + cssnano: 5.1.14_postcss@8.4.19 del: 6.1.1 detect-port: 1.5.1 escape-html: 1.0.3 @@ -1729,12 +1729,12 @@ packages: import-fresh: 3.3.0 leven: 3.1.0 lodash: 4.17.21 - mini-css-extract-plugin: 2.6.1_webpack@5.75.0 - postcss: 8.4.18 - postcss-loader: 7.0.1_sdypjwo5ssab3pyqgv4b4agnly + mini-css-extract-plugin: 2.7.1_webpack@5.75.0 + postcss: 8.4.19 + postcss-loader: 7.0.2_upg3rk2kpasnbk27hkqapxaxfq prompts: 2.4.2 react: 17.0.2 - react-dev-utils: 12.0.1_qw7fmzhoapcndkteb5rsc33stq + react-dev-utils: 12.0.1_vfotqvx6lgcbf3upbs6hgaza4q react-dom: 17.0.2_react@17.0.2 react-helmet-async: 1.3.0_sfoxds7t5ydpegc3knd667wn6m react-loadable: /@docusaurus/react-loadable/5.5.2_react@17.0.2 @@ -1779,9 +1779,9 @@ packages: resolution: {integrity: sha512-mAAwCo4n66TMWBH1kXnHVZsakW9VAXJzTO4yZukuL3ro4F+JtkMwKfh42EG75K/J/YIFQG5I/Bzy0UH/hFxaTg==} engines: {node: '>=16.14'} dependencies: - cssnano-preset-advanced: 5.3.9_postcss@8.4.18 - postcss: 8.4.18 - postcss-sort-media-queries: 4.3.0_postcss@8.4.18 + cssnano-preset-advanced: 5.3.9_postcss@8.4.19 + postcss: 8.4.19 + postcss-sort-media-queries: 4.3.0_postcss@8.4.19 tslib: 2.4.1 dev: false @@ -1800,8 +1800,8 @@ packages: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@babel/parser': 7.20.3 - '@babel/traverse': 7.20.1 + '@babel/parser': 7.20.5 + '@babel/traverse': 7.20.5 '@docusaurus/logger': 2.2.0 '@docusaurus/utils': 2.2.0 '@mdx-js/mdx': 1.6.22 @@ -1835,8 +1835,8 @@ packages: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@babel/parser': 7.20.3 - '@babel/traverse': 7.20.1 + '@babel/parser': 7.20.5 + '@babel/traverse': 7.20.5 '@docusaurus/logger': 2.2.0 '@docusaurus/utils': 2.2.0_@docusaurus+types@2.2.0 '@mdx-js/mdx': 1.6.22 @@ -1885,14 +1885,14 @@ packages: - uglify-js - webpack-cli - /@docusaurus/plugin-content-blog/2.2.0_56jbash75ng5psbctf36wqywr4: + /@docusaurus/plugin-content-blog/2.2.0_wfh3mw2ke2bdr53qfq544ltemu: resolution: {integrity: sha512-0mWBinEh0a5J2+8ZJXJXbrCk1tSTNf7Nm4tYAl5h2/xx+PvH/Bnu0V+7mMljYm/1QlDYALNIIaT/JcoZQFUN3w==} engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.2.0_ehuab5y7qm7umqkczzguzxp57i + '@docusaurus/core': 2.2.0_aeigrxhfhc4abyd45ix2hknizy '@docusaurus/logger': 2.2.0 '@docusaurus/mdx-loader': 2.2.0_zneentkx4scexj4pzosurqq55y '@docusaurus/types': 2.2.0_sfoxds7t5ydpegc3knd667wn6m @@ -1928,14 +1928,14 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-content-docs/2.2.0_56jbash75ng5psbctf36wqywr4: + /@docusaurus/plugin-content-docs/2.2.0_wfh3mw2ke2bdr53qfq544ltemu: resolution: {integrity: sha512-BOazBR0XjzsHE+2K1wpNxz5QZmrJgmm3+0Re0EVPYFGW8qndCWGNtXW/0lGKhecVPML8yyFeAmnUCIs7xM2wPw==} engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.2.0_ehuab5y7qm7umqkczzguzxp57i + '@docusaurus/core': 2.2.0_aeigrxhfhc4abyd45ix2hknizy '@docusaurus/logger': 2.2.0 '@docusaurus/mdx-loader': 2.2.0_zneentkx4scexj4pzosurqq55y '@docusaurus/module-type-aliases': 2.2.0_sfoxds7t5ydpegc3knd667wn6m @@ -1971,14 +1971,14 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-content-pages/2.2.0_56jbash75ng5psbctf36wqywr4: + /@docusaurus/plugin-content-pages/2.2.0_wfh3mw2ke2bdr53qfq544ltemu: resolution: {integrity: sha512-+OTK3FQHk5WMvdelz8v19PbEbx+CNT6VSpx7nVOvMNs5yJCKvmqBJBQ2ZSxROxhVDYn+CZOlmyrC56NSXzHf6g==} engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.2.0_ehuab5y7qm7umqkczzguzxp57i + '@docusaurus/core': 2.2.0_aeigrxhfhc4abyd45ix2hknizy '@docusaurus/mdx-loader': 2.2.0_zneentkx4scexj4pzosurqq55y '@docusaurus/types': 2.2.0_sfoxds7t5ydpegc3knd667wn6m '@docusaurus/utils': 2.2.0_@docusaurus+types@2.2.0 @@ -2006,14 +2006,14 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-debug/2.2.0_34odndtl4vxkrojskani3hzkvq: + /@docusaurus/plugin-debug/2.2.0_ixno2qfzajksn7oqk6oqqxtn4a: resolution: {integrity: sha512-p9vOep8+7OVl6r/NREEYxf4HMAjV8JMYJ7Bos5fCFO0Wyi9AZEo0sCTliRd7R8+dlJXZEgcngSdxAUo/Q+CJow==} engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.2.0_ehuab5y7qm7umqkczzguzxp57i + '@docusaurus/core': 2.2.0_aeigrxhfhc4abyd45ix2hknizy '@docusaurus/types': 2.2.0_sfoxds7t5ydpegc3knd667wn6m '@docusaurus/utils': 2.2.0_@docusaurus+types@2.2.0 fs-extra: 10.1.0 @@ -2041,14 +2041,14 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-google-analytics/2.2.0_56jbash75ng5psbctf36wqywr4: + /@docusaurus/plugin-google-analytics/2.2.0_wfh3mw2ke2bdr53qfq544ltemu: resolution: {integrity: sha512-+eZVVxVeEnV5nVQJdey9ZsfyEVMls6VyWTIj8SmX0k5EbqGvnIfET+J2pYEuKQnDIHxy+syRMoRM6AHXdHYGIg==} engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.2.0_ehuab5y7qm7umqkczzguzxp57i + '@docusaurus/core': 2.2.0_aeigrxhfhc4abyd45ix2hknizy '@docusaurus/types': 2.2.0_sfoxds7t5ydpegc3knd667wn6m '@docusaurus/utils-validation': 2.2.0_@docusaurus+types@2.2.0 react: 17.0.2 @@ -2072,14 +2072,14 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-google-gtag/2.2.0_56jbash75ng5psbctf36wqywr4: + /@docusaurus/plugin-google-gtag/2.2.0_wfh3mw2ke2bdr53qfq544ltemu: resolution: {integrity: sha512-6SOgczP/dYdkqUMGTRqgxAS1eTp6MnJDAQMy8VCF1QKbWZmlkx4agHDexihqmYyCujTYHqDAhm1hV26EET54NQ==} engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.2.0_ehuab5y7qm7umqkczzguzxp57i + '@docusaurus/core': 2.2.0_aeigrxhfhc4abyd45ix2hknizy '@docusaurus/types': 2.2.0_sfoxds7t5ydpegc3knd667wn6m '@docusaurus/utils-validation': 2.2.0_@docusaurus+types@2.2.0 react: 17.0.2 @@ -2103,14 +2103,14 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-sitemap/2.2.0_56jbash75ng5psbctf36wqywr4: + /@docusaurus/plugin-sitemap/2.2.0_wfh3mw2ke2bdr53qfq544ltemu: resolution: {integrity: sha512-0jAmyRDN/aI265CbWZNZuQpFqiZuo+5otk2MylU9iVrz/4J7gSc+ZJ9cy4EHrEsW7PV8s1w18hIEsmcA1YgkKg==} engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.2.0_ehuab5y7qm7umqkczzguzxp57i + '@docusaurus/core': 2.2.0_aeigrxhfhc4abyd45ix2hknizy '@docusaurus/logger': 2.2.0 '@docusaurus/types': 2.2.0_sfoxds7t5ydpegc3knd667wn6m '@docusaurus/utils': 2.2.0_@docusaurus+types@2.2.0 @@ -2139,24 +2139,24 @@ packages: - webpack-cli dev: false - /@docusaurus/preset-classic/2.2.0_qealvalg3qigqrjomgx4rnwdxu: + /@docusaurus/preset-classic/2.2.0_bsafmusoukf4e6aet6onn76mra: resolution: {integrity: sha512-yKIWPGNx7BT8v2wjFIWvYrS+nvN04W+UameSFf8lEiJk6pss0kL6SG2MRvyULiI3BDxH+tj6qe02ncpSPGwumg==} engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.2.0_ehuab5y7qm7umqkczzguzxp57i - '@docusaurus/plugin-content-blog': 2.2.0_56jbash75ng5psbctf36wqywr4 - '@docusaurus/plugin-content-docs': 2.2.0_56jbash75ng5psbctf36wqywr4 - '@docusaurus/plugin-content-pages': 2.2.0_56jbash75ng5psbctf36wqywr4 - '@docusaurus/plugin-debug': 2.2.0_34odndtl4vxkrojskani3hzkvq - '@docusaurus/plugin-google-analytics': 2.2.0_56jbash75ng5psbctf36wqywr4 - '@docusaurus/plugin-google-gtag': 2.2.0_56jbash75ng5psbctf36wqywr4 - '@docusaurus/plugin-sitemap': 2.2.0_56jbash75ng5psbctf36wqywr4 - '@docusaurus/theme-classic': 2.2.0_56jbash75ng5psbctf36wqywr4 - '@docusaurus/theme-common': 2.2.0_ehuab5y7qm7umqkczzguzxp57i - '@docusaurus/theme-search-algolia': 2.2.0_6ukdrnim7nouazijyenn2obc3q + '@docusaurus/core': 2.2.0_aeigrxhfhc4abyd45ix2hknizy + '@docusaurus/plugin-content-blog': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu + '@docusaurus/plugin-content-docs': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu + '@docusaurus/plugin-content-pages': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu + '@docusaurus/plugin-debug': 2.2.0_ixno2qfzajksn7oqk6oqqxtn4a + '@docusaurus/plugin-google-analytics': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu + '@docusaurus/plugin-google-gtag': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu + '@docusaurus/plugin-sitemap': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu + '@docusaurus/theme-classic': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu + '@docusaurus/theme-common': 2.2.0_aeigrxhfhc4abyd45ix2hknizy + '@docusaurus/theme-search-algolia': 2.2.0_bt4qpczpsttwow5542um2nf6x4 '@docusaurus/types': 2.2.0_sfoxds7t5ydpegc3knd667wn6m react: 17.0.2 react-dom: 17.0.2_react@17.0.2 @@ -2190,20 +2190,20 @@ packages: prop-types: 15.8.1 react: 17.0.2 - /@docusaurus/theme-classic/2.2.0_56jbash75ng5psbctf36wqywr4: + /@docusaurus/theme-classic/2.2.0_wfh3mw2ke2bdr53qfq544ltemu: resolution: {integrity: sha512-kjbg/qJPwZ6H1CU/i9d4l/LcFgnuzeiGgMQlt6yPqKo0SOJIBMPuz7Rnu3r/WWbZFPi//o8acclacOzmXdUUEg==} engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.2.0_ehuab5y7qm7umqkczzguzxp57i + '@docusaurus/core': 2.2.0_aeigrxhfhc4abyd45ix2hknizy '@docusaurus/mdx-loader': 2.2.0_zneentkx4scexj4pzosurqq55y '@docusaurus/module-type-aliases': 2.2.0_sfoxds7t5ydpegc3knd667wn6m - '@docusaurus/plugin-content-blog': 2.2.0_56jbash75ng5psbctf36wqywr4 - '@docusaurus/plugin-content-docs': 2.2.0_56jbash75ng5psbctf36wqywr4 - '@docusaurus/plugin-content-pages': 2.2.0_56jbash75ng5psbctf36wqywr4 - '@docusaurus/theme-common': 2.2.0_ehuab5y7qm7umqkczzguzxp57i + '@docusaurus/plugin-content-blog': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu + '@docusaurus/plugin-content-docs': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu + '@docusaurus/plugin-content-pages': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu + '@docusaurus/theme-common': 2.2.0_aeigrxhfhc4abyd45ix2hknizy '@docusaurus/theme-translations': 2.2.0 '@docusaurus/types': 2.2.0_sfoxds7t5ydpegc3knd667wn6m '@docusaurus/utils': 2.2.0_@docusaurus+types@2.2.0 @@ -2215,7 +2215,7 @@ packages: infima: 0.2.0-alpha.42 lodash: 4.17.21 nprogress: 0.2.0 - postcss: 8.4.18 + postcss: 8.4.19 prism-react-renderer: 1.3.5_react@17.0.2 prismjs: 1.29.0 react: 17.0.2 @@ -2242,7 +2242,7 @@ packages: - webpack-cli dev: false - /@docusaurus/theme-common/2.2.0_ehuab5y7qm7umqkczzguzxp57i: + /@docusaurus/theme-common/2.2.0_aeigrxhfhc4abyd45ix2hknizy: resolution: {integrity: sha512-R8BnDjYoN90DCL75gP7qYQfSjyitXuP9TdzgsKDmSFPNyrdE3twtPNa2dIN+h+p/pr+PagfxwWbd6dn722A1Dw==} engines: {node: '>=16.14'} peerDependencies: @@ -2251,9 +2251,9 @@ packages: dependencies: '@docusaurus/mdx-loader': 2.2.0_zneentkx4scexj4pzosurqq55y '@docusaurus/module-type-aliases': 2.2.0_sfoxds7t5ydpegc3knd667wn6m - '@docusaurus/plugin-content-blog': 2.2.0_56jbash75ng5psbctf36wqywr4 - '@docusaurus/plugin-content-docs': 2.2.0_56jbash75ng5psbctf36wqywr4 - '@docusaurus/plugin-content-pages': 2.2.0_56jbash75ng5psbctf36wqywr4 + '@docusaurus/plugin-content-blog': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu + '@docusaurus/plugin-content-docs': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu + '@docusaurus/plugin-content-pages': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu '@docusaurus/utils': 2.2.0_@docusaurus+types@2.2.0 '@types/history': 4.7.11 '@types/react': 18.0.25 @@ -2284,7 +2284,7 @@ packages: - webpack-cli dev: false - /@docusaurus/theme-search-algolia/2.2.0_6ukdrnim7nouazijyenn2obc3q: + /@docusaurus/theme-search-algolia/2.2.0_bt4qpczpsttwow5542um2nf6x4: resolution: {integrity: sha512-2h38B0tqlxgR2FZ9LpAkGrpDWVdXZ7vltfmTdX+4RsDs3A7khiNsmZB+x/x6sA4+G2V2CvrsPMlsYBy5X+cY1w==} engines: {node: '>=16.14'} peerDependencies: @@ -2292,10 +2292,10 @@ packages: react-dom: ^16.8.4 || ^17.0.0 dependencies: '@docsearch/react': 3.3.0_owu7fnyguu6wv2n4xo4xexy6ri - '@docusaurus/core': 2.2.0_ehuab5y7qm7umqkczzguzxp57i + '@docusaurus/core': 2.2.0_aeigrxhfhc4abyd45ix2hknizy '@docusaurus/logger': 2.2.0 - '@docusaurus/plugin-content-docs': 2.2.0_56jbash75ng5psbctf36wqywr4 - '@docusaurus/theme-common': 2.2.0_ehuab5y7qm7umqkczzguzxp57i + '@docusaurus/plugin-content-docs': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu + '@docusaurus/theme-common': 2.2.0_aeigrxhfhc4abyd45ix2hknizy '@docusaurus/theme-translations': 2.2.0 '@docusaurus/utils': 2.2.0_@docusaurus+types@2.2.0 '@docusaurus/utils-validation': 2.2.0_@docusaurus+types@2.2.0 @@ -2506,8 +2506,8 @@ packages: ajv: 6.12.6 debug: 4.3.4 espree: 9.4.1 - globals: 13.17.0 - ignore: 5.2.0 + globals: 13.18.0 + ignore: 5.2.1 import-fresh: 3.3.0 js-yaml: 4.1.0 minimatch: 3.1.2 @@ -2579,7 +2579,7 @@ packages: '@types/istanbul-lib-coverage': 2.0.4 '@types/istanbul-reports': 3.0.1 '@types/node': 18.11.9 - '@types/yargs': 17.0.13 + '@types/yargs': 17.0.15 chalk: 4.1.2 dev: false @@ -2677,33 +2677,29 @@ packages: /@meshtastic/eslint-config/1.0.8: resolution: {integrity: sha512-Jzwaf3TyYFGeFuxLRQA5Yj5Rmz097VleFQUkswXH9nvLO81JjJbHgJWbHQ6RpxC31q/2hWV03QdaH98swpYcQA==} dependencies: - '@typescript-eslint/eslint-plugin': 5.42.1_2udltptbznfmezdozpdoa2aemq - '@typescript-eslint/parser': 5.42.1_rmayb2veg2btbq6mbmnyivgasy - eslint: 8.27.0 - eslint-config-prettier: 8.5.0_eslint@8.27.0 - eslint-import-resolver-typescript: 2.7.1_dcpv4nbdr5ks2h5677xdltrk6e - eslint-plugin-eslint-comments: 3.2.0_eslint@8.27.0 - eslint-plugin-import: 2.26.0_fjrawv2a4e2kreqduevmayjdry - eslint-plugin-react: 7.31.10_eslint@8.27.0 - eslint-plugin-react-hooks: 4.6.0_eslint@8.27.0 - prettier: 2.7.1 - prettier-plugin-tailwindcss: 0.1.13_prettier@2.7.1 - typescript: 4.8.4 + '@typescript-eslint/eslint-plugin': 5.45.0_czs5uoqkd3podpy6vgtsxfc7au + '@typescript-eslint/parser': 5.45.0_hsf322ms6xhhd4b5ne6lb74y4a + eslint: 8.28.0 + eslint-config-prettier: 8.5.0_eslint@8.28.0 + eslint-import-resolver-typescript: 2.7.1_ktrec6dplf4now6nlbc6d67jee + eslint-plugin-eslint-comments: 3.2.0_eslint@8.28.0 + eslint-plugin-import: 2.26.0_zakvy25bvwc2d644723rsy4ypy + eslint-plugin-react: 7.31.11_eslint@8.28.0 + eslint-plugin-react-hooks: 4.6.0_eslint@8.28.0 + prettier: 2.8.0 + prettier-plugin-tailwindcss: 0.1.13_prettier@2.8.0 + typescript: 4.9.3 transitivePeerDependencies: - eslint-import-resolver-webpack - supports-color dev: true - /@meshtastic/meshtasticjs/0.6.113: - resolution: {integrity: sha512-4/Qlqof/Dm2gWS1nqZ/H/csYy5o7EjdKlGWCBFQjAA5s9PmZ4vMI20UdoSaAz3+DvW7CYCzAx3h1e5WwsClF0A==} + /@meshtastic/meshtasticjs/0.6.115: + resolution: {integrity: sha512-/CjaIo6vjU/AID6DfLpCCg5cg03EgCkVTIxRhOAfi2zyLbrkzL4rHaQtm9k3qBtMMUecQIDGfziXOFhrMO6Fgg==} dependencies: - '@protobuf-ts/runtime': 2.8.1 - '@serialport/stream': 10.3.0 + '@protobuf-ts/runtime': 2.8.2 glob: 8.0.3 - serialport: 10.4.0 sub-events: 1.9.0 - transitivePeerDependencies: - - supports-color dev: false /@motionone/animation/10.14.0: @@ -2775,104 +2771,8 @@ packages: resolution: {integrity: sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==} dev: false - /@protobuf-ts/runtime/2.8.1: - resolution: {integrity: sha512-D9M5hSumYCovIfNllt7N6ODh4q+LrjiMWtNETvooaf+a2XheZJ7kgjFlsFghti0CFWwtA//of4JXQfw9hU+cCw==} - dev: false - - /@serialport/binding-mock/10.2.2: - resolution: {integrity: sha512-HAFzGhk9OuFMpuor7aT5G1ChPgn5qSsklTFOTUX72Rl6p0xwcSVsRtG/xaGp6bxpN7fI9D/S8THLBWbBgS6ldw==} - engines: {node: '>=12.0.0'} - dependencies: - '@serialport/bindings-interface': 1.2.2 - debug: 4.3.4 - transitivePeerDependencies: - - supports-color - dev: false - - /@serialport/bindings-cpp/10.7.0: - resolution: {integrity: sha512-Xx1wA2UCG2loS32hxNvWJI4smCzGKhWqE85//fLRzHoGgE1lSLe3Nk7W40/ebrlGFHWRbQZmeaIF4chb2XLliA==} - engines: {node: '>=12.17.0 <13.0 || >=14.0.0'} - requiresBuild: true - dependencies: - '@serialport/bindings-interface': 1.2.1 - '@serialport/parser-readline': 10.3.0 - debug: 4.3.4 - node-addon-api: 4.3.0 - node-gyp-build: 4.5.0 - transitivePeerDependencies: - - supports-color - dev: false - - /@serialport/bindings-interface/1.2.1: - resolution: {integrity: sha512-63Dyqz2gtryRDDckFusOYqLYhR3Hq/M4sEdbF9i/VsvDb6T+tNVgoAKUZ+FMrXXKnCSu+hYbk+MTc0XQANszxw==} - engines: {node: ^12.22 || ^14.13 || >=16} - dev: false - - /@serialport/bindings-interface/1.2.2: - resolution: {integrity: sha512-CJaUd5bLvtM9c5dmO9rPBHPXTa9R2UwpkJ0wdh9JCYcbrPWsKz+ErvR0hBLeo7NPeiFdjFO4sonRljiw4d2XiA==} - engines: {node: ^12.22 || ^14.13 || >=16} - dev: false - - /@serialport/parser-byte-length/10.3.0: - resolution: {integrity: sha512-pJ/VoFemzKRRNDHLhFfPThwP40QrGaEnm9TtwL7o2GihEPwzBg3T0bN13ew5TpbbUYZdMpUtpm3CGfl6av9rUQ==} - engines: {node: '>=12.0.0'} - dev: false - - /@serialport/parser-cctalk/10.3.0: - resolution: {integrity: sha512-8ujmk8EvVbDPrNF4mM33bWvUYJOZ0wXbY3WCRazHRWvyCdL0VO0DQvW81ZqgoTpiDQZm5r8wQu9rmuemahF6vQ==} - engines: {node: '>=12.0.0'} - dev: false - - /@serialport/parser-delimiter/10.3.0: - resolution: {integrity: sha512-9E4Vj6s0UbbcCCTclwegHGPYjJhdm9qLCS0lowXQDEQC5naZnbsELemMHs93nD9jHPcyx1B4oXkMnVZLxX5TYw==} - engines: {node: '>=12.0.0'} - dev: false - - /@serialport/parser-inter-byte-timeout/10.3.0: - resolution: {integrity: sha512-wKP0QK85NHgvT6BBB1qBfKBBU4pf8kespNXAZBUYmFT+P4n8r8IZE2mqigCD+AiZcfWNQoAizwOsT/Jx/qeVig==} - engines: {node: '>=12.0.0'} - dev: false - - /@serialport/parser-packet-length/10.3.0: - resolution: {integrity: sha512-bj0cWzt8YSQj/E5fRQVYdi4TsfTlZQrXlXrUwjyTsCONv8IPOHzsz+yY0fw5SEMiJtaLyqvPkCHLsttOd/zFsg==} - engines: {node: '>=8.6.0'} - dev: false - - /@serialport/parser-readline/10.3.0: - resolution: {integrity: sha512-ki3ATZ3/RAqnqGROBKE7k+OeZ0DZXZ53GTca4q71OU5RazbbNhTOBQLKLXD3v9QZXCMJdg4hGW/2Y0DuMUqMQg==} - engines: {node: '>=12.0.0'} - dependencies: - '@serialport/parser-delimiter': 10.3.0 - dev: false - - /@serialport/parser-ready/10.3.0: - resolution: {integrity: sha512-1owywJ4p592dJyVrEJZPIh6pUZ3/y/LN6kGTDH2wxdewRUITo/sGvDy0er5i2+dJD3yuowiAz0dOHSdz8tevJA==} - engines: {node: '>=12.0.0'} - dev: false - - /@serialport/parser-regex/10.3.0: - resolution: {integrity: sha512-tIogTs7CvTH+UUFnsvE7i33MSISyTPTGPWlglWYH2/5coipXY503jlaYS1YGe818wWNcSx6YAjMZRdhTWwM39w==} - engines: {node: '>=12.0.0'} - dev: false - - /@serialport/parser-slip-encoder/10.3.0: - resolution: {integrity: sha512-JI0ILF5sylWn8f0MuMzHFBix/iMUTa79/Z95KaPZYnVaEdA7h7hh/o21Jmon/26P3RJwL1SNJCjZ81zfan+LtQ==} - engines: {node: '>=12.0.0'} - dev: false - - /@serialport/parser-spacepacket/10.3.0: - resolution: {integrity: sha512-PDF73ClEPsClD1FEJZHNuBevDKsJCkqy/XD5+S5eA6+tY5D4HLrVgSWsg+3qqB6+dlpwf2CzHe+uO8D3teuKHA==} - engines: {node: '>=12.0.0'} - dev: false - - /@serialport/stream/10.3.0: - resolution: {integrity: sha512-7sooi5fHogYNVEJwxVdg872xO6TuMgQd2E9iRmv+o8pk/1dbBnPkmH6Ka3st1mVE+0KnIJqVlgei+ncSsqXIGw==} - engines: {node: '>=12.0.0'} - dependencies: - '@serialport/bindings-interface': 1.2.1 - debug: 4.3.4 - transitivePeerDependencies: - - supports-color + /@protobuf-ts/runtime/2.8.2: + resolution: {integrity: sha512-PVxsH81y9kEbHldxxG/8Y3z2mTXWQytRl8zNS0mTPUjkEC+8GUX6gj6LsA8EFp25fAs9V0ruh+aNWmPccEI9MA==} dev: false /@sideway/address/4.1.4: @@ -2904,104 +2804,104 @@ packages: webpack-sources: 3.2.3 dev: false - /@svgr/babel-plugin-add-jsx-attribute/6.5.1_@babel+core@7.20.2: + /@svgr/babel-plugin-add-jsx-attribute/6.5.1_@babel+core@7.20.5: resolution: {integrity: sha512-9PYGcXrAxitycIjRmZB+Q0JaN07GZIWaTBIGQzfaZv+qr1n8X1XUEJ5rZ/vx6OVD9RRYlrNnXWExQXcmZeD/BQ==} engines: {node: '>=10'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 dev: false - /@svgr/babel-plugin-remove-jsx-attribute/6.5.0_@babel+core@7.20.2: + /@svgr/babel-plugin-remove-jsx-attribute/6.5.0_@babel+core@7.20.5: resolution: {integrity: sha512-8zYdkym7qNyfXpWvu4yq46k41pyNM9SOstoWhKlm+IfdCE1DdnRKeMUPsWIEO/DEkaWxJ8T9esNdG3QwQ93jBA==} engines: {node: '>=10'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 dev: false - /@svgr/babel-plugin-remove-jsx-empty-expression/6.5.0_@babel+core@7.20.2: + /@svgr/babel-plugin-remove-jsx-empty-expression/6.5.0_@babel+core@7.20.5: resolution: {integrity: sha512-NFdxMq3xA42Kb1UbzCVxplUc0iqSyM9X8kopImvFnB+uSDdzIHOdbs1op8ofAvVRtbg4oZiyRl3fTYeKcOe9Iw==} engines: {node: '>=10'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 dev: false - /@svgr/babel-plugin-replace-jsx-attribute-value/6.5.1_@babel+core@7.20.2: + /@svgr/babel-plugin-replace-jsx-attribute-value/6.5.1_@babel+core@7.20.5: resolution: {integrity: sha512-8DPaVVE3fd5JKuIC29dqyMB54sA6mfgki2H2+swh+zNJoynC8pMPzOkidqHOSc6Wj032fhl8Z0TVn1GiPpAiJg==} engines: {node: '>=10'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 dev: false - /@svgr/babel-plugin-svg-dynamic-title/6.5.1_@babel+core@7.20.2: + /@svgr/babel-plugin-svg-dynamic-title/6.5.1_@babel+core@7.20.5: resolution: {integrity: sha512-FwOEi0Il72iAzlkaHrlemVurgSQRDFbk0OC8dSvD5fSBPHltNh7JtLsxmZUhjYBZo2PpcU/RJvvi6Q0l7O7ogw==} engines: {node: '>=10'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 dev: false - /@svgr/babel-plugin-svg-em-dimensions/6.5.1_@babel+core@7.20.2: + /@svgr/babel-plugin-svg-em-dimensions/6.5.1_@babel+core@7.20.5: resolution: {integrity: sha512-gWGsiwjb4tw+ITOJ86ndY/DZZ6cuXMNE/SjcDRg+HLuCmwpcjOktwRF9WgAiycTqJD/QXqL2f8IzE2Rzh7aVXA==} engines: {node: '>=10'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 dev: false - /@svgr/babel-plugin-transform-react-native-svg/6.5.1_@babel+core@7.20.2: + /@svgr/babel-plugin-transform-react-native-svg/6.5.1_@babel+core@7.20.5: resolution: {integrity: sha512-2jT3nTayyYP7kI6aGutkyfJ7UMGtuguD72OjeGLwVNyfPRBD8zQthlvL+fAbAKk5n9ZNcvFkp/b1lZ7VsYqVJg==} engines: {node: '>=10'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 dev: false - /@svgr/babel-plugin-transform-svg-component/6.5.1_@babel+core@7.20.2: + /@svgr/babel-plugin-transform-svg-component/6.5.1_@babel+core@7.20.5: resolution: {integrity: sha512-a1p6LF5Jt33O3rZoVRBqdxL350oge54iZWHNI6LJB5tQ7EelvD/Mb1mfBiZNAan0dt4i3VArkFRjA4iObuNykQ==} engines: {node: '>=12'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 dev: false - /@svgr/babel-preset/6.5.1_@babel+core@7.20.2: + /@svgr/babel-preset/6.5.1_@babel+core@7.20.5: resolution: {integrity: sha512-6127fvO/FF2oi5EzSQOAjo1LE3OtNVh11R+/8FXa+mHx1ptAaS4cknIjnUA7e6j6fwGGJ17NzaTJFUwOV2zwCw==} engines: {node: '>=10'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 - '@svgr/babel-plugin-add-jsx-attribute': 6.5.1_@babel+core@7.20.2 - '@svgr/babel-plugin-remove-jsx-attribute': 6.5.0_@babel+core@7.20.2 - '@svgr/babel-plugin-remove-jsx-empty-expression': 6.5.0_@babel+core@7.20.2 - '@svgr/babel-plugin-replace-jsx-attribute-value': 6.5.1_@babel+core@7.20.2 - '@svgr/babel-plugin-svg-dynamic-title': 6.5.1_@babel+core@7.20.2 - '@svgr/babel-plugin-svg-em-dimensions': 6.5.1_@babel+core@7.20.2 - '@svgr/babel-plugin-transform-react-native-svg': 6.5.1_@babel+core@7.20.2 - '@svgr/babel-plugin-transform-svg-component': 6.5.1_@babel+core@7.20.2 + '@babel/core': 7.20.5 + '@svgr/babel-plugin-add-jsx-attribute': 6.5.1_@babel+core@7.20.5 + '@svgr/babel-plugin-remove-jsx-attribute': 6.5.0_@babel+core@7.20.5 + '@svgr/babel-plugin-remove-jsx-empty-expression': 6.5.0_@babel+core@7.20.5 + '@svgr/babel-plugin-replace-jsx-attribute-value': 6.5.1_@babel+core@7.20.5 + '@svgr/babel-plugin-svg-dynamic-title': 6.5.1_@babel+core@7.20.5 + '@svgr/babel-plugin-svg-em-dimensions': 6.5.1_@babel+core@7.20.5 + '@svgr/babel-plugin-transform-react-native-svg': 6.5.1_@babel+core@7.20.5 + '@svgr/babel-plugin-transform-svg-component': 6.5.1_@babel+core@7.20.5 dev: false /@svgr/core/6.5.1: resolution: {integrity: sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw==} engines: {node: '>=10'} dependencies: - '@babel/core': 7.20.2 - '@svgr/babel-preset': 6.5.1_@babel+core@7.20.2 + '@babel/core': 7.20.5 + '@svgr/babel-preset': 6.5.1_@babel+core@7.20.5 '@svgr/plugin-jsx': 6.5.1_@svgr+core@6.5.1 camelcase: 6.3.0 - cosmiconfig: 7.0.1 + cosmiconfig: 7.1.0 transitivePeerDependencies: - supports-color dev: false @@ -3010,7 +2910,7 @@ packages: resolution: {integrity: sha512-1hnUxxjd83EAxbL4a0JDJoD3Dao3hmjvyvyEV8PzWmLK3B9m9NPlW7GKjFyoWE8nM7HnXzPcmmSyOW8yOddSXw==} engines: {node: '>=10'} dependencies: - '@babel/types': 7.20.2 + '@babel/types': 7.20.5 entities: 4.4.0 dev: false @@ -3020,8 +2920,8 @@ packages: peerDependencies: '@svgr/core': ^6.0.0 dependencies: - '@babel/core': 7.20.2 - '@svgr/babel-preset': 6.5.1_@babel+core@7.20.2 + '@babel/core': 7.20.5 + '@svgr/babel-preset': 6.5.1_@babel+core@7.20.5 '@svgr/core': 6.5.1 '@svgr/hast-util-to-babel-ast': 6.5.1 svg-parser: 2.0.4 @@ -3036,7 +2936,7 @@ packages: '@svgr/core': '*' dependencies: '@svgr/core': 6.5.1 - cosmiconfig: 7.0.1 + cosmiconfig: 7.1.0 deepmerge: 4.2.2 svgo: 2.8.0 dev: false @@ -3045,11 +2945,11 @@ packages: resolution: {integrity: sha512-cQ/AsnBkXPkEK8cLbv4Dm7JGXq2XrumKnL1dRpJD9rIO2fTIlJI9a1uCciYG1F2aUsox/hJQyNGbt3soDxSRkA==} engines: {node: '>=10'} dependencies: - '@babel/core': 7.20.2 - '@babel/plugin-transform-react-constant-elements': 7.20.2_@babel+core@7.20.2 - '@babel/preset-env': 7.20.2_@babel+core@7.20.2 - '@babel/preset-react': 7.18.6_@babel+core@7.20.2 - '@babel/preset-typescript': 7.18.6_@babel+core@7.20.2 + '@babel/core': 7.20.5 + '@babel/plugin-transform-react-constant-elements': 7.20.2_@babel+core@7.20.5 + '@babel/preset-env': 7.20.2_@babel+core@7.20.5 + '@babel/preset-react': 7.18.6_@babel+core@7.20.5 + '@babel/preset-typescript': 7.18.6_@babel+core@7.20.5 '@svgr/core': 6.5.1 '@svgr/plugin-jsx': 6.5.1_@svgr+core@6.5.1 '@svgr/plugin-svgo': 6.5.1_@svgr+core@6.5.1 @@ -3064,7 +2964,7 @@ packages: defer-to-connect: 1.1.3 dev: false - /@tailwindcss/typography/0.5.8_tailwindcss@3.2.3: + /@tailwindcss/typography/0.5.8_tailwindcss@3.2.4: resolution: {integrity: sha512-xGQEp8KXN8Sd8m6R4xYmwxghmswrd0cPnNI2Lc6fmrC3OojysTBJJGSIVwPV56q4t6THFUK3HJ0EaWwpglSxWw==} peerDependencies: tailwindcss: '>=3.0.0 || insiders' @@ -3073,7 +2973,7 @@ packages: lodash.isplainobject: 4.0.6 lodash.merge: 4.6.2 postcss-selector-parser: 6.0.10 - tailwindcss: 3.2.3_postcss@8.4.18 + tailwindcss: 3.2.4_postcss@8.4.19 dev: true /@trysound/sax/0.2.0: @@ -3227,8 +3127,8 @@ packages: resolution: {integrity: sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==} dev: false - /@types/react-dom/18.0.8: - resolution: {integrity: sha512-C3GYO0HLaOkk9dDAz3Dl4sbe4AKUGTCfFIZsz3n/82dPNN8Du533HzKatDxeUYWu24wJgMP1xICqkWk1YOLOIw==} + /@types/react-dom/18.0.9: + resolution: {integrity: sha512-qnVvHxASt/H7i+XG1U1xMiY5t+IHcPGUK7TDMDzom08xa7e86eCeKOiLZezwCKVxJn6NEiiy2ekgX8aQssjIKg==} dependencies: '@types/react': 18.0.25 dev: true @@ -3316,14 +3216,14 @@ packages: resolution: {integrity: sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==} dev: false - /@types/yargs/17.0.13: - resolution: {integrity: sha512-9sWaruZk2JGxIQU+IhI1fhPYRcQ0UuTNuKuCW9bR5fp7qi2Llf7WDzNa17Cy7TKnh3cdxDOiyTu6gaLS0eDatg==} + /@types/yargs/17.0.15: + resolution: {integrity: sha512-ZHc4W2dnEQPfhn06TBEdWaiUHEZAocYaiVMfwOipY5jcJt/251wVrKCBWBetGZWO5CF8tdb7L3DmdxVlZ2BOIg==} dependencies: '@types/yargs-parser': 21.0.0 dev: false - /@typescript-eslint/eslint-plugin/5.42.1_2udltptbznfmezdozpdoa2aemq: - resolution: {integrity: sha512-LyR6x784JCiJ1j6sH5Y0K6cdExqCCm8DJUTcwG5ThNXJj/G8o5E56u5EdG4SLy+bZAwZBswC+GYn3eGdttBVCg==} + /@typescript-eslint/eslint-plugin/5.45.0_czs5uoqkd3podpy6vgtsxfc7au: + resolution: {integrity: sha512-CXXHNlf0oL+Yg021cxgOdMHNTXD17rHkq7iW6RFHoybdFgQBjU3yIXhhcPpGwr1CjZlo6ET8C6tzX5juQoXeGA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: '@typescript-eslint/parser': ^5.0.0 @@ -3333,24 +3233,24 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/parser': 5.42.1_rmayb2veg2btbq6mbmnyivgasy - '@typescript-eslint/scope-manager': 5.42.1 - '@typescript-eslint/type-utils': 5.42.1_rmayb2veg2btbq6mbmnyivgasy - '@typescript-eslint/utils': 5.42.1_rmayb2veg2btbq6mbmnyivgasy + '@typescript-eslint/parser': 5.45.0_hsf322ms6xhhd4b5ne6lb74y4a + '@typescript-eslint/scope-manager': 5.45.0 + '@typescript-eslint/type-utils': 5.45.0_hsf322ms6xhhd4b5ne6lb74y4a + '@typescript-eslint/utils': 5.45.0_hsf322ms6xhhd4b5ne6lb74y4a debug: 4.3.4 - eslint: 8.27.0 - ignore: 5.2.0 + eslint: 8.28.0 + ignore: 5.2.1 natural-compare-lite: 1.4.0 regexpp: 3.2.0 semver: 7.3.8 - tsutils: 3.21.0_typescript@4.8.4 - typescript: 4.8.4 + tsutils: 3.21.0_typescript@4.9.3 + typescript: 4.9.3 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/parser/5.42.1_rmayb2veg2btbq6mbmnyivgasy: - resolution: {integrity: sha512-kAV+NiNBWVQDY9gDJDToTE/NO8BHi4f6b7zTsVAJoTkmB/zlfOpiEVBzHOKtlgTndCKe8vj9F/PuolemZSh50Q==} + /@typescript-eslint/parser/5.45.0_hsf322ms6xhhd4b5ne6lb74y4a: + resolution: {integrity: sha512-brvs/WSM4fKUmF5Ot/gEve6qYiCMjm6w4HkHPfS6ZNmxTS0m0iNN4yOChImaCkqc1hRwFGqUyanMXuGal6oyyQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 @@ -3359,26 +3259,26 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 5.42.1 - '@typescript-eslint/types': 5.42.1 - '@typescript-eslint/typescript-estree': 5.42.1_typescript@4.8.4 + '@typescript-eslint/scope-manager': 5.45.0 + '@typescript-eslint/types': 5.45.0 + '@typescript-eslint/typescript-estree': 5.45.0_typescript@4.9.3 debug: 4.3.4 - eslint: 8.27.0 - typescript: 4.8.4 + eslint: 8.28.0 + typescript: 4.9.3 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/scope-manager/5.42.1: - resolution: {integrity: sha512-QAZY/CBP1Emx4rzxurgqj3rUinfsh/6mvuKbLNMfJMMKYLRBfweus8brgXF8f64ABkIZ3zdj2/rYYtF8eiuksQ==} + /@typescript-eslint/scope-manager/5.45.0: + resolution: {integrity: sha512-noDMjr87Arp/PuVrtvN3dXiJstQR1+XlQ4R1EvzG+NMgXi8CuMCXpb8JqNtFHKceVSQ985BZhfRdowJzbv4yKw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: - '@typescript-eslint/types': 5.42.1 - '@typescript-eslint/visitor-keys': 5.42.1 + '@typescript-eslint/types': 5.45.0 + '@typescript-eslint/visitor-keys': 5.45.0 dev: true - /@typescript-eslint/type-utils/5.42.1_rmayb2veg2btbq6mbmnyivgasy: - resolution: {integrity: sha512-WWiMChneex5w4xPIX56SSnQQo0tEOy5ZV2dqmj8Z371LJ0E+aymWD25JQ/l4FOuuX+Q49A7pzh/CGIQflxMVXg==} + /@typescript-eslint/type-utils/5.45.0_hsf322ms6xhhd4b5ne6lb74y4a: + resolution: {integrity: sha512-DY7BXVFSIGRGFZ574hTEyLPRiQIvI/9oGcN8t1A7f6zIs6ftbrU0nhyV26ZW//6f85avkwrLag424n+fkuoJ1Q==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: '*' @@ -3387,23 +3287,23 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 5.42.1_typescript@4.8.4 - '@typescript-eslint/utils': 5.42.1_rmayb2veg2btbq6mbmnyivgasy + '@typescript-eslint/typescript-estree': 5.45.0_typescript@4.9.3 + '@typescript-eslint/utils': 5.45.0_hsf322ms6xhhd4b5ne6lb74y4a debug: 4.3.4 - eslint: 8.27.0 - tsutils: 3.21.0_typescript@4.8.4 - typescript: 4.8.4 + eslint: 8.28.0 + tsutils: 3.21.0_typescript@4.9.3 + typescript: 4.9.3 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/types/5.42.1: - resolution: {integrity: sha512-Qrco9dsFF5lhalz+lLFtxs3ui1/YfC6NdXu+RAGBa8uSfn01cjO7ssCsjIsUs484vny9Xm699FSKwpkCcqwWwA==} + /@typescript-eslint/types/5.45.0: + resolution: {integrity: sha512-QQij+u/vgskA66azc9dCmx+rev79PzX8uDHpsqSjEFtfF2gBUTRCpvYMh2gw2ghkJabNkPlSUCimsyBEQZd1DA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /@typescript-eslint/typescript-estree/5.42.1_typescript@4.8.4: - resolution: {integrity: sha512-qElc0bDOuO0B8wDhhW4mYVgi/LZL+igPwXtV87n69/kYC/7NG3MES0jHxJNCr4EP7kY1XVsRy8C/u3DYeTKQmw==} + /@typescript-eslint/typescript-estree/5.45.0_typescript@4.9.3: + resolution: {integrity: sha512-maRhLGSzqUpFcZgXxg1qc/+H0bT36lHK4APhp0AEUVrpSwXiRAomm/JGjSG+kNUio5kAa3uekCYu/47cnGn5EQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: typescript: '*' @@ -3411,43 +3311,43 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/types': 5.42.1 - '@typescript-eslint/visitor-keys': 5.42.1 + '@typescript-eslint/types': 5.45.0 + '@typescript-eslint/visitor-keys': 5.45.0 debug: 4.3.4 globby: 11.1.0 is-glob: 4.0.3 semver: 7.3.8 - tsutils: 3.21.0_typescript@4.8.4 - typescript: 4.8.4 + tsutils: 3.21.0_typescript@4.9.3 + typescript: 4.9.3 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/utils/5.42.1_rmayb2veg2btbq6mbmnyivgasy: - resolution: {integrity: sha512-Gxvf12xSp3iYZd/fLqiQRD4uKZjDNR01bQ+j8zvhPjpsZ4HmvEFL/tC4amGNyxN9Rq+iqvpHLhlqx6KTxz9ZyQ==} + /@typescript-eslint/utils/5.45.0_hsf322ms6xhhd4b5ne6lb74y4a: + resolution: {integrity: sha512-OUg2JvsVI1oIee/SwiejTot2OxwU8a7UfTFMOdlhD2y+Hl6memUSL4s98bpUTo8EpVEr0lmwlU7JSu/p2QpSvA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: '@types/json-schema': 7.0.11 '@types/semver': 7.3.13 - '@typescript-eslint/scope-manager': 5.42.1 - '@typescript-eslint/types': 5.42.1 - '@typescript-eslint/typescript-estree': 5.42.1_typescript@4.8.4 - eslint: 8.27.0 + '@typescript-eslint/scope-manager': 5.45.0 + '@typescript-eslint/types': 5.45.0 + '@typescript-eslint/typescript-estree': 5.45.0_typescript@4.9.3 + eslint: 8.28.0 eslint-scope: 5.1.1 - eslint-utils: 3.0.0_eslint@8.27.0 + eslint-utils: 3.0.0_eslint@8.28.0 semver: 7.3.8 transitivePeerDependencies: - supports-color - typescript dev: true - /@typescript-eslint/visitor-keys/5.42.1: - resolution: {integrity: sha512-LOQtSF4z+hejmpUvitPlc4hA7ERGoj2BVkesOcG91HCn8edLGUXbTrErmutmPbl8Bo9HjAvOO/zBKQHExXNA2A==} + /@typescript-eslint/visitor-keys/5.45.0: + resolution: {integrity: sha512-jc6Eccbn2RtQPr1s7th6jJWQHBHI6GBVQkCHoJFQ5UreaKm59Vxw+ynQUPPY2u2Amquc+7tmEoC2G52ApsGNNg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: - '@typescript-eslint/types': 5.42.1 + '@typescript-eslint/types': 5.45.0 eslint-visitor-keys: 3.3.0 dev: true @@ -3616,7 +3516,7 @@ packages: ajv: optional: true dependencies: - ajv: 8.11.0 + ajv: 8.11.2 dev: false /ajv-keywords/3.5.2_ajv@6.12.6: @@ -3626,12 +3526,12 @@ packages: dependencies: ajv: 6.12.6 - /ajv-keywords/5.1.0_ajv@8.11.0: + /ajv-keywords/5.1.0_ajv@8.11.2: resolution: {integrity: sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==} peerDependencies: ajv: ^8.8.2 dependencies: - ajv: 8.11.0 + ajv: 8.11.2 fast-deep-equal: 3.1.3 dev: false @@ -3643,8 +3543,8 @@ packages: json-schema-traverse: 0.4.1 uri-js: 4.4.1 - /ajv/8.11.0: - resolution: {integrity: sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==} + /ajv/8.11.2: + resolution: {integrity: sha512-E4bfmKAhGiSTvMfL1Myyycaub+cUEU2/IvpylXkUu7CHBkBj1f/ikdzbD7YQ6FKUbixDxeYvB/xY4fvyroDlQg==} dependencies: fast-deep-equal: 3.1.3 json-schema-traverse: 1.0.0 @@ -3719,8 +3619,8 @@ packages: engines: {node: '>=12'} dev: false - /anymatch/3.1.2: - resolution: {integrity: sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==} + /anymatch/3.1.3: + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} dependencies: normalize-path: 3.0.0 @@ -3781,6 +3681,16 @@ packages: es-shim-unscopables: 1.0.0 dev: true + /array.prototype.tosorted/1.1.1: + resolution: {integrity: sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ==} + dependencies: + call-bind: 1.0.2 + define-properties: 1.1.4 + es-abstract: 1.20.4 + es-shim-unscopables: 1.0.0 + get-intrinsic: 1.1.3 + dev: true + /asap/2.0.6: resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==} dev: false @@ -3790,7 +3700,7 @@ packages: engines: {node: '>= 4.0.0'} dev: false - /autoprefixer/10.4.13_postcss@8.4.18: + /autoprefixer/10.4.13_postcss@8.4.19: resolution: {integrity: sha512-49vKpMqcZYsJjwotvt4+h/BCjJVnhGwcLpDt5xkcaOG3eLrG/HUYLagrihYsQ+qrIBgIzX1Rw7a6L8I/ZA1Atg==} engines: {node: ^10 || ^12 || >=14} hasBin: true @@ -3798,11 +3708,11 @@ packages: postcss: ^8.1.0 dependencies: browserslist: 4.21.4 - caniuse-lite: 1.0.30001431 + caniuse-lite: 1.0.30001434 fraction.js: 4.2.0 normalize-range: 0.1.2 picocolors: 1.0.0 - postcss: 8.4.18 + postcss: 8.4.19 postcss-value-parser: 4.2.0 dev: false @@ -3814,16 +3724,16 @@ packages: - debug dev: false - /babel-loader/8.3.0_npabyccmuonwo2rku4k53xo3hi: + /babel-loader/8.3.0_ztqwsvkb6z73luspkai6ilstpu: resolution: {integrity: sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==} engines: {node: '>= 8.9'} peerDependencies: '@babel/core': ^7.0.0 webpack: '>=2' dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.20.5 find-cache-dir: 3.3.2 - loader-utils: 2.0.3 + loader-utils: 2.0.4 make-dir: 3.1.0 schema-utils: 2.7.1 webpack: 5.75.0 @@ -3851,38 +3761,38 @@ packages: '@babel/helper-plugin-utils': 7.10.4 dev: false - /babel-plugin-polyfill-corejs2/0.3.3_@babel+core@7.20.2: + /babel-plugin-polyfill-corejs2/0.3.3_@babel+core@7.20.5: resolution: {integrity: sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/compat-data': 7.20.1 - '@babel/core': 7.20.2 - '@babel/helper-define-polyfill-provider': 0.3.3_@babel+core@7.20.2 + '@babel/compat-data': 7.20.5 + '@babel/core': 7.20.5 + '@babel/helper-define-polyfill-provider': 0.3.3_@babel+core@7.20.5 semver: 6.3.0 transitivePeerDependencies: - supports-color dev: false - /babel-plugin-polyfill-corejs3/0.6.0_@babel+core@7.20.2: + /babel-plugin-polyfill-corejs3/0.6.0_@babel+core@7.20.5: resolution: {integrity: sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-define-polyfill-provider': 0.3.3_@babel+core@7.20.2 - core-js-compat: 3.26.0 + '@babel/core': 7.20.5 + '@babel/helper-define-polyfill-provider': 0.3.3_@babel+core@7.20.5 + core-js-compat: 3.26.1 transitivePeerDependencies: - supports-color dev: false - /babel-plugin-polyfill-regenerator/0.4.1_@babel+core@7.20.2: + /babel-plugin-polyfill-regenerator/0.4.1_@babel+core@7.20.5: resolution: {integrity: sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-define-polyfill-provider': 0.3.3_@babel+core@7.20.2 + '@babel/core': 7.20.5 + '@babel/helper-define-polyfill-provider': 0.3.3_@babel+core@7.20.5 transitivePeerDependencies: - supports-color dev: false @@ -3998,7 +3908,7 @@ packages: engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true dependencies: - caniuse-lite: 1.0.30001431 + caniuse-lite: 1.0.30001434 electron-to-chromium: 1.4.284 node-releases: 2.0.6 update-browserslist-db: 1.0.10_browserslist@4.21.4 @@ -4059,13 +3969,13 @@ packages: resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==} dependencies: browserslist: 4.21.4 - caniuse-lite: 1.0.30001431 + caniuse-lite: 1.0.30001434 lodash.memoize: 4.1.2 lodash.uniq: 4.5.0 dev: false - /caniuse-lite/1.0.30001431: - resolution: {integrity: sha512-zBUoFU0ZcxpvSt9IU66dXVT/3ctO1cy4y9cscs1szkPlcWb6pasYM144GqrUygUbT+k7cmUCW61cvskjcv0enQ==} + /caniuse-lite/1.0.30001434: + resolution: {integrity: sha512-aOBHrLmTQw//WFa2rcF1If9fa3ypkC1wzqqiKHgfdrXTWcU8C4gKVZT77eQAPWN1APys3+uQ0Df07rKauXGEYA==} /ccount/1.1.0: resolution: {integrity: sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==} @@ -4119,7 +4029,7 @@ packages: domhandler: 5.0.3 domutils: 3.0.1 htmlparser2: 8.0.1 - parse5: 7.1.1 + parse5: 7.1.2 parse5-htmlparser2-tree-adapter: 7.0.0 dev: false @@ -4127,7 +4037,7 @@ packages: resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} engines: {node: '>= 8.10.0'} dependencies: - anymatch: 3.1.2 + anymatch: 3.1.3 braces: 3.0.2 glob-parent: 5.1.2 is-binary-path: 2.1.0 @@ -4145,8 +4055,9 @@ packages: resolution: {integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==} dev: false - /ci-info/3.5.0: - resolution: {integrity: sha512-yH4RezKOGlOhxkmhbeNuC4eYZKAUsEaGtBuBzDDP1eFUKiccDWzBABxBfOx31IDwDIXMTxWuwAxUGModvkbuVw==} + /ci-info/3.7.0: + resolution: {integrity: sha512-2CpRNYmImPx+RXKLq6jko/L07phmS9I02TyqkcNU20GCF/GgaWvc58hPtjxDX8lPpkdwc9sNh72V9k00S7ezog==} + engines: {node: '>=8'} dev: false /classnames/2.3.2: @@ -4364,19 +4275,19 @@ packages: webpack: 5.75.0 dev: false - /core-js-compat/3.26.0: - resolution: {integrity: sha512-piOX9Go+Z4f9ZiBFLnZ5VrOpBl0h7IGCkiFUN11QTe6LjAvOT3ifL/5TdoizMh99hcGy5SoLyWbapIY/PIb/3A==} + /core-js-compat/3.26.1: + resolution: {integrity: sha512-622/KzTudvXCDLRw70iHW4KKs1aGpcRcowGWyYJr2DEBfRrd6hNJybxSWJFuZYD4ma86xhrwDDHxmDaIq4EA8A==} dependencies: browserslist: 4.21.4 dev: false - /core-js-pure/3.26.0: - resolution: {integrity: sha512-LiN6fylpVBVwT8twhhluD9TzXmZQQsr2I2eIKtWNbZI1XMfBT7CV18itaN6RA7EtQd/SDdRx/wzvAShX2HvhQA==} + /core-js-pure/3.26.1: + resolution: {integrity: sha512-VVXcDpp/xJ21KdULRq/lXdLzQAtX7+37LzpyfFM973il0tWSsDEoyzG38G14AjTpK9VTfiNM9jnFauq/CpaWGQ==} requiresBuild: true dev: false - /core-js/3.26.0: - resolution: {integrity: sha512-+DkDrhoR4Y0PxDz6rurahuB+I45OsEUv8E1maPTB6OuHRohMMcznBq9TMpdpDMm/hUPob/mJJS3PqgbHpMTQgw==} + /core-js/3.26.1: + resolution: {integrity: sha512-21491RRQVzUn0GGM9Z1Jrpr6PNPxPi+Za8OM9q4tksTSnlbXXGKK1nXNg/QvwFYettXvSX6zWKCtHHfjN4puyA==} requiresBuild: true dev: false @@ -4395,8 +4306,8 @@ packages: yaml: 1.10.2 dev: false - /cosmiconfig/7.0.1: - resolution: {integrity: sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==} + /cosmiconfig/7.1.0: + resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} engines: {node: '>=10'} dependencies: '@types/parse-json': 4.0.0 @@ -4427,27 +4338,27 @@ packages: engines: {node: '>=8'} dev: false - /css-declaration-sorter/6.3.1_postcss@8.4.18: + /css-declaration-sorter/6.3.1_postcss@8.4.19: resolution: {integrity: sha512-fBffmak0bPAnyqc/HO8C3n2sHrp9wcqQz6ES9koRF2/mLOVAx9zIQ3Y7R29sYCteTPqMCwns4WYQoCX91Xl3+w==} engines: {node: ^10 || ^12 || >=14} peerDependencies: postcss: ^8.0.9 dependencies: - postcss: 8.4.18 + postcss: 8.4.19 dev: false - /css-loader/6.7.1_webpack@5.75.0: - resolution: {integrity: sha512-yB5CNFa14MbPJcomwNh3wLThtkZgcNyI2bNMRt8iE5Z8Vwl7f8vQXFAzn2HDOJvtDq2NTZBUGMSUNNyrv3/+cw==} + /css-loader/6.7.2_webpack@5.75.0: + resolution: {integrity: sha512-oqGbbVcBJkm8QwmnNzrFrWTnudnRZC+1eXikLJl0n4ljcfotgRifpg2a1lKy8jTrc4/d9A/ap1GFq1jDKG7J+Q==} engines: {node: '>= 12.13.0'} peerDependencies: webpack: ^5.0.0 dependencies: - icss-utils: 5.1.0_postcss@8.4.18 - postcss: 8.4.18 - postcss-modules-extract-imports: 3.0.0_postcss@8.4.18 - postcss-modules-local-by-default: 4.0.0_postcss@8.4.18 - postcss-modules-scope: 3.0.0_postcss@8.4.18 - postcss-modules-values: 4.0.0_postcss@8.4.18 + icss-utils: 5.1.0_postcss@8.4.19 + postcss: 8.4.19 + postcss-modules-extract-imports: 3.0.0_postcss@8.4.19 + postcss-modules-local-by-default: 4.0.0_postcss@8.4.19 + postcss-modules-scope: 3.0.0_postcss@8.4.19 + postcss-modules-values: 4.0.0_postcss@8.4.19 postcss-value-parser: 4.2.0 semver: 7.3.8 webpack: 5.75.0 @@ -4479,9 +4390,9 @@ packages: optional: true dependencies: clean-css: 5.3.1 - cssnano: 5.1.14_postcss@8.4.18 + cssnano: 5.1.14_postcss@8.4.19 jest-worker: 29.3.1 - postcss: 8.4.18 + postcss: 8.4.19 schema-utils: 4.0.0 serialize-javascript: 6.0.0 source-map: 0.6.1 @@ -4526,77 +4437,77 @@ packages: engines: {node: '>=4'} hasBin: true - /cssnano-preset-advanced/5.3.9_postcss@8.4.18: + /cssnano-preset-advanced/5.3.9_postcss@8.4.19: resolution: {integrity: sha512-njnh4pp1xCsibJcEHnWZb4EEzni0ePMqPuPNyuWT4Z+YeXmsgqNuTPIljXFEXhxGsWs9183JkXgHxc1TcsahIg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - autoprefixer: 10.4.13_postcss@8.4.18 - cssnano-preset-default: 5.2.13_postcss@8.4.18 - postcss: 8.4.18 - postcss-discard-unused: 5.1.0_postcss@8.4.18 - postcss-merge-idents: 5.1.1_postcss@8.4.18 - postcss-reduce-idents: 5.2.0_postcss@8.4.18 - postcss-zindex: 5.1.0_postcss@8.4.18 + autoprefixer: 10.4.13_postcss@8.4.19 + cssnano-preset-default: 5.2.13_postcss@8.4.19 + postcss: 8.4.19 + postcss-discard-unused: 5.1.0_postcss@8.4.19 + postcss-merge-idents: 5.1.1_postcss@8.4.19 + postcss-reduce-idents: 5.2.0_postcss@8.4.19 + postcss-zindex: 5.1.0_postcss@8.4.19 dev: false - /cssnano-preset-default/5.2.13_postcss@8.4.18: + /cssnano-preset-default/5.2.13_postcss@8.4.19: resolution: {integrity: sha512-PX7sQ4Pb+UtOWuz8A1d+Rbi+WimBIxJTRyBdgGp1J75VU0r/HFQeLnMYgHiCAp6AR4rqrc7Y4R+1Rjk3KJz6DQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - css-declaration-sorter: 6.3.1_postcss@8.4.18 - cssnano-utils: 3.1.0_postcss@8.4.18 - postcss: 8.4.18 - postcss-calc: 8.2.4_postcss@8.4.18 - postcss-colormin: 5.3.0_postcss@8.4.18 - postcss-convert-values: 5.1.3_postcss@8.4.18 - postcss-discard-comments: 5.1.2_postcss@8.4.18 - postcss-discard-duplicates: 5.1.0_postcss@8.4.18 - postcss-discard-empty: 5.1.1_postcss@8.4.18 - postcss-discard-overridden: 5.1.0_postcss@8.4.18 - postcss-merge-longhand: 5.1.7_postcss@8.4.18 - postcss-merge-rules: 5.1.3_postcss@8.4.18 - postcss-minify-font-values: 5.1.0_postcss@8.4.18 - postcss-minify-gradients: 5.1.1_postcss@8.4.18 - postcss-minify-params: 5.1.4_postcss@8.4.18 - postcss-minify-selectors: 5.2.1_postcss@8.4.18 - postcss-normalize-charset: 5.1.0_postcss@8.4.18 - postcss-normalize-display-values: 5.1.0_postcss@8.4.18 - postcss-normalize-positions: 5.1.1_postcss@8.4.18 - postcss-normalize-repeat-style: 5.1.1_postcss@8.4.18 - postcss-normalize-string: 5.1.0_postcss@8.4.18 - postcss-normalize-timing-functions: 5.1.0_postcss@8.4.18 - postcss-normalize-unicode: 5.1.1_postcss@8.4.18 - postcss-normalize-url: 5.1.0_postcss@8.4.18 - postcss-normalize-whitespace: 5.1.1_postcss@8.4.18 - postcss-ordered-values: 5.1.3_postcss@8.4.18 - postcss-reduce-initial: 5.1.1_postcss@8.4.18 - postcss-reduce-transforms: 5.1.0_postcss@8.4.18 - postcss-svgo: 5.1.0_postcss@8.4.18 - postcss-unique-selectors: 5.1.1_postcss@8.4.18 + css-declaration-sorter: 6.3.1_postcss@8.4.19 + cssnano-utils: 3.1.0_postcss@8.4.19 + postcss: 8.4.19 + postcss-calc: 8.2.4_postcss@8.4.19 + postcss-colormin: 5.3.0_postcss@8.4.19 + postcss-convert-values: 5.1.3_postcss@8.4.19 + postcss-discard-comments: 5.1.2_postcss@8.4.19 + postcss-discard-duplicates: 5.1.0_postcss@8.4.19 + postcss-discard-empty: 5.1.1_postcss@8.4.19 + postcss-discard-overridden: 5.1.0_postcss@8.4.19 + postcss-merge-longhand: 5.1.7_postcss@8.4.19 + postcss-merge-rules: 5.1.3_postcss@8.4.19 + postcss-minify-font-values: 5.1.0_postcss@8.4.19 + postcss-minify-gradients: 5.1.1_postcss@8.4.19 + postcss-minify-params: 5.1.4_postcss@8.4.19 + postcss-minify-selectors: 5.2.1_postcss@8.4.19 + postcss-normalize-charset: 5.1.0_postcss@8.4.19 + postcss-normalize-display-values: 5.1.0_postcss@8.4.19 + postcss-normalize-positions: 5.1.1_postcss@8.4.19 + postcss-normalize-repeat-style: 5.1.1_postcss@8.4.19 + postcss-normalize-string: 5.1.0_postcss@8.4.19 + postcss-normalize-timing-functions: 5.1.0_postcss@8.4.19 + postcss-normalize-unicode: 5.1.1_postcss@8.4.19 + postcss-normalize-url: 5.1.0_postcss@8.4.19 + postcss-normalize-whitespace: 5.1.1_postcss@8.4.19 + postcss-ordered-values: 5.1.3_postcss@8.4.19 + postcss-reduce-initial: 5.1.1_postcss@8.4.19 + postcss-reduce-transforms: 5.1.0_postcss@8.4.19 + postcss-svgo: 5.1.0_postcss@8.4.19 + postcss-unique-selectors: 5.1.1_postcss@8.4.19 dev: false - /cssnano-utils/3.1.0_postcss@8.4.18: + /cssnano-utils/3.1.0_postcss@8.4.19: resolution: {integrity: sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.18 + postcss: 8.4.19 dev: false - /cssnano/5.1.14_postcss@8.4.18: + /cssnano/5.1.14_postcss@8.4.19: resolution: {integrity: sha512-Oou7ihiTocbKqi0J1bB+TRJIQX5RMR3JghA8hcWSw9mjBLQ5Y3RWqEDoYG3sRNlAbCIXpqMoZGbq5KDR3vdzgw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - cssnano-preset-default: 5.2.13_postcss@8.4.18 + cssnano-preset-default: 5.2.13_postcss@8.4.19 lilconfig: 2.0.6 - postcss: 8.4.18 + postcss: 8.4.19 yaml: 1.10.2 dev: false @@ -4917,8 +4828,8 @@ packages: once: 1.4.0 dev: false - /enhanced-resolve/5.10.0: - resolution: {integrity: sha512-T0yTFjdpldGY8PmuXXR0PyQ1ufZpEGiHVrp7zHKB7jdR4qlmZHhONVM5AQOAWXuF/w3dnHbEQVrNptJgt7F+cQ==} + /enhanced-resolve/5.12.0: + resolution: {integrity: sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==} engines: {node: '>=10.13.0'} dependencies: graceful-fs: 4.2.10 @@ -5008,13 +4919,13 @@ packages: resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} engines: {node: '>=10'} - /eslint-config-prettier/8.5.0_eslint@8.27.0: + /eslint-config-prettier/8.5.0_eslint@8.28.0: resolution: {integrity: sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q==} hasBin: true peerDependencies: eslint: '>=7.0.0' dependencies: - eslint: 8.27.0 + eslint: 8.28.0 dev: true /eslint-import-resolver-node/0.3.6: @@ -5026,7 +4937,7 @@ packages: - supports-color dev: true - /eslint-import-resolver-typescript/2.7.1_dcpv4nbdr5ks2h5677xdltrk6e: + /eslint-import-resolver-typescript/2.7.1_ktrec6dplf4now6nlbc6d67jee: resolution: {integrity: sha512-00UbgGwV8bSgUv34igBDbTOtKhqoRMy9bFjNehT40bXg6585PNIct8HhXZ0SybqB9rWtXj9crcku8ndDn/gIqQ==} engines: {node: '>=4'} peerDependencies: @@ -5034,8 +4945,8 @@ packages: eslint-plugin-import: '*' dependencies: debug: 4.3.4 - eslint: 8.27.0 - eslint-plugin-import: 2.26.0_fjrawv2a4e2kreqduevmayjdry + eslint: 8.28.0 + eslint-plugin-import: 2.26.0_zakvy25bvwc2d644723rsy4ypy glob: 7.2.3 is-glob: 4.0.3 resolve: 1.22.1 @@ -5044,7 +4955,7 @@ packages: - supports-color dev: true - /eslint-module-utils/2.7.4_c5vbubjxm3sqe7zyydgtitlaga: + /eslint-module-utils/2.7.4_xb4o4f5ycgo55brxm3dvl3ugdy: resolution: {integrity: sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==} engines: {node: '>=4'} peerDependencies: @@ -5065,27 +4976,27 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - '@typescript-eslint/parser': 5.42.1_rmayb2veg2btbq6mbmnyivgasy + '@typescript-eslint/parser': 5.45.0_hsf322ms6xhhd4b5ne6lb74y4a debug: 3.2.7 - eslint: 8.27.0 + eslint: 8.28.0 eslint-import-resolver-node: 0.3.6 - eslint-import-resolver-typescript: 2.7.1_dcpv4nbdr5ks2h5677xdltrk6e + eslint-import-resolver-typescript: 2.7.1_ktrec6dplf4now6nlbc6d67jee transitivePeerDependencies: - supports-color dev: true - /eslint-plugin-eslint-comments/3.2.0_eslint@8.27.0: + /eslint-plugin-eslint-comments/3.2.0_eslint@8.28.0: resolution: {integrity: sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==} engines: {node: '>=6.5.0'} peerDependencies: eslint: '>=4.19.1' dependencies: escape-string-regexp: 1.0.5 - eslint: 8.27.0 - ignore: 5.2.0 + eslint: 8.28.0 + ignore: 5.2.1 dev: true - /eslint-plugin-import/2.26.0_fjrawv2a4e2kreqduevmayjdry: + /eslint-plugin-import/2.26.0_zakvy25bvwc2d644723rsy4ypy: resolution: {integrity: sha512-hYfi3FXaM8WPLf4S1cikh/r4IxnO6zrhZbEGz2b660EJRbuxgpDS5gkCuYgGWg2xxh2rBuIr4Pvhve/7c31koA==} engines: {node: '>=4'} peerDependencies: @@ -5095,14 +5006,14 @@ packages: '@typescript-eslint/parser': optional: true dependencies: - '@typescript-eslint/parser': 5.42.1_rmayb2veg2btbq6mbmnyivgasy + '@typescript-eslint/parser': 5.45.0_hsf322ms6xhhd4b5ne6lb74y4a array-includes: 3.1.6 array.prototype.flat: 1.3.1 debug: 2.6.9 doctrine: 2.1.0 - eslint: 8.27.0 + eslint: 8.28.0 eslint-import-resolver-node: 0.3.6 - eslint-module-utils: 2.7.4_c5vbubjxm3sqe7zyydgtitlaga + eslint-module-utils: 2.7.4_xb4o4f5ycgo55brxm3dvl3ugdy has: 1.0.3 is-core-module: 2.11.0 is-glob: 4.0.3 @@ -5116,25 +5027,26 @@ packages: - supports-color dev: true - /eslint-plugin-react-hooks/4.6.0_eslint@8.27.0: + /eslint-plugin-react-hooks/4.6.0_eslint@8.28.0: resolution: {integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==} engines: {node: '>=10'} peerDependencies: eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 dependencies: - eslint: 8.27.0 + eslint: 8.28.0 dev: true - /eslint-plugin-react/7.31.10_eslint@8.27.0: - resolution: {integrity: sha512-e4N/nc6AAlg4UKW/mXeYWd3R++qUano5/o+t+wnWxIf+bLsOaH3a4q74kX3nDjYym3VBN4HyO9nEn1GcAqgQOA==} + /eslint-plugin-react/7.31.11_eslint@8.28.0: + resolution: {integrity: sha512-TTvq5JsT5v56wPa9OYHzsrOlHzKZKjV+aLgS+55NJP/cuzdiQPC7PfYoUjMoxlffKtvijpk7vA/jmuqRb9nohw==} engines: {node: '>=4'} peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 dependencies: array-includes: 3.1.6 array.prototype.flatmap: 1.3.1 + array.prototype.tosorted: 1.1.1 doctrine: 2.1.0 - eslint: 8.27.0 + eslint: 8.28.0 estraverse: 5.3.0 jsx-ast-utils: 3.3.3 minimatch: 3.1.2 @@ -5163,13 +5075,13 @@ packages: estraverse: 5.3.0 dev: true - /eslint-utils/3.0.0_eslint@8.27.0: + /eslint-utils/3.0.0_eslint@8.28.0: resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==} engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0} peerDependencies: eslint: '>=5' dependencies: - eslint: 8.27.0 + eslint: 8.28.0 eslint-visitor-keys: 2.1.0 dev: true @@ -5183,8 +5095,8 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /eslint/8.27.0: - resolution: {integrity: sha512-0y1bfG2ho7mty+SiILVf9PfuRA49ek4Nc60Wmmu62QlobNR+CeXa4xXIJgcuwSQgZiWaPH+5BDsctpIW0PR/wQ==} + /eslint/8.28.0: + resolution: {integrity: sha512-S27Di+EVyMxcHiwDrFzk8dJYAaD+/5SoWKxL1ri/71CRHsnJnRDPNt2Kzj24+MT9FDupf4aqqyqPrvI8MvQ4VQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} hasBin: true dependencies: @@ -5199,7 +5111,7 @@ packages: doctrine: 3.0.0 escape-string-regexp: 4.0.0 eslint-scope: 7.1.1 - eslint-utils: 3.0.0_eslint@8.27.0 + eslint-utils: 3.0.0_eslint@8.28.0 eslint-visitor-keys: 3.3.0 espree: 9.4.1 esquery: 1.4.0 @@ -5208,14 +5120,14 @@ packages: file-entry-cache: 6.0.1 find-up: 5.0.0 glob-parent: 6.0.2 - globals: 13.17.0 + globals: 13.18.0 grapheme-splitter: 1.0.4 - ignore: 5.2.0 + ignore: 5.2.1 import-fresh: 3.3.0 imurmurhash: 0.1.4 is-glob: 4.0.3 is-path-inside: 3.0.3 - js-sdsl: 4.1.5 + js-sdsl: 4.2.0 js-yaml: 4.1.0 json-stable-stringify-without-jsonify: 1.0.1 levn: 0.4.1 @@ -5446,7 +5358,7 @@ packages: peerDependencies: webpack: ^4.0.0 || ^5.0.0 dependencies: - loader-utils: 2.0.3 + loader-utils: 2.0.4 schema-utils: 3.1.1 webpack: 5.75.0 dev: false @@ -5542,7 +5454,7 @@ packages: optional: true dev: false - /fork-ts-checker-webpack-plugin/6.5.2_qw7fmzhoapcndkteb5rsc33stq: + /fork-ts-checker-webpack-plugin/6.5.2_vfotqvx6lgcbf3upbs6hgaza4q: resolution: {integrity: sha512-m5cUmF30xkZ7h4tWUgTAcEaKmUW7tfyUyTqNNOz7OxWJ0v1VWKTcOvH8FWHUwSjlW/356Ijc9vi3XfcPstpQKA==} engines: {node: '>=10', yarn: '>=1.0.0'} peerDependencies: @@ -5564,12 +5476,12 @@ packages: deepmerge: 4.2.2 fs-extra: 9.1.0 glob: 7.2.3 - memfs: 3.4.10 + memfs: 3.4.12 minimatch: 3.1.2 schema-utils: 2.7.0 semver: 7.3.8 tapable: 1.1.3 - typescript: 4.8.4 + typescript: 4.9.3 webpack: 5.75.0 dev: false @@ -5740,12 +5652,12 @@ packages: fs.realpath: 1.0.0 inflight: 1.0.6 inherits: 2.0.4 - minimatch: 5.1.0 + minimatch: 5.1.1 once: 1.4.0 dev: false - /global-dirs/3.0.0: - resolution: {integrity: sha512-v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA==} + /global-dirs/3.0.1: + resolution: {integrity: sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==} engines: {node: '>=10'} dependencies: ini: 2.0.0 @@ -5772,8 +5684,8 @@ packages: engines: {node: '>=4'} dev: false - /globals/13.17.0: - resolution: {integrity: sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==} + /globals/13.18.0: + resolution: {integrity: sha512-/mR4KI8Ps2spmoc0Ulu9L7agOF0du1CZNQ3dke8yItYlyKNmGrkONemBbd6V8UTc1Wgcqn21t3WYB7dbRmh6/A==} engines: {node: '>=8'} dependencies: type-fest: 0.20.2 @@ -5786,7 +5698,7 @@ packages: array-union: 2.1.0 dir-glob: 3.0.1 fast-glob: 3.2.12 - ignore: 5.2.0 + ignore: 5.2.1 merge2: 1.4.1 slash: 3.0.0 @@ -5796,7 +5708,7 @@ packages: dependencies: dir-glob: 3.0.1 fast-glob: 3.2.12 - ignore: 5.2.0 + ignore: 5.2.1 merge2: 1.4.1 slash: 4.0.0 dev: false @@ -5962,7 +5874,7 @@ packages: /history/4.10.1: resolution: {integrity: sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==} dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.20.6 loose-envify: 1.4.0 resolve-pathname: 3.0.0 tiny-invariant: 1.3.1 @@ -6000,7 +5912,7 @@ packages: he: 1.2.0 param-case: 3.0.4 relateurl: 0.2.7 - terser: 5.15.1 + terser: 5.16.0 dev: false /html-tags/3.2.0: @@ -6119,17 +6031,17 @@ packages: safer-buffer: 2.1.2 dev: false - /icss-utils/5.1.0_postcss@8.4.18: + /icss-utils/5.1.0_postcss@8.4.19: resolution: {integrity: sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 dependencies: - postcss: 8.4.18 + postcss: 8.4.19 dev: false - /ignore/5.2.0: - resolution: {integrity: sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==} + /ignore/5.2.1: + resolution: {integrity: sha512-d2qQLzTJ9WxQftPAuEQpSPmKqzxePjzVbpAVv62AQ64NTL+wR4JkrVqR/LqFsFEUsHDAiId52mJteHDFuDkElA==} engines: {node: '>= 4'} /image-size/1.0.2: @@ -6327,7 +6239,7 @@ packages: resolution: {integrity: sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==} engines: {node: '>=10'} dependencies: - global-dirs: 3.0.0 + global-dirs: 3.0.1 is-path-inside: 3.0.3 dev: false @@ -6481,7 +6393,7 @@ packages: '@jest/types': 29.3.1 '@types/node': 18.11.9 chalk: 4.1.2 - ci-info: 3.5.0 + ci-info: 3.7.0 graceful-fs: 4.2.10 picomatch: 2.3.1 dev: false @@ -6513,8 +6425,8 @@ packages: '@sideway/formula': 3.0.0 '@sideway/pinpoint': 2.0.0 - /js-sdsl/4.1.5: - resolution: {integrity: sha512-08bOAKweV2NUC1wqTtf3qZlnpOX/R2DU9ikpjOHs0H+ibQv3zpncVQg6um4uYtRtrwIX8M4Nh3ytK4HGlYAq7Q==} + /js-sdsl/4.2.0: + resolution: {integrity: sha512-dyBIzQBDkCqCu+0upx25Y2jGdbTGxE9fshMsCdK0ViOongpV+n5tXRcZY9v7CaVQ79AGS9KA1KHtojxiM7aXSQ==} dev: true /js-tokens/4.0.0: @@ -6644,8 +6556,8 @@ packages: resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==} engines: {node: '>=6.11.5'} - /loader-utils/2.0.3: - resolution: {integrity: sha512-THWqIsn8QRnvLl0shHYVBN9syumU8pYWEHPTmkiVGd+7K5eFNVSY6AJhRvgGF70gg1Dz+l/k8WicvFCxdEs60A==} + /loader-utils/2.0.4: + resolution: {integrity: sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==} engines: {node: '>=8.9.0'} dependencies: big.js: 5.2.2 @@ -6653,8 +6565,8 @@ packages: json5: 2.2.1 dev: false - /loader-utils/3.2.0: - resolution: {integrity: sha512-HVl9ZqccQihZ7JM85dco1MvO9G+ONvxoGa9rkhzFsneGLKSUg1gJf9bWzhRhcvm2qChhWpebQhP44qxjKIUCaQ==} + /loader-utils/3.2.1: + resolution: {integrity: sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==} engines: {node: '>= 12.13.0'} dev: false @@ -6796,8 +6708,8 @@ packages: engines: {node: '>= 0.6'} dev: false - /memfs/3.4.10: - resolution: {integrity: sha512-0bCUP+L79P4am30yP1msPzApwuMQG23TjwlwdHeEV5MxioDR1a0AgB0T9FfggU52eJuDCq8WVwb5ekznFyWiTQ==} + /memfs/3.4.12: + resolution: {integrity: sha512-BcjuQn6vfqP+k100e0E9m61Hyqa//Brp+I3f0OBmN0ATHlFA8vx3Lt8z57R3u2bPqe3WGDBC+nF72fTH7isyEw==} engines: {node: '>= 4.0.0'} dependencies: fs-monkey: 1.0.3 @@ -6864,8 +6776,8 @@ packages: engines: {node: '>=4'} dev: false - /mini-css-extract-plugin/2.6.1_webpack@5.75.0: - resolution: {integrity: sha512-wd+SD57/K6DiV7jIR34P+s3uckTRuQvx0tKPcvjFlrEylk6P4mQ2KSWk1hblj1Kxaqok7LogKOieygXqBczNlg==} + /mini-css-extract-plugin/2.7.1_webpack@5.75.0: + resolution: {integrity: sha512-viOoaUFy+Z2w43VsGPbtfwFrr0tKwDctK9dUofG5MBViYhD1noGFUzzDIVw0KPwCGUP+c7zqLxm+acuQs7zLzw==} engines: {node: '>= 12.13.0'} peerDependencies: webpack: ^5.0.0 @@ -6883,8 +6795,8 @@ packages: dependencies: brace-expansion: 1.1.11 - /minimatch/5.1.0: - resolution: {integrity: sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==} + /minimatch/5.1.1: + resolution: {integrity: sha512-362NP+zlprccbEt/SkxKfRMHnNY85V74mVnpUpNyr3F35covl09Kec7/sEFLt3RA4oXmewtoaanoIf67SE5Y5g==} engines: {node: '>=10'} dependencies: brace-expansion: 2.0.1 @@ -6943,10 +6855,6 @@ packages: tslib: 2.4.1 dev: false - /node-addon-api/4.3.0: - resolution: {integrity: sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ==} - dev: false - /node-emoji/1.11.0: resolution: {integrity: sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==} dependencies: @@ -6970,11 +6878,6 @@ packages: engines: {node: '>= 6.13.0'} dev: false - /node-gyp-build/4.5.0: - resolution: {integrity: sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==} - hasBin: true - dev: false - /node-releases/2.0.6: resolution: {integrity: sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==} @@ -7236,15 +7139,15 @@ packages: resolution: {integrity: sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==} dependencies: domhandler: 5.0.3 - parse5: 7.1.1 + parse5: 7.1.2 dev: false /parse5/6.0.1: resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==} dev: false - /parse5/7.1.1: - resolution: {integrity: sha512-kwpuwzB+px5WUg9pyK0IcK/shltJN5/OVhQagxhCQNtT9Y9QRZqNY2e1cmbu/paRh5LMnz/oVTVLBpjFmMZhSg==} + /parse5/7.1.2: + resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} dependencies: entities: 4.4.0 dev: false @@ -7337,17 +7240,17 @@ packages: tslib: 2.4.1 dev: false - /postcss-calc/8.2.4_postcss@8.4.18: + /postcss-calc/8.2.4_postcss@8.4.19: resolution: {integrity: sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==} peerDependencies: postcss: ^8.2.2 dependencies: - postcss: 8.4.18 - postcss-selector-parser: 6.0.10 + postcss: 8.4.19 + postcss-selector-parser: 6.0.11 postcss-value-parser: 4.2.0 dev: false - /postcss-colormin/5.3.0_postcss@8.4.18: + /postcss-colormin/5.3.0_postcss@8.4.19: resolution: {integrity: sha512-WdDO4gOFG2Z8n4P8TWBpshnL3JpmNmJwdnfP2gbk2qBA8PWwOYcmjmI/t3CmMeL72a7Hkd+x/Mg9O2/0rD54Pg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: @@ -7356,88 +7259,88 @@ packages: browserslist: 4.21.4 caniuse-api: 3.0.0 colord: 2.9.3 - postcss: 8.4.18 + postcss: 8.4.19 postcss-value-parser: 4.2.0 dev: false - /postcss-convert-values/5.1.3_postcss@8.4.18: + /postcss-convert-values/5.1.3_postcss@8.4.19: resolution: {integrity: sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: browserslist: 4.21.4 - postcss: 8.4.18 + postcss: 8.4.19 postcss-value-parser: 4.2.0 dev: false - /postcss-discard-comments/5.1.2_postcss@8.4.18: + /postcss-discard-comments/5.1.2_postcss@8.4.19: resolution: {integrity: sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.18 + postcss: 8.4.19 dev: false - /postcss-discard-duplicates/5.1.0_postcss@8.4.18: + /postcss-discard-duplicates/5.1.0_postcss@8.4.19: resolution: {integrity: sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.18 + postcss: 8.4.19 dev: false - /postcss-discard-empty/5.1.1_postcss@8.4.18: + /postcss-discard-empty/5.1.1_postcss@8.4.19: resolution: {integrity: sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.18 + postcss: 8.4.19 dev: false - /postcss-discard-overridden/5.1.0_postcss@8.4.18: + /postcss-discard-overridden/5.1.0_postcss@8.4.19: resolution: {integrity: sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.18 + postcss: 8.4.19 dev: false - /postcss-discard-unused/5.1.0_postcss@8.4.18: + /postcss-discard-unused/5.1.0_postcss@8.4.19: resolution: {integrity: sha512-KwLWymI9hbwXmJa0dkrzpRbSJEh0vVUd7r8t0yOGPcfKzyJJxFM8kLyC5Ev9avji6nY95pOp1W6HqIrfT+0VGw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.18 - postcss-selector-parser: 6.0.10 + postcss: 8.4.19 + postcss-selector-parser: 6.0.11 dev: false - /postcss-import/14.1.0_postcss@8.4.18: + /postcss-import/14.1.0_postcss@8.4.19: resolution: {integrity: sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==} engines: {node: '>=10.0.0'} peerDependencies: postcss: ^8.0.0 dependencies: - postcss: 8.4.18 + postcss: 8.4.19 postcss-value-parser: 4.2.0 read-cache: 1.0.0 resolve: 1.22.1 - /postcss-js/4.0.0_postcss@8.4.18: + /postcss-js/4.0.0_postcss@8.4.19: resolution: {integrity: sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==} engines: {node: ^12 || ^14 || >= 16} peerDependencies: postcss: ^8.3.3 dependencies: camelcase-css: 2.0.1 - postcss: 8.4.18 + postcss: 8.4.19 - /postcss-load-config/3.1.4_postcss@8.4.18: + /postcss-load-config/3.1.4_postcss@8.4.19: resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==} engines: {node: '>= 10'} peerDependencies: @@ -7450,46 +7353,46 @@ packages: optional: true dependencies: lilconfig: 2.0.6 - postcss: 8.4.18 + postcss: 8.4.19 yaml: 1.10.2 - /postcss-loader/7.0.1_sdypjwo5ssab3pyqgv4b4agnly: - resolution: {integrity: sha512-VRviFEyYlLjctSM93gAZtcJJ/iSkPZ79zWbN/1fSH+NisBByEiVLqpdVDrPLVSi8DX0oJo12kL/GppTBdKVXiQ==} + /postcss-loader/7.0.2_upg3rk2kpasnbk27hkqapxaxfq: + resolution: {integrity: sha512-fUJzV/QH7NXUAqV8dWJ9Lg4aTkDCezpTS5HgJ2DvqznexTbSTxgi/dTECvTZ15BwKTtk8G/bqI/QTu2HPd3ZCg==} engines: {node: '>= 14.15.0'} peerDependencies: postcss: ^7.0.0 || ^8.0.1 webpack: ^5.0.0 dependencies: - cosmiconfig: 7.0.1 + cosmiconfig: 7.1.0 klona: 2.0.5 - postcss: 8.4.18 + postcss: 8.4.19 semver: 7.3.8 webpack: 5.75.0 dev: false - /postcss-merge-idents/5.1.1_postcss@8.4.18: + /postcss-merge-idents/5.1.1_postcss@8.4.19: resolution: {integrity: sha512-pCijL1TREiCoog5nQp7wUe+TUonA2tC2sQ54UGeMmryK3UFGIYKqDyjnqd6RcuI4znFn9hWSLNN8xKE/vWcUQw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - cssnano-utils: 3.1.0_postcss@8.4.18 - postcss: 8.4.18 + cssnano-utils: 3.1.0_postcss@8.4.19 + postcss: 8.4.19 postcss-value-parser: 4.2.0 dev: false - /postcss-merge-longhand/5.1.7_postcss@8.4.18: + /postcss-merge-longhand/5.1.7_postcss@8.4.19: resolution: {integrity: sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.18 + postcss: 8.4.19 postcss-value-parser: 4.2.0 - stylehacks: 5.1.1_postcss@8.4.18 + stylehacks: 5.1.1_postcss@8.4.19 dev: false - /postcss-merge-rules/5.1.3_postcss@8.4.18: + /postcss-merge-rules/5.1.3_postcss@8.4.19: resolution: {integrity: sha512-LbLd7uFC00vpOuMvyZop8+vvhnfRGpp2S+IMQKeuOZZapPRY4SMq5ErjQeHbHsjCUgJkRNrlU+LmxsKIqPKQlA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: @@ -7497,218 +7400,218 @@ packages: dependencies: browserslist: 4.21.4 caniuse-api: 3.0.0 - cssnano-utils: 3.1.0_postcss@8.4.18 - postcss: 8.4.18 - postcss-selector-parser: 6.0.10 + cssnano-utils: 3.1.0_postcss@8.4.19 + postcss: 8.4.19 + postcss-selector-parser: 6.0.11 dev: false - /postcss-minify-font-values/5.1.0_postcss@8.4.18: + /postcss-minify-font-values/5.1.0_postcss@8.4.19: resolution: {integrity: sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.18 + postcss: 8.4.19 postcss-value-parser: 4.2.0 dev: false - /postcss-minify-gradients/5.1.1_postcss@8.4.18: + /postcss-minify-gradients/5.1.1_postcss@8.4.19: resolution: {integrity: sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: colord: 2.9.3 - cssnano-utils: 3.1.0_postcss@8.4.18 - postcss: 8.4.18 + cssnano-utils: 3.1.0_postcss@8.4.19 + postcss: 8.4.19 postcss-value-parser: 4.2.0 dev: false - /postcss-minify-params/5.1.4_postcss@8.4.18: + /postcss-minify-params/5.1.4_postcss@8.4.19: resolution: {integrity: sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: browserslist: 4.21.4 - cssnano-utils: 3.1.0_postcss@8.4.18 - postcss: 8.4.18 + cssnano-utils: 3.1.0_postcss@8.4.19 + postcss: 8.4.19 postcss-value-parser: 4.2.0 dev: false - /postcss-minify-selectors/5.2.1_postcss@8.4.18: + /postcss-minify-selectors/5.2.1_postcss@8.4.19: resolution: {integrity: sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.18 - postcss-selector-parser: 6.0.10 + postcss: 8.4.19 + postcss-selector-parser: 6.0.11 dev: false - /postcss-modules-extract-imports/3.0.0_postcss@8.4.18: + /postcss-modules-extract-imports/3.0.0_postcss@8.4.19: resolution: {integrity: sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 dependencies: - postcss: 8.4.18 + postcss: 8.4.19 dev: false - /postcss-modules-local-by-default/4.0.0_postcss@8.4.18: + /postcss-modules-local-by-default/4.0.0_postcss@8.4.19: resolution: {integrity: sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 dependencies: - icss-utils: 5.1.0_postcss@8.4.18 - postcss: 8.4.18 - postcss-selector-parser: 6.0.10 + icss-utils: 5.1.0_postcss@8.4.19 + postcss: 8.4.19 + postcss-selector-parser: 6.0.11 postcss-value-parser: 4.2.0 dev: false - /postcss-modules-scope/3.0.0_postcss@8.4.18: + /postcss-modules-scope/3.0.0_postcss@8.4.19: resolution: {integrity: sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 dependencies: - postcss: 8.4.18 - postcss-selector-parser: 6.0.10 + postcss: 8.4.19 + postcss-selector-parser: 6.0.11 dev: false - /postcss-modules-values/4.0.0_postcss@8.4.18: + /postcss-modules-values/4.0.0_postcss@8.4.19: resolution: {integrity: sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 dependencies: - icss-utils: 5.1.0_postcss@8.4.18 - postcss: 8.4.18 + icss-utils: 5.1.0_postcss@8.4.19 + postcss: 8.4.19 dev: false - /postcss-nested/6.0.0_postcss@8.4.18: + /postcss-nested/6.0.0_postcss@8.4.19: resolution: {integrity: sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w==} engines: {node: '>=12.0'} peerDependencies: postcss: ^8.2.14 dependencies: - postcss: 8.4.18 - postcss-selector-parser: 6.0.10 + postcss: 8.4.19 + postcss-selector-parser: 6.0.11 - /postcss-normalize-charset/5.1.0_postcss@8.4.18: + /postcss-normalize-charset/5.1.0_postcss@8.4.19: resolution: {integrity: sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.18 + postcss: 8.4.19 dev: false - /postcss-normalize-display-values/5.1.0_postcss@8.4.18: + /postcss-normalize-display-values/5.1.0_postcss@8.4.19: resolution: {integrity: sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.18 + postcss: 8.4.19 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-positions/5.1.1_postcss@8.4.18: + /postcss-normalize-positions/5.1.1_postcss@8.4.19: resolution: {integrity: sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.18 + postcss: 8.4.19 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-repeat-style/5.1.1_postcss@8.4.18: + /postcss-normalize-repeat-style/5.1.1_postcss@8.4.19: resolution: {integrity: sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.18 + postcss: 8.4.19 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-string/5.1.0_postcss@8.4.18: + /postcss-normalize-string/5.1.0_postcss@8.4.19: resolution: {integrity: sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.18 + postcss: 8.4.19 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-timing-functions/5.1.0_postcss@8.4.18: + /postcss-normalize-timing-functions/5.1.0_postcss@8.4.19: resolution: {integrity: sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.18 + postcss: 8.4.19 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-unicode/5.1.1_postcss@8.4.18: + /postcss-normalize-unicode/5.1.1_postcss@8.4.19: resolution: {integrity: sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: browserslist: 4.21.4 - postcss: 8.4.18 + postcss: 8.4.19 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-url/5.1.0_postcss@8.4.18: + /postcss-normalize-url/5.1.0_postcss@8.4.19: resolution: {integrity: sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: normalize-url: 6.1.0 - postcss: 8.4.18 + postcss: 8.4.19 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-whitespace/5.1.1_postcss@8.4.18: + /postcss-normalize-whitespace/5.1.1_postcss@8.4.19: resolution: {integrity: sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.18 + postcss: 8.4.19 postcss-value-parser: 4.2.0 dev: false - /postcss-ordered-values/5.1.3_postcss@8.4.18: + /postcss-ordered-values/5.1.3_postcss@8.4.19: resolution: {integrity: sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - cssnano-utils: 3.1.0_postcss@8.4.18 - postcss: 8.4.18 + cssnano-utils: 3.1.0_postcss@8.4.19 + postcss: 8.4.19 postcss-value-parser: 4.2.0 dev: false - /postcss-reduce-idents/5.2.0_postcss@8.4.18: + /postcss-reduce-idents/5.2.0_postcss@8.4.19: resolution: {integrity: sha512-BTrLjICoSB6gxbc58D5mdBK8OhXRDqud/zodYfdSi52qvDHdMwk+9kB9xsM8yJThH/sZU5A6QVSmMmaN001gIg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.18 + postcss: 8.4.19 postcss-value-parser: 4.2.0 dev: false - /postcss-reduce-initial/5.1.1_postcss@8.4.18: + /postcss-reduce-initial/5.1.1_postcss@8.4.19: resolution: {integrity: sha512-//jeDqWcHPuXGZLoolFrUXBDyuEGbr9S2rMo19bkTIjBQ4PqkaO+oI8wua5BOUxpfi97i3PCoInsiFIEBfkm9w==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: @@ -7716,16 +7619,16 @@ packages: dependencies: browserslist: 4.21.4 caniuse-api: 3.0.0 - postcss: 8.4.18 + postcss: 8.4.19 dev: false - /postcss-reduce-transforms/5.1.0_postcss@8.4.18: + /postcss-reduce-transforms/5.1.0_postcss@8.4.19: resolution: {integrity: sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.18 + postcss: 8.4.19 postcss-value-parser: 4.2.0 dev: false @@ -7735,52 +7638,60 @@ packages: dependencies: cssesc: 3.0.0 util-deprecate: 1.0.2 + dev: true - /postcss-sort-media-queries/4.3.0_postcss@8.4.18: + /postcss-selector-parser/6.0.11: + resolution: {integrity: sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==} + engines: {node: '>=4'} + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 + + /postcss-sort-media-queries/4.3.0_postcss@8.4.19: resolution: {integrity: sha512-jAl8gJM2DvuIJiI9sL1CuiHtKM4s5aEIomkU8G3LFvbP+p8i7Sz8VV63uieTgoewGqKbi+hxBTiOKJlB35upCg==} engines: {node: '>=10.0.0'} peerDependencies: postcss: ^8.4.16 dependencies: - postcss: 8.4.18 + postcss: 8.4.19 sort-css-media-queries: 2.1.0 dev: false - /postcss-svgo/5.1.0_postcss@8.4.18: + /postcss-svgo/5.1.0_postcss@8.4.19: resolution: {integrity: sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.18 + postcss: 8.4.19 postcss-value-parser: 4.2.0 svgo: 2.8.0 dev: false - /postcss-unique-selectors/5.1.1_postcss@8.4.18: + /postcss-unique-selectors/5.1.1_postcss@8.4.19: resolution: {integrity: sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.18 - postcss-selector-parser: 6.0.10 + postcss: 8.4.19 + postcss-selector-parser: 6.0.11 dev: false /postcss-value-parser/4.2.0: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} - /postcss-zindex/5.1.0_postcss@8.4.18: + /postcss-zindex/5.1.0_postcss@8.4.19: resolution: {integrity: sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.18 + postcss: 8.4.19 dev: false - /postcss/8.4.18: - resolution: {integrity: sha512-Wi8mWhncLJm11GATDaQKobXSNEYGUHeQLiQqDFG1qQ5UTDPTEvKw0Xt5NsTpktGTwLps3ByrWsBrG0rB8YQ9oA==} + /postcss/8.4.19: + resolution: {integrity: sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==} engines: {node: ^10 || ^12 || >=14} dependencies: nanoid: 3.3.4 @@ -7797,17 +7708,17 @@ packages: engines: {node: '>=4'} dev: false - /prettier-plugin-tailwindcss/0.1.13_prettier@2.7.1: + /prettier-plugin-tailwindcss/0.1.13_prettier@2.8.0: resolution: {integrity: sha512-/EKQURUrxLu66CMUg4+1LwGdxnz8of7IDvrSLqEtDqhLH61SAlNNUSr90UTvZaemujgl3OH/VHg+fyGltrNixw==} engines: {node: '>=12.17.0'} peerDependencies: prettier: '>=2.2.0' dependencies: - prettier: 2.7.1 + prettier: 2.8.0 dev: true - /prettier/2.7.1: - resolution: {integrity: sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==} + /prettier/2.8.0: + resolution: {integrity: sha512-9Lmg8hTFZKG0Asr/kW9Bp8tJjRVluO8EJQVfY2T7FMw9T5jy4I/Uvx0Rca/XWf50QQ1/SS48+6IJWnrb+2yemA==} engines: {node: '>=10.13.0'} hasBin: true dev: true @@ -7966,7 +7877,7 @@ packages: pure-color: 1.3.0 dev: false - /react-dev-utils/12.0.1_qw7fmzhoapcndkteb5rsc33stq: + /react-dev-utils/12.0.1_vfotqvx6lgcbf3upbs6hgaza4q: resolution: {integrity: sha512-84Ivxmr17KjUupyqzFode6xKhjwuEJDROWKJy/BthkL7Wn6NJ8h4WE6k/exAv6ImS+0oZLRRW5j/aINMHyeGeQ==} engines: {node: '>=14'} peerDependencies: @@ -7985,13 +7896,13 @@ packages: escape-string-regexp: 4.0.0 filesize: 8.0.7 find-up: 5.0.0 - fork-ts-checker-webpack-plugin: 6.5.2_qw7fmzhoapcndkteb5rsc33stq + fork-ts-checker-webpack-plugin: 6.5.2_vfotqvx6lgcbf3upbs6hgaza4q global-modules: 2.0.0 globby: 11.1.0 gzip-size: 6.0.0 immer: 9.0.16 is-root: 2.1.0 - loader-utils: 3.2.0 + loader-utils: 3.2.1 open: 8.4.0 pkg-up: 3.1.0 prompts: 2.4.2 @@ -8000,7 +7911,7 @@ packages: shell-quote: 1.7.4 strip-ansi: 6.0.1 text-table: 0.2.0 - typescript: 4.8.4 + typescript: 4.9.3 webpack: 5.75.0 transitivePeerDependencies: - eslint @@ -8038,7 +7949,7 @@ packages: react: ^16.6.0 || ^17.0.0 || ^18.0.0 react-dom: ^16.6.0 || ^17.0.0 || ^18.0.0 dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.20.6 invariant: 2.2.4 prop-types: 15.8.1 react: 17.0.2 @@ -8046,8 +7957,8 @@ packages: react-fast-compare: 3.2.0 shallowequal: 1.1.0 - /react-icons/4.6.0_react@17.0.2: - resolution: {integrity: sha512-rR/L9m9340yO8yv1QT1QurxWQvWpbNHqVX0fzMln2HEb9TEIrQRGsqiNFQfiv9/JEUbyHmHPlNTB2LWm2Ttz0g==} + /react-icons/4.7.1_react@17.0.2: + resolution: {integrity: sha512-yHd3oKGMgm7zxo3EA7H2n7vxSoiGmHk5t6Ou4bXsfcgWyhfDKMpyKfhHR6Bjnn63c+YXBLBPUql9H4wPJM6sXw==} peerDependencies: react: '*' dependencies: @@ -8068,7 +7979,7 @@ packages: react-base16-styling: 0.6.0 react-dom: 17.0.2_react@17.0.2 react-lifecycles-compat: 3.0.4 - react-textarea-autosize: 8.3.4_qnxonbsml5syl42mqdnwkqq4yu + react-textarea-autosize: 8.4.0_qnxonbsml5syl42mqdnwkqq4yu transitivePeerDependencies: - '@types/react' - encoding @@ -8085,7 +7996,7 @@ packages: react-loadable: '*' webpack: '>=4.41.1 || 5.x' dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.20.6 react-loadable: /@docusaurus/react-loadable/5.5.2_react@17.0.2 webpack: 5.75.0 dev: false @@ -8104,7 +8015,7 @@ packages: react: '>=15' react-router: '>=5' dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.20.6 react: 17.0.2 react-router: 5.3.4_react@17.0.2 dev: false @@ -8114,7 +8025,7 @@ packages: peerDependencies: react: '>=15' dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.20.6 history: 4.10.1 loose-envify: 1.4.0 prop-types: 15.8.1 @@ -8129,7 +8040,7 @@ packages: peerDependencies: react: '>=15' dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.20.6 history: 4.10.1 hoist-non-react-statics: 3.3.2 loose-envify: 1.4.0 @@ -8141,13 +8052,13 @@ packages: tiny-warning: 1.0.3 dev: false - /react-textarea-autosize/8.3.4_qnxonbsml5syl42mqdnwkqq4yu: - resolution: {integrity: sha512-CdtmP8Dc19xL8/R6sWvtknD/eCXkQr30dtvC4VmGInhRsfF8X/ihXCq6+9l9qbxmKRiq407/7z5fxE7cVWQNgQ==} + /react-textarea-autosize/8.4.0_qnxonbsml5syl42mqdnwkqq4yu: + resolution: {integrity: sha512-YrTFaEHLgJsi8sJVYHBzYn+mkP3prGkmP2DKb/tm0t7CLJY5t1Rxix8070LAKb0wby7bl/lf2EeHkuMihMZMwQ==} engines: {node: '>=10'} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.20.6 react: 17.0.2 use-composed-ref: 1.3.0_react@17.0.2 use-latest: 1.2.1_qnxonbsml5syl42mqdnwkqq4yu @@ -8223,13 +8134,13 @@ packages: resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==} dev: false - /regenerator-runtime/0.13.10: - resolution: {integrity: sha512-KepLsg4dU12hryUO7bp/axHAKvwGOCV0sGloQtpagJ12ai+ojVDqkeGSiRX1zlq+kjIMZ1t7gpze+26QqtdGqw==} + /regenerator-runtime/0.13.11: + resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==} - /regenerator-transform/0.15.0: - resolution: {integrity: sha512-LsrGtPmbYg19bcPHwdtmXwbW+TqNvtY4riE3P83foeHRroMbH6/2ddFBfab3t7kbzc7v7p4wbkIecHImqt0QNg==} + /regenerator-transform/0.15.1: + resolution: {integrity: sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==} dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.20.6 dev: false /regexp.prototype.flags/1.4.3: @@ -8246,8 +8157,8 @@ packages: engines: {node: '>=8'} dev: true - /regexpu-core/5.2.1: - resolution: {integrity: sha512-HrnlNtpvqP1Xkb28tMhBUO2EbyUHdQlsnlAhzWcwHy8WJR53UWr7/MAvqrsQKMbV4qdpv03oTMG8iIhfsPFktQ==} + /regexpu-core/5.2.2: + resolution: {integrity: sha512-T0+1Zp2wjF/juXMrMxHxidqGYn8U4R+zleSJhX9tQ1PUsS8a9UtYfbsF9LdiVgNX3kiX8RNaKM42nfSgvFJjmw==} engines: {node: '>=4'} dependencies: regenerate: 1.4.2 @@ -8255,7 +8166,7 @@ packages: regjsgen: 0.7.1 regjsparser: 0.9.1 unicode-match-property-ecmascript: 2.0.0 - unicode-match-property-value-ecmascript: 2.0.0 + unicode-match-property-value-ecmascript: 2.1.0 dev: false /registry-auth-token/4.2.2: @@ -8426,7 +8337,7 @@ packages: dependencies: find-up: 5.0.0 picocolors: 1.0.0 - postcss: 8.4.18 + postcss: 8.4.19 strip-json-comments: 3.1.1 dev: false @@ -8501,9 +8412,9 @@ packages: engines: {node: '>= 12.13.0'} dependencies: '@types/json-schema': 7.0.11 - ajv: 8.11.0 + ajv: 8.11.2 ajv-formats: 2.1.1 - ajv-keywords: 5.1.0_ajv@8.11.0 + ajv-keywords: 5.1.0_ajv@8.11.2 dev: false /section-matter/1.0.0: @@ -8574,28 +8485,6 @@ packages: dependencies: randombytes: 2.1.0 - /serialport/10.4.0: - resolution: {integrity: sha512-PszPM5SnFMgSXom60PkKS2A9nMlNbHkuoyRBlzdSWw9rmgOn258+V0dYbWMrETJMM+TJV32vqBzjg5MmmUMwMw==} - engines: {node: '>=12.0.0'} - dependencies: - '@serialport/binding-mock': 10.2.2 - '@serialport/bindings-cpp': 10.7.0 - '@serialport/parser-byte-length': 10.3.0 - '@serialport/parser-cctalk': 10.3.0 - '@serialport/parser-delimiter': 10.3.0 - '@serialport/parser-inter-byte-timeout': 10.3.0 - '@serialport/parser-packet-length': 10.3.0 - '@serialport/parser-readline': 10.3.0 - '@serialport/parser-ready': 10.3.0 - '@serialport/parser-regex': 10.3.0 - '@serialport/parser-slip-encoder': 10.3.0 - '@serialport/parser-spacepacket': 10.3.0 - '@serialport/stream': 10.3.0 - debug: 4.3.4 - transitivePeerDependencies: - - supports-color - dev: false - /serve-handler/6.1.5: resolution: {integrity: sha512-ijPFle6Hwe8zfmBxJdE+5fta53fdIY0lHISJvuikXB3VYFafRjMRpOffSPvCYsbKyBA7pvy9oYr/BT1O3EArlg==} dependencies: @@ -8810,8 +8699,8 @@ packages: engines: {node: '>= 0.8'} dev: false - /std-env/3.3.0: - resolution: {integrity: sha512-cNNS+VYsXIs5gI6gJipO4qZ8YYT274JHvNnQ1/R/x8Q8mdP0qj0zoMchRXmBNPqp/0eOEhX+3g7g6Fgb7meLIQ==} + /std-env/3.3.1: + resolution: {integrity: sha512-3H20QlwQsSm2OvAxWIYhs+j01MzzqwMwGiiO1NQaJYZgJZFPuAbf95/DiKRBSTYIJ2FeGUc+B/6mPGcWP9dO3Q==} dev: false /string-width/4.2.3: @@ -8932,15 +8821,15 @@ packages: tslib: 2.4.1 dev: false - /stylehacks/5.1.1_postcss@8.4.18: + /stylehacks/5.1.1_postcss@8.4.19: resolution: {integrity: sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: browserslist: 4.21.4 - postcss: 8.4.18 - postcss-selector-parser: 6.0.10 + postcss: 8.4.19 + postcss-selector-parser: 6.0.11 dev: false /sub-events/1.9.0: @@ -8997,8 +8886,8 @@ packages: react: 17.0.2 dev: false - /tailwindcss/3.2.3_postcss@8.4.18: - resolution: {integrity: sha512-Xt9D4PK4zuuQCEB8bwK9JUCKmTgUwyac/6b0/42Vqhgl6YJkep+Wf5wq+5uXYfmrupdAD0YY2NY1hyZp1HjRrg==} + /tailwindcss/3.2.4_postcss@8.4.19: + resolution: {integrity: sha512-AhwtHCKMtR71JgeYDaswmZXhPcW9iuI9Sp2LvZPo9upDZ7231ZJ7eA9RaURbhpXGVlrjX4cFNlB4ieTetEb7hQ==} engines: {node: '>=12.13.0'} hasBin: true peerDependencies: @@ -9018,12 +8907,12 @@ packages: normalize-path: 3.0.0 object-hash: 3.0.0 picocolors: 1.0.0 - postcss: 8.4.18 - postcss-import: 14.1.0_postcss@8.4.18 - postcss-js: 4.0.0_postcss@8.4.18 - postcss-load-config: 3.1.4_postcss@8.4.18 - postcss-nested: 6.0.0_postcss@8.4.18 - postcss-selector-parser: 6.0.10 + postcss: 8.4.19 + postcss-import: 14.1.0_postcss@8.4.19 + postcss-js: 4.0.0_postcss@8.4.19 + postcss-load-config: 3.1.4_postcss@8.4.19 + postcss-nested: 6.0.0_postcss@8.4.19 + postcss-selector-parser: 6.0.11 postcss-value-parser: 4.2.0 quick-lru: 5.1.1 resolve: 1.22.1 @@ -9059,11 +8948,11 @@ packages: jest-worker: 27.5.1 schema-utils: 3.1.1 serialize-javascript: 6.0.0 - terser: 5.15.1 + terser: 5.16.0 webpack: 5.75.0 - /terser/5.15.1: - resolution: {integrity: sha512-K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw==} + /terser/5.16.0: + resolution: {integrity: sha512-KjTV81QKStSfwbNiwlBXfcgMcOloyuRdb62/iLFPGBcVNF4EXjhdYBhYHmbJpiBrVxZhDvltE11j+LBQUxEEJg==} engines: {node: '>=10'} hasBin: true dependencies: @@ -9146,14 +9035,14 @@ packages: resolution: {integrity: sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==} dev: false - /tsutils/3.21.0_typescript@4.8.4: + /tsutils/3.21.0_typescript@4.9.3: resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} engines: {node: '>= 6'} peerDependencies: typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' dependencies: tslib: 1.14.1 - typescript: 4.8.4 + typescript: 4.9.3 dev: true /type-check/0.4.0: @@ -9186,8 +9075,8 @@ packages: is-typedarray: 1.0.0 dev: false - /typescript/4.8.4: - resolution: {integrity: sha512-QCh+85mCy+h0IGff8r5XWzOVSbBO+KfeYrMQh7NJ58QujwcE22u+NUSmUxqF+un70P9GXKxa2HCNiTTMJknyjQ==} + /typescript/4.9.3: + resolution: {integrity: sha512-CIfGzTelbKNEnLpLdGFgdyKhG23CKdKgQPOBc+OUNrkJ2vr+KSzsSV5kq5iWhEQbok+quxgGzrAtGWCyU7tHnA==} engines: {node: '>=4.2.0'} hasBin: true @@ -9224,8 +9113,8 @@ packages: unicode-property-aliases-ecmascript: 2.1.0 dev: false - /unicode-match-property-value-ecmascript/2.0.0: - resolution: {integrity: sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==} + /unicode-match-property-value-ecmascript/2.1.0: + resolution: {integrity: sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==} engines: {node: '>=4'} dev: false @@ -9370,7 +9259,7 @@ packages: optional: true dependencies: file-loader: 6.2.0_webpack@5.75.0 - loader-utils: 2.0.3 + loader-utils: 2.0.4 mime-types: 2.1.35 schema-utils: 3.1.1 webpack: 5.75.0 @@ -9387,8 +9276,8 @@ packages: resolution: {integrity: sha512-KmkCs6SjE6t4ihrfW9JelAPQIIIFbJweaaSLTh/4AO+c58JlDcb+GbdPt8yr5lRcFg4rPswRFRRhBGpWwh0K/Q==} dev: false - /use-breakpoint/3.0.3_sfoxds7t5ydpegc3knd667wn6m: - resolution: {integrity: sha512-p73F+NZjWNZM34mZwR7iC+he1qoejtWJt5F0+6+fEfxUgOxDaf6A5QmlwY/TgzUY2YvIObN1Hj4DbHZbORmgwQ==} + /use-breakpoint/3.0.4_sfoxds7t5ydpegc3knd667wn6m: + resolution: {integrity: sha512-/EYaLgXUXgOBCri6M0vh4bpRIyjdUEies0Nikvg5f5QnkejKnWZDmlsRK7Oa2BfoLQSBh2XKLza3rOcB1R9Kcw==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} peerDependencies: react: '>=16.8' @@ -9544,7 +9433,7 @@ packages: webpack: ^4.0.0 || ^5.0.0 dependencies: colorette: 2.0.19 - memfs: 3.4.10 + memfs: 3.4.12 mime-types: 2.1.35 range-parser: 1.2.1 schema-utils: 4.0.0 @@ -9629,7 +9518,7 @@ packages: acorn-import-assertions: 1.8.0_acorn@8.8.1 browserslist: 4.21.4 chrome-trace-event: 1.0.3 - enhanced-resolve: 5.10.0 + enhanced-resolve: 5.12.0 es-module-lexer: 0.9.3 eslint-scope: 5.1.1 events: 3.3.0 @@ -9658,7 +9547,7 @@ packages: chalk: 4.1.2 consola: 2.15.3 pretty-time: 1.1.0 - std-env: 3.3.0 + std-env: 3.3.1 webpack: 5.75.0 dev: false From 7dc5a9c08c523a975da7ed552a90a877e4e5f2cd Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Tue, 29 Nov 2022 22:08:52 -0700 Subject: [PATCH 16/22] removed section with error to test build w/o --- .../configuration/device-config/bluetooth.mdx | 65 ------------------- 1 file changed, 65 deletions(-) diff --git a/docs/configuration/device-config/bluetooth.mdx b/docs/configuration/device-config/bluetooth.mdx index 12812c98..0b38d892 100644 --- a/docs/configuration/device-config/bluetooth.mdx +++ b/docs/configuration/device-config/bluetooth.mdx @@ -41,68 +41,3 @@ The default pairing mode will be determined based on whether the device has or d ## Configure Bluetooth Config - - - - -:::info -All Bluetooth config values are available on Android. - -1. Open the Meshtastic App -2. Navigate to: **Vertical Ellipsis (3 dots top right) > Advanced Settings > Bluetooth Config** -::: - - - - - -:::info -All Bluetooth config values are available on iOS, iPadOS and macOS. - -1. Open the Meshtastic App -2. Navigate to: **Settings > Radio Configuration > Bluetooth (BLE)** -::: - - - - - -:::info -All Bluetooth module config options are available in the python CLI. Example commands are below: -::: - -| Setting | Acceptable Values | Default | -| :-----------------------: | :-----------------: | :-----: | -| `bluetooth.enabled` | `true`, `false` | `true` | -| `bluetooth.mode` | `RANDOM_PIN`, `FIXED_PIN`, `NO_PIN` | `RANDOM_PIN` | -| `bluetooth.fixedPin` | `integer` (6 digits) | `123456` | - -```shell title="Enable/Disable Bluetooth Module" -meshtastic --set bluetooth.enabled true -meshtastic --set bluetooth.enabled false -``` - -```shell title="Set a fixed pin" -meshtastic --set bluetooth.mode FIXED_PIN -meshtastic --set bluetooth.fixed_pin 111111 -``` - - - - -:::info -All Bluetooth module config options are available for the Web UI. -1. Open the Meshtastic Web Client -2. Navigate to: **Device Config > Bluetooth** -::: - - - \ No newline at end of file From bb6f2206adbcc72ddadbc0e19b851f3486e97dec Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Tue, 29 Nov 2022 22:30:05 -0700 Subject: [PATCH 17/22] readded tabs --- .../configuration/device-config/bluetooth.mdx | 62 +++++++++++++++++++ 1 file changed, 62 insertions(+) diff --git a/docs/configuration/device-config/bluetooth.mdx b/docs/configuration/device-config/bluetooth.mdx index 0b38d892..f395f9b9 100644 --- a/docs/configuration/device-config/bluetooth.mdx +++ b/docs/configuration/device-config/bluetooth.mdx @@ -41,3 +41,65 @@ The default pairing mode will be determined based on whether the device has or d ## Configure Bluetooth Config + + + +:::info +All Bluetooth config options are available for Android. + +1. Open the Meshtastic App +2. Navigate to: **Vertical Ellipsis (3 dots top right) > Advanced Settings > Bluetooth Config** +::: + + + + +:::info +All Bluetooth config values are available on iOS, iPadOS and macOS. + +1. Open the Meshtastic App +2. Navigate to: **Settings > Radio Configuration > Bluetooth (BLE)** +::: + + + + +:::info +All Bluetooth module config options are available in the python CLI. Example commands are below: +::: + +| Setting | Acceptable Values | Default | +| :-----------------------: | :-----------------: | :-----: | +| `bluetooth.enabled` | `true`, `false` | `true` | +| `bluetooth.mode` | `RANDOM_PIN`, `FIXED_PIN`, `NO_PIN` | `RANDOM_PIN` | +| `bluetooth.fixedPin` | `integer` (6 digits) | `123456` | + +```shell title="Enable/Disable Bluetooth Module" +meshtastic --set bluetooth.enabled true +meshtastic --set bluetooth.enabled false +``` + +```shell title="Set a fixed pin" +meshtastic --set bluetooth.mode FIXED_PIN +meshtastic --set bluetooth.fixed_pin 111111 +``` + + + +:::info +All Bluetooth module config options are available for the Web UI. + +1. Open the Meshtastic Web UI. +2. Navigate to: **Device Config > Bluetooth** +::: + + + \ No newline at end of file From aaf764e47e0592e3cc8daedb473670da30d3315d Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Tue, 29 Nov 2022 22:39:55 -0700 Subject: [PATCH 18/22] testing each tab, android first --- docs/configuration/device-config/bluetooth.mdx | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/docs/configuration/device-config/bluetooth.mdx b/docs/configuration/device-config/bluetooth.mdx index f395f9b9..d12a668d 100644 --- a/docs/configuration/device-config/bluetooth.mdx +++ b/docs/configuration/device-config/bluetooth.mdx @@ -53,10 +53,7 @@ values={[ :::info -All Bluetooth config options are available for Android. - -1. Open the Meshtastic App -2. Navigate to: **Vertical Ellipsis (3 dots top right) > Advanced Settings > Bluetooth Config** +Bluetooth config is not available for Android. ::: From 084c5c3ed26cf1a1e0aee43a677aca7ea0b85ad9 Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Tue, 29 Nov 2022 22:46:58 -0700 Subject: [PATCH 19/22] hunch remove () --- docs/configuration/device-config/bluetooth.mdx | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/docs/configuration/device-config/bluetooth.mdx b/docs/configuration/device-config/bluetooth.mdx index d12a668d..57a973b0 100644 --- a/docs/configuration/device-config/bluetooth.mdx +++ b/docs/configuration/device-config/bluetooth.mdx @@ -53,7 +53,10 @@ values={[ :::info -Bluetooth config is not available for Android. +All Bluetooth config options are available for Android. + +1. Open the Meshtastic App +2. Navigate to: Vertical Ellipsis > Advanced Settings > Bluetooth Config ::: @@ -63,7 +66,7 @@ Bluetooth config is not available for Android. All Bluetooth config values are available on iOS, iPadOS and macOS. 1. Open the Meshtastic App -2. Navigate to: **Settings > Radio Configuration > Bluetooth (BLE)** +2. Navigate to: **Settings > Radio Configuration > Bluetooth ** ::: From 44355837a184fc3dc1b019e05fde5847caa4eed4 Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Tue, 29 Nov 2022 22:52:03 -0700 Subject: [PATCH 20/22] revert back to original change, I give up. --- docs/configuration/device-config/bluetooth.mdx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/configuration/device-config/bluetooth.mdx b/docs/configuration/device-config/bluetooth.mdx index 57a973b0..f395f9b9 100644 --- a/docs/configuration/device-config/bluetooth.mdx +++ b/docs/configuration/device-config/bluetooth.mdx @@ -56,7 +56,7 @@ values={[ All Bluetooth config options are available for Android. 1. Open the Meshtastic App -2. Navigate to: Vertical Ellipsis > Advanced Settings > Bluetooth Config +2. Navigate to: **Vertical Ellipsis (3 dots top right) > Advanced Settings > Bluetooth Config** ::: @@ -66,7 +66,7 @@ All Bluetooth config options are available for Android. All Bluetooth config values are available on iOS, iPadOS and macOS. 1. Open the Meshtastic App -2. Navigate to: **Settings > Radio Configuration > Bluetooth ** +2. Navigate to: **Settings > Radio Configuration > Bluetooth (BLE)** ::: From c92276433f824bc23b188789dcd322a768abd8d5 Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Wed, 30 Nov 2022 10:41:08 -0700 Subject: [PATCH 21/22] add lines before end of admonitions --- docs/configuration/device-config/bluetooth.mdx | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/docs/configuration/device-config/bluetooth.mdx b/docs/configuration/device-config/bluetooth.mdx index f395f9b9..04f5d7b9 100644 --- a/docs/configuration/device-config/bluetooth.mdx +++ b/docs/configuration/device-config/bluetooth.mdx @@ -34,7 +34,7 @@ If your pairing mode is set to `FIXED_PIN`, the default value is 123456. For all ### Default Pairing Mode -The default pairing mode will be determined based on whether the device has or does not have a screen attached to it during the first boot (or with a stale device state) unless manually configured via the Bluetooth config options. +The default pairing mode will be determined based on whether the device has or does not have a screen attached to it during the first boot (or with a stale device state) unless manually configured via the Bluetooth config options. - **Screen Attached:** If your device boots up for the first time (or with a stale device state), and a screen is detected, the default pairing mode will be set to `RANDOM_PIN`. Should the attached screen be removed after the device has already been booted, the default pairing mode of `RANDOM_PIN` will remain unless manually changed to `FIXED_PIN` or `NO_PIN`. It is recommended the pairing mode be updated prior to removing the attached screen. - **No Screen Attached:** If your device boots up for the first time (or with a stale device state), and no screen is detected, the default paring mode will be set to `FIXED_PIN` with the aforementioned default value unless manually configured to a custom value. @@ -53,27 +53,33 @@ values={[ :::info + All Bluetooth config options are available for Android. 1. Open the Meshtastic App 2. Navigate to: **Vertical Ellipsis (3 dots top right) > Advanced Settings > Bluetooth Config** + ::: :::info + All Bluetooth config values are available on iOS, iPadOS and macOS. 1. Open the Meshtastic App 2. Navigate to: **Settings > Radio Configuration > Bluetooth (BLE)** + ::: :::info + All Bluetooth module config options are available in the python CLI. Example commands are below: + ::: | Setting | Acceptable Values | Default | @@ -95,10 +101,12 @@ meshtastic --set bluetooth.fixed_pin 111111 :::info + All Bluetooth module config options are available for the Web UI. 1. Open the Meshtastic Web UI. 2. Navigate to: **Device Config > Bluetooth** + ::: From aeda2cde1564ad253a596e76106175141e509473 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20G=C3=B6ttgens?= Date: Thu, 1 Dec 2022 17:03:17 +0100 Subject: [PATCH 22/22] clarify serial module operation --- docs/configuration/module-config/serial.mdx | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/configuration/module-config/serial.mdx b/docs/configuration/module-config/serial.mdx index 99c7968c..5cc46cef 100644 --- a/docs/configuration/module-config/serial.mdx +++ b/docs/configuration/module-config/serial.mdx @@ -29,7 +29,7 @@ Defaults to 'Simple'. Available Values: * `DEFAULT` -* `SIMPLE` operate as an dumb UART tunnel. What goes in will come out, Requires a channel named 'gpio'. +* `SIMPLE` operate as an dumb UART tunnel. What goes in will come out, Requires a channel named 'serial'. * `PROTO` not implemented yet, but will expose the Protobuf Client API on this serial port * `TEXTMSG` Will send the string received over the serial port as a Text Message for Display on the other devices. * `NMEA` Will output a NMEA 0183 Data stream containing the internal GPS or fixed position and other node locations as Waypoints (WPL). @@ -159,12 +159,12 @@ This module requires attaching a peripheral accessory to your device. It will no Default is to use RX GPIO 16 and TX GPIO 17. ### Basic Usage: -1. Enable the module by setting `serial_module_enabled` to `1`. +1. Enable the module by setting `serial.enabled` to `1`. 2. Set the pins (`serial.rxd` / `serial.txd`) for your preferred RX and TX GPIO pins. On tbeam boards it is recommended to use: - RXD 35 - TXD 15 3. Set `serial.timeout` to the amount of time to wait before we consider your packet as "done". -4. (Optional) In serial_module.h set the port to `PortNum_TEXT_MESSAGE_APP`if you want to send messages to/from the general text message channel. +4. (Optional) set serial.mode to TESTMSG if you want to send messages to/from the general text message channel 5. Connect to your device over the serial interface at `38400 8N1`. -6. Send a packet up to 240 bytes in length. This will get relayed over the mesh network. +6. Send a packet up to 237 bytes in length. This will get relayed over the mesh network. 7. (Optional) Set `serial.echo` to `1` and any message you send out will be echoed back to your device.