From addef0cccee16bdf92e1497e951aac8f966bfd91 Mon Sep 17 00:00:00 2001 From: "start.vaadin.com" Date: Thu, 6 Oct 2022 09:41:21 +0300 Subject: [PATCH] Generated project --- .gitignore | 21 + .mvn/wrapper/MavenWrapperDownloader.java | 118 + .mvn/wrapper/maven-wrapper.jar | Bin 0 -> 50710 bytes .mvn/wrapper/maven-wrapper.properties | 2 + .npmrc | 6 + .prettierrc.js | 4 + LICENSE.md | 24 + README.md | 47 + frontend/themes/myapp/main-layout.css | 57 + frontend/themes/myapp/styles.css | 4 + frontend/themes/myapp/theme.json | 3 + .../myapp/views/master-detail-book-view.css | 44 + .../myapp/views/master-detail-person-view.css | 44 + mvnw | 310 + mvnw.cmd | 182 + package-lock.json | 12839 ++++++++++++++++ package.json | 395 + pom.xml | 253 + src/main/java/my/app/Application.java | 28 + .../java/my/app/components/appnav/AppNav.java | 145 + .../my/app/components/appnav/AppNavItem.java | 298 + src/main/java/my/app/data/Role.java | 5 + .../my/app/data/entity/AbstractEntity.java | 45 + .../java/my/app/data/entity/SampleBook.java | 63 + .../java/my/app/data/entity/SamplePerson.java | 68 + src/main/java/my/app/data/entity/User.java | 66 + .../data/service/SampleBookRepository.java | 9 + .../app/data/service/SampleBookService.java | 41 + .../data/service/SamplePersonRepository.java | 9 + .../app/data/service/SamplePersonService.java | 41 + .../my/app/data/service/UserRepository.java | 10 + .../java/my/app/data/service/UserService.java | 41 + .../my/app/security/AuthenticatedUser.java | 42 + .../app/security/SecurityConfiguration.java | 36 + .../app/security/UserDetailsServiceImpl.java | 42 + src/main/java/my/app/views/MainLayout.java | 154 + .../adminroleonly/AdminroleonlyView.java | 35 + .../my/app/views/loggedin/LoggedInView.java | 35 + .../java/my/app/views/login/LoginView.java | 46 + .../MasterDetailBookView.java | 247 + .../MasterDetailPersonView.java | 210 + .../app/views/publicview/PublicviewView.java | 35 + .../views/userroleonly/UserroleonlyView.java | 35 + .../META-INF/resources/icons/icon.png | Bin 0 -> 2424 bytes .../META-INF/resources/images/empty-plant.png | Bin 0 -> 70951 bytes src/main/resources/application.properties | 16 + src/main/resources/banner.txt | 6 + src/main/resources/data.sql | 205 + tsconfig.json | 35 + types.d.ts | 5 + vite.config.ts | 9 + 51 files changed, 16415 insertions(+) create mode 100644 .gitignore create mode 100644 .mvn/wrapper/MavenWrapperDownloader.java create mode 100644 .mvn/wrapper/maven-wrapper.jar create mode 100644 .mvn/wrapper/maven-wrapper.properties create mode 100644 .npmrc create mode 100644 .prettierrc.js create mode 100644 LICENSE.md create mode 100644 README.md create mode 100644 frontend/themes/myapp/main-layout.css create mode 100644 frontend/themes/myapp/styles.css create mode 100644 frontend/themes/myapp/theme.json create mode 100644 frontend/themes/myapp/views/master-detail-book-view.css create mode 100644 frontend/themes/myapp/views/master-detail-person-view.css create mode 100755 mvnw create mode 100644 mvnw.cmd create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 pom.xml create mode 100644 src/main/java/my/app/Application.java create mode 100644 src/main/java/my/app/components/appnav/AppNav.java create mode 100644 src/main/java/my/app/components/appnav/AppNavItem.java create mode 100644 src/main/java/my/app/data/Role.java create mode 100644 src/main/java/my/app/data/entity/AbstractEntity.java create mode 100644 src/main/java/my/app/data/entity/SampleBook.java create mode 100644 src/main/java/my/app/data/entity/SamplePerson.java create mode 100644 src/main/java/my/app/data/entity/User.java create mode 100644 src/main/java/my/app/data/service/SampleBookRepository.java create mode 100644 src/main/java/my/app/data/service/SampleBookService.java create mode 100644 src/main/java/my/app/data/service/SamplePersonRepository.java create mode 100644 src/main/java/my/app/data/service/SamplePersonService.java create mode 100644 src/main/java/my/app/data/service/UserRepository.java create mode 100644 src/main/java/my/app/data/service/UserService.java create mode 100644 src/main/java/my/app/security/AuthenticatedUser.java create mode 100644 src/main/java/my/app/security/SecurityConfiguration.java create mode 100644 src/main/java/my/app/security/UserDetailsServiceImpl.java create mode 100644 src/main/java/my/app/views/MainLayout.java create mode 100644 src/main/java/my/app/views/adminroleonly/AdminroleonlyView.java create mode 100644 src/main/java/my/app/views/loggedin/LoggedInView.java create mode 100644 src/main/java/my/app/views/login/LoginView.java create mode 100644 src/main/java/my/app/views/masterdetailbook/MasterDetailBookView.java create mode 100644 src/main/java/my/app/views/masterdetailperson/MasterDetailPersonView.java create mode 100644 src/main/java/my/app/views/publicview/PublicviewView.java create mode 100644 src/main/java/my/app/views/userroleonly/UserroleonlyView.java create mode 100644 src/main/resources/META-INF/resources/icons/icon.png create mode 100644 src/main/resources/META-INF/resources/images/empty-plant.png create mode 100644 src/main/resources/application.properties create mode 100644 src/main/resources/banner.txt create mode 100644 src/main/resources/data.sql create mode 100644 tsconfig.json create mode 100644 types.d.ts create mode 100644 vite.config.ts diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..dae6077 --- /dev/null +++ b/.gitignore @@ -0,0 +1,21 @@ +/target/ +.idea/ +.vscode/ +.settings +.project +.classpath + +*.iml +.DS_Store + +# The following files are generated/updated by vaadin-maven-plugin +node_modules/ +frontend/generated/ +pnpmfile.js +vite.generated.ts + +# Browser drivers for local integration tests +drivers/ +# Error screenshots generated by TestBench for failed integration tests +error-screenshots/ +webpack.generated.js diff --git a/.mvn/wrapper/MavenWrapperDownloader.java b/.mvn/wrapper/MavenWrapperDownloader.java new file mode 100644 index 0000000..8895dd4 --- /dev/null +++ b/.mvn/wrapper/MavenWrapperDownloader.java @@ -0,0 +1,118 @@ +/* + * Copyright 2007-present the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import java.io.*; +import java.net.*; +import java.nio.channels.*; +import java.util.Properties; + +public class MavenWrapperDownloader { + + private static final String WRAPPER_VERSION = "0.5.6"; + /** + * Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is + * provided. + */ + private static final String DEFAULT_DOWNLOAD_URL = "https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/" + + WRAPPER_VERSION + "/maven-wrapper-" + WRAPPER_VERSION + ".jar"; + + /** + * Path to the maven-wrapper.properties file, which might contain a downloadUrl + * property to use instead of the default one. + */ + private static final String MAVEN_WRAPPER_PROPERTIES_PATH = ".mvn/wrapper/maven-wrapper.properties"; + + /** + * Path where the maven-wrapper.jar will be saved to. + */ + private static final String MAVEN_WRAPPER_JAR_PATH = ".mvn/wrapper/maven-wrapper.jar"; + + /** + * Name of the property which should be used to override the default download + * url for the wrapper. + */ + private static final String PROPERTY_NAME_WRAPPER_URL = "wrapperUrl"; + + public static void main(String args[]) { + System.out.println("- Downloader started"); + File baseDirectory = new File(args[0]); + System.out.println("- Using base directory: " + baseDirectory.getAbsolutePath()); + + // If the maven-wrapper.properties exists, read it and check if it contains a + // custom + // wrapperUrl parameter. + File mavenWrapperPropertyFile = new File(baseDirectory, MAVEN_WRAPPER_PROPERTIES_PATH); + String url = DEFAULT_DOWNLOAD_URL; + if (mavenWrapperPropertyFile.exists()) { + FileInputStream mavenWrapperPropertyFileInputStream = null; + try { + mavenWrapperPropertyFileInputStream = new FileInputStream(mavenWrapperPropertyFile); + Properties mavenWrapperProperties = new Properties(); + mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream); + url = mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL, url); + } catch (IOException e) { + System.out.println("- ERROR loading '" + MAVEN_WRAPPER_PROPERTIES_PATH + "'"); + } finally { + try { + if (mavenWrapperPropertyFileInputStream != null) { + mavenWrapperPropertyFileInputStream.close(); + } + } catch (IOException e) { + // Ignore ... + } + } + } + System.out.println("- Downloading from: " + url); + + File outputFile = new File(baseDirectory.getAbsolutePath(), MAVEN_WRAPPER_JAR_PATH); + if (!outputFile.getParentFile().exists()) { + if (!outputFile.getParentFile().mkdirs()) { + System.out.println( + "- ERROR creating output directory '" + outputFile.getParentFile().getAbsolutePath() + "'"); + } + } + System.out.println("- Downloading to: " + outputFile.getAbsolutePath()); + try { + downloadFileFromURL(url, outputFile); + System.out.println("Done"); + System.exit(0); + } catch (Throwable e) { + System.out.println("- Error downloading"); + e.printStackTrace(); + System.exit(1); + } + } + + private static void downloadFileFromURL(String urlString, File destination) throws Exception { + if (System.getenv("MVNW_USERNAME") != null && System.getenv("MVNW_PASSWORD") != null) { + String username = System.getenv("MVNW_USERNAME"); + char[] password = System.getenv("MVNW_PASSWORD").toCharArray(); + Authenticator.setDefault(new Authenticator() { + @Override + protected PasswordAuthentication getPasswordAuthentication() { + return new PasswordAuthentication(username, password); + } + }); + } + URL website = new URL(urlString); + ReadableByteChannel rbc; + rbc = Channels.newChannel(website.openStream()); + FileOutputStream fos = new FileOutputStream(destination); + fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE); + fos.close(); + rbc.close(); + } + +} diff --git a/.mvn/wrapper/maven-wrapper.jar b/.mvn/wrapper/maven-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..2cc7d4a55c0cd0092912bf49ae38b3a9e3fd0054 GIT binary patch literal 50710 zcmbTd1CVCTmM+|7+wQV$+qP}n>auOywyU~q+qUhh+uxis_~*a##hm*_WW?9E7Pb7N%LRFiwbEGCJ0XP=%-6oeT$XZcYgtzC2~q zk(K08IQL8oTl}>>+hE5YRgXTB@fZ4TH9>7=79e`%%tw*SQUa9~$xKD5rS!;ZG@ocK zQdcH}JX?W|0_Afv?y`-NgLum62B&WSD$-w;O6G0Sm;SMX65z)l%m1e-g8Q$QTI;(Q z+x$xth4KFvH@Bs6(zn!iF#nenk^Y^ce;XIItAoCsow38eq?Y-Auh!1in#Rt-_D>H^ z=EjbclGGGa6VnaMGmMLj`x3NcwA43Jb(0gzl;RUIRAUDcR1~99l2SAPkVhoRMMtN} zXvC<tOmX83grD8GSo_Lo?%lNfhD#EBgPo z*nf@ppMC#B!T)Ae0RG$mlJWmGl7CkuU~B8-==5i;rS;8i6rJ=PoQxf446XDX9g|c> zU64ePyMlsI^V5Jq5A+BPe#e73+kpc_r1tv#B)~EZ;7^67F0*QiYfrk0uVW;Qb=NsG zN>gsuCwvb?s-KQIppEaeXtEMdc9dy6Dfduz-tMTms+i01{eD9JE&h?Kht*$eOl#&L zJdM_-vXs(V#$Ed;5wyNWJdPNh+Z$+;$|%qR(t`4W@kDhd*{(7-33BOS6L$UPDeE_53j${QfKN-0v-HG z(QfyvFNbwPK%^!eIo4ac1;b>c0vyf9}Xby@YY!lkz-UvNp zwj#Gg|4B~?n?G^{;(W;|{SNoJbHTMpQJ*Wq5b{l9c8(%?Kd^1?H1om1de0Da9M;Q=n zUfn{f87iVb^>Exl*nZ0hs(Yt>&V9$Pg`zX`AI%`+0SWQ4Zc(8lUDcTluS z5a_KerZWe}a-MF9#Cd^fi!y3%@RFmg&~YnYZ6<=L`UJ0v={zr)>$A;x#MCHZy1st7 ztT+N07NR+vOwSV2pvWuN1%lO!K#Pj0Fr>Q~R40{bwdL%u9i`DSM4RdtEH#cW)6}+I-eE< z&tZs+(Ogu(H_;$a$!7w`MH0r%h&@KM+<>gJL@O~2K2?VrSYUBbhCn#yy?P)uF3qWU z0o09mIik+kvzV6w>vEZy@&Mr)SgxPzUiDA&%07m17udz9usD82afQEps3$pe!7fUf z0eiidkJ)m3qhOjVHC_M(RYCBO%CZKZXFb8}s0-+}@CIn&EF(rRWUX2g^yZCvl0bI} zbP;1S)iXnRC&}5-Tl(hASKqdSnO?ASGJ*MIhOXIblmEudj(M|W!+I3eDc}7t`^mtg z)PKlaXe(OH+q-)qcQ8a@!llRrpGI8DsjhoKvw9T;TEH&?s=LH0w$EzI>%u;oD@x83 zJL7+ncjI9nn!TlS_KYu5vn%f*@qa5F;| zEFxY&B?g=IVlaF3XNm_03PA)=3|{n-UCgJoTr;|;1AU9|kPE_if8!Zvb}0q$5okF$ zHaJdmO&gg!9oN|M{!qGE=tb|3pVQ8PbL$}e;NgXz<6ZEggI}wO@aBP**2Wo=yN#ZC z4G$m^yaM9g=|&!^ft8jOLuzc3Psca*;7`;gnHm}tS0%f4{|VGEwu45KptfNmwxlE~ z^=r30gi@?cOm8kAz!EylA4G~7kbEiRlRIzwrb~{_2(x^$-?|#e6Bi_**(vyr_~9Of z!n>Gqf+Qwiu!xhi9f53=PM3`3tNF}pCOiPU|H4;pzjcsqbwg*{{kyrTxk<;mx~(;; z1NMrpaQ`57yn34>Jo3b|HROE(UNcQash!0p2-!Cz;{IRv#Vp5!3o$P8!%SgV~k&Hnqhp`5eLjTcy93cK!3Hm-$`@yGnaE=?;*2uSpiZTs_dDd51U%i z{|Zd9ou-;laGS_x=O}a+ zB||za<795A?_~Q=r=coQ+ZK@@ zId~hWQL<%)fI_WDIX#=(WNl!Dm$a&ROfLTd&B$vatq!M-2Jcs;N2vps$b6P1(N}=oI3<3luMTmC|0*{ zm1w8bt7vgX($!0@V0A}XIK)w!AzUn7vH=pZEp0RU0p?}ch2XC-7r#LK&vyc2=-#Q2 z^L%8)JbbcZ%g0Du;|8=q8B>X=mIQirpE=&Ox{TiuNDnOPd-FLI^KfEF729!!0x#Es z@>3ursjFSpu%C-8WL^Zw!7a0O-#cnf`HjI+AjVCFitK}GXO`ME&on|^=~Zc}^LBp9 zj=-vlN;Uc;IDjtK38l7}5xxQF&sRtfn4^TNtnzXv4M{r&ek*(eNbIu!u$>Ed%` z5x7+&)2P&4>0J`N&ZP8$vcR+@FS0126s6+Jx_{{`3ZrIMwaJo6jdrRwE$>IU_JTZ} z(||hyyQ)4Z1@wSlT94(-QKqkAatMmkT7pCycEB1U8KQbFX&?%|4$yyxCtm3=W`$4fiG0WU3yI@c zx{wfmkZAYE_5M%4{J-ygbpH|(|GD$2f$3o_Vti#&zfSGZMQ5_f3xt6~+{RX=$H8at z?GFG1Tmp}}lmm-R->ve*Iv+XJ@58p|1_jRvfEgz$XozU8#iJS})UM6VNI!3RUU!{5 zXB(+Eqd-E;cHQ>)`h0(HO_zLmzR3Tu-UGp;08YntWwMY-9i^w_u#wR?JxR2bky5j9 z3Sl-dQQU$xrO0xa&>vsiK`QN<$Yd%YXXM7*WOhnRdSFt5$aJux8QceC?lA0_if|s> ze{ad*opH_kb%M&~(~&UcX0nFGq^MqjxW?HJIP462v9XG>j(5Gat_)#SiNfahq2Mz2 zU`4uV8m$S~o9(W>mu*=h%Gs(Wz+%>h;R9Sg)jZ$q8vT1HxX3iQnh6&2rJ1u|j>^Qf`A76K%_ubL`Zu?h4`b=IyL>1!=*%!_K)=XC z6d}4R5L+sI50Q4P3upXQ3Z!~1ZXLlh!^UNcK6#QpYt-YC=^H=EPg3)z*wXo*024Q4b2sBCG4I# zlTFFY=kQ>xvR+LsuDUAk)q%5pEcqr(O_|^spjhtpb1#aC& zghXzGkGDC_XDa%t(X`E+kvKQ4zrQ*uuQoj>7@@ykWvF332)RO?%AA&Fsn&MNzmFa$ zWk&&^=NNjxLjrli_8ESU)}U|N{%j&TQmvY~lk!~Jh}*=^INA~&QB9em!in_X%Rl1&Kd~Z(u z9mra#<@vZQlOY+JYUwCrgoea4C8^(xv4ceCXcejq84TQ#sF~IU2V}LKc~Xlr_P=ry zl&Hh0exdCbVd^NPCqNNlxM3vA13EI8XvZ1H9#bT7y*U8Y{H8nwGpOR!e!!}*g;mJ#}T{ekSb}5zIPmye*If(}}_=PcuAW#yidAa^9-`<8Gr0 z)Fz=NiZ{)HAvw{Pl5uu)?)&i&Us$Cx4gE}cIJ}B4Xz~-q7)R_%owbP!z_V2=Aq%Rj z{V;7#kV1dNT9-6R+H}}(ED*_!F=~uz>&nR3gb^Ce%+0s#u|vWl<~JD3MvS0T9thdF zioIG3c#Sdsv;LdtRv3ml7%o$6LTVL>(H`^@TNg`2KPIk*8-IB}X!MT0`hN9Ddf7yN z?J=GxPL!uJ7lqwowsl?iRrh@#5C$%E&h~Z>XQcvFC*5%0RN-Opq|=IwX(dq(*sjs+ zqy99+v~m|6T#zR*e1AVxZ8djd5>eIeCi(b8sUk)OGjAsKSOg^-ugwl2WSL@d#?mdl zib0v*{u-?cq}dDGyZ%$XRY=UkQwt2oGu`zQneZh$=^! zj;!pCBWQNtvAcwcWIBM2y9!*W|8LmQy$H~5BEx)78J`4Z0(FJO2P^!YyQU{*Al+fs z){!4JvT1iLrJ8aU3k0t|P}{RN)_^v%$$r;+p0DY7N8CXzmS*HB*=?qaaF9D@#_$SN zSz{moAK<*RH->%r7xX~9gVW$l7?b|_SYI)gcjf0VAUJ%FcQP(TpBs; zg$25D!Ry_`8xpS_OJdeo$qh#7U+cepZ??TII7_%AXsT$B z=e)Bx#v%J0j``00Zk5hsvv6%T^*xGNx%KN-=pocSoqE5_R)OK%-Pbu^1MNzfds)mL zxz^F4lDKV9D&lEY;I+A)ui{TznB*CE$=9(wgE{m}`^<--OzV-5V4X2w9j(_!+jpTr zJvD*y6;39&T+==$F&tsRKM_lqa1HC}aGL0o`%c9mO=fts?36@8MGm7Vi{Y z^<7m$(EtdSr#22<(rm_(l_(`j!*Pu~Y>>xc>I9M#DJYDJNHO&4=HM%YLIp?;iR&$m z#_$ZWYLfGLt5FJZhr3jpYb`*%9S!zCG6ivNHYzNHcI%khtgHBliM^Ou}ZVD7ehU9 zS+W@AV=?Ro!=%AJ>Kcy9aU3%VX3|XM_K0A+ZaknKDyIS3S-Hw1C7&BSW5)sqj5Ye_ z4OSW7Yu-;bCyYKHFUk}<*<(@TH?YZPHr~~Iy%9@GR2Yd}J2!N9K&CN7Eq{Ka!jdu; zQNB*Y;i(7)OxZK%IHGt#Rt?z`I|A{q_BmoF!f^G}XVeTbe1Wnzh%1g>j}>DqFf;Rp zz7>xIs12@Ke0gr+4-!pmFP84vCIaTjqFNg{V`5}Rdt~xE^I;Bxp4)|cs8=f)1YwHz zqI`G~s2~qqDV+h02b`PQpUE#^^Aq8l%y2|ByQeXSADg5*qMprEAE3WFg0Q39`O+i1 z!J@iV!`Y~C$wJ!5Z+j5$i<1`+@)tBG$JL=!*uk=2k;T<@{|s1$YL079FvK%mPhyHV zP8^KGZnp`(hVMZ;s=n~3r2y;LTwcJwoBW-(ndU-$03{RD zh+Qn$ja_Z^OuMf3Ub|JTY74s&Am*(n{J3~@#OJNYuEVVJd9*H%)oFoRBkySGm`hx! zT3tG|+aAkXcx-2Apy)h^BkOyFTWQVeZ%e2@;*0DtlG9I3Et=PKaPt&K zw?WI7S;P)TWED7aSH$3hL@Qde?H#tzo^<(o_sv_2ci<7M?F$|oCFWc?7@KBj-;N$P zB;q!8@bW-WJY9do&y|6~mEruZAVe$!?{)N9rZZxD-|oltkhW9~nR8bLBGXw<632!l z*TYQn^NnUy%Ds}$f^=yQ+BM-a5X4^GHF=%PDrRfm_uqC zh{sKwIu|O0&jWb27;wzg4w5uA@TO_j(1X?8E>5Zfma|Ly7Bklq|s z9)H`zoAGY3n-+&JPrT!>u^qg9Evx4y@GI4$n-Uk_5wttU1_t?6><>}cZ-U+&+~JE) zPlDbO_j;MoxdLzMd~Ew|1o^a5q_1R*JZ=#XXMzg?6Zy!^hop}qoLQlJ{(%!KYt`MK z8umEN@Z4w!2=q_oe=;QttPCQy3Nm4F@x>@v4sz_jo{4m*0r%J(w1cSo;D_hQtJs7W z><$QrmG^+<$4{d2bgGo&3-FV}avg9zI|Rr(k{wTyl3!M1q+a zD9W{pCd%il*j&Ft z5H$nENf>>k$;SONGW`qo6`&qKs*T z2^RS)pXk9b@(_Fw1bkb)-oqK|v}r$L!W&aXA>IpcdNZ_vWE#XO8X`#Yp1+?RshVcd zknG%rPd*4ECEI0wD#@d+3NbHKxl}n^Sgkx==Iu%}HvNliOqVBqG?P2va zQ;kRJ$J6j;+wP9cS za#m;#GUT!qAV%+rdWolk+)6kkz4@Yh5LXP+LSvo9_T+MmiaP-eq6_k;)i6_@WSJ zlT@wK$zqHu<83U2V*yJ|XJU4farT#pAA&@qu)(PO^8PxEmPD4;Txpio+2)#!9 z>&=i7*#tc0`?!==vk>s7V+PL#S1;PwSY?NIXN2=Gu89x(cToFm))7L;< z+bhAbVD*bD=}iU`+PU+SBobTQ%S!=VL!>q$rfWsaaV}Smz>lO9JXT#`CcH_mRCSf4%YQAw`$^yY z3Y*^Nzk_g$xn7a_NO(2Eb*I=^;4f!Ra#Oo~LLjlcjke*k*o$~U#0ZXOQ5@HQ&T46l z7504MUgZkz2gNP1QFN8Y?nSEnEai^Rgyvl}xZfMUV6QrJcXp;jKGqB=D*tj{8(_pV zqyB*DK$2lgYGejmJUW)*s_Cv65sFf&pb(Yz8oWgDtQ0~k^0-wdF|tj}MOXaN@ydF8 zNr={U?=;&Z?wr^VC+`)S2xl}QFagy;$mG=TUs7Vi2wws5zEke4hTa2)>O0U?$WYsZ z<8bN2bB_N4AWd%+kncgknZ&}bM~eDtj#C5uRkp21hWW5gxWvc6b*4+dn<{c?w9Rmf zIVZKsPl{W2vQAlYO3yh}-{Os=YBnL8?uN5(RqfQ=-1cOiUnJu>KcLA*tQK3FU`_bM zM^T28w;nAj5EdAXFi&Kk1Nnl2)D!M{@+D-}bIEe+Lc4{s;YJc-{F#``iS2uk;2!Zp zF9#myUmO!wCeJIoi^A+T^e~20c+c2C}XltaR!|U-HfDA=^xF97ev}$l6#oY z&-&T{egB)&aV$3_aVA51XGiU07$s9vubh_kQG?F$FycvS6|IO!6q zq^>9|3U^*!X_C~SxX&pqUkUjz%!j=VlXDo$!2VLH!rKj@61mDpSr~7B2yy{>X~_nc zRI+7g2V&k zd**H++P9dg!-AOs3;GM`(g<+GRV$+&DdMVpUxY9I1@uK28$az=6oaa+PutlO9?6#? zf-OsgT>^@8KK>ggkUQRPPgC7zjKFR5spqQb3ojCHzj^(UH~v+!y*`Smv)VpVoPwa6 zWG18WJaPKMi*F6Zdk*kU^`i~NNTfn3BkJniC`yN98L-Awd)Z&mY? zprBW$!qL-OL7h@O#kvYnLsfff@kDIegt~?{-*5A7JrA;#TmTe?jICJqhub-G@e??D zqiV#g{)M!kW1-4SDel7TO{;@*h2=_76g3NUD@|c*WO#>MfYq6_YVUP+&8e4|%4T`w zXzhmVNziAHazWO2qXcaOu@R1MrPP{t)`N)}-1&~mq=ZH=w=;-E$IOk=y$dOls{6sRR`I5>|X zpq~XYW4sd;J^6OwOf**J>a7u$S>WTFPRkjY;BfVgQst)u4aMLR1|6%)CB^18XCz+r ztkYQ}G43j~Q&1em(_EkMv0|WEiKu;z2zhb(L%$F&xWwzOmk;VLBYAZ8lOCziNoPw1 zv2BOyXA`A8z^WH!nXhKXM`t0;6D*-uGds3TYGrm8SPnJJOQ^fJU#}@aIy@MYWz**H zvkp?7I5PE{$$|~{-ZaFxr6ZolP^nL##mHOErB^AqJqn^hFA=)HWj!m3WDaHW$C)i^ z9@6G$SzB=>jbe>4kqr#sF7#K}W*Cg-5y6kun3u&0L7BpXF9=#7IN8FOjWrWwUBZiU zT_se3ih-GBKx+Uw0N|CwP3D@-C=5(9T#BH@M`F2!Goiqx+Js5xC92|Sy0%WWWp={$(am!#l~f^W_oz78HX<0X#7 zp)p1u~M*o9W@O8P{0Qkg@Wa# z2{Heb&oX^CQSZWSFBXKOfE|tsAm#^U-WkDnU;IowZ`Ok4!mwHwH=s|AqZ^YD4!5!@ zPxJj+Bd-q6w_YG`z_+r;S86zwXb+EO&qogOq8h-Ect5(M2+>(O7n7)^dP*ws_3U6v zVsh)sk^@*c>)3EML|0<-YROho{lz@Nd4;R9gL{9|64xVL`n!m$-Jjrx?-Bacp!=^5 z1^T^eB{_)Y<9)y{-4Rz@9_>;_7h;5D+@QcbF4Wv7hu)s0&==&6u)33 zHRj+&Woq-vDvjwJCYES@$C4{$?f$Ibi4G()UeN11rgjF+^;YE^5nYprYoJNoudNj= zm1pXSeG64dcWHObUetodRn1Fw|1nI$D9z}dVEYT0lQnsf_E1x2vBLql7NrHH!n&Sq z6lc*mvU=WS6=v9Lrl}&zRiu_6u;6g%_DU{9b+R z#YHqX7`m9eydf?KlKu6Sb%j$%_jmydig`B*TN`cZL-g!R)iE?+Q5oOqBFKhx z%MW>BC^(F_JuG(ayE(MT{S3eI{cKiwOtPwLc0XO*{*|(JOx;uQOfq@lp_^cZo=FZj z4#}@e@dJ>Bn%2`2_WPeSN7si^{U#H=7N4o%Dq3NdGybrZgEU$oSm$hC)uNDC_M9xc zGzwh5Sg?mpBIE8lT2XsqTt3j3?We8}3bzLBTQd639vyg^$0#1epq8snlDJP2(BF)K zSx30RM+{f+b$g{9usIL8H!hCO117Xgv}ttPJm9wVRjPk;ePH@zxv%j9k5`TzdXLeT zFgFX`V7cYIcBls5WN0Pf6SMBN+;CrQ(|EsFd*xtwr#$R{Z9FP`OWtyNsq#mCgZ7+P z^Yn$haBJ)r96{ZJd8vlMl?IBxrgh=fdq_NF!1{jARCVz>jNdC)H^wfy?R94#MPdUjcYX>#wEx+LB#P-#4S-%YH>t-j+w zOFTI8gX$ard6fAh&g=u&56%3^-6E2tpk*wx3HSCQ+t7+*iOs zPk5ysqE}i*cQocFvA68xHfL|iX(C4h*67@3|5Qwle(8wT&!&{8*{f%0(5gH+m>$tq zp;AqrP7?XTEooYG1Dzfxc>W%*CyL16q|fQ0_jp%%Bk^k!i#Nbi(N9&T>#M{gez_Ws zYK=l}adalV(nH}I_!hNeb;tQFk3BHX7N}}R8%pek^E`X}%ou=cx8InPU1EE0|Hen- zyw8MoJqB5=)Z%JXlrdTXAE)eqLAdVE-=>wGHrkRet}>3Yu^lt$Kzu%$3#(ioY}@Gu zjk3BZuQH&~7H+C*uX^4}F*|P89JX;Hg2U!pt>rDi(n(Qe-c}tzb0#6_ItoR0->LSt zR~UT<-|@TO%O`M+_e_J4wx7^)5_%%u+J=yF_S#2Xd?C;Ss3N7KY^#-vx+|;bJX&8r zD?|MetfhdC;^2WG`7MCgs>TKKN=^=!x&Q~BzmQio_^l~LboTNT=I zC5pme^P@ER``p$2md9>4!K#vV-Fc1an7pl>_|&>aqP}+zqR?+~Z;f2^`a+-!Te%V? z;H2SbF>jP^GE(R1@%C==XQ@J=G9lKX+Z<@5}PO(EYkJh=GCv#)Nj{DkWJM2}F&oAZ6xu8&g7pn1ps2U5srwQ7CAK zN&*~@t{`31lUf`O;2w^)M3B@o)_mbRu{-`PrfNpF!R^q>yTR&ETS7^-b2*{-tZAZz zw@q5x9B5V8Qd7dZ!Ai$9hk%Q!wqbE1F1c96&zwBBaRW}(^axoPpN^4Aw}&a5dMe+*Gomky_l^54*rzXro$ z>LL)U5Ry>~FJi=*{JDc)_**c)-&faPz`6v`YU3HQa}pLtb5K)u%K+BOqXP0)rj5Au$zB zW1?vr?mDv7Fsxtsr+S6ucp2l#(4dnr9sD*v+@*>g#M4b|U?~s93>Pg{{a5|rm2xfI z`>E}?9S@|IoUX{Q1zjm5YJT|3S>&09D}|2~BiMo=z4YEjXlWh)V&qs;*C{`UMxp$9 zX)QB?G$fPD6z5_pNs>Jeh{^&U^)Wbr?2D6-q?)`*1k@!UvwQgl8eG$r+)NnFoT)L6 zg7lEh+E6J17krfYJCSjWzm67hEth24pomhz71|Qodn#oAILN)*Vwu2qpJirG)4Wnv}9GWOFrQg%Je+gNrPl8mw7ykE8{ z=|B4+uwC&bpp%eFcRU6{mxRV32VeH8XxX>v$du<$(DfinaaWxP<+Y97Z#n#U~V zVEu-GoPD=9$}P;xv+S~Ob#mmi$JQmE;Iz4(){y*9pFyW-jjgdk#oG$fl4o9E8bo|L zWjo4l%n51@Kz-n%zeSCD`uB?T%FVk+KBI}=ve zvlcS#wt`U6wrJo}6I6Rwb=1GzZfwE=I&Ne@p7*pH84XShXYJRgvK)UjQL%R9Zbm(m zxzTQsLTON$WO7vM)*vl%Pc0JH7WhP;$z@j=y#avW4X8iqy6mEYr@-}PW?H)xfP6fQ z&tI$F{NNct4rRMSHhaelo<5kTYq+(?pY)Ieh8*sa83EQfMrFupMM@nfEV@EmdHUv9 z35uzIrIuo4#WnF^_jcpC@uNNaYTQ~uZWOE6P@LFT^1@$o&q+9Qr8YR+ObBkpP9=F+$s5+B!mX2~T zAuQ6RenX?O{IlLMl1%)OK{S7oL}X%;!XUxU~xJN8xk z`xywS*naF(J#?vOpB(K=o~lE;m$zhgPWDB@=p#dQIW>xe_p1OLoWInJRKbEuoncf; zmS1!u-ycc1qWnDg5Nk2D)BY%jmOwCLC+Ny>`f&UxFowIsHnOXfR^S;&F(KXd{ODlm z$6#1ccqt-HIH9)|@fHnrKudu!6B$_R{fbCIkSIb#aUN|3RM>zuO>dpMbROZ`^hvS@ z$FU-;e4W}!ubzKrU@R*dW*($tFZ>}dd*4_mv)#O>X{U@zSzQt*83l9mI zI$8O<5AIDx`wo0}f2fsPC_l>ONx_`E7kdXu{YIZbp1$(^oBAH({T~&oQ&1{X951QW zmhHUxd)t%GQ9#ak5fTjk-cahWC;>^Rg7(`TVlvy0W@Y!Jc%QL3Ozu# zDPIqBCy&T2PWBj+d-JA-pxZlM=9ja2ce|3B(^VCF+a*MMp`(rH>Rt6W1$;r{n1(VK zLs>UtkT43LR2G$AOYHVailiqk7naz2yZGLo*xQs!T9VN5Q>eE(w zw$4&)&6xIV$IO^>1N-jrEUg>O8G4^@y+-hQv6@OmF@gy^nL_n1P1-Rtyy$Bl;|VcV zF=p*&41-qI5gG9UhKmmnjs932!6hceXa#-qfK;3d*a{)BrwNFeKU|ge?N!;zk+kB! zMD_uHJR#%b54c2tr~uGPLTRLg$`fupo}cRJeTwK;~}A>(Acy4k-Xk&Aa1&eWYS1ULWUj@fhBiWY$pdfy+F z@G{OG{*v*mYtH3OdUjwEr6%_ZPZ3P{@rfbNPQG!BZ7lRyC^xlMpWH`@YRar`tr}d> z#wz87t?#2FsH-jM6m{U=gp6WPrZ%*w0bFm(T#7m#v^;f%Z!kCeB5oiF`W33W5Srdt zdU?YeOdPG@98H7NpI{(uN{FJdu14r(URPH^F6tOpXuhU7T9a{3G3_#Ldfx_nT(Hec zo<1dyhsVsTw;ZkVcJ_0-h-T3G1W@q)_Q30LNv)W?FbMH+XJ* zy=$@39Op|kZv`Rt>X`zg&at(?PO^I=X8d9&myFEx#S`dYTg1W+iE?vt#b47QwoHI9 zNP+|3WjtXo{u}VG(lLUaW0&@yD|O?4TS4dfJI`HC-^q;M(b3r2;7|FONXphw-%7~* z&;2!X17|05+kZOpQ3~3!Nb>O94b&ZSs%p)TK)n3m=4eiblVtSx@KNFgBY_xV6ts;NF;GcGxMP8OKV^h6LmSb2E#Qnw ze!6Mnz7>lE9u{AgQ~8u2zM8CYD5US8dMDX-5iMlgpE9m*s+Lh~A#P1er*rF}GHV3h z=`STo?kIXw8I<`W0^*@mB1$}pj60R{aJ7>C2m=oghKyxMbFNq#EVLgP0cH3q7H z%0?L93-z6|+jiN|@v>ix?tRBU(v-4RV`}cQH*fp|)vd3)8i9hJ3hkuh^8dz{F5-~_ zUUr1T3cP%cCaTooM8dj|4*M=e6flH0&8ve32Q)0dyisl))XkZ7Wg~N}6y`+Qi2l+e zUd#F!nJp{#KIjbQdI`%oZ`?h=5G^kZ_uN`<(`3;a!~EMsWV|j-o>c?x#;zR2ktiB! z);5rrHl?GPtr6-o!tYd|uK;Vbsp4P{v_4??=^a>>U4_aUXPWQ$FPLE4PK$T^3Gkf$ zHo&9$U&G`d(Os6xt1r?sg14n)G8HNyWa^q8#nf0lbr4A-Fi;q6t-`pAx1T*$eKM*$ z|CX|gDrk#&1}>5H+`EjV$9Bm)Njw&7-ZR{1!CJTaXuP!$Pcg69`{w5BRHysB$(tWUes@@6aM69kb|Lx$%BRY^-o6bjH#0!7b;5~{6J+jKxU!Kmi# zndh@+?}WKSRY2gZ?Q`{(Uj|kb1%VWmRryOH0T)f3cKtG4oIF=F7RaRnH0Rc_&372={_3lRNsr95%ZO{IX{p@YJ^EI%+gvvKes5cY+PE@unghjdY5#9A!G z70u6}?zmd?v+{`vCu-53_v5@z)X{oPC@P)iA3jK$`r zSA2a7&!^zmUiZ82R2=1cumBQwOJUPz5Ay`RLfY(EiwKkrx%@YN^^XuET;tE zmr-6~I7j!R!KrHu5CWGSChO6deaLWa*9LLJbcAJsFd%Dy>a!>J`N)Z&oiU4OEP-!Ti^_!p}O?7`}i7Lsf$-gBkuY*`Zb z7=!nTT;5z$_5$=J=Ko+Cp|Q0J=%oFr>hBgnL3!tvFoLNhf#D0O=X^h+x08iB;@8pXdRHxX}6R4k@i6%vmsQwu^5z zk1ip`#^N)^#Lg#HOW3sPI33xqFB4#bOPVnY%d6prwxf;Y-w9{ky4{O6&94Ra8VN@K zb-lY;&`HtxW@sF!doT5T$2&lIvJpbKGMuDAFM#!QPXW87>}=Q4J3JeXlwHys?!1^#37q_k?N@+u&Ns20pEoBeZC*np;i;M{2C0Z4_br2gsh6eL z#8`#sn41+$iD?^GL%5?cbRcaa-Nx0vE(D=*WY%rXy3B%gNz0l?#noGJGP728RMY#q z=2&aJf@DcR?QbMmN)ItUe+VM_U!ryqA@1VVt$^*xYt~-qvW!J4Tp<-3>jT=7Zow5M z8mSKp0v4b%a8bxFr>3MwZHSWD73D@+$5?nZAqGM#>H@`)mIeC#->B)P8T$zh-Pxnc z8)~Zx?TWF4(YfKuF3WN_ckpCe5;x4V4AA3(i$pm|78{%!q?|~*eH0f=?j6i)n~Hso zmTo>vqEtB)`%hP55INf7HM@taH)v`Fw40Ayc*R!T?O{ziUpYmP)AH`euTK!zg9*6Z z!>M=$3pd0!&TzU=hc_@@^Yd3eUQpX4-33}b{?~5t5lgW=ldJ@dUAH%`l5US1y_`40 zs(X`Qk}vvMDYYq+@Rm+~IyCX;iD~pMgq^KY)T*aBz@DYEB={PxA>)mI6tM*sx-DmGQHEaHwRrAmNjO!ZLHO4b;;5mf@zzlPhkP($JeZGE7 z?^XN}Gf_feGoG~BjUgVa*)O`>lX=$BSR2)uD<9 z>o^|nb1^oVDhQbfW>>!;8-7<}nL6L^V*4pB=>wwW+RXAeRvKED(n1;R`A6v$6gy0I(;Vf?!4;&sgn7F%LpM}6PQ?0%2Z@b{It<(G1CZ|>913E0nR2r^Pa*Bp z@tFGi*CQ~@Yc-?{cwu1 zsilf=k^+Qs>&WZG(3WDixisHpR>`+ihiRwkL(3T|=xsoNP*@XX3BU8hr57l3k;pni zI``=3Nl4xh4oDj<%>Q1zYXHr%Xg_xrK3Nq?vKX3|^Hb(Bj+lONTz>4yhU-UdXt2>j z<>S4NB&!iE+ao{0Tx^N*^|EZU;0kJkx@zh}S^P{ieQjGl468CbC`SWnwLRYYiStXm zOxt~Rb3D{dz=nHMcY)#r^kF8|q8KZHVb9FCX2m^X*(|L9FZg!5a7((!J8%MjT$#Fs)M1Pb zq6hBGp%O1A+&%2>l0mpaIzbo&jc^!oN^3zxap3V2dNj3x<=TwZ&0eKX5PIso9j1;e zwUg+C&}FJ`k(M|%%}p=6RPUq4sT3-Y;k-<68ciZ~_j|bt>&9ZLHNVrp#+pk}XvM{8 z`?k}o-!if>hVlCP9j%&WI2V`5SW)BCeR5>MQhF)po=p~AYN%cNa_BbV6EEh_kk^@a zD>4&>uCGCUmyA-c)%DIcF4R6!>?6T~Mj_m{Hpq`*(wj>foHL;;%;?(((YOxGt)Bhx zuS+K{{CUsaC++%}S6~CJ=|vr(iIs-je)e9uJEU8ZJAz)w166q)R^2XI?@E2vUQ!R% zn@dxS!JcOimXkWJBz8Y?2JKQr>`~SmE2F2SL38$SyR1^yqj8_mkBp)o$@+3BQ~Mid z9U$XVqxX3P=XCKj0*W>}L0~Em`(vG<>srF8+*kPrw z20{z(=^w+ybdGe~Oo_i|hYJ@kZl*(9sHw#Chi&OIc?w`nBODp?ia$uF%Hs(X>xm?j zqZQ`Ybf@g#wli`!-al~3GWiE$K+LCe=Ndi!#CVjzUZ z!sD2O*;d28zkl))m)YN7HDi^z5IuNo3^w(zy8 zszJG#mp#Cj)Q@E@r-=NP2FVxxEAeOI2e=|KshybNB6HgE^(r>HD{*}S}mO>LuRGJT{*tfTzw_#+er-0${}%YPe@CMJ1Ng#j#)i)SnY@ss3gL;g zg2D~#Kpdfu#G;q1qz_TwSz1VJT(b3zby$Vk&;Y#1(A)|xj`_?i5YQ;TR%jice5E;0 zYHg;`zS5{S*9xI6o^j>rE8Ua*XhIw{_-*&@(R|C(am8__>+Ws&Q^ymy*X4~hR2b5r zm^p3sw}yv=tdyncy_Ui7{BQS732et~Z_@{-IhHDXAV`(Wlay<#hb>%H%WDi+K$862nA@BDtM#UCKMu+kM`!JHyWSi?&)A7_ z3{cyNG%a~nnH_!+;g&JxEMAmh-Z}rC!o7>OVzW&PoMyTA_g{hqXG)SLraA^OP**<7 zjWbr7z!o2n3hnx7A=2O=WL;`@9N{vQIM@&|G-ljrPvIuJHYtss0Er0fT5cMXNUf1B z7FAwBDixt0X7C3S)mPe5g`YtME23wAnbU)+AtV}z+e8G;0BP=bI;?(#|Ep!vVfDbK zvx+|CKF>yt0hWQ3drchU#XBU+HiuG*V^snFAPUp-5<#R&BUAzoB!aZ+e*KIxa26V}s6?nBK(U-7REa573wg-jqCg>H8~>O{ z*C0JL-?X-k_y%hpUFL?I>0WV{oV`Nb)nZbJG01R~AG>flIJf)3O*oB2i8~;!P?Wo_ z0|QEB*fifiL6E6%>tlAYHm2cjTFE@*<);#>689Z6S#BySQ@VTMhf9vYQyLeDg1*F} zjq>i1*x>5|CGKN{l9br3kB0EHY|k4{%^t7-uhjd#NVipUZa=EUuE5kS1_~qYX?>hJ z$}!jc9$O$>J&wnu0SgfYods^z?J4X;X7c77Me0kS-dO_VUQ39T(Kv(Y#s}Qqz-0AH z^?WRL(4RzpkD+T5FG_0NyPq-a-B7A5LHOCqwObRJi&oRi(<;OuIN7SV5PeHU$<@Zh zPozEV`dYmu0Z&Tqd>t>8JVde9#Pt+l95iHe$4Xwfy1AhI zDM4XJ;bBTTvRFtW>E+GzkN)9k!hA5z;xUOL2 zq4}zn-DP{qc^i|Y%rvi|^5k-*8;JZ~9a;>-+q_EOX+p1Wz;>i7c}M6Nv`^NY&{J-> z`(mzDJDM}QPu5i44**2Qbo(XzZ-ZDu%6vm8w@DUarqXj41VqP~ zs&4Y8F^Waik3y1fQo`bVUH;b=!^QrWb)3Gl=QVKr+6sxc=ygauUG|cm?|X=;Q)kQ8 zM(xrICifa2p``I7>g2R~?a{hmw@{!NS5`VhH8+;cV(F>B94M*S;5#O`YzZH1Z%yD? zZ61w(M`#aS-*~Fj;x|J!KM|^o;MI#Xkh0ULJcA?o4u~f%Z^16ViA27FxU5GM*rKq( z7cS~MrZ=f>_OWx8j#-Q3%!aEU2hVuTu(7`TQk-Bi6*!<}0WQi;_FpO;fhpL4`DcWp zGOw9vx0N~6#}lz(r+dxIGZM3ah-8qrqMmeRh%{z@dbUD2w15*_4P?I~UZr^anP}DB zU9CCrNiy9I3~d#&!$DX9e?A});BjBtQ7oGAyoI$8YQrkLBIH@2;lt4E^)|d6Jwj}z z&2_E}Y;H#6I4<10d_&P0{4|EUacwFHauvrjAnAm6yeR#}f}Rk27CN)vhgRqEyPMMS7zvunj2?`f;%?alsJ+-K+IzjJx>h8 zu~m_y$!J5RWAh|C<6+uiCNsOKu)E72M3xKK(a9Okw3e_*O&}7llNV!=P87VM2DkAk zci!YXS2&=P0}Hx|wwSc9JP%m8dMJA*q&VFB0yMI@5vWoAGraygwn){R+Cj6B1a2Px z5)u(K5{+;z2n*_XD!+Auv#LJEM)(~Hx{$Yb^ldQmcYF2zNH1V30*)CN_|1$v2|`LnFUT$%-tO0Eg|c5$BB~yDfzS zcOXJ$wpzVK0MfTjBJ0b$r#_OvAJ3WRt+YOLlJPYMx~qp>^$$$h#bc|`g0pF-Ao43? z>*A+8lx>}L{p(Tni2Vvk)dtzg$hUKjSjXRagj)$h#8=KV>5s)J4vGtRn5kP|AXIz! zPgbbVxW{2o4s-UM;c#We8P&mPN|DW7_uLF!a|^0S=wr6Esx9Z$2|c1?GaupU6$tb| zY_KU`(_29O_%k(;>^|6*pZURH3`@%EuKS;Ns z1lujmf;r{qAN&Q0&m{wJSZ8MeE7RM5+Sq;ul_ z`+ADrd_Um+G37js6tKsArNB}n{p*zTUxQr>3@wA;{EUbjNjlNd6$Mx zg0|MyU)v`sa~tEY5$en7^PkC=S<2@!nEdG6L=h(vT__0F=S8Y&eM=hal#7eM(o^Lu z2?^;05&|CNliYrq6gUv;|i!(W{0N)LWd*@{2q*u)}u*> z7MQgk6t9OqqXMln?zoMAJcc zMKaof_Up})q#DzdF?w^%tTI7STI^@8=Wk#enR*)&%8yje>+tKvUYbW8UAPg55xb70 zEn5&Ba~NmOJlgI#iS8W3-@N%>V!#z-ZRwfPO1)dQdQkaHsiqG|~we2ALqG7Ruup(DqSOft2RFg_X%3w?6VqvV1uzX_@F(diNVp z4{I|}35=11u$;?|JFBEE*gb;T`dy+8gWJ9~pNsecrO`t#V9jW-6mnfO@ff9od}b(3s4>p0i30gbGIv~1@a^F2kl7YO;DxmF3? zWi-RoXhzRJV0&XE@ACc?+@6?)LQ2XNm4KfalMtsc%4!Fn0rl zpHTrHwR>t>7W?t!Yc{*-^xN%9P0cs0kr=`?bQ5T*oOo&VRRu+1chM!qj%2I!@+1XF z4GWJ=7ix9;Wa@xoZ0RP`NCWw0*8247Y4jIZ>GEW7zuoCFXl6xIvz$ezsWgKdVMBH> z{o!A7f;R-@eK9Vj7R40xx)T<2$?F2E<>Jy3F;;=Yt}WE59J!1WN367 zA^6pu_zLoZIf*x031CcwotS{L8bJE(<_F%j_KJ2P_IusaZXwN$&^t716W{M6X2r_~ zaiMwdISX7Y&Qi&Uh0upS3TyEIXNDICQlT5fHXC`aji-c{U(J@qh-mWl-uMN|T&435 z5)a1dvB|oe%b2mefc=Vpm0C%IUYYh7HI*;3UdgNIz}R##(#{(_>82|zB0L*1i4B5j-xi9O4x10rs_J6*gdRBX=@VJ+==sWb&_Qc6tSOowM{BX@(zawtjl zdU!F4OYw2@Tk1L^%~JCwb|e#3CC>srRHQ*(N%!7$Mu_sKh@|*XtR>)BmWw!;8-mq7 zBBnbjwx8Kyv|hd*`5}84flTHR1Y@@uqjG`UG+jN_YK&RYTt7DVwfEDXDW4U+iO{>K zw1hr{_XE*S*K9TzzUlJH2rh^hUm2v7_XjwTuYap|>zeEDY$HOq3X4Tz^X}E9z)x4F zs+T?Ed+Hj<#jY-`Va~fT2C$=qFT-5q$@p9~0{G&eeL~tiIAHXA!f6C(rAlS^)&k<- zXU|ZVs}XQ>s5iONo~t!XXZgtaP$Iau;JT%h)>}v54yut~pykaNye4axEK#5@?TSsQ zE;Jvf9I$GVb|S`7$pG)4vgo9NXsKr?u=F!GnA%VS2z$@Z(!MR9?EPcAqi5ft)Iz6sNl`%kj+_H-X`R<>BFrBW=fSlD|{`D%@Rcbu2?%>t7i34k?Ujb)2@J-`j#4 zLK<69qcUuniIan-$A1+fR=?@+thwDIXtF1Tks@Br-xY zfB+zblrR(ke`U;6U~-;p1Kg8Lh6v~LjW@9l2P6s+?$2!ZRPX`(ZkRGe7~q(4&gEi<$ch`5kQ?*1=GSqkeV z{SA1EaW_A!t{@^UY2D^YO0(H@+kFVzZaAh0_`A`f(}G~EP~?B|%gtxu&g%^x{EYSz zk+T;_c@d;+n@$<>V%P=nk36?L!}?*=vK4>nJSm+1%a}9UlmTJTrfX4{Lb7smNQn@T zw9p2%(Zjl^bWGo1;DuMHN(djsEm)P8mEC2sL@KyPjwD@d%QnZ$ zMJ3cnn!_!iP{MzWk%PI&D?m?C(y2d|2VChluN^yHya(b`h>~GkI1y;}O_E57zOs!{ zt2C@M$^PR2U#(dZmA-sNreB@z-yb0Bf7j*yONhZG=onhx>t4)RB`r6&TP$n zgmN*)eCqvgriBO-abHQ8ECN0bw?z5Bxpx z=jF@?zFdVn?@gD5egM4o$m`}lV(CWrOKKq(sv*`mNcHcvw&Xryfw<{ch{O&qc#WCTXX6=#{MV@q#iHYba!OUY+MGeNTjP%Fj!WgM&`&RlI^=AWTOqy-o zHo9YFt!gQ*p7{Fl86>#-JLZo(b^O`LdFK~OsZBRR@6P?ad^Ujbqm_j^XycM4ZHFyg ziUbIFW#2tj`65~#2V!4z7DM8Z;fG0|APaQ{a2VNYpNotB7eZ5kp+tPDz&Lqs0j%Y4tA*URpcfi z_M(FD=fRGdqf430j}1z`O0I=;tLu81bwJXdYiN7_&a-?ly|-j*+=--XGvCq#32Gh(=|qj5F?kmihk{%M&$}udW5)DHK zF_>}5R8&&API}o0osZJRL3n~>76nUZ&L&iy^s>PMnNcYZ|9*1$v-bzbT3rpWsJ+y{ zPrg>5Zlery96Um?lc6L|)}&{992{_$J&=4%nRp9BAC6!IB=A&=tF>r8S*O-=!G(_( zwXbX_rGZgeiK*&n5E;f=k{ktyA1(;x_kiMEt0*gpp_4&(twlS2e5C?NoD{n>X2AT# zY@Zp?#!b1zNq96MQqeO*M1MMBin5v#RH52&Xd~DO6-BZLnA6xO1$sou(YJ1Dlc{WF zVa%2DyYm`V#81jP@70IJ;DX@y*iUt$MLm)ByAD$eUuji|5{ptFYq(q)mE(5bOpxjM z^Q`AHWq44SG3`_LxC9fwR)XRVIp=B%<(-lOC3jI#bb@dK(*vjom!=t|#<@dZql%>O z15y^{4tQoeW9Lu%G&V$90x6F)xN6y_oIn;!Q zs)8jT$;&;u%Y>=T3hg34A-+Y*na=|glcStr5D;&5*t5*DmD~x;zQAV5{}Ya`?RRGa zT*t9@$a~!co;pD^!J5bo?lDOWFx%)Y=-fJ+PDGc0>;=q=s?P4aHForSB+)v0WY2JH z?*`O;RHum6j%#LG)Vu#ciO#+jRC3!>T(9fr+XE7T2B7Z|0nR5jw@WG)kDDzTJ=o4~ zUpeyt7}_nd`t}j9BKqryOha{34erm)RmST)_9Aw)@ zHbiyg5n&E{_CQR@h<}34d7WM{s{%5wdty1l+KX8*?+-YkNK2Be*6&jc>@{Fd;Ps|| z26LqdI3#9le?;}risDq$K5G3yoqK}C^@-8z^wj%tdgw-6@F#Ju{Sg7+y)L?)U$ez> zoOaP$UFZ?y5BiFycir*pnaAaY+|%1%8&|(@VB)zweR%?IidwJyK5J!STzw&2RFx zZV@qeaCB01Hu#U9|1#=Msc8Pgz5P*4Lrp!Q+~(G!OiNR{qa7|r^H?FC6gVhkk3y7=uW#Sh;&>78bZ}aK*C#NH$9rX@M3f{nckYI+5QG?Aj1DM)@~z_ zw!UAD@gedTlePB*%4+55naJ8ak_;))#S;4ji!LOqY5VRI){GMwHR~}6t4g>5C_#U# ztYC!tjKjrKvRy=GAsJVK++~$|+s!w9z3H4G^mACv=EErXNSmH7qN}%PKcN|8%9=i)qS5+$L zu&ya~HW%RMVJi4T^pv?>mw*Gf<)-7gf#Qj|e#w2|v4#t!%Jk{&xlf;$_?jW*n!Pyx zkG$<18kiLOAUPuFfyu-EfWX%4jYnjBYc~~*9JEz6oa)_R|8wjZA|RNrAp%}14L7fW zi7A5Wym*K+V8pkqqO-X#3ft{0qs?KVt^)?kS>AicmeO&q+~J~ zp0YJ_P~_a8j= zsAs~G=8F=M{4GZL{|B__UorX@MRNQLn?*_gym4aW(~+i13knnk1P=khoC-ViMZk+x zLW(l}oAg1H`dU+Fv**;qw|ANDSRs>cGqL!Yw^`; zv;{E&8CNJcc)GHzTYM}f&NPw<6j{C3gaeelU#y!M)w-utYEHOCCJo|Vgp7K6C_$14 zqIrLUB0bsgz^D%V%fbo2f9#yb#CntTX?55Xy|Kps&Xek*4_r=KDZ z+`TQuv|$l}MWLzA5Ay6Cvsa^7xvwXpy?`w(6vx4XJ zWuf1bVSb#U8{xlY4+wlZ$9jjPk)X_;NFMqdgq>m&W=!KtP+6NL57`AMljW+es zzqjUjgz;V*kktJI?!NOg^s_)ph45>4UDA!Vo0hn>KZ+h-3=?Y3*R=#!fOX zP$Y~+14$f66ix?UWB_6r#fMcC^~X4R-<&OD1CSDNuX~y^YwJ>sW0j`T<2+3F9>cLo z#!j57$ll2K9(%$4>eA7(>FJX5e)pR5&EZK!IMQzOfik#FU*o*LGz~7u(8}XzIQRy- z!U7AlMTIe|DgQFmc%cHy_9^{o`eD%ja_L>ckU6$O4*U**o5uR7`FzqkU8k4gxtI=o z^P^oGFPm5jwZMI{;nH}$?p@uV8FT4r=|#GziKXK07bHJLtK}X%I0TON$uj(iJ`SY^ zc$b2CoxCQ>7LH@nxcdW&_C#fMYBtTxcg46dL{vf%EFCZ~eErMvZq&Z%Lhumnkn^4A zsx$ay(FnN7kYah}tZ@0?-0Niroa~13`?hVi6`ndno`G+E8;$<6^gsE-K3)TxyoJ4M zb6pj5=I8^FD5H@`^V#Qb2^0cx7wUz&cruA5g>6>qR5)O^t1(-qqP&1g=qvY#s&{bx zq8Hc%LsbK1*%n|Y=FfojpE;w~)G0-X4i*K3{o|J7`krhIOd*c*$y{WIKz2n2*EXEH zT{oml3Th5k*vkswuFXdGDlcLj15Nec5pFfZ*0?XHaF_lVuiB%Pv&p7z)%38}%$Gup zVTa~C8=cw%6BKn_|4E?bPNW4PT7}jZQLhDJhvf4z;~L)506IE0 zX!tWXX(QOQPRj-p80QG79t8T2^az4Zp2hOHziQlvT!|H)jv{Ixodabzv6lBj)6WRB z{)Kg@$~~(7$-az?lw$4@L%I&DI0Lo)PEJJziWP33a3azb?jyXt1v0N>2kxwA6b%l> zZqRpAo)Npi&loWbjFWtEV)783BbeIAhqyuc+~>i7aQ8shIXt)bjCWT6$~ro^>99G} z2XfmT0(|l!)XJb^E!#3z4oEGIsL(xd; zYX1`1I(cG|u#4R4T&C|m*9KB1`UzKvho5R@1eYtUL9B72{i(ir&ls8g!pD ztR|25xGaF!4z5M+U@@lQf(12?xGy`!|3E}7pI$k`jOIFjiDr{tqf0va&3pOn6Pu)% z@xtG2zjYuJXrV)DUrIF*y<1O1<$#54kZ#2;=X51J^F#0nZ0(;S$OZDt_U2bx{RZ=Q zMMdd$fH|!s{ zXq#l;{`xfV`gp&C>A`WrQU?d{!Ey5(1u*VLJt>i27aZ-^&2IIk=zP5p+{$q(K?2(b z8?9h)kvj9SF!Dr zoyF}?V|9;6abHxWk2cEvGs$-}Pg}D+ZzgkaN&$Snp%;5m%zh1E#?Wac-}x?BYlGN#U#Mek*}kek#I9XaHt?mz3*fDrRTQ#&#~xyeqJk1QJ~E$7qsw6 z?sV;|?*=-{M<1+hXoj?@-$y+(^BJ1H~wQ9G8C0#^aEAyhDduNX@haoa=PuPp zYsGv8UBfQaRHgBgLjmP^eh>fLMeh{8ic)?xz?#3kX-D#Z{;W#cd_`9OMFIaJg-=t`_3*!YDgtNQ2+QUEAJB9M{~AvT$H`E)IKmCR21H532+ata8_i_MR@ z2Xj<3w<`isF~Ah$W{|9;51ub*f4#9ziKrOR&jM{x7I_7()O@`F*5o$KtZ?fxU~g`t zUovNEVKYn$U~VX8eR)qb`7;D8pn*Pp$(otYTqL)5KH$lUS-jf}PGBjy$weoceAcPp z&5ZYB$r&P$MN{0H0AxCe4Qmd3T%M*5d4i%#!nmBCN-WU-4m4Tjxn-%j3HagwTxCZ9 z)j5vO-C7%s%D!&UfO>bi2oXiCw<-w{vVTK^rVbv#W=WjdADJy8$khnU!`ZWCIU`># zyjc^1W~pcu>@lDZ{zr6gv%)2X4n27~Ve+cQqcND%0?IFSP4sH#yIaXXYAq^z3|cg` z`I3$m%jra>e2W-=DiD@84T!cb%||k)nPmEE09NC%@PS_OLhkrX*U!cgD*;;&gIaA(DyVT4QD+q_xu z>r`tg{hiGY&DvD-)B*h+YEd+Zn)WylQl}<4>(_NlsKXCRV;a)Rcw!wtelM2_rWX`j zTh5A|i6=2BA(iMCnj_fob@*eA;V?oa4Z1kRBGaU07O70fb6-qmA$Hg$ps@^ka1=RO zTbE_2#)1bndC3VuK@e!Sftxq4=Uux}fDxXE#Q5_x=E1h>T5`DPHz zbH<_OjWx$wy7=%0!mo*qH*7N4tySm+R0~(rbus`7;+wGh;C0O%x~fEMkt!eV>U$`i z5>Q(o z=t$gPjgGh0&I7KY#k50V7DJRX<%^X z>6+ebc9efB3@eE2Tr){;?_w`vhgF>`-GDY(YkR{9RH(MiCnyRtd!LxXJ75z+?2 zGi@m^+2hKJ5sB1@Xi@s_@p_Kwbc<*LQ_`mr^Y%j}(sV_$`J(?_FWP)4NW*BIL~sR>t6 zM;qTJZ~GoY36&{h-Pf}L#y2UtR}>ZaI%A6VkU>vG4~}9^i$5WP2Tj?Cc}5oQxe2=q z8BeLa$hwCg_psjZyC2+?yX4*hJ58Wu^w9}}7X*+i5Rjqu5^@GzXiw#SUir1G1`jY% zOL=GE_ENYxhcyUrEt9XlMNP6kx6h&%6^u3@zB8KUCAa18T(R2J`%JjWZ z!{7cXaEW+Qu*iJPu+m>QqW}Lo$4Z+!I)0JNzZ&_M%=|B1yejFRM04bGAvu{=lNPd+ zJRI^DRQ(?FcVUD+bgEcAi@o(msqys9RTCG#)TjI!9~3-dc`>gW;HSJuQvH~d`MQs86R$|SKXHh zqS9Qy)u;T`>>a!$LuaE2keJV%;8g)tr&Nnc;EkvA-RanHXsy)D@XN0a>h}z2j81R; zsUNJf&g&rKpuD0WD@=dDrPHdBoK42WoBU|nMo17o(5^;M|dB4?|FsAGVrSyWcI`+FVw^vTVC`y}f(BwJl zrw3Sp151^9=}B})6@H*i4-dIN_o^br+BkcLa^H56|^2XsT0dESw2 zMX>(KqNl=x2K5=zIKg}2JpGAZu{I_IO}0$EQ5P{4zol**PCt3F4`GX}2@vr8#Y)~J zKb)gJeHcFnR@4SSh%b;c%J`l=W*40UPjF#q{<}ywv-=vHRFmDjv)NtmC zQx9qm)d%0zH&qG7AFa3VAU1S^(n8VFTC~Hb+HjYMjX8r#&_0MzlNR*mnLH5hi}`@{ zK$8qiDDvS_(L9_2vHgzEQ${DYSE;DqB!g*jhJghE&=LTnbgl&Xepo<*uRtV{2wDHN z)l;Kg$TA>Y|K8Lc&LjWGj<+bp4Hiye_@BfU(y#nF{fpR&|Ltbye?e^j0}8JC4#xi% zv29ZR%8%hk=3ZDvO-@1u8KmQ@6p%E|dlHuy#H1&MiC<*$YdLkHmR#F3ae;bKd;@*i z2_VfELG=B}JMLCO-6UQy^>RDE%K4b>c%9ki`f~Z2Qu8hO7C#t%Aeg8E%+}6P7Twtg z-)dj(w}_zFK&86KR@q9MHicUAucLVshUdmz_2@32(V`y3`&Kf8Q2I)+!n0mR=rrDU zXvv^$ho;yh*kNqJ#r1}b0|i|xRUF6;lhx$M*uG3SNLUTC@|htC z-=fsw^F%$qqz4%QdjBrS+ov}Qv!z00E+JWas>p?z@=t!WWU3K*?Z(0meTuTOC7OTx zU|kFLE0bLZ+WGcL$u4E}5dB0g`h|uwv3=H6f+{5z9oLv-=Q45+n~V4WwgO=CabjM% zBAN+RjM65(-}>Q2V#i1Na@a0`08g&y;W#@sBiX6Tpy8r}*+{RnyGUT`?XeHSqo#|J z^ww~c;ou|iyzpErDtlVU=`8N7JSu>4M z_pr9=tX0edVn9B}YFO2y(88j#S{w%E8vVOpAboK*27a7e4Ekjt0)hIX99*1oE;vex z7#%jhY=bPijA=Ce@9rRO(Vl_vnd00!^TAc<+wVvRM9{;hP*rqEL_(RzfK$er_^SN; z)1a8vo8~Dr5?;0X0J62Cusw$A*c^Sx1)dom`-)Pl7hsW4i(r*^Mw`z5K>!2ixB_mu z*Ddqjh}zceRFdmuX1akM1$3>G=#~|y?eYv(e-`Qy?bRHIq=fMaN~fB zUa6I8Rt=)jnplP>yuS+P&PxeWpJ#1$F`iqRl|jF$WL_aZFZl@kLo&d$VJtu&w?Q0O zzuXK>6gmygq(yXJy0C1SL}T8AplK|AGNUOhzlGeK_oo|haD@)5PxF}rV+5`-w{Aag zus45t=FU*{LguJ11Sr-28EZkq;!mJO7AQGih1L4rEyUmp>B!%X0YemsrV3QFvlgt* z5kwlPzaiJ+kZ^PMd-RRbl(Y?F*m`4*UIhIuf#8q>H_M=fM*L_Op-<_r zBZagV=4B|EW+KTja?srADTZXCd3Yv%^Chfpi)cg{ED${SI>InNpRj5!euKv?=Xn92 zsS&FH(*w`qLIy$doc>RE&A5R?u zzkl1sxX|{*fLpXvIW>9d<$ePROttn3oc6R!sN{&Y+>Jr@yeQN$sFR z;w6A<2-0%UA?c8Qf;sX7>>uKRBv3Ni)E9pI{uVzX|6Bb0U)`lhLE3hK58ivfRs1}d zNjlGK0hdq0qjV@q1qI%ZFMLgcpWSY~mB^LK)4GZ^h_@H+3?dAe_a~k*;9P_d7%NEFP6+ zgV(oGr*?W(ql?6SQ~`lUsjLb%MbfC4V$)1E0Y_b|OIYxz4?O|!kRb?BGrgiH5+(>s zoqM}v*;OBfg-D1l`M6T6{K`LG+0dJ1)!??G5g(2*vlNkm%Q(MPABT$r13q?|+kL4- zf)Mi5r$sn;u41aK(K#!m+goyd$c!KPl~-&-({j#D4^7hQkV3W|&>l_b!}!z?4($OA z5IrkfuT#F&S1(`?modY&I40%gtroig{YMvF{K{>5u^I51k8RriGd${z)=5k2tG zM|&Bp5kDTfb#vfuTTd?)a=>bX=lokw^y9+2LS?kwHQIWI~pYgy7 zb?A-RKVm_vM5!9?C%qYdfRAw& zAU7`up~%g=p@}pg#b7E)BFYx3g%(J36Nw(Dij!b>cMl@CSNbrW!DBDbTD4OXk!G4x zi}JBKc8HBYx$J~31PXH+4^x|UxK~(<@I;^3pWN$E=sYma@JP|8YL`L(zI6Y#c%Q{6 z*APf`DU$S4pr#_!60BH$FGViP14iJmbrzSrOkR;f3YZa{#E7Wpd@^4E-zH8EgPc-# zKWFPvh%WbqU_%ZEt`=Q?odKHc7@SUmY{GK`?40VuL~o)bS|is$Hn=<=KGHOsEC5tB zFb|q}gGlL97NUf$G$>^1b^3E18PZ~Pm9kX%*ftnolljiEt@2#F2R5ah$zbXd%V_Ev zyDd{1o_uuoBga$fB@Fw!V5F3jIr=a-ykqrK?WWZ#a(bglI_-8pq74RK*KfQ z0~Dzus7_l;pMJYf>Bk`)`S8gF!To-BdMnVw5M-pyu+aCiC5dwNH|6fgRsIKZcF&)g zr}1|?VOp}I3)IR@m1&HX1~#wsS!4iYqES zK}4J{Ei>;e3>LB#Oly>EZkW14^@YmpbgxCDi#0RgdM${&wxR+LiX}B+iRioOB0(pDKpVEI;ND?wNx>%e|m{RsqR_{(nmQ z3ZS}@t!p4a(BKx_-CYwrcyJ5u1TO9bcXti$8sy>xcLKqKCc#~UOZYD{llKTSFEjJ~ zyNWt>tLU}*>^`TvPxtP%F`ZJQw@W0^>x;!^@?k_)9#bF$j0)S3;mH-IR5y82l|%=F z2lR8zhP?XNP-ucZZ6A+o$xOyF!w;RaLHGh57GZ|TCXhJqY~GCh)aXEV$1O&$c}La1 zjuJxkY9SM4av^Hb;i7efiYaMwI%jGy`3NdY)+mcJhF(3XEiSlU3c|jMBi|;m-c?~T z+x0_@;SxcoY=(6xNgO$bBt~Pj8`-<1S|;Bsjrzw3@zSjt^JC3X3*$HI79i~!$RmTz zsblZsLYs7L$|=1CB$8qS!tXrWs!F@BVuh?kN(PvE5Av-*r^iYu+L^j^m9JG^#=m>@ z=1soa)H*w6KzoR$B8mBCXoU;f5^bVuwQ3~2LKg!yxomG1#XPmn(?YH@E~_ED+W6mxs%x{%Z<$pW`~ON1~2XjP5v(0{C{+6Dm$00tsd3w=f=ZENy zOgb-=f}|Hb*LQ$YdWg<(u7x3`PKF)B7ZfZ6;1FrNM63 z?O6tE%EiU@6%rVuwIQjvGtOofZBGZT1Sh(xLIYt9c4VI8`!=UJd2BfLjdRI#SbVAX ziT(f*RI^T!IL5Ac>ql7uduF#nuCRJ1)2bdvAyMxp-5^Ww5p#X{rb5)(X|fEhDHHW{ zw(Lfc$g;+Q`B0AiPGtmK%*aWfQQ$d!*U<|-@n2HZvCWSiw^I>#vh+LyC;aaVWGbmkENr z&kl*8o^_FW$T?rDYLO1Pyi%>@&kJKQoH2E0F`HjcN}Zlnx1ddoDA>G4Xu_jyp6vuT zPvC}pT&Owx+qB`zUeR|4G;OH(<<^_bzkjln0k40t`PQxc$7h(T8Ya~X+9gDc8Z9{Z z&y0RAU}#_kQGrM;__MK9vwIwK^aoqFhk~dK!ARf1zJqHMxF2?7-8|~yoO@_~Ed;_wvT%Vs{9RK$6uUQ|&@#6vyBsFK9eZW1Ft#D2)VpQRwpR(;x^ zdoTgMqfF9iBl%{`QDv7B0~8{8`8k`C4@cbZAXBu00v#kYl!#_Wug{)2PwD5cNp?K^ z9+|d-4z|gZ!L{57>!Ogfbzchm>J1)Y%?NThxIS8frAw@z>Zb9v%3_3~F@<=LG%r*U zaTov}{{^z~SeX!qgSYow`_5)ij*QtGp4lvF`aIGQ>@3ZTkDmsl#@^5*NGjOuu82}o zzLF~Q9SW+mP=>88%eSA1W4_W7-Q>rdq^?t=m6}^tDPaBRGFLg%ak93W!kOp#EO{6& zP%}Iff5HZQ9VW$~+9r=|Quj#z*=YwcnssS~9|ub2>v|u1JXP47vZ1&L1O%Z1DsOrDfSIMHU{VT>&>H=9}G3i@2rP+rx@eU@uE8rJNec zij~#FmuEBj03F1~ct@C@$>y)zB+tVyjV3*n`mtAhIM0$58vM9jOQC}JJOem|EpwqeMuYPxu3sv}oMS?S#o6GGK@8PN59)m&K4Dc&X% z(;XL_kKeYkafzS3Wn5DD>Yiw{LACy_#jY4op(>9q>>-*9@C0M+=b#bknAWZ37^(Ij zq>H%<@>o4a#6NydoF{_M4i4zB_KG)#PSye9bk0Ou8h%1Dtl7Q_y#7*n%g)?m>xF~( zjqvOwC;*qvN_3(*a+w2|ao0D?@okOvg8JskUw(l7n`0fncglavwKd?~l_ryKJ^Ky! zKCHkIC-o7%fFvPa$)YNh022lakMar^dgL=t#@XLyNHHw!b?%WlM)R@^!)I!smZL@k zBi=6wE5)2v&!UNV(&)oOYW(6Qa!nUjDKKBf-~Da=#^HE4(@mWk)LPvhyN3i4goB$3K8iV7uh zsv+a?#c4&NWeK(3AH;ETrMOIFgu{_@%XRwCZ;L=^8Ts)hix4Pf3yJRQ<8xb^CkdmC z?c_gB)XmRsk`9ch#tx4*hO=#qS7={~Vb4*tTf<5P%*-XMfUUYkI9T1cEF;ObfxxI-yNuA=I$dCtz3ey znVkctYD*`fUuZ(57+^B*R=Q}~{1z#2!ca?)+YsRQb+lt^LmEvZt_`=j^wqig+wz@n@ z`LIMQJT3bxMzuKg8EGBU+Q-6cs5(@5W?N>JpZL{$9VF)veF`L5%DSYTNQEypW%6$u zm_~}T{HeHj1bAlKl8ii92l9~$dm=UM21kLemA&b$;^!wB7#IKWGnF$TVq!!lBlG4 z{?Rjz?P(uvid+|i$VH?`-C&Gcb3{(~Vpg`w+O);Wk1|Mrjxrht0GfRUnZqz2MhrXa zqgVC9nemD5)H$to=~hp)c=l9?#~Z_7i~=U-`FZxb-|TR9@YCxx;Zjo-WpMNOn2)z) zFPGGVl%3N$f`gp$gPnWC+f4(rmts%fidpo^BJx72zAd7|*Xi{2VXmbOm)1`w^tm9% znM=0Fg4bDxH5PxPEm{P3#A(mxqlM7SIARP?|2&+c7qmU8kP&iApzL|F>Dz)Ixp_`O zP%xrP1M6@oYhgo$ZWwrAsYLa4 z|I;DAvJxno9HkQrhLPQk-8}=De{9U3U%)dJ$955?_AOms!9gia%)0E$Mp}$+0er@< zq7J&_SzvShM?e%V?_zUu{niL@gt5UFOjFJUJ}L?$f%eU%jUSoujr{^O=?=^{19`ON zlRIy8Uo_nqcPa6@yyz`CM?pMJ^^SN^Fqtt`GQ8Q#W4kE7`V9^LT}j#pMChl!j#g#J zr-=CCaV%xyFeQ9SK+mG(cTwW*)xa(eK;_Z(jy)woZp~> zA(4}-&VH+TEeLzPTqw&FOoK(ZjD~m{KW05fiGLe@E3Z2`rLukIDahE*`u!ubU)9`o zn^-lyht#E#-dt~S>}4y$-mSbR8{T@}22cn^refuQ08NjLOv?JiEWjyOnzk<^R5%gO zhUH_B{oz~u#IYwVnUg8?3P*#DqD8#X;%q%HY**=I>>-S|!X*-!x1{^l#OnR56O>iD zc;i;KS+t$koh)E3)w0OjWJl_aW2;xF=9D9Kr>)(5}4FqUbk# zI#$N8o0w;IChL49m9CJTzoC!|u{Ljd%ECgBOf$}&jA^$(V#P#~)`&g`H8E{uv52pp zwto`xUL-L&WTAVREEm$0g_gYPL(^vHq(*t1WCH_6alhkeW&GCZ3hL)|{O-jiFOBrF z!EW=Jej|dqQitT6!B-7&io2K)WIm~Q)v@yq%U|VpV+I?{y0@Yd%n8~-NuuM*pM~KA z85YB};IS~M(c<}4Hxx>qRK0cdl&e?t253N%vefkgds>Ubn8X}j6Vpgs>a#nFq$osY z1ZRwLqFv=+BTb=i%D2Wv>_yE0z}+niZ4?rE|*a3d7^kndWGwnFqt+iZ(7+aln<}jzbAQ(#Z2SS}3S$%Bd}^ zc9ghB%O)Z_mTZMRC&H#)I#fiLuIkGa^`4e~9oM5zKPx?zjkC&Xy0~r{;S?FS%c7w< zWbMpzc(xSw?9tGxG~_l}Acq}zjt5ClaB7-!vzqnlrX;}$#+PyQ9oU)_DfePh2E1<7 ztok6g6K^k^DuHR*iJ?jw?bs_whk|bx`dxu^nC6#e{1*m~z1eq7m}Cf$*^Eua(oi_I zAL+3opNhJteu&mWQ@kQWPucmiP)4|nFG`b2tpC;h{-PI@`+h?9v=9mn|0R-n8#t=+Z*FD(c5 zjj79Jxkgck*DV=wpFgRZuwr%}KTm+dx?RT@aUHJdaX-ODh~gByS?WGx&czAkvkg;x zrf92l8$Or_zOwJVwh>5rB`Q5_5}ef6DjS*$x30nZbuO3dijS*wvNEqTY5p1_A0gWr znH<(Qvb!os14|R)n2Ost>jS2;d1zyLHu`Svm|&dZD+PpP{Bh>U&`Md;gRl64q;>{8MJJM$?UNUd`aC>BiLe>*{ zJY15->yW+<3rLgYeTruFDtk1ovU<$(_y7#HgUq>)r0{^}Xbth}V#6?%5jeFYt;SG^ z3qF)=uWRU;Jj)Q}cpY8-H+l_n$2$6{ZR?&*IGr{>ek!69ZH0ZoJ*Ji+ezzlJ^%qL3 zO5a`6gwFw(moEzqxh=yJ9M1FTn!eo&qD#y5AZXErHs%22?A+JmS&GIolml!)rZTnUDM3YgzYfT#;OXn)`PWv3Ta z!-i|-Wojv*k&bC}_JJDjiAK(Ba|YZgUI{f}TdEOFT2+}nPmttytw7j%@bQZDV1vvj z^rp{gRkCDmYJHGrE1~e~AE!-&6B6`7UxVQuvRrfdFkGX8H~SNP_X4EodVd;lXd^>eV1jN+Tt4}Rsn)R0LxBz0c=NXU|pUe!MQQFkGBWbR3&(jLm z%RSLc#p}5_dO{GD=DEFr=Fc% z85CBF>*t!6ugI?soX(*JNxBp+-DdZ4X0LldiK}+WWGvXV(C(Ht|!3$psR=&c*HIM=BmX;pRIpz@Ale{9dhGe(U2|Giv;# zOc|;?p67J=Q(kamB*aus=|XP|m{jN^6@V*Bpm?ye56Njh#vyJqE=DweC;?Rv7faX~ zde03n^I~0B2vUmr;w^X37tVxUK?4}ifsSH5_kpKZIzpYu0;Kv}SBGfI2AKNp+VN#z`nI{UNDRbo-wqa4NEls zICRJpu)??cj^*WcZ^MAv+;bDbh~gpN$1Cor<{Y2oyIDws^JsfW^5AL$azE(T0p&pP z1Mv~6Q44R&RHoH95&OuGx2srIr<@zYJTOMKiVs;Bx3py89I87LOb@%mr`0)#;7_~Z zzcZj8?w=)>%5@HoCHE_&hnu(n_yQ-L(~VjpjjkbT7e)Dk5??fApg(d>vwLRJ-x{um z*Nt?DqTSxh_MIyogY!vf1mU1`Gld-&L)*43f6dilz`Q@HEz;+>MDDYv9u!s;WXeao zUq=TaL$P*IFgJzrGc>j1dDOd zed+=ZBo?w4mr$2)Ya}?vedDopomhW1`#P<%YOJ_j=WwClX0xJH-f@s?^tmzs_j7t!k zK@j^zS0Q|mM4tVP5Ram$VbS6|YDY&y?Q1r1joe9dj08#CM{RSMTU}(RCh`hp_Rkl- zGd|Cv~G@F{DLhCizAm9AN!^{rNs8hu!G@8RpnGx7e`-+K$ffN<0qjR zGq^$dj_Tv!n*?zOSyk5skI7JVKJ)3jysnjIu-@VSzQiP8r6MzudCU=~?v-U8yzo^7 zGf~SUTvEp+S*!X9uX!sq=o}lH;r{pzk~M*VA(uyQ`3C8!{C;)&6)95fv(cK!%Cuz$ z_Zal57H6kPN>25KNiI6z6F)jzEkh#%OqU#-__Xzy)KyH};81#N6OfX$$IXWzOn`Q& z4f$Z1t>)8&8PcYfEwY5UadU1yg+U*(1m2ZlHoC-!2?gB!!fLhmTl))D@dhvkx#+Yj z1O=LV{(T%{^IeCuFK>%QR!VZ4GnO5tK8a+thWE zg4VytZrwcS?7^ zuZfhYnB8dwd%VLO?DK7pV5Wi<(`~DYqOXn8#jUIL^)12*Dbhk4GmL_E2`WX&iT16o zk(t|hok(Y|v-wzn?4x34T)|+SfZP>fiq!><*%vnxGN~ypST-FtC+@TPv*vYv@iU!_ z@2gf|PrgQ?Ktf*9^CnJ(x*CtZVB8!OBfg0%!wL;Z8(tYYre0vcnPGlyCc$V(Ipl*P z_(J!a=o@vp^%Efme!K74(Ke7A>Y}|sxV+JL^aYa{~m%5#$$+R1? zGaQhZTTX!#s#=Xtpegqero$RNt&`4xn3g$)=y*;=N=Qai)}~`xtxI_N*#MMCIq#HFifT zz(-*m;pVH&+4bixL&Bbg)W5FN^bH87pAHp)zPkWNMfTFqS=l~AC$3FX3kQUSh_C?-ZftyClgM)o_D7cX$RGlEYblux0jv5 zTr|i-I3@ZPCGheCl~BGhImF)K4!9@?pC(gi3ozX=a!|r1)LFxy_8c&wY0<^{2cm|P zv6Y`QktY*;I)IUd5y3ne1CqpVanlY45z8hf4&$EUBnucDj16pDa4&GI&TArYhf*xh zdj>*%APH8(h~c>o@l#%T>R$e>rwVx_WUB|~V`p^JHsg*y12lzj&zF}w6W09HwB2yb z%Q~`es&(;7#*DUC_w-Dmt7|$*?TA_m;zB+-u{2;Bg{O}nV7G_@7~<)Bv8fH^G$XG8$(&{A zwXJK5LRK%M34(t$&NI~MHT{UQ9qN-V_yn|%PqC81EIiSzmMM=2zb`mIwiP_b)x+2M z7Gd`83h79j#SItpQ}luuf2uOU`my_rY5T{6P#BNlb%h%<#MZb=m@y5aW;#o1^2Z)SWo+b`y0gV^iRcZtz5!-05vF z7wNo=hc6h4hc&s@uL^jqRvD6thVYtbErDK9k!;+a0xoE0WL7zLixjn5;$fXvT=O3I zT6jI&^A7k6R{&5#lVjz#8%_RiAa2{di{`kx79K+j72$H(!ass|B%@l%KeeKchYLe_ z>!(JC2fxsv>XVen+Y42GeYPxMWqm`6F$(E<6^s|g(slNk!lL*6v^W2>f6hh^mE$s= z3D$)}{V5(Qm&A6bp%2Q}*GZ5Qrf}n7*Hr51?bJOyA-?B4vg6y_EX<*-e20h{=0Mxs zbuQGZ$fLyO5v$nQ&^kuH+mNq9O#MWSfThtH|0q1i!NrWj^S}_P;Q1OkYLW6U^?_7G zx2wg?CULj7))QU(n{$0JE%1t2dWrMi2g-Os{v|8^wK{@qlj%+1b^?NI z$}l2tjp0g>K3O+p%yK<9!XqmQ?E9>z&(|^Pi~aSRwI5x$jaA62GFz9%fmO3t3a>cq zK8Xbv=5Ps~4mKN5+Eqw12(!PEyedFXv~VLxMB~HwT1Vfo51pQ#D8e$e4pFZ{&RC2P z5gTIzl{3!&(tor^BwZfR8j4k{7Rq#`riKXP2O-Bh66#WWK2w=z;iD9GLl+3 zpHIaI4#lQ&S-xBK8PiQ%dwOh?%BO~DCo06pN7<^dnZCN@NzY{_Z1>rrB0U|nC&+!2 z2y!oBcTd2;@lzyk(B=TkyZ)zy0deK05*Q0zk+o$@nun`VI1Er7pjq>8V zNmlW{p7S^Btgb(TA}jL(uR>`0w8gHP^T~Sh5Tkip^spk4SBAhC{TZU}_Z)UJw-}zm zPq{KBm!k)?P{`-(9?LFt&YN4s%SIZ-9lJ!Ws~B%exHOeVFk3~}HewnnH(d)qkLQ_d z6h>O)pEE{vbOVw}E+jdYC^wM+AAhaI(YAibUc@B#_mDss0Ji&BK{WG`4 zOk>vSNq(Bq2IB@s>>Rxm6Wv?h;ZXkpb1l8u|+_qXWdC*jjcPCixq;!%BVPSp#hP zqo`%cNf&YoQXHC$D=D45RiT|5ngPlh?0T~?lUf*O)){K@*Kbh?3RW1j9-T?%lDk@y z4+~?wKI%Y!-=O|_IuKz|=)F;V7ps=5@g)RrE;;tvM$gUhG>jHcw2Hr@fS+k^Zr~>G z^JvPrZc}_&d_kEsqAEMTMJw!!CBw)u&ZVzmq+ZworuaE&TT>$pYsd9|g9O^0orAe8 z221?Va!l1|Y5X1Y?{G7rt1sX#qFA^?RLG^VjoxPf63;AS=_mVDfGJKg73L zsGdnTUD40y(>S##2l|W2Cy!H(@@5KBa(#gs`vlz}Y~$ot5VsqPQ{{YtjYFvIumZzt zA{CcxZLJR|4#{j7k~Tu*jkwz8QA|5G1$Cl895R`Zyp;irp1{KN){kB30O8P1W5;@bG znvX74roeMmQlUi=v9Y%(wl$ZC#9tKNFpvi3!C}f1m6Ct|l2g%psc{TJp)@yu)*e2> z((p0Fg*8gJ!|3WZke9;Z{8}&NRkv7iP=#_y-F}x^y?2m%-D_aj^)f04%mneyjo_;) z6qc_Zu$q37d~X``*eP~Q>I2gg%rrV8v=kDfpp$=%Vj}hF)^dsSWygoN(A$g*E=Do6FX?&(@F#7pbiJ`;c0c@Ul zDqW_90Wm#5f2L<(Lf3)3TeXtI7nhYwRm(F;*r_G6K@OPW4H(Y3O5SjUzBC}u3d|eQ8*8d@?;zUPE+i#QNMn=r(ap?2SH@vo*m z3HJ%XuG_S6;QbWy-l%qU;8x;>z>4pMW7>R}J%QLf%@1BY(4f_1iixd-6GlO7Vp*yU zp{VU^3?s?90i=!#>H`lxT!q8rk>W_$2~kbpz7eV{3wR|8E=8**5?qn8#n`*(bt1xRQrdGxyx2y%B$qmw#>ZV$c7%cO#%JM1lY$Y0q?Yuo> ze9KdJoiM)RH*SB%^;TAdX-zEjA7@%y=!0=Zg%iWK7jVI9b&Dk}0$Af&08KHo+ zOwDhFvA(E|ER%a^cdh@^wLUlmIv6?_3=BvX8jKk92L=Y}7Jf5OGMfh` zBdR1wFCi-i5@`9km{isRb0O%TX+f~)KNaEz{rXQa89`YIF;EN&gN)cigu6mNh>?Cm zAO&Im2flv6D{jwm+y<%WsPe4!89n~KN|7}Cb{Z;XweER73r}Qp2 zz}WP4j}U0&(uD&9yGy6`!+_v-S(yG*iytsTR#x_Rc>=6u^vnRDnf1gP{#2>`ffrAC% zTZ5WQ@hAK;P;>kX{D)mIXe4%a5p=LO1xXH@8T?mz7Q@d)$3pL{{B!2{-v70L*o1AO+|n5beiw~ zk@(>m?T3{2k2c;NWc^`4@P&Z?BjxXJ@;x1qhn)9Mn*IFdt_J-dIqx5#d`NfyfX~m( zIS~5)MfZ2Uy?_4W`47i}u0ZgPh<{D|w_d#;D}Q&U$Q-G}xM1A@1f{#%A$jh6Qp&0hQ<0bPOM z-{1Wm&p%%#eb_?x7i;bol EfAhh=DF6Tf literal 0 HcmV?d00001 diff --git a/.mvn/wrapper/maven-wrapper.properties b/.mvn/wrapper/maven-wrapper.properties new file mode 100644 index 0000000..ffdc10e --- /dev/null +++ b/.mvn/wrapper/maven-wrapper.properties @@ -0,0 +1,2 @@ +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.1/apache-maven-3.8.1-bin.zip +wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar diff --git a/.npmrc b/.npmrc new file mode 100644 index 0000000..34e3360 --- /dev/null +++ b/.npmrc @@ -0,0 +1,6 @@ +# +# NOTICE: this is an auto-generated file +# +# This file sets the default parameters for manual `pnpm install`. +# +shamefully-hoist=true diff --git a/.prettierrc.js b/.prettierrc.js new file mode 100644 index 0000000..783d42f --- /dev/null +++ b/.prettierrc.js @@ -0,0 +1,4 @@ +module.exports = { + singleQuote: true, + printWidth: 120, +}; diff --git a/LICENSE.md b/LICENSE.md new file mode 100644 index 0000000..cf1ab25 --- /dev/null +++ b/LICENSE.md @@ -0,0 +1,24 @@ +This is free and unencumbered software released into the public domain. + +Anyone is free to copy, modify, publish, use, compile, sell, or +distribute this software, either in source code form or as a compiled +binary, for any purpose, commercial or non-commercial, and by any +means. + +In jurisdictions that recognize copyright laws, the author or authors +of this software dedicate any and all copyright interest in the +software to the public domain. We make this dedication for the benefit +of the public at large and to the detriment of our heirs and +successors. We intend this dedication to be an overt act of +relinquishment in perpetuity of all present and future rights to this +software under copyright law. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR +OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + +For more information, please refer to diff --git a/README.md b/README.md new file mode 100644 index 0000000..b2cfae5 --- /dev/null +++ b/README.md @@ -0,0 +1,47 @@ +# My App + +This project can be used as a starting point to create your own Vaadin application with Spring Boot. +It contains all the necessary configuration and some placeholder files to get you started. + +## Running the application + +The project is a standard Maven project. To run it from the command line, +type `mvnw` (Windows), or `./mvnw` (Mac & Linux), then open +http://localhost:8080 in your browser. + +You can also import the project to your IDE of choice as you would with any +Maven project. Read more on [how to import Vaadin projects to different +IDEs](https://vaadin.com/docs/latest/guide/step-by-step/importing) (Eclipse, IntelliJ IDEA, NetBeans, and VS Code). + +## Deploying to Production + +To create a production build, call `mvnw clean package -Pproduction` (Windows), +or `./mvnw clean package -Pproduction` (Mac & Linux). +This will build a JAR file with all the dependencies and front-end resources, +ready to be deployed. The file can be found in the `target` folder after the build completes. + +Once the JAR file is built, you can run it using +`java -jar target/myapp-1.0-SNAPSHOT.jar` + +## Project structure + +- `MainLayout.java` in `src/main/java` contains the navigation setup (i.e., the + side/top bar and the main menu). This setup uses + [App Layout](https://vaadin.com/docs/components/app-layout). +- `views` package in `src/main/java` contains the server-side Java views of your application. +- `views` folder in `frontend/` contains the client-side JavaScript views of your application. +- `themes` folder in `frontend/` contains the custom CSS styles. + +## Useful links + +- Read the documentation at [vaadin.com/docs](https://vaadin.com/docs). +- Follow the tutorials at [vaadin.com/tutorials](https://vaadin.com/tutorials). +- Watch training videos and get certified at [vaadin.com/learn/training](https://vaadin.com/learn/training). +- Create new projects at [start.vaadin.com](https://start.vaadin.com/). +- Search UI components and their usage examples at [vaadin.com/components](https://vaadin.com/components). +- View use case applications that demonstrate Vaadin capabilities at [vaadin.com/examples-and-demos](https://vaadin.com/examples-and-demos). +- Build any UI without custom CSS by discovering Vaadin's set of [CSS utility classes](https://vaadin.com/docs/styling/lumo/utility-classes). +- Find a collection of solutions to common use cases at [cookbook.vaadin.com](https://cookbook.vaadin.com/). +- Find add-ons at [vaadin.com/directory](https://vaadin.com/directory). +- Ask questions on [Stack Overflow](https://stackoverflow.com/questions/tagged/vaadin) or join our [Discord channel](https://discord.gg/MYFq5RTbBn). +- Report issues, create pull requests in [GitHub](https://github.com/vaadin). diff --git a/frontend/themes/myapp/main-layout.css b/frontend/themes/myapp/main-layout.css new file mode 100644 index 0000000..307ecff --- /dev/null +++ b/frontend/themes/myapp/main-layout.css @@ -0,0 +1,57 @@ +vaadin-app-layout[primary-section="navbar"]::part(navbar)::before { + background: var(--lumo-base-color) linear-gradient(var(--lumo-contrast-5pct), var(--lumo-contrast-5pct)); +} + +vaadin-app-layout[primary-section="drawer"]::part(navbar)::before { + background: var(--lumo-base-color); +} + +vaadin-app-layout[primary-section="drawer"]::part(navbar) { + box-shadow: 0 1px 0 0 var(--lumo-contrast-10pct); +} + +vaadin-app-layout[primary-section="drawer"]:not([overlay])::part(drawer) { + background: var(--lumo-shade-5pct); + border: 0; + box-shadow: 1px 0 0 0 var(--lumo-contrast-10pct), 1px 0 0 0 var(--lumo-base-color); + z-index: 1; +} + +vaadin-drawer-toggle[slot="navbar"] { + color: var(--lumo-secondary-text-color); +} + +::part(navbar) { + min-height: var(--lumo-size-xl); +} + +::part(drawer) { + display: flex; + flex-direction: column; +} + +vaadin-scroller[slot="drawer"] { + flex: 1; + padding: var(--lumo-space-s); +} + +vaadin-scroller[slot="drawer"][overflow~="top"] { + border-top: 1px solid var(--lumo-contrast-10pct); +} + +vaadin-scroller[slot="drawer"][overflow~="bottom"] { + border-bottom: 1px solid var(--lumo-contrast-10pct); +} + +[slot="drawer"]:is(header, footer) { + display: flex; + align-items: center; + gap: var(--lumo-space-s); + padding: var(--lumo-space-s) var(--lumo-space-m); + min-height: var(--lumo-size-xl); + box-sizing: border-box; +} + +[slot="drawer"]:is(header, footer):is(:empty) { + display: none; +} diff --git a/frontend/themes/myapp/styles.css b/frontend/themes/myapp/styles.css new file mode 100644 index 0000000..d3ce3ad --- /dev/null +++ b/frontend/themes/myapp/styles.css @@ -0,0 +1,4 @@ +@import url('./main-layout.css'); +@import url('./views/master-detail-person-view.css'); +@import url('./views/master-detail-book-view.css'); +@import url('line-awesome/dist/line-awesome/css/line-awesome.min.css'); \ No newline at end of file diff --git a/frontend/themes/myapp/theme.json b/frontend/themes/myapp/theme.json new file mode 100644 index 0000000..0f7a81f --- /dev/null +++ b/frontend/themes/myapp/theme.json @@ -0,0 +1,3 @@ +{ + "lumoImports" : [ "typography", "color", "spacing", "badge", "utility" ] +} \ No newline at end of file diff --git a/frontend/themes/myapp/views/master-detail-book-view.css b/frontend/themes/myapp/views/master-detail-book-view.css new file mode 100644 index 0000000..fabd762 --- /dev/null +++ b/frontend/themes/myapp/views/master-detail-book-view.css @@ -0,0 +1,44 @@ +.master-detail-book-view { + display: flex; + flex-direction: column; + height: 100%; +} + +.master-detail-book-view vaadin-split-layout { + width: 100%; + height: 100%; +} + +.master-detail-book-view vaadin-grid { + height: 100%; +} + +.master-detail-book-view .editor-layout { + display: flex; + flex-direction: column; + width: 400px; +} + +.master-detail-book-view .editor { + flex-grow: 1; + padding: var(--lumo-space-l); +} + +.master-detail-book-view .editor vaadin-checkbox { + padding-top: var(--lumo-space-m); +} + +.master-detail-book-view .button-layout { + width: 100%; + flex-wrap: wrap; + background-color: var(--lumo-contrast-5pct); + padding-bottom: var(--lumo-space-s); + padding-top: var(--lumo-space-s); + padding-left: var(--lumo-space-l); + padding-right: var(--lumo-space-l); + gap: var(--lumo-space-m); +} + +.master-detail-book-view .grid-wrapper { + width: 100%; +} diff --git a/frontend/themes/myapp/views/master-detail-person-view.css b/frontend/themes/myapp/views/master-detail-person-view.css new file mode 100644 index 0000000..fa63d33 --- /dev/null +++ b/frontend/themes/myapp/views/master-detail-person-view.css @@ -0,0 +1,44 @@ +.master-detail-person-view { + display: flex; + flex-direction: column; + height: 100%; +} + +.master-detail-person-view vaadin-split-layout { + width: 100%; + height: 100%; +} + +.master-detail-person-view vaadin-grid { + height: 100%; +} + +.master-detail-person-view .editor-layout { + display: flex; + flex-direction: column; + width: 400px; +} + +.master-detail-person-view .editor { + flex-grow: 1; + padding: var(--lumo-space-l); +} + +.master-detail-person-view .editor vaadin-checkbox { + padding-top: var(--lumo-space-m); +} + +.master-detail-person-view .button-layout { + width: 100%; + flex-wrap: wrap; + background-color: var(--lumo-contrast-5pct); + padding-bottom: var(--lumo-space-s); + padding-top: var(--lumo-space-s); + padding-left: var(--lumo-space-l); + padding-right: var(--lumo-space-l); + gap: var(--lumo-space-m); +} + +.master-detail-person-view .grid-wrapper { + width: 100%; +} diff --git a/mvnw b/mvnw new file mode 100755 index 0000000..41c0f0c --- /dev/null +++ b/mvnw @@ -0,0 +1,310 @@ +#!/bin/sh +# ---------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# ---------------------------------------------------------------------------- + +# ---------------------------------------------------------------------------- +# Maven Start Up Batch script +# +# Required ENV vars: +# ------------------ +# JAVA_HOME - location of a JDK home dir +# +# Optional ENV vars +# ----------------- +# M2_HOME - location of maven2's installed home dir +# MAVEN_OPTS - parameters passed to the Java VM when running Maven +# e.g. to debug Maven itself, use +# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 +# MAVEN_SKIP_RC - flag to disable loading of mavenrc files +# ---------------------------------------------------------------------------- + +if [ -z "$MAVEN_SKIP_RC" ] ; then + + if [ -f /etc/mavenrc ] ; then + . /etc/mavenrc + fi + + if [ -f "$HOME/.mavenrc" ] ; then + . "$HOME/.mavenrc" + fi + +fi + +# OS specific support. $var _must_ be set to either true or false. +cygwin=false; +darwin=false; +mingw=false +case "`uname`" in + CYGWIN*) cygwin=true ;; + MINGW*) mingw=true;; + Darwin*) darwin=true + # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home + # See https://developer.apple.com/library/mac/qa/qa1170/_index.html + if [ -z "$JAVA_HOME" ]; then + if [ -x "/usr/libexec/java_home" ]; then + export JAVA_HOME="`/usr/libexec/java_home`" + else + export JAVA_HOME="/Library/Java/Home" + fi + fi + ;; +esac + +if [ -z "$JAVA_HOME" ] ; then + if [ -r /etc/gentoo-release ] ; then + JAVA_HOME=`java-config --jre-home` + fi +fi + +if [ -z "$M2_HOME" ] ; then + ## resolve links - $0 may be a link to maven's home + PRG="$0" + + # need this for relative symlinks + while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG="`dirname "$PRG"`/$link" + fi + done + + saveddir=`pwd` + + M2_HOME=`dirname "$PRG"`/.. + + # make it fully qualified + M2_HOME=`cd "$M2_HOME" && pwd` + + cd "$saveddir" + # echo Using m2 at $M2_HOME +fi + +# For Cygwin, ensure paths are in UNIX format before anything is touched +if $cygwin ; then + [ -n "$M2_HOME" ] && + M2_HOME=`cygpath --unix "$M2_HOME"` + [ -n "$JAVA_HOME" ] && + JAVA_HOME=`cygpath --unix "$JAVA_HOME"` + [ -n "$CLASSPATH" ] && + CLASSPATH=`cygpath --path --unix "$CLASSPATH"` +fi + +# For Mingw, ensure paths are in UNIX format before anything is touched +if $mingw ; then + [ -n "$M2_HOME" ] && + M2_HOME="`(cd "$M2_HOME"; pwd)`" + [ -n "$JAVA_HOME" ] && + JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`" +fi + +if [ -z "$JAVA_HOME" ]; then + javaExecutable="`which javac`" + if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then + # readlink(1) is not available as standard on Solaris 10. + readLink=`which readlink` + if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then + if $darwin ; then + javaHome="`dirname \"$javaExecutable\"`" + javaExecutable="`cd \"$javaHome\" && pwd -P`/javac" + else + javaExecutable="`readlink -f \"$javaExecutable\"`" + fi + javaHome="`dirname \"$javaExecutable\"`" + javaHome=`expr "$javaHome" : '\(.*\)/bin'` + JAVA_HOME="$javaHome" + export JAVA_HOME + fi + fi +fi + +if [ -z "$JAVACMD" ] ; then + if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + else + JAVACMD="`which java`" + fi +fi + +if [ ! -x "$JAVACMD" ] ; then + echo "Error: JAVA_HOME is not defined correctly." >&2 + echo " We cannot execute $JAVACMD" >&2 + exit 1 +fi + +if [ -z "$JAVA_HOME" ] ; then + echo "Warning: JAVA_HOME environment variable is not set." +fi + +CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher + +# traverses directory structure from process work directory to filesystem root +# first directory with .mvn subdirectory is considered project base directory +find_maven_basedir() { + + if [ -z "$1" ] + then + echo "Path not specified to find_maven_basedir" + return 1 + fi + + basedir="$1" + wdir="$1" + while [ "$wdir" != '/' ] ; do + if [ -d "$wdir"/.mvn ] ; then + basedir=$wdir + break + fi + # workaround for JBEAP-8937 (on Solaris 10/Sparc) + if [ -d "${wdir}" ]; then + wdir=`cd "$wdir/.."; pwd` + fi + # end of workaround + done + echo "${basedir}" +} + +# concatenates all lines of a file +concat_lines() { + if [ -f "$1" ]; then + echo "$(tr -s '\n' ' ' < "$1")" + fi +} + +BASE_DIR=`find_maven_basedir "$(pwd)"` +if [ -z "$BASE_DIR" ]; then + exit 1; +fi + +########################################################################################## +# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central +# This allows using the maven wrapper in projects that prohibit checking in binary data. +########################################################################################## +if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then + if [ "$MVNW_VERBOSE" = true ]; then + echo "Found .mvn/wrapper/maven-wrapper.jar" + fi +else + if [ "$MVNW_VERBOSE" = true ]; then + echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..." + fi + if [ -n "$MVNW_REPOURL" ]; then + jarUrl="$MVNW_REPOURL/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" + else + jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" + fi + while IFS="=" read key value; do + case "$key" in (wrapperUrl) jarUrl="$value"; break ;; + esac + done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties" + if [ "$MVNW_VERBOSE" = true ]; then + echo "Downloading from: $jarUrl" + fi + wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" + if $cygwin; then + wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"` + fi + + if command -v wget > /dev/null; then + if [ "$MVNW_VERBOSE" = true ]; then + echo "Found wget ... using wget" + fi + if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then + wget "$jarUrl" -O "$wrapperJarPath" + else + wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" + fi + elif command -v curl > /dev/null; then + if [ "$MVNW_VERBOSE" = true ]; then + echo "Found curl ... using curl" + fi + if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then + curl -o "$wrapperJarPath" "$jarUrl" -f + else + curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f + fi + + else + if [ "$MVNW_VERBOSE" = true ]; then + echo "Falling back to using Java to download" + fi + javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java" + # For Cygwin, switch paths to Windows format before running javac + if $cygwin; then + javaClass=`cygpath --path --windows "$javaClass"` + fi + if [ -e "$javaClass" ]; then + if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then + if [ "$MVNW_VERBOSE" = true ]; then + echo " - Compiling MavenWrapperDownloader.java ..." + fi + # Compiling the Java class + ("$JAVA_HOME/bin/javac" "$javaClass") + fi + if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then + # Running the downloader + if [ "$MVNW_VERBOSE" = true ]; then + echo " - Running MavenWrapperDownloader.java ..." + fi + ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR") + fi + fi + fi +fi +########################################################################################## +# End of extension +########################################################################################## + +export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"} +if [ "$MVNW_VERBOSE" = true ]; then + echo $MAVEN_PROJECTBASEDIR +fi +MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" + +# For Cygwin, switch paths to Windows format before running java +if $cygwin; then + [ -n "$M2_HOME" ] && + M2_HOME=`cygpath --path --windows "$M2_HOME"` + [ -n "$JAVA_HOME" ] && + JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` + [ -n "$CLASSPATH" ] && + CLASSPATH=`cygpath --path --windows "$CLASSPATH"` + [ -n "$MAVEN_PROJECTBASEDIR" ] && + MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"` +fi + +# Provide a "standardized" way to retrieve the CLI args that will +# work with both Windows and non-Windows executions. +MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@" +export MAVEN_CMD_LINE_ARGS + +WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain + +exec "$JAVACMD" \ + $MAVEN_OPTS \ + -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ + "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ + ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" diff --git a/mvnw.cmd b/mvnw.cmd new file mode 100644 index 0000000..8611571 --- /dev/null +++ b/mvnw.cmd @@ -0,0 +1,182 @@ +@REM ---------------------------------------------------------------------------- +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with the License. You may obtain a copy of the License at +@REM +@REM http://www.apache.org/licenses/LICENSE-2.0 +@REM +@REM Unless required by applicable law or agreed to in writing, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. +@REM ---------------------------------------------------------------------------- + +@REM ---------------------------------------------------------------------------- +@REM Maven Start Up Batch script +@REM +@REM Required ENV vars: +@REM JAVA_HOME - location of a JDK home dir +@REM +@REM Optional ENV vars +@REM M2_HOME - location of maven2's installed home dir +@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands +@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending +@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven +@REM e.g. to debug Maven itself, use +@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 +@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files +@REM ---------------------------------------------------------------------------- + +@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' +@echo off +@REM set title of command window +title %0 +@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on' +@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% + +@REM set %HOME% to equivalent of $HOME +if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") + +@REM Execute a user defined script before this one +if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre +@REM check for pre script, once with legacy .bat ending and once with .cmd ending +if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat" +if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd" +:skipRcPre + +@setlocal + +set ERROR_CODE=0 + +@REM To isolate internal variables from possible post scripts, we use another setlocal +@setlocal + +@REM ==== START VALIDATION ==== +if not "%JAVA_HOME%" == "" goto OkJHome + +echo. +echo Error: JAVA_HOME not found in your environment. >&2 +echo Please set the JAVA_HOME variable in your environment to match the >&2 +echo location of your Java installation. >&2 +echo. +goto error + +:OkJHome +if exist "%JAVA_HOME%\bin\java.exe" goto init + +echo. +echo Error: JAVA_HOME is set to an invalid directory. >&2 +echo JAVA_HOME = "%JAVA_HOME%" >&2 +echo Please set the JAVA_HOME variable in your environment to match the >&2 +echo location of your Java installation. >&2 +echo. +goto error + +@REM ==== END VALIDATION ==== + +:init + +@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". +@REM Fallback to current working directory if not found. + +set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% +IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir + +set EXEC_DIR=%CD% +set WDIR=%EXEC_DIR% +:findBaseDir +IF EXIST "%WDIR%"\.mvn goto baseDirFound +cd .. +IF "%WDIR%"=="%CD%" goto baseDirNotFound +set WDIR=%CD% +goto findBaseDir + +:baseDirFound +set MAVEN_PROJECTBASEDIR=%WDIR% +cd "%EXEC_DIR%" +goto endDetectBaseDir + +:baseDirNotFound +set MAVEN_PROJECTBASEDIR=%EXEC_DIR% +cd "%EXEC_DIR%" + +:endDetectBaseDir + +IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig + +@setlocal EnableExtensions EnableDelayedExpansion +for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a +@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% + +:endReadAdditionalConfig + +SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" +set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" +set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain + +set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" + +FOR /F "tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( + IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B +) + +@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central +@REM This allows using the maven wrapper in projects that prohibit checking in binary data. +if exist %WRAPPER_JAR% ( + if "%MVNW_VERBOSE%" == "true" ( + echo Found %WRAPPER_JAR% + ) +) else ( + if not "%MVNW_REPOURL%" == "" ( + SET DOWNLOAD_URL="%MVNW_REPOURL%/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" + ) + if "%MVNW_VERBOSE%" == "true" ( + echo Couldn't find %WRAPPER_JAR%, downloading it ... + echo Downloading from: %DOWNLOAD_URL% + ) + + powershell -Command "&{"^ + "$webclient = new-object System.Net.WebClient;"^ + "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^ + "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^ + "}"^ + "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^ + "}" + if "%MVNW_VERBOSE%" == "true" ( + echo Finished downloading %WRAPPER_JAR% + ) +) +@REM End of extension + +@REM Provide a "standardized" way to retrieve the CLI args that will +@REM work with both Windows and non-Windows executions. +set MAVEN_CMD_LINE_ARGS=%* + +%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* +if ERRORLEVEL 1 goto error +goto end + +:error +set ERROR_CODE=1 + +:end +@endlocal & set ERROR_CODE=%ERROR_CODE% + +if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost +@REM check for post script, once with legacy .bat ending and once with .cmd ending +if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat" +if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd" +:skipRcPost + +@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' +if "%MAVEN_BATCH_PAUSE%" == "on" pause + +if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE% + +exit /B %ERROR_CODE% diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..3faaf8b --- /dev/null +++ b/package-lock.json @@ -0,0 +1,12839 @@ +{ + "name": "no-name", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "no-name", + "license": "UNLICENSED", + "dependencies": { + "@polymer/iron-icon": "3.0.1", + "@polymer/iron-iconset-svg": "3.0.1", + "@polymer/iron-list": "3.1.0", + "@polymer/iron-meta": "3.0.1", + "@polymer/iron-resizable-behavior": "3.0.1", + "@polymer/polymer": "3.5.1", + "@vaadin/accordion": "23.2.3", + "@vaadin/app-layout": "23.2.3", + "@vaadin/avatar": "23.2.3", + "@vaadin/avatar-group": "23.2.3", + "@vaadin/board": "23.2.3", + "@vaadin/bundles": "23.2.3", + "@vaadin/button": "23.2.3", + "@vaadin/charts": "23.2.3", + "@vaadin/checkbox": "23.2.3", + "@vaadin/checkbox-group": "23.2.3", + "@vaadin/combo-box": "23.2.3", + "@vaadin/common-frontend": "0.0.17", + "@vaadin/component-base": "23.2.3", + "@vaadin/confirm-dialog": "23.2.3", + "@vaadin/context-menu": "23.2.3", + "@vaadin/cookie-consent": "23.2.3", + "@vaadin/crud": "23.2.3", + "@vaadin/custom-field": "23.2.3", + "@vaadin/date-picker": "23.2.3", + "@vaadin/date-time-picker": "23.2.3", + "@vaadin/details": "23.2.3", + "@vaadin/dialog": "23.2.3", + "@vaadin/email-field": "23.2.3", + "@vaadin/field-base": "23.2.3", + "@vaadin/field-highlighter": "23.2.3", + "@vaadin/flow-frontend": "./target/flow-frontend", + "@vaadin/form-layout": "23.2.3", + "@vaadin/grid": "23.2.3", + "@vaadin/grid-pro": "23.2.3", + "@vaadin/horizontal-layout": "23.2.3", + "@vaadin/icon": "23.2.3", + "@vaadin/icons": "23.2.3", + "@vaadin/input-container": "23.2.3", + "@vaadin/integer-field": "23.2.3", + "@vaadin/item": "23.2.3", + "@vaadin/list-box": "23.2.3", + "@vaadin/lit-renderer": "23.2.3", + "@vaadin/login": "23.2.3", + "@vaadin/map": "23.2.3", + "@vaadin/menu-bar": "23.2.3", + "@vaadin/message-input": "23.2.3", + "@vaadin/message-list": "23.2.3", + "@vaadin/multi-select-combo-box": "23.2.3", + "@vaadin/notification": "23.2.3", + "@vaadin/number-field": "23.2.3", + "@vaadin/password-field": "23.2.3", + "@vaadin/polymer-legacy-adapter": "23.2.3", + "@vaadin/progress-bar": "23.2.3", + "@vaadin/radio-group": "23.2.3", + "@vaadin/rich-text-editor": "23.2.3", + "@vaadin/router": "1.7.4", + "@vaadin/scroller": "23.2.3", + "@vaadin/select": "23.2.3", + "@vaadin/split-layout": "23.2.3", + "@vaadin/tabs": "23.2.3", + "@vaadin/text-area": "23.2.3", + "@vaadin/text-field": "23.2.3", + "@vaadin/time-picker": "23.2.3", + "@vaadin/upload": "23.2.3", + "@vaadin/vaadin-accordion": "23.2.3", + "@vaadin/vaadin-app-layout": "23.2.3", + "@vaadin/vaadin-avatar": "23.2.3", + "@vaadin/vaadin-board": "23.2.3", + "@vaadin/vaadin-button": "23.2.3", + "@vaadin/vaadin-charts": "23.2.3", + "@vaadin/vaadin-checkbox": "23.2.3", + "@vaadin/vaadin-combo-box": "23.2.3", + "@vaadin/vaadin-confirm-dialog": "23.2.3", + "@vaadin/vaadin-context-menu": "23.2.3", + "@vaadin/vaadin-cookie-consent": "23.2.3", + "@vaadin/vaadin-crud": "23.2.3", + "@vaadin/vaadin-custom-field": "23.2.3", + "@vaadin/vaadin-date-picker": "23.2.3", + "@vaadin/vaadin-date-time-picker": "23.2.3", + "@vaadin/vaadin-details": "23.2.3", + "@vaadin/vaadin-development-mode-detector": "2.0.5", + "@vaadin/vaadin-dialog": "23.2.3", + "@vaadin/vaadin-form-layout": "23.2.3", + "@vaadin/vaadin-grid": "23.2.3", + "@vaadin/vaadin-grid-pro": "23.2.3", + "@vaadin/vaadin-icon": "23.2.3", + "@vaadin/vaadin-icons": "23.2.3", + "@vaadin/vaadin-item": "23.2.3", + "@vaadin/vaadin-list-box": "23.2.3", + "@vaadin/vaadin-list-mixin": "23.2.3", + "@vaadin/vaadin-login": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-menu-bar": "23.2.3", + "@vaadin/vaadin-messages": "23.2.3", + "@vaadin/vaadin-notification": "23.2.3", + "@vaadin/vaadin-ordered-layout": "23.2.3", + "@vaadin/vaadin-overlay": "23.2.3", + "@vaadin/vaadin-progress-bar": "23.2.3", + "@vaadin/vaadin-radio-button": "23.2.3", + "@vaadin/vaadin-rich-text-editor": "23.2.3", + "@vaadin/vaadin-select": "23.2.3", + "@vaadin/vaadin-split-layout": "23.2.3", + "@vaadin/vaadin-tabs": "23.2.3", + "@vaadin/vaadin-template-renderer": "23.2.3", + "@vaadin/vaadin-text-field": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3", + "@vaadin/vaadin-time-picker": "23.2.3", + "@vaadin/vaadin-upload": "23.2.3", + "@vaadin/vaadin-usage-statistics": "2.1.2", + "@vaadin/vaadin-virtual-list": "23.2.3", + "@vaadin/vertical-layout": "23.2.3", + "@vaadin/virtual-list": "23.2.3", + "construct-style-sheets-polyfill": "3.1.0", + "date-fns": "2.29.3", + "lit": "2.3.0", + "proj4": "2.8.0" + }, + "devDependencies": { + "@rollup/plugin-replace": "3.1.0", + "@rollup/pluginutils": "4.1.0", + "async": "3.2.2", + "glob": "7.2.3", + "mkdirp": "1.0.4", + "rollup-plugin-brotli": "3.1.0", + "transform-ast": "2.4.4", + "typescript": "4.7.4", + "vite": "v3.1.0", + "vite-plugin-checker": "0.4.9", + "workbox-build": "6.5.0", + "workbox-core": "6.5.0", + "workbox-precaching": "6.5.0" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", + "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.18.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.18.5.tgz", + "integrity": "sha512-BxhE40PVCBxVEJsSBhB6UWyAuqJRxGsAw8BdHMJ3AKGydcwuWW4kOO3HmqBQAdcq/OP+/DlTVxLvsCzRTnZuGg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.18.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.5.tgz", + "integrity": "sha512-MGY8vg3DxMnctw0LdvSEojOsumc70g0t18gNyUdAZqB1Rpd1Bqo/svHGvt+UJ6JcGX+DIekGFDxxIWofBxLCnQ==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.18.2", + "@babel/helper-compilation-targets": "^7.18.2", + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helpers": "^7.18.2", + "@babel/parser": "^7.18.5", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.18.5", + "@babel/types": "^7.18.4", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@babel/core/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.2.tgz", + "integrity": "sha512-W1lG5vUwFvfMd8HVXqdfbuG7RuaSrTCCD8cl8fP8wOivdbtbIg2Db3IWUcgvfxKbbn6ZBGYRW/Zk1MIwK49mgw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.2", + "@jridgewell/gen-mapping": "^0.3.0", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/generator/node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.7.tgz", + "integrity": "sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.16.7.tgz", + "integrity": "sha512-C6FdbRaxYjwVu/geKW4ZeQ0Q31AftgRcdSnZ5/jsH6BzCJbtvXvhpfkbkThYSuutZA7nCXpPR6AD9zd1dprMkA==", + "dev": true, + "dependencies": { + "@babel/helper-explode-assignable-expression": "^7.16.7", + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.2.tgz", + "integrity": "sha512-s1jnPotJS9uQnzFtiZVBUxe67CuBa679oWFHpxYYnTpRL/1ffhyX44R9uYiXoa/pLXcY9H2moJta0iaanlk/rQ==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.17.10", + "@babel/helper-validator-option": "^7.16.7", + "browserslist": "^4.20.2", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/browserslist": { + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.0.tgz", + "integrity": "sha512-UQxE0DIhRB5z/zDz9iA03BOfxaN2+GQdBYH/2WrSIWEUrnpzTPJbhqt+umq6r3acaPRTW1FNTkrcp0PXgtFkvA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001358", + "electron-to-chromium": "^1.4.164", + "node-releases": "^2.0.5", + "update-browserslist-db": "^1.0.0" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/update-browserslist-db": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.4.tgz", + "integrity": "sha512-jnmO2BEGUjsMOe/Fg9u0oczOe/ppIDZPebzccl1yDWGLFP16Pa1/RM5wEoKYPG2zstNcDuAStejyxsOuKINdGA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "browserslist-lint": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.18.0.tgz", + "integrity": "sha512-Kh8zTGR9de3J63e5nS0rQUdRs/kbtwoeQQ0sriS0lItjC96u8XXZN6lKpuyWd2coKSU13py/y+LTmThLuVX0Pg==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-function-name": "^7.17.9", + "@babel/helper-member-expression-to-functions": "^7.17.7", + "@babel/helper-optimise-call-expression": "^7.16.7", + "@babel/helper-replace-supers": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.17.12.tgz", + "integrity": "sha512-b2aZrV4zvutr9AIa6/gA3wsZKRwTKYoDxYiFKcESS3Ug2GTXzwBEvMuuFLhCQpEnRXs1zng4ISAXSUxxKBIcxw==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "regexpu-core": "^5.0.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/regexpu-core": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.0.1.tgz", + "integrity": "sha512-CriEZlrKK9VJw/xQGJpQM5rY88BtuL8DM+AEwvcThHilbxiTAy8vq4iJnd2tqq8wLmjbGZzP7ZcKFjbGkmEFrw==", + "dev": true, + "dependencies": { + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.0.1", + "regjsgen": "^0.6.0", + "regjsparser": "^0.8.2", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/regjsgen": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.6.0.tgz", + "integrity": "sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA==", + "dev": true + }, + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/regjsparser": { + "version": "0.8.4", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.8.4.tgz", + "integrity": "sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA==", + "dev": true, + "dependencies": { + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.1.tgz", + "integrity": "sha512-J9hGMpJQmtWmj46B3kBHmL38UhJGhYX7eqkcq+2gsstyYt341HmPeWspihX43yVRA0mS+8GGk2Gckc7bY/HCmA==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.13.0", + "@babel/helper-module-imports": "^7.12.13", + "@babel/helper-plugin-utils": "^7.13.0", + "@babel/traverse": "^7.13.0", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0-0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@babel/helper-define-polyfill-provider/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/@babel/helper-define-polyfill-provider/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.2.tgz", + "integrity": "sha512-14GQKWkX9oJzPiQQ7/J36FTXcD4kSp8egKjO9nINlSKiHITRA9q/R74qu8S9xlc/b/yjsJItQUeeh3xnGN0voQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-explode-assignable-expression": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.7.tgz", + "integrity": "sha512-KyUenhWMC8VrxzkGP0Jizjo4/Zx+1nNZhgocs+gLzyZyB8SHidhoq9KK/8Ato4anhwsivfkBLftky7gvzbZMtQ==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz", + "integrity": "sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==", + "dev": true, + "dependencies": { + "@babel/template": "^7.16.7", + "@babel/types": "^7.17.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz", + "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.17.7.tgz", + "integrity": "sha512-thxXgnQ8qQ11W2wVUObIqDL4p148VMxkt5T/qpN5k2fboRyzFGFmKsTGViquyM5QHKUy48OZoca8kw4ajaDPyw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.17.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz", + "integrity": "sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.0.tgz", + "integrity": "sha512-kclUYSUBIjlvnzN2++K9f2qzYKFgjmnmjwL4zlmU5f8ZtzgWe8s0rUPSTGy2HmK4P8T52MQsS+HTQAgZd3dMEA==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-module-imports": "^7.16.7", + "@babel/helper-simple-access": "^7.17.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/helper-validator-identifier": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.18.0", + "@babel/types": "^7.18.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.7.tgz", + "integrity": "sha512-EtgBhg7rd/JcnpZFXpBy0ze1YRfdm7BnBX4uKMBd3ixa3RGAE002JZB66FJyNH7g0F38U05pXmA5P8cBh7z+1w==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.17.12.tgz", + "integrity": "sha512-JDkf04mqtN3y4iAbO1hv9U2ARpPyPL1zqyWs/2WG1pgSq9llHFjStX5jdxb84himgJm+8Ng+x0oiWF/nw/XQKA==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.8.tgz", + "integrity": "sha512-fm0gH7Flb8H51LqJHy3HJ3wnE1+qtYR2A99K06ahwrawLdOFsCEWjZOrYricXJHoPSudNKxrMBUPEIPxiIIvBw==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-wrap-function": "^7.16.8", + "@babel/types": "^7.16.8" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.18.2.tgz", + "integrity": "sha512-XzAIyxx+vFnrOxiQrToSUOzUOn0e1J2Li40ntddek1Y69AXUTXoDJ40/D5RdjFu7s7qHiaeoTiempZcbuVXh2Q==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.2", + "@babel/helper-member-expression-to-functions": "^7.17.7", + "@babel/helper-optimise-call-expression": "^7.16.7", + "@babel/traverse": "^7.18.2", + "@babel/types": "^7.18.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.2.tgz", + "integrity": "sha512-7LIrjYzndorDY88MycupkpQLKS1AFfsVRm2k/9PtKScSy5tZq0McZTj+DiMRynboZfIqOKvo03pmhTaUgiD6fQ==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.16.0.tgz", + "integrity": "sha512-+il1gTy0oHwUsBQZyJvukbB4vPMdcYBrFHa0Uc4AizLxbq6BOYC51Rv4tWocX9BLBDLZ4kc6qUFpQ6HRgL+3zw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz", + "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", + "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz", + "integrity": "sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.16.8.tgz", + "integrity": "sha512-8RpyRVIAW1RcDDGTA+GpPAwV22wXCfKOoM9bet6TLkGIFTkRQSkH1nMQ5Yet4MpoXe1ZwHPVtNasc2w0uZMqnw==", + "dev": true, + "dependencies": { + "@babel/helper-function-name": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.16.8", + "@babel/types": "^7.16.8" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.2.tgz", + "integrity": "sha512-j+d+u5xT5utcQSzrh9p+PaJX94h++KN+ng9b9WEJq7pkUPAd61FGqhjuUEdfknb3E/uDBb7ruwEeKkIxNJPIrg==", + "dev": true, + "dependencies": { + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.18.2", + "@babel/types": "^7.18.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.12.tgz", + "integrity": "sha512-7yykMVF3hfZY2jsHZEEgLc+3x4o1O+fYyULu11GynEUQNwB6lua+IIQn1FiJxNucd5UlyJryrwsOh8PL9Sn8Qg==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.16.7", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/parser": { + "version": "7.18.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.5.tgz", + "integrity": "sha512-YZWVaglMiplo7v8f1oMQ5ZPQr0vn7HPeZXxXWsxXJRjGVrzUFn9OxFQl1sb5wzfootjA/yChhW84BV+383FSOw==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.17.12.tgz", + "integrity": "sha512-xCJQXl4EeQ3J9C4yOmpTrtVGmzpm2iSzyxbkZHw7UCnZBftHpF/hpII80uWVyVrc40ytIClHjgWGTG1g/yB+aw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.17.12.tgz", + "integrity": "sha512-/vt0hpIw0x4b6BLKUkwlvEoiGZYYLNZ96CzyHYPbtG2jZGz6LBe7/V+drYrc/d+ovrF9NBi0pmtvmNb/FsWtRQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", + "@babel/plugin-proposal-optional-chaining": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-proposal-async-generator-functions": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.17.12.tgz", + "integrity": "sha512-RWVvqD1ooLKP6IqWTA5GyFVX2isGEgC5iFxKzfYOIy/QEFdxYyCybBDtIGjipHpb9bDWHzcqGqFakf+mVmBTdQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-remap-async-to-generator": "^7.16.8", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-properties": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.17.12.tgz", + "integrity": "sha512-U0mI9q8pW5Q9EaTHFPwSVusPMV/DV9Mm8p7csqROFLtIE9rBF5piLqyrBGigftALrBcsBGu4m38JneAe7ZDLXw==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-static-block": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.18.0.tgz", + "integrity": "sha512-t+8LsRMMDE74c6sV7KShIw13sqbqd58tlqNrsWoWBTIMw7SVQ0cZ905wLNS/FBCy/3PyooRHLFFlfrUNyyz5lA==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-proposal-dynamic-import": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.16.7.tgz", + "integrity": "sha512-I8SW9Ho3/8DRSdmDdH3gORdyUuYnk1m4cMxUAdu5oy4n3OfN8flDEH+d60iG7dUfi0KkYwSvoalHzzdRzpWHTg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-export-namespace-from": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.17.12.tgz", + "integrity": "sha512-j7Ye5EWdwoXOpRmo5QmRyHPsDIe6+u70ZYZrd7uz+ebPYFKfRcLcNu3Ro0vOlJ5zuv8rU7xa+GttNiRzX56snQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-json-strings": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.17.12.tgz", + "integrity": "sha512-rKJ+rKBoXwLnIn7n6o6fulViHMrOThz99ybH+hKHcOZbnN14VuMnH9fo2eHE69C8pO4uX1Q7t2HYYIDmv8VYkg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.17.12.tgz", + "integrity": "sha512-EqFo2s1Z5yy+JeJu7SFfbIUtToJTVlC61/C7WLKDntSw4Sz6JNAIfL7zQ74VvirxpjB5kz/kIx0gCcb+5OEo2Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.17.12.tgz", + "integrity": "sha512-ws/g3FSGVzv+VH86+QvgtuJL/kR67xaEIF2x0iPqdDfYW6ra6JF3lKVBkWynRLcNtIC1oCTfDRVxmm2mKzy+ag==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-numeric-separator": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.16.7.tgz", + "integrity": "sha512-vQgPMknOIgiuVqbokToyXbkY/OmmjAzr/0lhSIbG/KmnzXPGwW/AdhdKpi+O4X/VkWiWjnkKOBiqJrTaC98VKw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-object-rest-spread": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.18.0.tgz", + "integrity": "sha512-nbTv371eTrFabDfHLElkn9oyf9VG+VKK6WMzhY2o4eHKaG19BToD9947zzGMO6I/Irstx9d8CwX6njPNIAR/yw==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.17.10", + "@babel/helper-compilation-targets": "^7.17.10", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-optional-catch-binding": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.16.7.tgz", + "integrity": "sha512-eMOH/L4OvWSZAE1VkHbr1vckLG1WUcHGJSLqqQwl2GaUqG6QjddvrOaTUMNYiv77H5IKPMZ9U9P7EaHwvAShfA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-optional-chaining": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.17.12.tgz", + "integrity": "sha512-7wigcOs/Z4YWlK7xxjkvaIw84vGhDv/P1dFGQap0nHkc8gFKY/r+hXc8Qzf5k1gY7CvGIcHqAnOagVKJJ1wVOQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-methods": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.17.12.tgz", + "integrity": "sha512-SllXoxo19HmxhDWm3luPz+cPhtoTSKLJE9PXshsfrOzBqs60QP0r8OaJItrPhAj0d7mZMnNF0Y1UUggCDgMz1A==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.17.12.tgz", + "integrity": "sha512-/6BtVi57CJfrtDNKfK5b66ydK2J5pXUKBKSPD2G1whamMuEnZWgoOIfO8Vf9F/DoD4izBLD/Au4NMQfruzzykg==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-create-class-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-unicode-property-regex": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.17.12.tgz", + "integrity": "sha512-Wb9qLjXf3ZazqXA7IvI7ozqRIXIGPtSo+L5coFmEkhTQK18ao4UDDD0zdTGAarmbLj2urpRwrc6893cu5Bfh0A==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.17.12.tgz", + "integrity": "sha512-n/loy2zkq9ZEM8tEOwON9wTQSTNDTDEz6NujPtJGLU7qObzT1N4c4YZZf8E6ATB2AjNQg/Ib2AIpO03EZaCehw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.17.12.tgz", + "integrity": "sha512-PHln3CNi/49V+mza4xMwrg+WGYevSF1oaiXaC2EQfdp4HWlSjRsrDXWJiQBKpP7749u6vQ9mcry2uuFOv5CXvA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.17.12.tgz", + "integrity": "sha512-J8dbrWIOO3orDzir57NRsjg4uxucvhby0L/KZuGsWDj0g7twWK3g7JhJhOrXtuXiw8MeiSdJ3E0OW9H8LYEzLQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.16.7", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-remap-async-to-generator": "^7.16.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.16.7.tgz", + "integrity": "sha512-JUuzlzmF40Z9cXyytcbZEZKckgrQzChbQJw/5PuEHYeqzCsvebDx0K0jWnIIVcmmDOAVctCgnYs0pMcrYj2zJg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.18.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.18.4.tgz", + "integrity": "sha512-+Hq10ye+jlvLEogSOtq4mKvtk7qwcUQ1f0Mrueai866C82f844Yom2cttfJdMdqRLTxWpsbfbkIkOIfovyUQXw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.18.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.18.4.tgz", + "integrity": "sha512-e42NSG2mlKWgxKUAD9EJJSkZxR67+wZqzNxLSpc51T8tRU5SLFHsPmgYR5yr7sdgX4u+iHA1C5VafJ6AyImV3A==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-environment-visitor": "^7.18.2", + "@babel/helper-function-name": "^7.17.9", + "@babel/helper-optimise-call-expression": "^7.16.7", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-replace-supers": "^7.18.2", + "@babel/helper-split-export-declaration": "^7.16.7", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-classes/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.17.12.tgz", + "integrity": "sha512-a7XINeplB5cQUWMg1E/GI1tFz3LfK021IjV1rj1ypE+R7jHm+pIHmHl25VNkZxtx9uuYp7ThGk8fur1HHG7PgQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.18.0.tgz", + "integrity": "sha512-Mo69klS79z6KEfrLg/1WkmVnB8javh75HX4pi2btjvlIoasuxilEyjtsQW6XPrubNd7AQy0MMaNIaQE4e7+PQw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.16.7.tgz", + "integrity": "sha512-Lyttaao2SjZF6Pf4vk1dVKv8YypMpomAbygW+mU5cYP3S5cWTfCJjG8xV6CFdzGFlfWK81IjL9viiTvpb6G7gQ==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.17.12.tgz", + "integrity": "sha512-EA5eYFUG6xeerdabina/xIoB95jJ17mAkR8ivx6ZSu9frKShBjpOGZPn511MTDTkiCO+zXnzNczvUM69YSf3Zw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.16.7.tgz", + "integrity": "sha512-8UYLSlyLgRixQvlYH3J2ekXFHDFLQutdy7FfFAMm3CPZ6q9wHCwnUyiXpQCe3gVVnQlHc5nsuiEVziteRNTXEA==", + "dev": true, + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.18.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.1.tgz", + "integrity": "sha512-+TTB5XwvJ5hZbO8xvl2H4XaMDOAK57zF4miuC9qQJgysPNEAZZ9Z69rdF5LJkozGdZrjBIUAIyKUWRMmebI7vg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.16.7.tgz", + "integrity": "sha512-SU/C68YVwTRxqWj5kgsbKINakGag0KTgq9f2iZEXdStoAbOzLHEBRYzImmA6yFo8YZhJVflvXmIHUO7GWHmxxA==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.16.7", + "@babel/helper-function-name": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.17.12.tgz", + "integrity": "sha512-8iRkvaTjJciWycPIZ9k9duu663FT7VrBdNqNgxnVXEFwOIp55JWcZd23VBRySYbnS3PwQ3rGiabJBBBGj5APmQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.16.7.tgz", + "integrity": "sha512-mBruRMbktKQwbxaJof32LT9KLy2f3gH+27a5XSuXo6h7R3vqltl0PgZ80C8ZMKw98Bf8bqt6BEVi3svOh2PzMw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.18.0.tgz", + "integrity": "sha512-h8FjOlYmdZwl7Xm2Ug4iX2j7Qy63NANI+NQVWQzv6r25fqgg7k2dZl03p95kvqNclglHs4FZ+isv4p1uXMA+QA==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12", + "babel-plugin-dynamic-import-node": "^2.3.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.2.tgz", + "integrity": "sha512-f5A865gFPAJAEE0K7F/+nm5CmAE3y8AWlMBG9unu5j9+tk50UQVK0QS8RNxSp7MJf0wh97uYyLWt3Zvu71zyOQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-simple-access": "^7.18.2", + "babel-plugin-dynamic-import-node": "^2.3.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.18.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.18.5.tgz", + "integrity": "sha512-SEewrhPpcqMF1V7DhnEbhVJLrC+nnYfe1E0piZMZXBpxi9WvZqWGwpsk7JYP7wPWeqaBh4gyKlBhHJu3uz5g4Q==", + "dev": true, + "dependencies": { + "@babel/helper-hoist-variables": "^7.16.7", + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-validator-identifier": "^7.16.7", + "babel-plugin-dynamic-import-node": "^2.3.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.0.tgz", + "integrity": "sha512-d/zZ8I3BWli1tmROLxXLc9A6YXvGK8egMxHp+E/rRwMh1Kip0AP77VwZae3snEJ33iiWwvNv2+UIIhfalqhzZA==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.17.12.tgz", + "integrity": "sha512-vWoWFM5CKaTeHrdUJ/3SIOTRV+MBVGybOC9mhJkaprGNt5demMymDW24yC74avb915/mIRe3TgNb/d8idvnCRA==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.18.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.5.tgz", + "integrity": "sha512-TuRL5uGW4KXU6OsRj+mLp9BM7pO8e7SGNTEokQRRxHFkXYMFiy2jlKSZPFtI/mKORDzciH+hneskcSOp0gU8hg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.16.7.tgz", + "integrity": "sha512-14J1feiQVWaGvRxj2WjyMuXS2jsBkgB3MdSN5HuC2G5nRspa5RK9COcs82Pwy5BuGcjb+fYaUj94mYcOj7rCvw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-replace-supers": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.17.12.tgz", + "integrity": "sha512-6qW4rWo1cyCdq1FkYri7AHpauchbGLXpdwnYsfxFb+KtddHENfsY5JZb35xUwkK5opOLcJ3BNd2l7PhRYGlwIA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.16.7.tgz", + "integrity": "sha512-z4FGr9NMGdoIl1RqavCqGG+ZuYjfZ/hkCIeuH6Do7tXmSm0ls11nYVSJqFEUOSJbDab5wC6lRE/w6YjVcr6Hqw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.18.0.tgz", + "integrity": "sha512-C8YdRw9uzx25HSIzwA7EM7YP0FhCe5wNvJbZzjVNHHPGVcDJ3Aie+qGYYdS1oVQgn+B3eAIJbWFLrJ4Jipv7nw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12", + "regenerator-transform": "^0.15.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator/node_modules/regenerator-transform": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.0.tgz", + "integrity": "sha512-LsrGtPmbYg19bcPHwdtmXwbW+TqNvtY4riE3P83foeHRroMbH6/2ddFBfab3t7kbzc7v7p4wbkIecHImqt0QNg==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.17.12.tgz", + "integrity": "sha512-1KYqwbJV3Co03NIi14uEHW8P50Md6KqFgt0FfpHdK6oyAHQVTosgPuPSiWud1HX0oYJ1hGRRlk0fP87jFpqXZA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.16.7.tgz", + "integrity": "sha512-hah2+FEnoRoATdIb05IOXf+4GzXYTq75TVhIn1PewihbpyrNWUt2JbudKQOETWw6QpLe+AIUpJ5MVLYTQbeeUg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.17.12.tgz", + "integrity": "sha512-9pgmuQAtFi3lpNUstvG9nGfk9DkrdmWNp9KeKPFmuZCpEnxRzYlS8JgwPjYj+1AWDOSvoGN0H30p1cBOmT/Svg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.16.7.tgz", + "integrity": "sha512-NJa0Bd/87QV5NZZzTuZG5BPJjLYadeSZ9fO6oOUoL4iQx+9EEuw/eEM92SrsT19Yc2jgB1u1hsjqDtH02c3Drw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.2.tgz", + "integrity": "sha512-/cmuBVw9sZBGZVOMkpAEaVLwm4JmK2GZ1dFKOGGpMzEHWFmyZZ59lUU0PdRr8YNYeQdNzTDwuxP2X2gzydTc9g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.17.12.tgz", + "integrity": "sha512-Q8y+Jp7ZdtSPXCThB6zjQ74N3lj0f6TDh1Hnf5B+sYlzQ8i5Pjp8gW0My79iekSpT4WnI06blqP6DT0OmaXXmw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.16.7.tgz", + "integrity": "sha512-TAV5IGahIz3yZ9/Hfv35TV2xEm+kaBDaZQCn2S/hG9/CZ0DktxJv9eKfPc7yYCvOYR4JGx1h8C+jcSOvgaaI/Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.16.7.tgz", + "integrity": "sha512-oC5tYYKw56HO75KZVLQ+R/Nl3Hro9kf8iG0hXoaHP7tjAyCpvqBiSNe6vGrZni1Z6MggmUOC6A7VP7AVmw225Q==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.2.tgz", + "integrity": "sha512-PfpdxotV6afmXMU47S08F9ZKIm2bJIQ0YbAAtDfIENX7G1NUAXigLREh69CWDjtgUy7dYn7bsMzkgdtAlmS68Q==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.17.10", + "@babel/helper-compilation-targets": "^7.18.2", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-validator-option": "^7.16.7", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.17.12", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.17.12", + "@babel/plugin-proposal-async-generator-functions": "^7.17.12", + "@babel/plugin-proposal-class-properties": "^7.17.12", + "@babel/plugin-proposal-class-static-block": "^7.18.0", + "@babel/plugin-proposal-dynamic-import": "^7.16.7", + "@babel/plugin-proposal-export-namespace-from": "^7.17.12", + "@babel/plugin-proposal-json-strings": "^7.17.12", + "@babel/plugin-proposal-logical-assignment-operators": "^7.17.12", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.17.12", + "@babel/plugin-proposal-numeric-separator": "^7.16.7", + "@babel/plugin-proposal-object-rest-spread": "^7.18.0", + "@babel/plugin-proposal-optional-catch-binding": "^7.16.7", + "@babel/plugin-proposal-optional-chaining": "^7.17.12", + "@babel/plugin-proposal-private-methods": "^7.17.12", + "@babel/plugin-proposal-private-property-in-object": "^7.17.12", + "@babel/plugin-proposal-unicode-property-regex": "^7.17.12", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.17.12", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.17.12", + "@babel/plugin-transform-async-to-generator": "^7.17.12", + "@babel/plugin-transform-block-scoped-functions": "^7.16.7", + "@babel/plugin-transform-block-scoping": "^7.17.12", + "@babel/plugin-transform-classes": "^7.17.12", + "@babel/plugin-transform-computed-properties": "^7.17.12", + "@babel/plugin-transform-destructuring": "^7.18.0", + "@babel/plugin-transform-dotall-regex": "^7.16.7", + "@babel/plugin-transform-duplicate-keys": "^7.17.12", + "@babel/plugin-transform-exponentiation-operator": "^7.16.7", + "@babel/plugin-transform-for-of": "^7.18.1", + "@babel/plugin-transform-function-name": "^7.16.7", + "@babel/plugin-transform-literals": "^7.17.12", + "@babel/plugin-transform-member-expression-literals": "^7.16.7", + "@babel/plugin-transform-modules-amd": "^7.18.0", + "@babel/plugin-transform-modules-commonjs": "^7.18.2", + "@babel/plugin-transform-modules-systemjs": "^7.18.0", + "@babel/plugin-transform-modules-umd": "^7.18.0", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.17.12", + "@babel/plugin-transform-new-target": "^7.17.12", + "@babel/plugin-transform-object-super": "^7.16.7", + "@babel/plugin-transform-parameters": "^7.17.12", + "@babel/plugin-transform-property-literals": "^7.16.7", + "@babel/plugin-transform-regenerator": "^7.18.0", + "@babel/plugin-transform-reserved-words": "^7.17.12", + "@babel/plugin-transform-shorthand-properties": "^7.16.7", + "@babel/plugin-transform-spread": "^7.17.12", + "@babel/plugin-transform-sticky-regex": "^7.16.7", + "@babel/plugin-transform-template-literals": "^7.18.2", + "@babel/plugin-transform-typeof-symbol": "^7.17.12", + "@babel/plugin-transform-unicode-escapes": "^7.16.7", + "@babel/plugin-transform-unicode-regex": "^7.16.7", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.18.2", + "babel-plugin-polyfill-corejs2": "^0.3.0", + "babel-plugin-polyfill-corejs3": "^0.5.0", + "babel-plugin-polyfill-regenerator": "^0.3.0", + "core-js-compat": "^3.22.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.3.tgz", + "integrity": "sha512-38Y8f7YUhce/K7RMwTp7m0uCumpv9hZkitCbBClqQIow1qSbCvGkcegKOXpEWCQLfWmevgRiWokZ1GkpfhbZug==", + "dev": true, + "dependencies": { + "regenerator-runtime": "^0.13.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/runtime/node_modules/regenerator-runtime": { + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", + "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", + "dev": true + }, + "node_modules/@babel/template": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz", + "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.16.7", + "@babel/parser": "^7.16.7", + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.18.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.5.tgz", + "integrity": "sha512-aKXj1KT66sBj0vVzk6rEeAO6Z9aiiQ68wfDgge3nHhA/my6xMM/7HGQUNumKZaoa2qUPQ5whJG9aAifsxUKfLA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.18.2", + "@babel/helper-environment-visitor": "^7.18.2", + "@babel/helper-function-name": "^7.17.9", + "@babel/helper-hoist-variables": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/parser": "^7.18.5", + "@babel/types": "^7.18.4", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/traverse/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/@babel/types": { + "version": "7.18.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.4.tgz", + "integrity": "sha512-ThN1mBcMq5pG/Vm2IcBmPPfyPXbd8S02rS+OBIDENdufvqC7Z/jHPCv9IcP01277aKtDI8g/2XysBN4hA8niiw==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.16.7", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types/node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.15.7.tgz", + "integrity": "sha512-IKznSJOsVUuyt7cDzzSZyqBEcZe+7WlBqTVXiF1OXP/4Nm387ToaXZ0fyLwI1iBlI/bzpxVq411QE2/Bt2XWWw==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.8.tgz", + "integrity": "sha512-YK5G9LaddzGbcucK4c8h5tWFmMPBvRZ/uyWmN1/SbBdIvqGUdWGkJ5BAaccgs6XbzVLsqbPJrBSFwKv3kT9i7w==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.14", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.14.tgz", + "integrity": "sha512-bJWEfQ9lPTvm3SneWwRFVLzrh6nhjwqw7TUFFBEMzwvg7t7PCDenf2lDwqo4NQXzdpgBXyFgDWnQA+2vkruksQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "node_modules/@lit/reactive-element": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-1.4.1.tgz", + "integrity": "sha512-qDv4851VFSaBWzpS02cXHclo40jsbAjRXnebNXpm0uVg32kCneZPo9RYVQtrTNICtZ+1wAYHu1ZtxWSWMbKrBw==" + }, + "node_modules/@mapbox/jsonlint-lines-primitives": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@mapbox/jsonlint-lines-primitives/-/jsonlint-lines-primitives-2.0.2.tgz", + "integrity": "sha512-rY0o9A5ECsTQRVhv7tL/OyDpGAoUB4tTvLiW1DSzQGq4bvTPhNw1VpSNjDJc5GFZ2XuyOtSWSVN05qOtcD71qQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/@mapbox/mapbox-gl-style-spec": { + "version": "13.26.0", + "resolved": "https://registry.npmjs.org/@mapbox/mapbox-gl-style-spec/-/mapbox-gl-style-spec-13.26.0.tgz", + "integrity": "sha512-Ya1WiNz1qYau7xPYPQUbionrw9pjgZAIebGQdDXgwJuSAWeVCr02P7rqbYFHbXqX5TeAaq4qVpcaJb9oZtgaVQ==", + "dependencies": { + "@mapbox/jsonlint-lines-primitives": "~2.0.2", + "@mapbox/point-geometry": "^0.1.0", + "@mapbox/unitbezier": "^0.0.0", + "csscolorparser": "~1.0.2", + "json-stringify-pretty-compact": "^2.0.0", + "minimist": "^1.2.6", + "rw": "^1.3.3", + "sort-object": "^0.3.2" + }, + "bin": { + "gl-style-composite": "bin/gl-style-composite.js", + "gl-style-format": "bin/gl-style-format.js", + "gl-style-migrate": "bin/gl-style-migrate.js", + "gl-style-validate": "bin/gl-style-validate.js" + } + }, + "node_modules/@mapbox/point-geometry": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@mapbox/point-geometry/-/point-geometry-0.1.0.tgz", + "integrity": "sha512-6j56HdLTwWGO0fJPlrZtdU/B13q8Uwmo18Ck2GnGgN9PCFyKTZ3UbXeEdRFh18i9XQ92eH2VdtpJHpBD3aripQ==" + }, + "node_modules/@mapbox/unitbezier": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/@mapbox/unitbezier/-/unitbezier-0.0.0.tgz", + "integrity": "sha512-HPnRdYO0WjFjRTSwO3frz1wKaU649OBFPX3Zo/2WZvuRi6zMiRGui8SnPQiQABgqCf8YikDe5t3HViTVw1WUzA==" + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@open-wc/dedupe-mixin": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@open-wc/dedupe-mixin/-/dedupe-mixin-1.3.1.tgz", + "integrity": "sha512-ukowSvzpZQDUH0Y3znJTsY88HkiGk3Khc0WGpIPhap1xlerieYi27QBg6wx/nTurpWfU6XXXsx9ocxDYCdtw0Q==" + }, + "node_modules/@petamoriken/float16": { + "version": "3.6.6", + "resolved": "https://registry.npmjs.org/@petamoriken/float16/-/float16-3.6.6.tgz", + "integrity": "sha512-3MUulwMtsdCA9lw8a/Kc0XDBJJVCkYTQ5aGd+///TbfkOMXoOGAzzoiYKwPEsLYZv7He7fKJ/mCacqKOO7REyg==" + }, + "node_modules/@polymer/iron-a11y-keys-behavior": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@polymer/iron-a11y-keys-behavior/-/iron-a11y-keys-behavior-3.0.1.tgz", + "integrity": "sha512-lnrjKq3ysbBPT/74l0Fj0U9H9C35Tpw2C/tpJ8a+5g8Y3YJs1WSZYnEl1yOkw6sEyaxOq/1DkzH0+60gGu5/PQ==", + "dependencies": { + "@polymer/polymer": "^3.0.0" + } + }, + "node_modules/@polymer/iron-flex-layout": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@polymer/iron-flex-layout/-/iron-flex-layout-3.0.1.tgz", + "integrity": "sha512-7gB869czArF+HZcPTVSgvA7tXYFze9EKckvM95NB7SqYF+NnsQyhoXgKnpFwGyo95lUjUW9TFDLUwDXnCYFtkw==", + "dependencies": { + "@polymer/polymer": "^3.0.0" + } + }, + "node_modules/@polymer/iron-icon": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@polymer/iron-icon/-/iron-icon-3.0.1.tgz", + "integrity": "sha512-QLPwirk+UPZNaLnMew9VludXA4CWUCenRewgEcGYwdzVgDPCDbXxy6vRJjmweZobMQv/oVLppT2JZtJFnPxX6g==", + "dependencies": { + "@polymer/iron-flex-layout": "^3.0.0-pre.26", + "@polymer/iron-meta": "^3.0.0-pre.26", + "@polymer/polymer": "^3.0.0" + } + }, + "node_modules/@polymer/iron-iconset-svg": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@polymer/iron-iconset-svg/-/iron-iconset-svg-3.0.1.tgz", + "integrity": "sha512-XNwURbNHRw6u2fJe05O5fMYye6GSgDlDqCO+q6K1zAnKIrpgZwf2vTkBd5uCcZwsN0FyCB3mvNZx4jkh85dRDw==", + "dependencies": { + "@polymer/iron-meta": "^3.0.0-pre.26", + "@polymer/polymer": "^3.0.0" + } + }, + "node_modules/@polymer/iron-list": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@polymer/iron-list/-/iron-list-3.1.0.tgz", + "integrity": "sha512-Eiv6xd3h3oPmn8SXFntXVfC3ZnegH+KHAxiKLKcOASFSRY3mHnr2AdcnExUJ9ItoCMA5UzKaM/0U22eWzGERtA==", + "dependencies": { + "@polymer/iron-a11y-keys-behavior": "^3.0.0-pre.26", + "@polymer/iron-resizable-behavior": "^3.0.0-pre.26", + "@polymer/iron-scroll-target-behavior": "^3.0.0-pre.26", + "@polymer/polymer": "^3.0.0" + } + }, + "node_modules/@polymer/iron-meta": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@polymer/iron-meta/-/iron-meta-3.0.1.tgz", + "integrity": "sha512-pWguPugiLYmWFV9UWxLWzZ6gm4wBwQdDy4VULKwdHCqR7OP7u98h+XDdGZsSlDPv6qoryV/e3tGHlTIT0mbzJA==", + "dependencies": { + "@polymer/polymer": "^3.0.0" + } + }, + "node_modules/@polymer/iron-resizable-behavior": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@polymer/iron-resizable-behavior/-/iron-resizable-behavior-3.0.1.tgz", + "integrity": "sha512-FyHxRxFspVoRaeZSWpT3y0C9awomb4tXXolIJcZ7RvXhMP632V5lez+ch5G5SwK0LpnAPkg35eB0LPMFv+YMMQ==", + "dependencies": { + "@polymer/polymer": "^3.0.0" + } + }, + "node_modules/@polymer/iron-scroll-target-behavior": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@polymer/iron-scroll-target-behavior/-/iron-scroll-target-behavior-3.0.1.tgz", + "integrity": "sha512-xg1WanG25BIkQE8rhuReqY9zx1K5M7F+YAIYpswEp5eyDIaZ1Y3vUmVeQ3KG+hiSugzI1M752azXN7kvyhOBcQ==", + "dependencies": { + "@polymer/polymer": "^3.0.0" + } + }, + "node_modules/@polymer/polymer": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/@polymer/polymer/-/polymer-3.5.1.tgz", + "integrity": "sha512-JlAHuy+1qIC6hL1ojEUfIVD58fzTpJAoCxFwV5yr0mYTXV1H8bz5zy0+rC963Cgr9iNXQ4T9ncSjC2fkF9BQfw==", + "dependencies": { + "@webcomponents/shadycss": "^1.9.1" + } + }, + "node_modules/@rollup/plugin-babel": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz", + "integrity": "sha512-WFfdLWU/xVWKeRQnKmIAQULUI7Il0gZnBIH/ZFO069wYIfPu+8zrfp/KMW0atmELoRDq8FbiP3VCss9MhCut7Q==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.10.4", + "@rollup/pluginutils": "^3.1.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0", + "@types/babel__core": "^7.1.9", + "rollup": "^1.20.0||^2.0.0" + }, + "peerDependenciesMeta": { + "@types/babel__core": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-babel/node_modules/@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dev": true, + "dependencies": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/@rollup/plugin-babel/node_modules/estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", + "dev": true + }, + "node_modules/@rollup/plugin-node-resolve": { + "version": "11.2.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-11.2.1.tgz", + "integrity": "sha512-yc2n43jcqVyGE2sqV5/YCmocy9ArjVAP/BeXyTtADTBBX6V0e5UMqwO8CdQ0kzjb6zu5P1qMzsScCMRvE9OlVg==", + "dev": true, + "dependencies": { + "@rollup/pluginutils": "^3.1.0", + "@types/resolve": "1.17.1", + "builtin-modules": "^3.1.0", + "deepmerge": "^4.2.2", + "is-module": "^1.0.0", + "resolve": "^1.19.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/@rollup/plugin-node-resolve/node_modules/@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dev": true, + "dependencies": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/@rollup/plugin-node-resolve/node_modules/estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", + "dev": true + }, + "node_modules/@rollup/plugin-replace": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-3.1.0.tgz", + "integrity": "sha512-pA3XRUrSKybVYqmH5TqWNZpGxF+VV+1GrYchKgCNIj2vsSOX7CVm2RCtx8p2nrC7xvkziYyK+lSi74T93MU3YA==", + "dev": true, + "dependencies": { + "@rollup/pluginutils": "^3.1.0", + "magic-string": "^0.25.7" + }, + "peerDependencies": { + "rollup": "^1.20.0 || ^2.0.0" + } + }, + "node_modules/@rollup/plugin-replace/node_modules/@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dev": true, + "dependencies": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/@rollup/plugin-replace/node_modules/estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", + "dev": true + }, + "node_modules/@rollup/pluginutils": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.1.0.tgz", + "integrity": "sha512-TrBhfJkFxA+ER+ew2U2/fHbebhLT/l/2pRk0hfj9KusXUuRXd2v0R58AfaZK9VXDQ4TogOSEmICVrQAA3zFnHQ==", + "dev": true, + "dependencies": { + "estree-walker": "^2.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/@surma/rollup-plugin-off-main-thread": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/@surma/rollup-plugin-off-main-thread/-/rollup-plugin-off-main-thread-2.2.3.tgz", + "integrity": "sha512-lR8q/9W7hZpMWweNiAKU7NQerBnzQQLvi8qnTDU/fxItPhtZVMbPV3lbCwjhIlNBe9Bbr5V+KHshvWmVSG9cxQ==", + "dev": true, + "dependencies": { + "ejs": "^3.1.6", + "json5": "^2.2.0", + "magic-string": "^0.25.0", + "string.prototype.matchall": "^4.0.6" + } + }, + "node_modules/@types/estree": { + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", + "dev": true + }, + "node_modules/@types/node": { + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.0.0.tgz", + "integrity": "sha512-cHlGmko4gWLVI27cGJntjs/Sj8th9aYwplmZFwmmgYQQvL5NUsgVJG7OddLvNfLqYS31KFN0s3qlaD9qCaxACA==", + "dev": true + }, + "node_modules/@types/resolve": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", + "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/trusted-types": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.2.tgz", + "integrity": "sha512-F5DIZ36YVLE+PN+Zwws4kJogq47hNgX3Nx6WyDJ3kcplxyke3XIzB8uK5n/Lpm1HBsbGzd6nmGehL8cPekP+Tg==" + }, + "node_modules/@vaadin/accordion": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/accordion/-/accordion-23.2.3.tgz", + "integrity": "sha512-OSuZ045YMPRQBr62T1IajCcLTNhxX68Vp89m/7p2e4Zpz+Q58Dm4wYsDPidNkN5+SFn0FrdjjYDC1CsyjUzySg==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/details": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/app-layout": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/app-layout/-/app-layout-23.2.3.tgz", + "integrity": "sha512-nLD0SfZcJRstfzO/FrXSxVxU7lup5hHLqZyY8M/Cm/TVAkkubjxr4T4pCTBJEfhLFw9HJ0Tgc9PoiywnCxgoCA==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/button": "~23.2.3", + "@vaadin/component-base": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/avatar": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/avatar/-/avatar-23.2.3.tgz", + "integrity": "sha512-rMugxOmCiw3GziNnNl2I3KPMFpQufPCVYdCVaZX86YJg7GxaFY2xpuZ4NvJnzzp4+98Xier4jsHEErbDkBIKIg==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/item": "~23.2.3", + "@vaadin/list-box": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-overlay": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/avatar-group": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/avatar-group/-/avatar-group-23.2.3.tgz", + "integrity": "sha512-hvU2W0SQBzB8Y4EBa2H8N+T60FSBy0VYGrcdOEJZSOG09oNruM4781na4gP2Ke2vLzbWZIcyLWA5LO8mKQRmIQ==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/avatar": "~23.2.3", + "@vaadin/component-base": "~23.2.3", + "@vaadin/item": "~23.2.3", + "@vaadin/list-box": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-overlay": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/board": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/board/-/board-23.2.3.tgz", + "integrity": "sha512-WHRtPURcHO9fvuQS5AKqmFYO+XAQtGMoxEgYb4nRSIAsm2O1i1Yq5gPmC/fNeedQTVwFaz9BIQ0XdcpQbu1AXg==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3" + } + }, + "node_modules/@vaadin/bundles": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/bundles/-/bundles-23.2.3.tgz", + "integrity": "sha512-ANhXyQhtsfW8ddsRjs2InVqnmXljSYyNP7+ALZwzNIWQuoNhjDZyDMzwc0VeV0qoOBuhdj1DXBT0B6OxtGGuiw==", + "peerDependencies": { + "@polymer/iron-flex-layout": "3.0.1", + "@polymer/iron-icon": "3.0.1", + "@polymer/iron-iconset-svg": "3.0.1", + "@polymer/iron-media-query": "3.0.1", + "@polymer/iron-meta": "3.0.1", + "@polymer/polymer": "3.5.1", + "@vaadin/accordion": "23.2.3", + "@vaadin/app-layout": "23.2.3", + "@vaadin/avatar": "23.2.3", + "@vaadin/avatar-group": "23.2.3", + "@vaadin/board": "23.2.3", + "@vaadin/button": "23.2.3", + "@vaadin/charts": "23.2.3", + "@vaadin/checkbox": "23.2.3", + "@vaadin/checkbox-group": "23.2.3", + "@vaadin/combo-box": "23.2.3", + "@vaadin/component-base": "23.2.3", + "@vaadin/confirm-dialog": "23.2.3", + "@vaadin/context-menu": "23.2.3", + "@vaadin/cookie-consent": "23.2.3", + "@vaadin/crud": "23.2.3", + "@vaadin/custom-field": "23.2.3", + "@vaadin/date-picker": "23.2.3", + "@vaadin/date-time-picker": "23.2.3", + "@vaadin/details": "23.2.3", + "@vaadin/dialog": "23.2.3", + "@vaadin/email-field": "23.2.3", + "@vaadin/field-base": "23.2.3", + "@vaadin/field-highlighter": "23.2.3", + "@vaadin/form-layout": "23.2.3", + "@vaadin/grid": "23.2.3", + "@vaadin/grid-pro": "23.2.3", + "@vaadin/horizontal-layout": "23.2.3", + "@vaadin/icon": "23.2.3", + "@vaadin/icons": "23.2.3", + "@vaadin/input-container": "23.2.3", + "@vaadin/integer-field": "23.2.3", + "@vaadin/item": "23.2.3", + "@vaadin/list-box": "23.2.3", + "@vaadin/lit-renderer": "23.2.3", + "@vaadin/login": "23.2.3", + "@vaadin/map": "23.2.3", + "@vaadin/menu-bar": "23.2.3", + "@vaadin/message-input": "23.2.3", + "@vaadin/message-list": "23.2.3", + "@vaadin/notification": "23.2.3", + "@vaadin/number-field": "23.2.3", + "@vaadin/password-field": "23.2.3", + "@vaadin/polymer-legacy-adapter": "23.2.3", + "@vaadin/progress-bar": "23.2.3", + "@vaadin/radio-group": "23.2.3", + "@vaadin/rich-text-editor": "23.2.3", + "@vaadin/scroller": "23.2.3", + "@vaadin/select": "23.2.3", + "@vaadin/split-layout": "23.2.3", + "@vaadin/tabs": "23.2.3", + "@vaadin/text-area": "23.2.3", + "@vaadin/text-field": "23.2.3", + "@vaadin/time-picker": "23.2.3", + "@vaadin/upload": "23.2.3", + "@vaadin/vaadin-development-mode-detector": "2.0.5", + "@vaadin/vaadin-list-mixin": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-overlay": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3", + "@vaadin/vaadin-usage-statistics": "2.1.2", + "@vaadin/vertical-layout": "23.2.3", + "@vaadin/virtual-list": "23.2.3", + "@webcomponents/shadycss": "1.11.0", + "cookieconsent": "3.1.1", + "highcharts": "9.2.2", + "lit": "2.3.0", + "ol": "6.13.0", + "quickselect": "2.0.0", + "rbush": "3.0.1" + }, + "peerDependenciesMeta": { + "@polymer/iron-flex-layout": { + "optional": true + }, + "@polymer/iron-icon": { + "optional": true + }, + "@polymer/iron-iconset-svg": { + "optional": true + }, + "@polymer/iron-media-query": { + "optional": true + }, + "@polymer/iron-meta": { + "optional": true + }, + "@polymer/polymer": { + "optional": true + }, + "@vaadin/accordion": { + "optional": true + }, + "@vaadin/app-layout": { + "optional": true + }, + "@vaadin/avatar": { + "optional": true + }, + "@vaadin/avatar-group": { + "optional": true + }, + "@vaadin/board": { + "optional": true + }, + "@vaadin/button": { + "optional": true + }, + "@vaadin/charts": { + "optional": true + }, + "@vaadin/checkbox": { + "optional": true + }, + "@vaadin/checkbox-group": { + "optional": true + }, + "@vaadin/combo-box": { + "optional": true + }, + "@vaadin/component-base": { + "optional": true + }, + "@vaadin/confirm-dialog": { + "optional": true + }, + "@vaadin/context-menu": { + "optional": true + }, + "@vaadin/cookie-consent": { + "optional": true + }, + "@vaadin/crud": { + "optional": true + }, + "@vaadin/custom-field": { + "optional": true + }, + "@vaadin/date-picker": { + "optional": true + }, + "@vaadin/date-time-picker": { + "optional": true + }, + "@vaadin/details": { + "optional": true + }, + "@vaadin/dialog": { + "optional": true + }, + "@vaadin/email-field": { + "optional": true + }, + "@vaadin/field-base": { + "optional": true + }, + "@vaadin/field-highlighter": { + "optional": true + }, + "@vaadin/form-layout": { + "optional": true + }, + "@vaadin/grid": { + "optional": true + }, + "@vaadin/grid-pro": { + "optional": true + }, + "@vaadin/horizontal-layout": { + "optional": true + }, + "@vaadin/icon": { + "optional": true + }, + "@vaadin/icons": { + "optional": true + }, + "@vaadin/input-container": { + "optional": true + }, + "@vaadin/integer-field": { + "optional": true + }, + "@vaadin/item": { + "optional": true + }, + "@vaadin/list-box": { + "optional": true + }, + "@vaadin/lit-renderer": { + "optional": true + }, + "@vaadin/login": { + "optional": true + }, + "@vaadin/map": { + "optional": true + }, + "@vaadin/menu-bar": { + "optional": true + }, + "@vaadin/message-input": { + "optional": true + }, + "@vaadin/message-list": { + "optional": true + }, + "@vaadin/notification": { + "optional": true + }, + "@vaadin/number-field": { + "optional": true + }, + "@vaadin/password-field": { + "optional": true + }, + "@vaadin/polymer-legacy-adapter": { + "optional": true + }, + "@vaadin/progress-bar": { + "optional": true + }, + "@vaadin/radio-group": { + "optional": true + }, + "@vaadin/rich-text-editor": { + "optional": true + }, + "@vaadin/scroller": { + "optional": true + }, + "@vaadin/select": { + "optional": true + }, + "@vaadin/split-layout": { + "optional": true + }, + "@vaadin/tabs": { + "optional": true + }, + "@vaadin/text-area": { + "optional": true + }, + "@vaadin/text-field": { + "optional": true + }, + "@vaadin/time-picker": { + "optional": true + }, + "@vaadin/upload": { + "optional": true + }, + "@vaadin/vaadin-development-mode-detector": { + "optional": true + }, + "@vaadin/vaadin-list-mixin": { + "optional": true + }, + "@vaadin/vaadin-lumo-styles": { + "optional": true + }, + "@vaadin/vaadin-overlay": { + "optional": true + }, + "@vaadin/vaadin-themable-mixin": { + "optional": true + }, + "@vaadin/vaadin-usage-statistics": { + "optional": true + }, + "@vaadin/vertical-layout": { + "optional": true + }, + "@vaadin/virtual-list": { + "optional": true + }, + "@webcomponents/shadycss": { + "optional": true + }, + "cookieconsent": { + "optional": true + }, + "highcharts": { + "optional": true + }, + "lit": { + "optional": true + }, + "ol": { + "optional": true + }, + "quickselect": { + "optional": true + }, + "rbush": { + "optional": true + } + } + }, + "node_modules/@vaadin/button": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/button/-/button-23.2.3.tgz", + "integrity": "sha512-j5xXZ4XF4jUNXrv8IfywglvCc0Y2+2BDAa7iva9NKjYZG3FlqANE0PHxJkoFhfuDJeZE8tiRfILVZc3XlwolWw==", + "dependencies": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/charts": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/charts/-/charts-23.2.3.tgz", + "integrity": "sha512-mOEBIkV3s4Q2wYSIFmv1PEuiRR4HszCKelzxbfeg0hY9M94HJT3gYmzzv86uUpZa05404llgFbI5NaK+0Oc13g==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3", + "highcharts": "9.2.2" + } + }, + "node_modules/@vaadin/checkbox": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/checkbox/-/checkbox-23.2.3.tgz", + "integrity": "sha512-QtJ/t+TpnVXiErX9L5Rcwu53QFI222biDCDiVczjN/tPMqZbdAM2rEoI6xjo4LsG5Ld2MAU0NDBlyJj6/tUlQA==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/field-base": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/checkbox-group": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/checkbox-group/-/checkbox-group-23.2.3.tgz", + "integrity": "sha512-Fk5/5kuv++XT/6zkBEYn1rlgq7BVWDhtZe7X6S7oWsFRdStugfxkxxoN2ly3sIOg8+xCgS5aup9p435hezJ7Rg==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/checkbox": "~23.2.3", + "@vaadin/component-base": "~23.2.3", + "@vaadin/field-base": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/combo-box": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/combo-box/-/combo-box-23.2.3.tgz", + "integrity": "sha512-1g191PZ079I9gdiCo+2/8b8rc3X+uGTRW6o+XaWxMedJdEvJPXdx5Y/KmzA/r+hvf1DPgA9wbx1UhsXPyUyZ9A==", + "dependencies": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/field-base": "~23.2.3", + "@vaadin/input-container": "~23.2.3", + "@vaadin/item": "~23.2.3", + "@vaadin/lit-renderer": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-overlay": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/common-frontend": { + "version": "0.0.17", + "resolved": "https://registry.npmjs.org/@vaadin/common-frontend/-/common-frontend-0.0.17.tgz", + "integrity": "sha512-M4tg10cYgdDqQAXfGfXpQ90eHm+xL6ynAFEDgtc2IxXVWXKYU8jGK08SM5yOcZ4wDk0ETyHMtQlKUPDNkz6Qfw==", + "dependencies": { + "tslib": "^2.3.1" + }, + "peerDependencies": { + "lit": "^2.0.0" + } + }, + "node_modules/@vaadin/component-base": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/component-base/-/component-base-23.2.3.tgz", + "integrity": "sha512-GrM1AeiENyQLt4R11G6zKN5lkQFlfAdlP9WvHhtSjyY5tVnEQJQpd1SN0T1Xm6XEb7e9EL7yZnKS98IGOQisvw==", + "dependencies": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "^3.0.0", + "@vaadin/vaadin-development-mode-detector": "^2.0.0", + "@vaadin/vaadin-usage-statistics": "^2.1.0", + "lit": "^2.0.0" + } + }, + "node_modules/@vaadin/confirm-dialog": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/confirm-dialog/-/confirm-dialog-23.2.3.tgz", + "integrity": "sha512-/ETv2T+bNM/RuneQu7o8SI7LDPp8mDh7sFlBUPLo37YHS/aUeW/ww1STVNknY0pRm2je59s2B43vsCqWsE2bJQ==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/button": "~23.2.3", + "@vaadin/component-base": "~23.2.3", + "@vaadin/dialog": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-overlay": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/context-menu": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/context-menu/-/context-menu-23.2.3.tgz", + "integrity": "sha512-IkhL0HYSusxzAHJt8WurmUUAWC2Q1s4ABjHCe9dcGLV8w9TGxQqAOzvJ6raCDhey+GSiBNnwqBQSbYZkp20WJg==", + "dependencies": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/item": "~23.2.3", + "@vaadin/list-box": "~23.2.3", + "@vaadin/lit-renderer": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-overlay": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/cookie-consent": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/cookie-consent/-/cookie-consent-23.2.3.tgz", + "integrity": "sha512-lvQ9I/jF3VeI723eCOJI4tcRlyv0dsedimvHLZE7MxAcKgwAZ042D23sLZBRqz4Hr68UTykpZaGvCIbfHp1DOg==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "cookieconsent": "^3.0.6" + } + }, + "node_modules/@vaadin/crud": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/crud/-/crud-23.2.3.tgz", + "integrity": "sha512-1PU4QxOxes28s3pfZhcI6lVeKSxRu6FVPT76m8EHWnRuIaUrtyI4+JffABEXWY0VqUWfmYrJDRIypvxTnWniAg==", + "dependencies": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "^3.0.0", + "@vaadin/button": "~23.2.3", + "@vaadin/component-base": "~23.2.3", + "@vaadin/confirm-dialog": "~23.2.3", + "@vaadin/dialog": "~23.2.3", + "@vaadin/form-layout": "~23.2.3", + "@vaadin/grid": "~23.2.3", + "@vaadin/text-field": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/custom-field": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/custom-field/-/custom-field-23.2.3.tgz", + "integrity": "sha512-/9E1QI9Y7uXyTAzHzjJyhQszWYvdPwejxeNshNS2dCkPJQsi/pjun+LhJynoeCY3F5hvsCJhsCRUX5ynFp0dVg==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/field-base": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/date-picker": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/date-picker/-/date-picker-23.2.3.tgz", + "integrity": "sha512-Q8Ih31I6kaY531y5008+wJZnCUbDqRrdIase9JnMROqOcC9R9laTvPWtfZTveM6XuCCGCQmKfbvMajobykxwcQ==", + "dependencies": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "^3.2.0", + "@vaadin/button": "~23.2.3", + "@vaadin/component-base": "~23.2.3", + "@vaadin/field-base": "~23.2.3", + "@vaadin/input-container": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-overlay": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/date-time-picker": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/date-time-picker/-/date-time-picker-23.2.3.tgz", + "integrity": "sha512-hmvWs9pE4UC7Ha4gg2f/7xCW7DvxsffpFWQPAIQBq4Sdb9tZSxLQSq+ftLTTRHl9Q6xx4bpKErNJyRMSe4KIIw==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/custom-field": "~23.2.3", + "@vaadin/date-picker": "~23.2.3", + "@vaadin/field-base": "~23.2.3", + "@vaadin/time-picker": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/details": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/details/-/details-23.2.3.tgz", + "integrity": "sha512-VdjTAPVhC4Cj7zr6hEoKdOftwj20OWuES6bZTZsXb+819i5emCTaeQx/aPDkTUgSbY2gsv/HWIwSWftmD7L/BQ==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/field-base": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/dialog": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/dialog/-/dialog-23.2.3.tgz", + "integrity": "sha512-2eF8OeLtSrPFnd8HZaZ4KVM0YhzARvZrJXkMLn+Xa3GFIZxM+1Rh3P4b2kn5I9hZ0Hh72DvoFSZfFLHsfsV3hQ==", + "dependencies": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/lit-renderer": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-overlay": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/email-field": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/email-field/-/email-field-23.2.3.tgz", + "integrity": "sha512-Sc2pQOH2wLtEwG0ZAU1SC8TtYjRlqx+PfOcyyKdxC6RBGniP6K6/CIS470B3a+xdAnhrf8y+DARDmXqRtyMfcQ==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/text-field": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/field-base": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/field-base/-/field-base-23.2.3.tgz", + "integrity": "sha512-vRCP6f+3DaceY8wQ6sh4FE8VFJS5omL8zLceYxZ4djJUZXJHocSBjV2qQMQcQ/ASRktbTqVz8SbzaR4PSHwGBQ==", + "dependencies": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "lit": "^2.0.0" + } + }, + "node_modules/@vaadin/field-highlighter": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/field-highlighter/-/field-highlighter-23.2.3.tgz", + "integrity": "sha512-WfiWWAqtH4+uqW6F/PtOWt117fHfE9vNSgpeOzAOowybjS6gsTYYkFwfanG2OQ9CbsQVWzAXGjGKvF6qmL6U7g==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-overlay": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3", + "lit": "^2.0.0" + } + }, + "node_modules/@vaadin/flow-frontend": { + "resolved": "target/flow-frontend", + "link": true + }, + "node_modules/@vaadin/form-layout": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/form-layout/-/form-layout-23.2.3.tgz", + "integrity": "sha512-Hec2GawwT278uBidtMfALS6zHDTK4qpx6FxAGJXvBb+sRxPw+niybK+tQp+W8JuHMDWtHjvB5SFzQcCeuKzdNA==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/grid": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/grid/-/grid-23.2.3.tgz", + "integrity": "sha512-W/zLseKOwWcPUvz7bePC59kzKPNRk/zJGfkt2WC4Bc0wEfSNvF+9/F79hZ78tF4p8btCLMQNfvyHjFb1tnCIkg==", + "dependencies": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "^3.0.0", + "@vaadin/checkbox": "~23.2.3", + "@vaadin/component-base": "~23.2.3", + "@vaadin/lit-renderer": "~23.2.3", + "@vaadin/text-field": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/grid-pro": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/grid-pro/-/grid-pro-23.2.3.tgz", + "integrity": "sha512-+YCjdM7dsv3ZcOb07bgL6ENuH37E2Wqs0j/6MXaTtUVaXgDm/02vl1mqKHCLHNc/9PHlUH2kygmykr46sdPbzg==", + "dependencies": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "^3.0.0", + "@vaadin/checkbox": "~23.2.3", + "@vaadin/component-base": "~23.2.3", + "@vaadin/grid": "~23.2.3", + "@vaadin/item": "~23.2.3", + "@vaadin/list-box": "~23.2.3", + "@vaadin/lit-renderer": "~23.2.3", + "@vaadin/select": "~23.2.3", + "@vaadin/text-field": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/horizontal-layout": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/horizontal-layout/-/horizontal-layout-23.2.3.tgz", + "integrity": "sha512-WPx+LHrFMwMkz75r73VovwPQNbYd0g15V+w01OmXWaU/jqlMIxFY7tCJvKXJipNy458PaugO0Vsa8D62mRJt2Q==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/icon": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/icon/-/icon-23.2.3.tgz", + "integrity": "sha512-iDeewImk475xCGO0t2+7RPcz73RGTfWvzXu+0m55unhTgPL7sJrmQNbvdNY1VpiOrojNdsI/MwX9E0Io3VI0Mw==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3", + "lit": "^2.0.0" + } + }, + "node_modules/@vaadin/icons": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/icons/-/icons-23.2.3.tgz", + "integrity": "sha512-4LQV293TnmsvfDFKtgfIGoOyOCXT3F26WLjb4XNIEmO6RKL2bHOGqJFSWGjfBSoCeNTzEXUQbmuxgKV9ydtkUw==", + "dependencies": { + "@polymer/iron-icon": "^3.0.0", + "@polymer/iron-iconset-svg": "^3.0.0", + "@polymer/polymer": "^3.0.0", + "@vaadin/icon": "~23.2.3" + } + }, + "node_modules/@vaadin/input-container": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/input-container/-/input-container-23.2.3.tgz", + "integrity": "sha512-rZ1bnB7IqhNqW35s/qMowQBCiSucAFD/n0IE6H7/PY7Hl0LKaATYhkpGsxjjNMTg6C8dkICuM26UaIaeY8axVQ==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/integer-field": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/integer-field/-/integer-field-23.2.3.tgz", + "integrity": "sha512-ixA8Yt7dmHdLTOTVi2b1+5RTMZjN2y+snI70DQOKKQLg0lVLPcorJrzEMCFmFZWGSpW+sAeV46jlfFDj5SWFaw==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/number-field": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3" + } + }, + "node_modules/@vaadin/item": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/item/-/item-23.2.3.tgz", + "integrity": "sha512-lFF6RHB5M1LDaLv+ewt0PcZm1KG2BD9CF19cUvQ7fk5iu7C1WcJuuP+FXv+PkMfpqMxxxeqInUuzhCjhsRQP/A==", + "dependencies": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/list-box": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/list-box/-/list-box-23.2.3.tgz", + "integrity": "sha512-oyGtLjcyNrb02RS/CDV3wkN8cjNbdj/J+tr/Vru+VGITTVt1+MmF9iESRshLP6QrVVJ0js83W8JivtWyDtjguw==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/item": "~23.2.3", + "@vaadin/vaadin-list-mixin": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/lit-renderer": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/lit-renderer/-/lit-renderer-23.2.3.tgz", + "integrity": "sha512-dZ2iU9GT90vhSjsxym3ogozXoV1mUvSqq8ukidBzGxvz+mPtiWstvgIFMbxPOWHMUDU+ioXIqT8YHU5cZw6CFQ==", + "dependencies": { + "lit": "^2.0.0" + } + }, + "node_modules/@vaadin/login": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/login/-/login-23.2.3.tgz", + "integrity": "sha512-MaZOt87S8qwmSJWkh69Ifi0gNziRIInK1l13/M8cSUPcGuz2Kur/QppCrEZ55mlAcn0GTDMfFRAZzUa4sHJakw==", + "dependencies": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "^3.0.0", + "@vaadin/button": "~23.2.3", + "@vaadin/component-base": "~23.2.3", + "@vaadin/password-field": "~23.2.3", + "@vaadin/text-field": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-overlay": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/map": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/map/-/map-23.2.3.tgz", + "integrity": "sha512-XWd6F9cqOrD25bRBsWLhIBSTzYPBK1dUhrvuC/FCXVLE63reBjvXn2tYbr5jASy2OHNhW9U0cdAKAO5TXMBmDg==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3", + "ol": "6.13.0" + } + }, + "node_modules/@vaadin/menu-bar": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/menu-bar/-/menu-bar-23.2.3.tgz", + "integrity": "sha512-fSXZICftDqmfNvZjNGhsTTiP1cvcSRKTsbLP4TuRze7ElaZKHqIK0eYa6l6VDdX/DpTBnG6ImdOLlf0q46m3eQ==", + "dependencies": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "^3.0.0", + "@vaadin/button": "~23.2.3", + "@vaadin/component-base": "~23.2.3", + "@vaadin/context-menu": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/message-input": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/message-input/-/message-input-23.2.3.tgz", + "integrity": "sha512-Qai3s6e2VTcjoyZBzDDnTVigsY9NycGVPVfO5kxKKGMsjTn4hVvgLzWi9A6XndYWWOeSpjD96rdxXRStQsUiiw==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/button": "~23.2.3", + "@vaadin/component-base": "~23.2.3", + "@vaadin/text-area": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/message-list": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/message-list/-/message-list-23.2.3.tgz", + "integrity": "sha512-Wx9XaoJskISXOGDkro5qdY6iTX+yG/dKaKmVVY8vDGQvgnIUOx/6K92NQRG2BCPnlmw5jQ2wtTH6pvC1rHn0Zw==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/avatar": "~23.2.3", + "@vaadin/component-base": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/multi-select-combo-box": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/multi-select-combo-box/-/multi-select-combo-box-23.2.3.tgz", + "integrity": "sha512-+Zdz6kIoGBoftOYQGTTbKgRGfMHUkTbLZLJ1hWS1+j+AQxw/BcsvSRnQIL1nQG6/plLlVNWmlES6S9KSYQCgdg==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/combo-box": "~23.2.3", + "@vaadin/component-base": "~23.2.3", + "@vaadin/field-base": "~23.2.3", + "@vaadin/input-container": "~23.2.3", + "@vaadin/lit-renderer": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/notification": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/notification/-/notification-23.2.3.tgz", + "integrity": "sha512-hRvtp3wEWrIL416tGqFLWxQaKEtglyIsMzd4Sdf7Kg+LcZ34G6V+ASVsLF3J8EWaqi4JwCyoPp6AJt4vbQGiXQ==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/lit-renderer": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3", + "lit": "^2.0.0" + } + }, + "node_modules/@vaadin/number-field": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/number-field/-/number-field-23.2.3.tgz", + "integrity": "sha512-djP1U6n1LoKqLi7dao4xssYhfB1n6fW8paT07sPwEbzHeSnLxncSghfi+TDicSYwoB+XN3OId/VM8HoKBx5uwg==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/field-base": "~23.2.3", + "@vaadin/input-container": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/password-field": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/password-field/-/password-field-23.2.3.tgz", + "integrity": "sha512-l1nojHgag5/mwXYcA9cT3GHM14Yeq32Q3ANsrJ1Xkd/N/6JvnQycP9QDTOv7pyzc+BPUU3zQF0OJgqL81l4HDQ==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/button": "~23.2.3", + "@vaadin/text-field": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3" + } + }, + "node_modules/@vaadin/polymer-legacy-adapter": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/polymer-legacy-adapter/-/polymer-legacy-adapter-23.2.3.tgz", + "integrity": "sha512-w81tOU9xMvxHo2UIpZUWfpDn3Lb6Plfzc+/KtxnnU4DBD+a7b9TE0mB4HlN+9dgilwaHUokFHVr21XxM/aEgIQ==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/vaadin-themable-mixin": "~23.2.3", + "lit": "^2.0.0" + } + }, + "node_modules/@vaadin/progress-bar": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/progress-bar/-/progress-bar-23.2.3.tgz", + "integrity": "sha512-Ur7PQVdh/5mRe9OXFPFf6RPJN1xcrSeq+vrAS6JHnblWAabptik+NPoBUpJ9V57YCkSyUZu5vzZKoCzqRwM5mw==", + "dependencies": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/radio-group": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/radio-group/-/radio-group-23.2.3.tgz", + "integrity": "sha512-kHzm95CKw7V2gdV+WodCfXXLygC9N+As57KjTHpa1pXBtiaXneF4otN23MxB5o7Q40ZAcTXDiE40O98IpzkP7g==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/field-base": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/rich-text-editor": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/rich-text-editor/-/rich-text-editor-23.2.3.tgz", + "integrity": "sha512-yl0aFeENlP0/HlMIRqdUkNvX9nflDZ7pLFfP5Y8AGYAZ5WEmwGHIW6lDzhxAsSFwyMoYk6/J5ASJzlOapr8Ihg==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/button": "~23.2.3", + "@vaadin/component-base": "~23.2.3", + "@vaadin/confirm-dialog": "~23.2.3", + "@vaadin/text-field": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/router": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/@vaadin/router/-/router-1.7.4.tgz", + "integrity": "sha512-B4JVtzFVUMlsjuJHNXEMfNZrM4QDrdeOMc6EEigiHYxwF82py6yDdP6SWP0aPoP3f6aQHt51tLWdXSpkKpWf7A==", + "dependencies": { + "@vaadin/vaadin-usage-statistics": "^2.1.0", + "path-to-regexp": "2.4.0" + } + }, + "node_modules/@vaadin/scroller": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/scroller/-/scroller-23.2.3.tgz", + "integrity": "sha512-sdgPTs/grs7JnSrxYi5rCxwmV9aiMMZ5ONxNRt+c7kQV9i5W3s1iNAJdNth3guQsKGSr11Zt8ethyYa7pEq4hQ==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/select": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/select/-/select-23.2.3.tgz", + "integrity": "sha512-nSvIYrcGyA2GfjUy2sikSDRg39ytBG59vQJl7QQf7De+rYSSSDCG3bv1xgMKhb8Q6Pkec/adWNgpSkEyj4vjOg==", + "dependencies": { + "@polymer/polymer": "^3.2.0", + "@vaadin/button": "~23.2.3", + "@vaadin/component-base": "~23.2.3", + "@vaadin/field-base": "~23.2.3", + "@vaadin/input-container": "~23.2.3", + "@vaadin/item": "~23.2.3", + "@vaadin/list-box": "~23.2.3", + "@vaadin/lit-renderer": "~23.2.3", + "@vaadin/vaadin-list-mixin": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-overlay": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/split-layout": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/split-layout/-/split-layout-23.2.3.tgz", + "integrity": "sha512-G0XQ8p+ksYLsofELYSds+iemhfelesNUon28RbyNQ52P99Zfz6dnffo8rUL4ghAYO2PttuSRaewJqxm4dNH9cQ==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/tabs": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/tabs/-/tabs-23.2.3.tgz", + "integrity": "sha512-iJde//sD8PU6UdoUloF4Whq5wnbspZMVlBgboMuCqsMBc/Np5tIDgUp27OYWn+PUeYCLtXkoTUFKfuQb5WwC1g==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/item": "~23.2.3", + "@vaadin/vaadin-list-mixin": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/text-area": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/text-area/-/text-area-23.2.3.tgz", + "integrity": "sha512-VsBRi4wZE1KzQQXRAjVlOrqILpeVH5xWzGui1fkpW/23FNsVNUzr6JwbGtnV2iY98pKQkuIs6RHf7V+EPt8EBA==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/field-base": "~23.2.3", + "@vaadin/input-container": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/text-field": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/text-field/-/text-field-23.2.3.tgz", + "integrity": "sha512-Hth2BqDLfV5yZcsWKwk3tD2Pq5OvkS1WHIQ3X1Za5MmDnJ0D+AwfEu2TGt/9QeOJ1W2JhLLnoPY3yq1dXp0S2g==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/field-base": "~23.2.3", + "@vaadin/input-container": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/time-picker": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/time-picker/-/time-picker-23.2.3.tgz", + "integrity": "sha512-Z+Ml0SuYf0EmH9Spm4iARZvVjVv/V9NGPIvYHc9YJ4xEORcWWdVJxB/xxDbNO9Fjj+0NeOabH63T6eDVE0vRcw==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/combo-box": "~23.2.3", + "@vaadin/component-base": "~23.2.3", + "@vaadin/field-base": "~23.2.3", + "@vaadin/input-container": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/upload": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/upload/-/upload-23.2.3.tgz", + "integrity": "sha512-imgVW/HVH8dtJUXyZkLvelAj+lDUWz0hBs2h4vYspS0awff0d9lowYWQ/Oa8qYGl7O6CNfL9MqU3H8lqXeTQ3A==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/button": "~23.2.3", + "@vaadin/component-base": "~23.2.3", + "@vaadin/progress-bar": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-accordion": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-accordion/-/vaadin-accordion-23.2.3.tgz", + "integrity": "sha512-v8Zp4EHiqqX00YUvo3sSQyWzk7rn+xt+BGMUnx66y+Vad1jV3mLXUwX6Km57AR8J2YO3NLxw7Le2SVoJ0HEVZQ==", + "dependencies": { + "@vaadin/accordion": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-app-layout": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-app-layout/-/vaadin-app-layout-23.2.3.tgz", + "integrity": "sha512-7TtM1vo4WwCl+FUtEsUHd50Ja3PBE68/0ux2VqRD03wSa1KCAt9SNIk177D7XkszpcTRtggM2AyxUbsQP7H89g==", + "dependencies": { + "@vaadin/app-layout": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-avatar": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-avatar/-/vaadin-avatar-23.2.3.tgz", + "integrity": "sha512-NlJn9UdvBSaImGtXkxvRmpDUJHLCBW6VmP609RoaaqCqVf8SdEeVHW9LeM6plQCarS7CofAVVk3oRxMz9582Eg==", + "dependencies": { + "@vaadin/avatar": "~23.2.3", + "@vaadin/avatar-group": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-board": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-board/-/vaadin-board-23.2.3.tgz", + "integrity": "sha512-0WR3Qd7Pos0lOTDQVTVRiq0WsAhN7Xfgf7aVRj5vA0KGOxnBSakom67BK0HfOR7vAGZyetsoQ1ceN194FN5tmw==", + "dependencies": { + "@vaadin/board": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-button": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-button/-/vaadin-button-23.2.3.tgz", + "integrity": "sha512-Arj/Z4cTntofyCtQ6/O5P1Gw/HbjAeQa7sQMxOsiquWvTqjjxg8CEQ6+OabPHgAYSm3d5ZZjy/XrNiMbr5lF7w==", + "dependencies": { + "@vaadin/button": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-charts": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-charts/-/vaadin-charts-23.2.3.tgz", + "integrity": "sha512-NAJpTTbpCYe2SsSsBqYWuM6MbW5FljYLbDan7L3Vm5Wz+GmTFGdRvSiUIOiulEwfwjV61mrhO8dYb8ImE7achg==", + "dependencies": { + "@vaadin/charts": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-checkbox": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-checkbox/-/vaadin-checkbox-23.2.3.tgz", + "integrity": "sha512-1Aq7m54LbTMgs8vPbl6iDcX4wIY3Fr6ihvjJ1kMPBs63Ru+q7hsjHuo/4ZGRziOqWFUYEDJZrvE+GhrOru9V7Q==", + "dependencies": { + "@vaadin/checkbox": "~23.2.3", + "@vaadin/checkbox-group": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-combo-box": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-combo-box/-/vaadin-combo-box-23.2.3.tgz", + "integrity": "sha512-m4U+sw+8e1fXJdo+RBjwAw6Abo4+MVvpax6KBtOT3vVQ+Kb9eMucR4pk+4UZqWF/5EBOYNqrH3AdoLpbRGGMVA==", + "dependencies": { + "@vaadin/combo-box": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-confirm-dialog": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-confirm-dialog/-/vaadin-confirm-dialog-23.2.3.tgz", + "integrity": "sha512-zSKwlO3qol2v4/oD2gl1JjT9iBASV7fNqKhDPS1+qQmZ6kmN/5vzn2t4oay1xpz6Vsayoeq/w17DCowJK0i7fQ==", + "dependencies": { + "@vaadin/confirm-dialog": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-context-menu": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-context-menu/-/vaadin-context-menu-23.2.3.tgz", + "integrity": "sha512-iUMksoII7oHVV+T9h8gsZ0SOFHgYb6bGWCxA9otbVrmkCvfCjqQmDvnXqFDyMYluKhRWP56+7KmRqAFW3xmM5Q==", + "dependencies": { + "@vaadin/context-menu": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-cookie-consent": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-cookie-consent/-/vaadin-cookie-consent-23.2.3.tgz", + "integrity": "sha512-iIeSlXBzzZ4zcktAZk/F2oGc/ICqucfEtZwf9bNkgCeYEx6wfcmCv02WQdyMBFFopJ4W8I4Tk1zHaoNxeHlOOg==", + "dependencies": { + "@vaadin/cookie-consent": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-crud": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-crud/-/vaadin-crud-23.2.3.tgz", + "integrity": "sha512-mJ7lnyh9xoLEky0w5LLpalMEtcOOH4fsgX1UjD+rzNhf3TlYv+4oX9aeBj8ZV1jAAn+8lrCnMUPcxPeGiDRJJQ==", + "dependencies": { + "@vaadin/crud": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-custom-field": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-custom-field/-/vaadin-custom-field-23.2.3.tgz", + "integrity": "sha512-J6KdnfC8gN4GxGNHqNzVF3X+RN81KihQ+vyYEAOTB1hJOySHe/Qw3BpSUoh+Ny6YvuAt9ALQLc9QLFdnAi4dKA==", + "dependencies": { + "@vaadin/custom-field": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-date-picker": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-date-picker/-/vaadin-date-picker-23.2.3.tgz", + "integrity": "sha512-0DcGGbz1ND4AcMy4yfvAQdIDwH8wiI3ODYtWDlgaFcvyxFlnEyKjmJXFWy4ge+kZqrsUy5DylzR5O/cDkYVSyw==", + "dependencies": { + "@vaadin/date-picker": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-date-time-picker": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-date-time-picker/-/vaadin-date-time-picker-23.2.3.tgz", + "integrity": "sha512-0u/5loy6xvZaLrWEv9OsKnKmQKGQ79Ae+eI4A/+Oa4olqodTCzfRLVWbO96Ul3h972dFs3qaKZL5TkRS55LQ8g==", + "dependencies": { + "@vaadin/date-time-picker": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-details": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-details/-/vaadin-details-23.2.3.tgz", + "integrity": "sha512-j5ySG1NWWLmMmd6ic/v0AH56Ms0P3sEeNaM1vMpN0oWgBnX3BHXllWRDvsqCrYXIYsYcgBCQZiGQwm+im77Pgw==", + "dependencies": { + "@vaadin/details": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-development-mode-detector": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-development-mode-detector/-/vaadin-development-mode-detector-2.0.5.tgz", + "integrity": "sha512-miirBQw10UHjKwRv29iZniXCo41cLg3wFotoyTeUZ2PTGIDk/fZVFr4Q4WVKZrp3D15878vz94nNQROSmPLjdg==" + }, + "node_modules/@vaadin/vaadin-dialog": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-dialog/-/vaadin-dialog-23.2.3.tgz", + "integrity": "sha512-lGEYvLLnbYUZsJilvuFxZ8qFyDgg8KKxaQu+D7vO3gLAqPoL9q9Onbu+bMEfyxMauoTMGKaD4V7AcePIL4uS9A==", + "dependencies": { + "@vaadin/dialog": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-form-layout": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-form-layout/-/vaadin-form-layout-23.2.3.tgz", + "integrity": "sha512-7aD4y9MjFlon2Pelk5CRRLloqEkFVe12OQ/Tq2QuqJbIC5JC+JzHadmRndKvplJV3Gq9bZpPgzT3rdY0KluCBw==", + "dependencies": { + "@vaadin/form-layout": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-grid": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-grid/-/vaadin-grid-23.2.3.tgz", + "integrity": "sha512-mTCblRkN+FGKEt4vNDdXqv2Xa3E7AXA9sNSlUglK7PZXCG9K9ei2ZFzLu1QsKVVVyx7a+EdYUVDCB33SAhMwqg==", + "dependencies": { + "@vaadin/grid": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-grid-pro": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-grid-pro/-/vaadin-grid-pro-23.2.3.tgz", + "integrity": "sha512-az8defrs3QikypTw4yAud8xGnZKNt/9gxnyjzlBuAwxndfIQZvt05v1l628AORoVJiPYS2fj2ir7B8LYAngULg==", + "dependencies": { + "@vaadin/grid-pro": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-icon": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-icon/-/vaadin-icon-23.2.3.tgz", + "integrity": "sha512-R85jNRamKBP8g98eByHmU7MpwiFvHLwpSlFhPUKGMS4BoWDbSkq9GKnD987vt3ZOzqZtZce2n81kjmLk+6hVcg==", + "dependencies": { + "@vaadin/icon": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-icons": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-icons/-/vaadin-icons-23.2.3.tgz", + "integrity": "sha512-IxX3bIC8RBe/9+EbtdUPq8fbmkQeILPXxdDyNqa+Xru5jEHh+DfpLuzxwVS8xMJzwYZ9gurt9JdGA3dsG9rZkA==", + "dependencies": { + "@vaadin/icons": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-item": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-item/-/vaadin-item-23.2.3.tgz", + "integrity": "sha512-2YEdo/5dwJqnHTHMs0UtW7A6K7/1RXR1uwUaTx+/u/E9q6qpN//gu/IqAnjOnrpGSqdjVp92h16RIH0a6jiGTw==", + "dependencies": { + "@vaadin/item": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-list-box": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-list-box/-/vaadin-list-box-23.2.3.tgz", + "integrity": "sha512-UGx2JslBjl4UzNiooVy8yAjlnUcHL/h6xQoEUjW0ippDR4rUxfY3ti0uSeArZahce6X1/yL0YCdvH38VaSyTOw==", + "dependencies": { + "@vaadin/list-box": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-list-mixin": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-list-mixin/-/vaadin-list-mixin-23.2.3.tgz", + "integrity": "sha512-UZxuHKpx8CbC6EJMpxPhgCj1jwnngGMlaHXkcNBRnhk0PjJ72xajrB3pPKv+61bpJDI6hZnEgqhg6KpLBrFkow==", + "dependencies": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-login": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-login/-/vaadin-login-23.2.3.tgz", + "integrity": "sha512-fU88vIrzT6/07c6jYija9ef/npYmSG+N/OEcQqX2b6k9By+56d2OPO3HXFdLrkFrSfps3wRXm/3HHgKjAa3zqA==", + "dependencies": { + "@vaadin/login": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-lumo-styles": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-lumo-styles/-/vaadin-lumo-styles-23.2.3.tgz", + "integrity": "sha512-p0WYFnwLbmtHC71pnA5aBlF9ZQHcBXhP7ACBq/JiQEd/k0iHGSt3tl5HpXU3eaWoh4acmIqfAm6rOTnHxTSYfg==", + "dependencies": { + "@polymer/iron-icon": "^3.0.0", + "@polymer/iron-iconset-svg": "^3.0.0", + "@polymer/polymer": "^3.0.0", + "@vaadin/icon": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-material-styles": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-material-styles/-/vaadin-material-styles-23.2.3.tgz", + "integrity": "sha512-I9EMFci2eJvBKaVLkrQ+eBxscjR0hzTMRvVwfzWXxwTvXwzG2DF+NY7yWPLydXdswFcNM2lGm+3b+Tf/lrSBHw==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-menu-bar": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-menu-bar/-/vaadin-menu-bar-23.2.3.tgz", + "integrity": "sha512-bvKJLYmoes+KKy9FmkKzmiT3ahPH8Ox4z05Hanz56lRzYPulbGz/a2dRO8O0pGr82yHXHFNUyPAyTobpwBvQTg==", + "dependencies": { + "@vaadin/menu-bar": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-messages": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-messages/-/vaadin-messages-23.2.3.tgz", + "integrity": "sha512-k2KmNMhD27DPpvTaiuL0cKuxEh1xu56OOKSgvpYl0xacuxFnmIDavGmUsgXj5lrTq3MEq59dcMH/jMN65Y3VAQ==", + "dependencies": { + "@vaadin/message-input": "~23.2.3", + "@vaadin/message-list": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-notification": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-notification/-/vaadin-notification-23.2.3.tgz", + "integrity": "sha512-ofR1FZacv4MolpEERFuG/TVDbVUsDle6ZcQj2x2Z5+QKxcHKPv6809l2TNZb9XMVUv6z6dHf36e9bmOG+oXIZg==", + "dependencies": { + "@vaadin/notification": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-ordered-layout": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-ordered-layout/-/vaadin-ordered-layout-23.2.3.tgz", + "integrity": "sha512-WDBswS6HRcy/kmNOLfa1HnQIgr1XRvKKJOGQSql6U9ZtNRS7Dpzp+4ZJT/8UX7gkI6dXiIKmj6iAI942V+v3+g==", + "dependencies": { + "@vaadin/horizontal-layout": "~23.2.3", + "@vaadin/scroller": "~23.2.3", + "@vaadin/vertical-layout": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-overlay": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-overlay/-/vaadin-overlay-23.2.3.tgz", + "integrity": "sha512-SGb5NEHlAvXnRG1l6ncF+1JXcZE7Fis6ncZFMWfUKz79xkU2CbtaWAEL9lB2hnvbRh2n5djserPuKk43QBjwuQ==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-progress-bar": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-progress-bar/-/vaadin-progress-bar-23.2.3.tgz", + "integrity": "sha512-12aEUbANAF2TKgaKNhxeuwFD+tG+lATVqGFKo5XvLtqkp4CTQjGnAVB12R16MeMe6V6jOuT0/XoM28ZLZkhxIA==", + "dependencies": { + "@vaadin/progress-bar": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-radio-button": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-radio-button/-/vaadin-radio-button-23.2.3.tgz", + "integrity": "sha512-wyM37uph74AXEs2prBFJdrpuMCsrR9K7jPoKvHTYoIupyn08rXThm1M9/fWy44cIU74YsN0dFJ8m9KgBi8UmcQ==", + "dependencies": { + "@vaadin/radio-group": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-rich-text-editor": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-rich-text-editor/-/vaadin-rich-text-editor-23.2.3.tgz", + "integrity": "sha512-hEibqp3UNdsMcsApR2kTomcaQxyB/GaDNLfEDYE0s1FLgL90IPH06lMnQGaALrQvaxd3BuulYi+cgMDRb6QOLg==", + "dependencies": { + "@vaadin/rich-text-editor": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-select": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-select/-/vaadin-select-23.2.3.tgz", + "integrity": "sha512-JlX5NzTOqyOaa4Hz2/K6FAVjYFmRFFVw0d+E8/9uLX13ekmMEhgDg72MTJGkoVg4USPTh+Q31tuHelB47fV6mg==", + "dependencies": { + "@vaadin/select": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-split-layout": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-split-layout/-/vaadin-split-layout-23.2.3.tgz", + "integrity": "sha512-kIbGVJoLrXnR633OMgNBvNSfqJTT4BXGN0+hYl4wn6MByc/mdgmgh4Bhadwt5cOZlKDPLep7yihIuCXKinWS8w==", + "dependencies": { + "@vaadin/split-layout": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-tabs": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-tabs/-/vaadin-tabs-23.2.3.tgz", + "integrity": "sha512-6ChjCg7gd8pAX9FTd31vNIkWFoI78Gw2KpQLZLMKPfQEwcH8aqODVsMQTz8aC90I5rrXAhF8I0MLN1KYRpTDew==", + "dependencies": { + "@vaadin/tabs": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-template-renderer": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-template-renderer/-/vaadin-template-renderer-23.2.3.tgz", + "integrity": "sha512-mRFj/vniD5AUtWC2mwldV9XLJDJDVN0b1VXzJj2mZ3qnJoCR/IUrWF6CXu/sfLJ/CToxVA5UzsCMFYYWPIlaAg==", + "dependencies": { + "@vaadin/polymer-legacy-adapter": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-text-field": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-text-field/-/vaadin-text-field-23.2.3.tgz", + "integrity": "sha512-hCwEpY66U1fzgbUNjGqRa8mOHGd53MhWrkYTK7iMq65XSMB2nE2m3YPBPo1ypjUhPpmmlIk1CsY2W8U9MEuQDA==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/email-field": "~23.2.3", + "@vaadin/integer-field": "~23.2.3", + "@vaadin/number-field": "~23.2.3", + "@vaadin/password-field": "~23.2.3", + "@vaadin/text-area": "~23.2.3", + "@vaadin/text-field": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-themable-mixin": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-themable-mixin/-/vaadin-themable-mixin-23.2.3.tgz", + "integrity": "sha512-MyCM4TWkl/FVyWmwLk/3+GbgWYLRO/C1nOaV5aaZssZU4oNRhvW0xIwyzGztF1Tzi7vMCC/Uj/KT00YxzTDqQA==", + "dependencies": { + "@open-wc/dedupe-mixin": "^1.3.0", + "lit": "^2.0.0" + } + }, + "node_modules/@vaadin/vaadin-time-picker": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-time-picker/-/vaadin-time-picker-23.2.3.tgz", + "integrity": "sha512-XtVMMgCEu4OwxIMxxD0qSQk8eD6G6SEzPJuRZm7YSCN8Bbm+L72oHlNm2WOq9S+RcToKMx5SBlCwOf6yITwhQw==", + "dependencies": { + "@vaadin/time-picker": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-upload": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-upload/-/vaadin-upload-23.2.3.tgz", + "integrity": "sha512-pLqr3SyykLxA+gkfvRMclGU1yNvrb7SanxQIAwTC5ZAPU2XjbOfxCyhv8BxShbIB2Yz+OgbmWkCG2ndL+k8OZA==", + "dependencies": { + "@vaadin/upload": "~23.2.3" + } + }, + "node_modules/@vaadin/vaadin-usage-statistics": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-usage-statistics/-/vaadin-usage-statistics-2.1.2.tgz", + "integrity": "sha512-xKs1PvRfTXsG0eWWcImLXWjv7D+f1vfoIvovppv6pZ5QX8xgcxWUdNgERlOOdGt3CTuxQXukTBW3+Qfva+OXSg==", + "hasInstallScript": true, + "dependencies": { + "@vaadin/vaadin-development-mode-detector": "^2.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/@vaadin/vaadin-virtual-list": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-virtual-list/-/vaadin-virtual-list-23.2.3.tgz", + "integrity": "sha512-C8MxGWdBO36InA27ScErkSJxyA4Ksz3ceYw75OzEgxPKy43v5ArfXEWyjF/FfXbphhCIhy5yBkHAj2OT/rM/ng==", + "dependencies": { + "@vaadin/virtual-list": "~23.2.3" + } + }, + "node_modules/@vaadin/vertical-layout": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vertical-layout/-/vertical-layout-23.2.3.tgz", + "integrity": "sha512-sJTCtIBYsm/oNVGK4pFjYpy7dofJ++y/BmoVaYHk+LM73AlqkIEtUf/VtcAvOGDFzSFS7iUb1XHB16m/vmZcqw==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@vaadin/virtual-list": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/virtual-list/-/virtual-list-23.2.3.tgz", + "integrity": "sha512-q10DhvjGf5zIRftPVkFz5q6a+MKyIQvkPeWRPH83KDuLkEN/YvkG3K7ijpCL8u31Uc4S7uciAQAtTULR8ByWgQ==", + "dependencies": { + "@polymer/polymer": "^3.0.0", + "@vaadin/component-base": "~23.2.3", + "@vaadin/lit-renderer": "~23.2.3", + "@vaadin/vaadin-lumo-styles": "~23.2.3", + "@vaadin/vaadin-material-styles": "~23.2.3", + "@vaadin/vaadin-themable-mixin": "~23.2.3" + } + }, + "node_modules/@webcomponents/shadycss": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webcomponents/shadycss/-/shadycss-1.11.0.tgz", + "integrity": "sha512-L5O/+UPum8erOleNjKq6k58GVl3fNsEQdSOyh0EUhNmi7tHUyRuCJy1uqJiWydWcLARE5IPsMoPYMZmUGrz1JA==" + }, + "node_modules/acorn-node": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz", + "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", + "dev": true, + "dependencies": { + "acorn": "^7.0.0", + "acorn-walk": "^7.0.0", + "xtend": "^4.0.2" + } + }, + "node_modules/acorn-node/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-escapes/node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/async": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.2.tgz", + "integrity": "sha512-H0E+qZaDEfx/FY4t7iLRv1W2fFI6+pyCeTw1uN20AQPiwqwM6ojPxHxdLv4z8hi2DtnW9BOckSspLucW7pIE5g==", + "dev": true + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/babel-plugin-dynamic-import-node": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", + "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "dev": true, + "dependencies": { + "object.assign": "^4.1.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.1.tgz", + "integrity": "sha512-v7/T6EQcNfVLfcN2X8Lulb7DjprieyLWJK/zOWH5DUYcAgex9sP3h25Q+DLsX9TloXe3y1O8l2q2Jv9q8UVB9w==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.13.11", + "@babel/helper-define-polyfill-provider": "^0.3.1", + "semver": "^6.1.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.2.tgz", + "integrity": "sha512-G3uJih0XWiID451fpeFaYGVuxHEjzKTHtc9uGFEjR6hHrvNzeS/PX+LLLcetJcytsB5m4j+K3o/EpXJNb/5IEQ==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.1", + "core-js-compat": "^3.21.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz", + "integrity": "sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browser-process-hrtime": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz", + "integrity": "sha512-bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw==", + "dev": true + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/builtin-modules": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", + "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001359", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001359.tgz", + "integrity": "sha512-Xln/BAsPzEuiVLgJ2/45IaqD9jShtk3Y33anKb4+yLwQzws3+v6odKfpgES/cDEaZMLzSChpIGdbOYtH9MyuHw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + } + ] + }, + "node_modules/chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", + "dev": true, + "dependencies": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/common-tags": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz", + "integrity": "sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==", + "dev": true, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/construct-style-sheets-polyfill": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/construct-style-sheets-polyfill/-/construct-style-sheets-polyfill-3.1.0.tgz", + "integrity": "sha512-HBLKP0chz8BAY6rBdzda11c3wAZeCZ+kIG4weVC2NM3AXzxx09nhe8t0SQNdloAvg5GLuHwq/0SPOOSPvtCcKw==" + }, + "node_modules/convert-source-map": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", + "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.1" + } + }, + "node_modules/cookieconsent": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/cookieconsent/-/cookieconsent-3.1.1.tgz", + "integrity": "sha512-v8JWLJcI7Zs9NWrs8hiVldVtm3EBF70TJI231vxn6YToBGj0c9dvdnYwltydkAnrbBMOM/qX1xLFrnTfm5wTag==" + }, + "node_modules/core-js-compat": { + "version": "3.23.3", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.23.3.tgz", + "integrity": "sha512-WSzUs2h2vvmKsacLHNTdpyOC9k43AEhcGoFlVgCY4L7aw98oSBKtPL6vD0/TqZjRWRQYdDSLkzZIni4Crbbiqw==", + "dev": true, + "dependencies": { + "browserslist": "^4.21.0", + "semver": "7.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-compat/node_modules/browserslist": { + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.0.tgz", + "integrity": "sha512-UQxE0DIhRB5z/zDz9iA03BOfxaN2+GQdBYH/2WrSIWEUrnpzTPJbhqt+umq6r3acaPRTW1FNTkrcp0PXgtFkvA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001358", + "electron-to-chromium": "^1.4.164", + "node-releases": "^2.0.5", + "update-browserslist-db": "^1.0.0" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/core-js-compat/node_modules/semver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/core-js-compat/node_modules/update-browserslist-db": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.4.tgz", + "integrity": "sha512-jnmO2BEGUjsMOe/Fg9u0oczOe/ppIDZPebzccl1yDWGLFP16Pa1/RM5wEoKYPG2zstNcDuAStejyxsOuKINdGA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "browserslist-lint": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/crypto-random-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/csscolorparser": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/csscolorparser/-/csscolorparser-1.0.3.tgz", + "integrity": "sha512-umPSgYwZkdFoUrH5hIq5kf0wPSXiro51nPw0j2K/c83KflkPSTBGMz6NJvMB+07VlL0y7VPo6QJcDjcgKTTm3w==" + }, + "node_modules/dash-ast": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dash-ast/-/dash-ast-1.0.0.tgz", + "integrity": "sha512-Vy4dx7gquTeMcQR/hDkYLGUnwVil6vk4FOOct+djUnHOUWt+zJPJAaRIXaAFkPXtJjvlY7o3rfRu0/3hpnwoUA==", + "dev": true + }, + "node_modules/date-fns": { + "version": "2.29.3", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.29.3.tgz", + "integrity": "sha512-dDCnyH2WnnKusqvZZ6+jA1O51Ibt8ZMRNkDZdyAyK4YfbDwa/cEmuztzG5pk6hqlp9aSBPYcjOlktquahGwGeA==", + "engines": { + "node": ">=0.11" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/date-fns" + } + }, + "node_modules/deepmerge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-properties": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "dev": true, + "dependencies": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ejs": { + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.8.tgz", + "integrity": "sha512-/sXZeMlhS0ArkfX2Aw780gJzXSMPnKjtspYZv+f3NiKLlubezAHDU5+9xz6gd3/NhG3txQCo6xlglmTS+oTGEQ==", + "dev": true, + "dependencies": { + "jake": "^10.8.5" + }, + "bin": { + "ejs": "bin/cli.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.4.170", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.170.tgz", + "integrity": "sha512-rZ8PZLhK4ORPjFqLp9aqC4/S1j4qWFsPPz13xmWdrbBkU/LlxMcok+f+6f8YnQ57MiZwKtOaW15biZZsY5Igvw==", + "dev": true + }, + "node_modules/es-abstract": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.1.tgz", + "integrity": "sha512-WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.1.1", + "get-symbol-description": "^1.0.0", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "is-callable": "^1.2.4", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.2", + "regexp.prototype.flags": "^1.4.3", + "string.prototype.trimend": "^1.0.5", + "string.prototype.trimstart": "^1.0.5", + "unbox-primitive": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/esbuild": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.15.7.tgz", + "integrity": "sha512-7V8tzllIbAQV1M4QoE52ImKu8hT/NLGlGXkiDsbEU5PS6K8Mn09ZnYoS+dcmHxOS9CRsV4IRAMdT3I67IyUNXw==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/linux-loong64": "0.15.7", + "esbuild-android-64": "0.15.7", + "esbuild-android-arm64": "0.15.7", + "esbuild-darwin-64": "0.15.7", + "esbuild-darwin-arm64": "0.15.7", + "esbuild-freebsd-64": "0.15.7", + "esbuild-freebsd-arm64": "0.15.7", + "esbuild-linux-32": "0.15.7", + "esbuild-linux-64": "0.15.7", + "esbuild-linux-arm": "0.15.7", + "esbuild-linux-arm64": "0.15.7", + "esbuild-linux-mips64le": "0.15.7", + "esbuild-linux-ppc64le": "0.15.7", + "esbuild-linux-riscv64": "0.15.7", + "esbuild-linux-s390x": "0.15.7", + "esbuild-netbsd-64": "0.15.7", + "esbuild-openbsd-64": "0.15.7", + "esbuild-sunos-64": "0.15.7", + "esbuild-windows-32": "0.15.7", + "esbuild-windows-64": "0.15.7", + "esbuild-windows-arm64": "0.15.7" + } + }, + "node_modules/esbuild-android-64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.15.7.tgz", + "integrity": "sha512-p7rCvdsldhxQr3YHxptf1Jcd86dlhvc3EQmQJaZzzuAxefO9PvcI0GLOa5nCWem1AJ8iMRu9w0r5TG8pHmbi9w==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-android-arm64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.15.7.tgz", + "integrity": "sha512-L775l9ynJT7rVqRM5vo+9w5g2ysbOCfsdLV4CWanTZ1k/9Jb3IYlQ06VCI1edhcosTYJRECQFJa3eAvkx72eyQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-darwin-64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.15.7.tgz", + "integrity": "sha512-KGPt3r1c9ww009t2xLB6Vk0YyNOXh7hbjZ3EecHoVDxgtbUlYstMPDaReimKe6eOEfyY4hBEEeTvKwPsiH5WZg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-darwin-arm64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.15.7.tgz", + "integrity": "sha512-kBIHvtVqbSGajN88lYMnR3aIleH3ABZLLFLxwL2stiuIGAjGlQW741NxVTpUHQXUmPzxi6POqc9npkXa8AcSZQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-freebsd-64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.15.7.tgz", + "integrity": "sha512-hESZB91qDLV5MEwNxzMxPfbjAhOmtfsr9Wnuci7pY6TtEh4UDuevmGmkUIjX/b+e/k4tcNBMf7SRQ2mdNuK/HQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-freebsd-arm64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.15.7.tgz", + "integrity": "sha512-dLFR0ChH5t+b3J8w0fVKGvtwSLWCv7GYT2Y2jFGulF1L5HftQLzVGN+6pi1SivuiVSmTh28FwUhi9PwQicXI6Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-32": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.15.7.tgz", + "integrity": "sha512-v3gT/LsONGUZcjbt2swrMjwxo32NJzk+7sAgtxhGx1+ZmOFaTRXBAi1PPfgpeo/J//Un2jIKm/I+qqeo4caJvg==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.15.7.tgz", + "integrity": "sha512-LxXEfLAKwOVmm1yecpMmWERBshl+Kv5YJ/1KnyAr6HRHFW8cxOEsEfisD3sVl/RvHyW//lhYUVSuy9jGEfIRAQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-arm": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.15.7.tgz", + "integrity": "sha512-JKgAHtMR5f75wJTeuNQbyznZZa+pjiUHV7sRZp42UNdyXC6TiUYMW/8z8yIBAr2Fpad8hM1royZKQisqPABPvQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-arm64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.15.7.tgz", + "integrity": "sha512-P3cfhudpzWDkglutWgXcT2S7Ft7o2e3YDMrP1n0z2dlbUZghUkKCyaWw0zhp4KxEEzt/E7lmrtRu/pGWnwb9vw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-mips64le": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.15.7.tgz", + "integrity": "sha512-T7XKuxl0VpeFLCJXub6U+iybiqh0kM/bWOTb4qcPyDDwNVhLUiPcGdG2/0S7F93czUZOKP57YiLV8YQewgLHKw==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-ppc64le": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.15.7.tgz", + "integrity": "sha512-6mGuC19WpFN7NYbecMIJjeQgvDb5aMuvyk0PDYBJrqAEMkTwg3Z98kEKuCm6THHRnrgsdr7bp4SruSAxEM4eJw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-riscv64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.15.7.tgz", + "integrity": "sha512-uUJsezbswAYo/X7OU/P+PuL/EI9WzxsEQXDekfwpQ23uGiooxqoLFAPmXPcRAt941vjlY9jtITEEikWMBr+F/g==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-s390x": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.15.7.tgz", + "integrity": "sha512-+tO+xOyTNMc34rXlSxK7aCwJgvQyffqEM5MMdNDEeMU3ss0S6wKvbBOQfgd5jRPblfwJ6b+bKiz0g5nABpY0QQ==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-netbsd-64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.15.7.tgz", + "integrity": "sha512-yVc4Wz+Pu3cP5hzm5kIygNPrjar/v5WCSoRmIjCPWfBVJkZNb5brEGKUlf+0Y759D48BCWa0WHrWXaNy0DULTQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-openbsd-64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.15.7.tgz", + "integrity": "sha512-GsimbwC4FSR4lN3wf8XmTQ+r8/0YSQo21rWDL0XFFhLHKlzEA4SsT1Tl8bPYu00IU6UWSJ+b3fG/8SB69rcuEQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-sunos-64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.15.7.tgz", + "integrity": "sha512-8CDI1aL/ts0mDGbWzjEOGKXnU7p3rDzggHSBtVryQzkSOsjCHRVe0iFYUuhczlxU1R3LN/E7HgUO4NXzGGP/Ag==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-windows-32": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.15.7.tgz", + "integrity": "sha512-cOnKXUEPS8EGCzRSFa1x6NQjGhGsFlVgjhqGEbLTPsA7x4RRYiy2RKoArNUU4iR2vHmzqS5Gr84MEumO/wxYKA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-windows-64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.15.7.tgz", + "integrity": "sha512-7MI08Ec2sTIDv+zH6StNBKO+2hGUYIT42GmFyW6MBBWWtJhTcQLinKS6ldIN1d52MXIbiJ6nXyCJ+LpL4jBm3Q==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-windows-arm64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.15.7.tgz", + "integrity": "sha512-R06nmqBlWjKHddhRJYlqDd3Fabx9LFdKcjoOy08YLimwmsswlFBJV4rXzZCxz/b7ZJXvrZgj8DDv1ewE9+StMw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.2.11", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz", + "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fastq": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", + "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/filelist": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", + "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", + "dev": true, + "dependencies": { + "minimatch": "^5.0.1" + } + }, + "node_modules/filelist/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/filelist/node_modules/minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "node_modules/function.prototype.name": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", + "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/geotiff": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/geotiff/-/geotiff-2.0.5.tgz", + "integrity": "sha512-U5kVYm118YAmw2swiLu8rhfrYnDKOFI7VaMjuQwcq6Intuuid9Pyb4jjxYUxxkq8kOu2r7Am0Rmb52PObGp4pQ==", + "dependencies": { + "@petamoriken/float16": "^3.4.7", + "lerc": "^3.0.0", + "pako": "^2.0.4", + "parse-headers": "^2.0.2", + "quick-lru": "^6.1.0", + "web-worker": "^1.2.0", + "xml-utils": "^1.0.2" + }, + "engines": { + "node": ">=10.19" + } + }, + "node_modules/get-intrinsic": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz", + "integrity": "sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-own-enumerable-property-symbols": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", + "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==", + "dev": true + }, + "node_modules/get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", + "dev": true + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", + "dev": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/highcharts": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/highcharts/-/highcharts-9.2.2.tgz", + "integrity": "sha512-OMEdFCaG626ES1JEcKAvJTpxAOMuchy0XuAplmnOs0Yu7NMd2RMfTLFQ2fCJOxo3ubSdm/RVQwKAWC+5HYThnw==" + }, + "node_modules/idb": { + "version": "6.1.5", + "resolved": "https://registry.npmjs.org/idb/-/idb-6.1.5.tgz", + "integrity": "sha512-IJtugpKkiVXQn5Y+LteyBCNk1N8xpGV3wWZk9EVtZWH8DYkjBn0bX1XnGP9RkyZF0sAcywa6unHqSWKe7q4LGw==", + "dev": true + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/internal-slot": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-callable": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", + "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", + "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", + "dev": true, + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==", + "dev": true + }, + "node_modules/is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", + "integrity": "sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/jake": { + "version": "10.8.5", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.8.5.tgz", + "integrity": "sha512-sVpxYeuAhWt0OTWITwT98oyV0GsXyMlXCF+3L1SuafBVUIr/uILGRB+NqwkzhgXKvoJpDIpQvqkUALgdmQsQxw==", + "dev": true, + "dependencies": { + "async": "^3.2.3", + "chalk": "^4.0.2", + "filelist": "^1.0.1", + "minimatch": "^3.0.4" + }, + "bin": { + "jake": "bin/cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jake/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jake/node_modules/async": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", + "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", + "dev": true + }, + "node_modules/jake/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jake/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jake/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jake/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jake/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", + "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-worker/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/json-schema": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", + "dev": true + }, + "node_modules/json-stringify-pretty-compact": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/json-stringify-pretty-compact/-/json-stringify-pretty-compact-2.0.0.tgz", + "integrity": "sha512-WRitRfs6BGq4q8gTgOy4ek7iPFXjbra0H3PmDLKm2xnZ+Gh1HUhiKGgCZkSPNULlP7mvfu6FV/mOLhCarspADQ==" + }, + "node_modules/json5": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", + "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", + "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsonpointer": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-5.0.0.tgz", + "integrity": "sha512-PNYZIdMjVIvVgDSYKTT63Y+KZ6IZvGRNNWcxwD+GNnUz1MKPfv30J8ueCjdwcN0nDx2SlshgyB7Oy0epAzVRRg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lerc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lerc/-/lerc-3.0.0.tgz", + "integrity": "sha512-Rm4J/WaHhRa93nCN2mwWDZFoRVF18G1f47C+kvQWyHGEZxFpTUi73p7lMVSAndyxGt6lJ2/CFbOcf9ra5p8aww==" + }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/lit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/lit/-/lit-2.3.0.tgz", + "integrity": "sha512-ynSGsUYKSGN2weFQ1F3SZq0Ihlj+vr/3KAET//Yf8Tz86L7lZizlw9Px+ab5iN8Si4RkVoLqd9YtKQmjdyKHNg==", + "dependencies": { + "@lit/reactive-element": "^1.4.0", + "lit-element": "^3.2.0", + "lit-html": "^2.3.0" + } + }, + "node_modules/lit-element": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-3.2.2.tgz", + "integrity": "sha512-6ZgxBR9KNroqKb6+htkyBwD90XGRiqKDHVrW/Eh0EZ+l+iC+u+v+w3/BA5NGi4nizAVHGYvQBHUDuSmLjPp7NQ==", + "dependencies": { + "@lit/reactive-element": "^1.3.0", + "lit-html": "^2.2.0" + } + }, + "node_modules/lit-html": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-2.3.1.tgz", + "integrity": "sha512-FyKH6LTW6aBdkfNhNSHyZTnLgJSTe5hMk7HFtc/+DcN1w74C215q8B+Cfxc2OuIEpBNcEKxgF64qL8as30FDHA==", + "dependencies": { + "@types/trusted-types": "^2.0.2" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true + }, + "node_modules/lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q==", + "dev": true + }, + "node_modules/lodash.sortby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", + "integrity": "sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==", + "dev": true + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/magic-string": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", + "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", + "dev": true, + "dependencies": { + "sourcemap-codec": "^1.4.8" + } + }, + "node_modules/mapbox-to-css-font": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/mapbox-to-css-font/-/mapbox-to-css-font-2.4.1.tgz", + "integrity": "sha512-QQ/iKiM43DM9+aujTL45Iz5o7gDeSFmy4LPl3HZmNcwCE++NxGazf+yFpY+wCb+YS23sDa1ghpo3zrNFOcHlow==" + }, + "node_modules/merge-source-map": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.0.4.tgz", + "integrity": "sha512-PGSmS0kfnTnMJCzJ16BLLCEe6oeYCamKFFdQKshi4BmM6FUwipjVOcBFGxqtQtirtAG4iZvHlqST9CpZKqlRjA==", + "dev": true, + "dependencies": { + "source-map": "^0.5.6" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/mgrs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/mgrs/-/mgrs-1.0.0.tgz", + "integrity": "sha512-awNbTOqCxK1DBGjalK3xqWIstBZgN6fxsMSiXLs9/spqWkF2pAhb2rrYCFSsr1/tT7PhcDGjZndG8SWYn0byYA==" + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/mutexify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/mutexify/-/mutexify-1.4.0.tgz", + "integrity": "sha512-pbYSsOrSB/AKN5h/WzzLRMFgZhClWccf2XIB4RSMC8JbquiB0e0/SH5AIfdQMdyHmYtv4seU7yV/TvAwPLJ1Yg==", + "dev": true, + "dependencies": { + "queue-tick": "^1.0.0" + } + }, + "node_modules/nanobench": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nanobench/-/nanobench-2.1.1.tgz", + "integrity": "sha512-z+Vv7zElcjN+OpzAxAquUayFLGK3JI/ubCl0Oh64YQqsTGG09CGqieJVQw4ui8huDnnAgrvTv93qi5UaOoNj8A==", + "dev": true, + "dependencies": { + "browser-process-hrtime": "^0.1.2", + "chalk": "^1.1.3", + "mutexify": "^1.1.0", + "pretty-hrtime": "^1.0.2" + }, + "bin": { + "nanobench": "run.js", + "nanobench-compare": "compare.js" + } + }, + "node_modules/nanoid": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", + "dev": true, + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/node-releases": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.5.tgz", + "integrity": "sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==", + "dev": true + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/object-inspect": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", + "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ol": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/ol/-/ol-6.13.0.tgz", + "integrity": "sha512-Fa6yt+FArWE9fwYRRhi/8+ULcFDRS2ZuDcLp3R9bQeDVa5T4E4TT9iqLeJhmHG+bzWiLWJHIeFUqw8GD2gW0YA==", + "dependencies": { + "geotiff": "^2.0.2", + "ol-mapbox-style": "^7.0.0", + "pbf": "3.2.1", + "rbush": "^3.0.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/openlayers" + } + }, + "node_modules/ol-mapbox-style": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/ol-mapbox-style/-/ol-mapbox-style-7.1.1.tgz", + "integrity": "sha512-GLTEYiH/Ec9Zn1eS4S/zXyR2sierVrUc+OLVP8Ra0FRyqRhoYbXdko0b7OIeSHWdtJfHssWYefDOGxfTRUUZ/A==", + "dependencies": { + "@mapbox/mapbox-gl-style-spec": "^13.20.1", + "mapbox-to-css-font": "^2.4.1", + "webfont-matcher": "^1.1.0" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/pako": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pako/-/pako-2.0.4.tgz", + "integrity": "sha512-v8tweI900AUkZN6heMU/4Uy4cXRc2AYNRggVmTR+dEncawDJgCdLMximOVA2p4qO57WMynangsfGRb5WD6L1Bg==" + }, + "node_modules/parse-headers": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.5.tgz", + "integrity": "sha512-ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1Zau/HwI75HA==" + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-to-regexp": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.4.0.tgz", + "integrity": "sha512-G6zHoVqC6GGTQkZwF4lkuEyMbVOjoBKAEybQUypI1WTkqinCOrq2x6U2+phkJ1XsEMTy4LjtwPI7HW+NVrRR2w==" + }, + "node_modules/pbf": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/pbf/-/pbf-3.2.1.tgz", + "integrity": "sha512-ClrV7pNOn7rtmoQVF4TS1vyU0WhYRnP92fzbfF75jAIwpnzdJXf8iTd4CMEqO4yUenH6NDqLiwjqlh6QgZzgLQ==", + "dependencies": { + "ieee754": "^1.1.12", + "resolve-protobuf-schema": "^2.1.0" + }, + "bin": { + "pbf": "bin/pbf" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/postcss": { + "version": "8.4.16", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.16.tgz", + "integrity": "sha512-ipHE1XBvKzm5xI7hiHCZJCSugxvsdq2mPnsq5+UF+VHCjiBvtDrlxJfMBToWaP9D5XlgNmcFGqoHmUn0EYEaRQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + } + ], + "dependencies": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/pretty-bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pretty-hrtime": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", + "integrity": "sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/proj4": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/proj4/-/proj4-2.8.0.tgz", + "integrity": "sha512-baC+YcD4xsSqJ+CpCZljj2gcQDhlKb+J+Zjv/2KSBwWNjk4M0pafgQsE+mWurd84tflMIsP+7j7mtIpFDHzQfQ==", + "dependencies": { + "mgrs": "1.0.0", + "wkt-parser": "^1.3.1" + } + }, + "node_modules/protocol-buffers-schema": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/protocol-buffers-schema/-/protocol-buffers-schema-3.6.0.tgz", + "integrity": "sha512-TdDRD+/QNdrCGCE7v8340QyuXd4kIWIgapsE2+n/SaGiSSbomYl4TjHlvIoCWRpE7wFt02EpB35VVA2ImcBVqw==" + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/queue-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.0.tgz", + "integrity": "sha512-ULWhjjE8BmiICGn3G8+1L9wFpERNxkf8ysxkAer4+TFdRefDaXOCV5m92aMB9FtBVmn/8sETXLXY6BfW7hyaWQ==", + "dev": true + }, + "node_modules/quick-lru": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-6.1.1.tgz", + "integrity": "sha512-S27GBT+F0NTRiehtbrgaSE1idUAJ5bX8dPAQTdylEyNlrdcH5X4Lz7Edz3DYzecbsCluD5zO8ZNEe04z3D3u6Q==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/quickselect": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz", + "integrity": "sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw==" + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/rbush": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/rbush/-/rbush-3.0.1.tgz", + "integrity": "sha512-XRaVO0YecOpEuIvbhbpTrZgoiI6xBlz6hnlr6EHhd+0x9ase6EmeN+hdwwUaJvLcsFFQ8iWVF1GAK1yB0BWi0w==", + "dependencies": { + "quickselect": "^2.0.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.0.1.tgz", + "integrity": "sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw==", + "dev": true, + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dev": true, + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-protobuf-schema": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/resolve-protobuf-schema/-/resolve-protobuf-schema-2.1.0.tgz", + "integrity": "sha512-kI5ffTiZWmJaS/huM8wZfEMer1eRd7oJQhDuxeCLe3t7N7mX3z94CN0xPxBQxFYQTSNz9T0i+v6inKqSdK8xrQ==", + "dependencies": { + "protocol-buffers-schema": "^3.3.1" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rollup": { + "version": "2.78.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.78.1.tgz", + "integrity": "sha512-VeeCgtGi4P+o9hIg+xz4qQpRl6R401LWEXBmxYKOV4zlF82lyhgh2hTZnheFUbANE8l2A41F458iwj2vEYaXJg==", + "dev": true, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=10.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/rollup-plugin-brotli": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/rollup-plugin-brotli/-/rollup-plugin-brotli-3.1.0.tgz", + "integrity": "sha512-vXRPVd9B1x+aaXeBdmLKNNsai9AH3o0Qikf4u0m1icKqgi3qVA4UhOfwGaPYoAHML1GLMUnR//PDhiMHXN/M6g==", + "dev": true, + "engines": { + "node": ">=11.7.0" + } + }, + "node_modules/rollup-plugin-terser": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/rollup-plugin-terser/-/rollup-plugin-terser-7.0.2.tgz", + "integrity": "sha512-w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.10.4", + "jest-worker": "^26.2.1", + "serialize-javascript": "^4.0.0", + "terser": "^5.0.0" + }, + "peerDependencies": { + "rollup": "^2.0.0" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/rw": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/rw/-/rw-1.3.3.tgz", + "integrity": "sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==" + }, + "node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/semver": { + "version": "7.3.7", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/serialize-javascript": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz", + "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", + "dev": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/sort-asc": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/sort-asc/-/sort-asc-0.1.0.tgz", + "integrity": "sha512-jBgdDd+rQ+HkZF2/OHCmace5dvpos/aWQpcxuyRs9QUbPRnkEJmYVo81PIGpjIdpOcsnJ4rGjStfDHsbn+UVyw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sort-desc": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/sort-desc/-/sort-desc-0.1.1.tgz", + "integrity": "sha512-jfZacW5SKOP97BF5rX5kQfJmRVZP5/adDUTY8fCSPvNcXDVpUEe2pr/iKGlcyZzchRJZrswnp68fgk3qBXgkJw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sort-object": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/sort-object/-/sort-object-0.3.2.tgz", + "integrity": "sha512-aAQiEdqFTTdsvUFxXm3umdo04J7MRljoVGbBlkH7BgNsMvVNAJyGj7C/wV1A8wHWAJj/YikeZbfuCKqhggNWGA==", + "dependencies": { + "sort-asc": "^0.1.0", + "sort-desc": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "dev": true + }, + "node_modules/string.prototype.matchall": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.7.tgz", + "integrity": "sha512-f48okCX7JiwVi1NXCVWcFnZgADDC/n2vePlQ/KUCNqCikLLilQvwjMO8+BHVKvgzH0JB0J9LEPgxOGT02RoETg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.1", + "get-intrinsic": "^1.1.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "regexp.prototype.flags": "^1.4.1", + "side-channel": "^1.0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz", + "integrity": "sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz", + "integrity": "sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/stringify-object": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", + "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", + "dev": true, + "dependencies": { + "get-own-enumerable-property-symbols": "^3.0.0", + "is-obj": "^1.0.1", + "is-regexp": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dev": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-comments/-/strip-comments-2.0.1.tgz", + "integrity": "sha512-ZprKx+bBLXv067WTCALv8SSz5l2+XhpYCsVtSqlMnkAXMWDq+/ekVbl1ghqP9rUHTzv6sm/DwCOiYutU/yp1fw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/temp-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", + "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/tempy": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tempy/-/tempy-0.6.0.tgz", + "integrity": "sha512-G13vtMYPT/J8A4X2SjdtBTphZlrp1gKv6hZiOjw14RCWg6GbHuQBGtjlx75xLbYV/wEc0D7G5K4rxKP/cXk8Bw==", + "dev": true, + "dependencies": { + "is-stream": "^2.0.0", + "temp-dir": "^2.0.0", + "type-fest": "^0.16.0", + "unique-string": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/terser": { + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.15.0.tgz", + "integrity": "sha512-L1BJiXVmheAQQy+as0oF3Pwtlo4s3Wi1X2zNZ2NxOB4wx9bdS9Vk67XQENLFdLYGCK/Z2di53mTj/hBafR+dTA==", + "dev": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser/node_modules/acorn": { + "version": "8.8.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", + "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/terser/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "node_modules/terser/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/terser/node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/tiny-invariant": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.2.0.tgz", + "integrity": "sha512-1Uhn/aqw5C6RI4KejVeTg6mIS7IqxnLJ8Mv2tV5rTc0qWobay7pDUz6Wi392Cnc8ak1H0F2cjoRzb2/AW4+Fvg==", + "dev": true + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/tr46": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", + "integrity": "sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/transform-ast": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/transform-ast/-/transform-ast-2.4.4.tgz", + "integrity": "sha512-AxjeZAcIOUO2lev2GDe3/xZ1Q0cVGjIMk5IsriTy8zbWlsEnjeB025AhkhBJHoy997mXpLd4R+kRbvnnQVuQHQ==", + "dev": true, + "dependencies": { + "acorn-node": "^1.3.0", + "convert-source-map": "^1.5.1", + "dash-ast": "^1.0.0", + "is-buffer": "^2.0.0", + "magic-string": "^0.23.2", + "merge-source-map": "1.0.4", + "nanobench": "^2.1.1" + } + }, + "node_modules/transform-ast/node_modules/is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "engines": { + "node": ">=4" + } + }, + "node_modules/transform-ast/node_modules/magic-string": { + "version": "0.23.2", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.23.2.tgz", + "integrity": "sha512-oIUZaAxbcxYIp4AyLafV6OVKoB3YouZs0UTCJ8mOKBHNyJgGDaMJ4TgA+VylJh6fx7EQCC52XkbURxxG9IoJXA==", + "dev": true, + "dependencies": { + "sourcemap-codec": "^1.4.1" + } + }, + "node_modules/tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" + }, + "node_modules/type-fest": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.16.0.tgz", + "integrity": "sha512-eaBzG6MxNzEn9kiwvtre90cXaNLkmadMWa1zQMs3XORCXNbsH/OewwbxC5ia9dCxIxnTAsSxXJaa/p5y8DlvJg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "4.7.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz", + "integrity": "sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz", + "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz", + "integrity": "sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unique-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "dev": true, + "dependencies": { + "crypto-random-string": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "dev": true, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/upath": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", + "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", + "dev": true, + "engines": { + "node": ">=4", + "yarn": "*" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/vite": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/vite/-/vite-3.1.0.tgz", + "integrity": "sha512-YBg3dUicDpDWFCGttmvMbVyS9ydjntwEjwXRj2KBFwSB8SxmGcudo1yb8FW5+M/G86aS8x828ujnzUVdsLjs9g==", + "dev": true, + "dependencies": { + "esbuild": "^0.15.6", + "postcss": "^8.4.16", + "resolve": "^1.22.1", + "rollup": "~2.78.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + }, + "peerDependencies": { + "less": "*", + "sass": "*", + "stylus": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "less": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vite-plugin-checker": { + "version": "0.4.9", + "resolved": "https://registry.npmjs.org/vite-plugin-checker/-/vite-plugin-checker-0.4.9.tgz", + "integrity": "sha512-Oii9mTum8bqZovWejcR739kCqST32oG6LdB/XMdwcLVzmcjq0gf1iVDIedVzJJ7t6GLQAYgjNwvB0fuMiT3tlg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "ansi-escapes": "^4.3.0", + "chalk": "^4.1.1", + "chokidar": "^3.5.1", + "commander": "^8.0.0", + "fast-glob": "^3.2.7", + "lodash.debounce": "^4.0.8", + "lodash.pick": "^4.4.0", + "npm-run-path": "^4.0.1", + "strip-ansi": "^6.0.0", + "tiny-invariant": "^1.1.0", + "vscode-languageclient": "^7.0.0", + "vscode-languageserver": "^7.0.0", + "vscode-languageserver-textdocument": "^1.0.1", + "vscode-uri": "^3.0.2" + }, + "bin": { + "vite-plugin-checker-vls": "bin/vls" + }, + "peerDependencies": { + "vite": "^2.0.0 || ^3.0.0-0" + } + }, + "node_modules/vite-plugin-checker/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/vite-plugin-checker/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/vite-plugin-checker/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/vite-plugin-checker/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/vite-plugin-checker/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/vite-plugin-checker/node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "dev": true, + "engines": { + "node": ">= 12" + } + }, + "node_modules/vite-plugin-checker/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/vite-plugin-checker/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/vite-plugin-checker/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/vscode-jsonrpc": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-6.0.0.tgz", + "integrity": "sha512-wnJA4BnEjOSyFMvjZdpiOwhSq9uDoK8e/kpRJDTaMYzwlkrhG1fwDIZI94CLsLzlCK5cIbMMtFlJlfR57Lavmg==", + "dev": true, + "engines": { + "node": ">=8.0.0 || >=10.0.0" + } + }, + "node_modules/vscode-languageclient": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/vscode-languageclient/-/vscode-languageclient-7.0.0.tgz", + "integrity": "sha512-P9AXdAPlsCgslpP9pRxYPqkNYV7Xq8300/aZDpO35j1fJm/ncize8iGswzYlcvFw5DQUx4eVk+KvfXdL0rehNg==", + "dev": true, + "dependencies": { + "minimatch": "^3.0.4", + "semver": "^7.3.4", + "vscode-languageserver-protocol": "3.16.0" + }, + "engines": { + "vscode": "^1.52.0" + } + }, + "node_modules/vscode-languageserver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-7.0.0.tgz", + "integrity": "sha512-60HTx5ID+fLRcgdHfmz0LDZAXYEV68fzwG0JWwEPBode9NuMYTIxuYXPg4ngO8i8+Ou0lM7y6GzaYWbiDL0drw==", + "dev": true, + "dependencies": { + "vscode-languageserver-protocol": "3.16.0" + }, + "bin": { + "installServerIntoExtension": "bin/installServerIntoExtension" + } + }, + "node_modules/vscode-languageserver-protocol": { + "version": "3.16.0", + "resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.16.0.tgz", + "integrity": "sha512-sdeUoAawceQdgIfTI+sdcwkiK2KU+2cbEYA0agzM2uqaUy2UpnnGHtWTHVEtS0ES4zHU0eMFRGN+oQgDxlD66A==", + "dev": true, + "dependencies": { + "vscode-jsonrpc": "6.0.0", + "vscode-languageserver-types": "3.16.0" + } + }, + "node_modules/vscode-languageserver-textdocument": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.7.tgz", + "integrity": "sha512-bFJH7UQxlXT8kKeyiyu41r22jCZXG8kuuVVA33OEJn1diWOZK5n8zBSPZFHVBOu8kXZ6h0LIRhf5UnCo61J4Hg==", + "dev": true + }, + "node_modules/vscode-languageserver-types": { + "version": "3.16.0", + "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.16.0.tgz", + "integrity": "sha512-k8luDIWJWyenLc5ToFQQMaSrqCHiLwyKPHKPQZ5zz21vM+vIVUSvsRpcbiECH4WR88K2XZqc4ScRcZ7nk/jbeA==", + "dev": true + }, + "node_modules/vscode-uri": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.0.3.tgz", + "integrity": "sha512-EcswR2S8bpR7fD0YPeS7r2xXExrScVMxg4MedACaWHEtx9ftCF/qHG1xGkolzTPcEmjTavCQgbVzHUIdTMzFGA==", + "dev": true + }, + "node_modules/web-worker": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/web-worker/-/web-worker-1.2.0.tgz", + "integrity": "sha512-PgF341avzqyx60neE9DD+XS26MMNMoUQRz9NOZwW32nPQrF6p77f1htcnjBSEV8BGMKZ16choqUG4hyI0Hx7mA==" + }, + "node_modules/webfont-matcher": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/webfont-matcher/-/webfont-matcher-1.1.0.tgz", + "integrity": "sha512-ov8lMvF9wi4PD7fK2Axn9PQEpO9cYI0fIoGqErwd+wi8xacFFDmX114D5Q2Lw0Wlgmb+Qw/dKI2KTtimrJf85g==" + }, + "node_modules/webidl-conversions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", + "dev": true + }, + "node_modules/whatwg-url": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", + "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", + "dev": true, + "dependencies": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/wkt-parser": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/wkt-parser/-/wkt-parser-1.3.2.tgz", + "integrity": "sha512-A26BOOo7sHAagyxG7iuRhnKMO7Q3mEOiOT4oGUmohtN/Li5wameeU4S6f8vWw6NADTVKljBs8bzA8JPQgSEMVQ==" + }, + "node_modules/workbox-background-sync": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-background-sync/-/workbox-background-sync-6.5.0.tgz", + "integrity": "sha512-rrekt/gt6qOIZsisj6QZfmAFPAnocq1Z603zAjt+qHmeXY8DLPOklVtvrXSaHoHH3qIjUq3SQY5s2x240iTIKw==", + "dev": true, + "dependencies": { + "idb": "^6.1.4", + "workbox-core": "6.5.0" + } + }, + "node_modules/workbox-broadcast-update": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-broadcast-update/-/workbox-broadcast-update-6.5.0.tgz", + "integrity": "sha512-JC97c7tYqoGWcCfbKO9KHG6lkU+WhXCnDB2j1oFWEiv53nUHy3yjPpzMmAGNLD9oV5lInO15n6V18HfwgkhISw==", + "dev": true, + "dependencies": { + "workbox-core": "6.5.0" + } + }, + "node_modules/workbox-build": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-build/-/workbox-build-6.5.0.tgz", + "integrity": "sha512-da0/1b6//P9+ts7ofcIKcMVPyN6suJvjJASXokF7DsqvUmgRBPcCVV4KCy8QWjgfcz7mzuTpkSbdVHcPFJ/p0A==", + "dev": true, + "dependencies": { + "@apideck/better-ajv-errors": "^0.3.1", + "@babel/core": "^7.11.1", + "@babel/preset-env": "^7.11.0", + "@babel/runtime": "^7.11.2", + "@rollup/plugin-babel": "^5.2.0", + "@rollup/plugin-node-resolve": "^11.2.1", + "@rollup/plugin-replace": "^2.4.1", + "@surma/rollup-plugin-off-main-thread": "^2.2.3", + "ajv": "^8.6.0", + "common-tags": "^1.8.0", + "fast-json-stable-stringify": "^2.1.0", + "fs-extra": "^9.0.1", + "glob": "^7.1.6", + "lodash": "^4.17.20", + "pretty-bytes": "^5.3.0", + "rollup": "^2.43.1", + "rollup-plugin-terser": "^7.0.0", + "source-map": "^0.8.0-beta.0", + "stringify-object": "^3.3.0", + "strip-comments": "^2.0.1", + "tempy": "^0.6.0", + "upath": "^1.2.0", + "workbox-background-sync": "6.5.0", + "workbox-broadcast-update": "6.5.0", + "workbox-cacheable-response": "6.5.0", + "workbox-core": "6.5.0", + "workbox-expiration": "6.5.0", + "workbox-google-analytics": "6.5.0", + "workbox-navigation-preload": "6.5.0", + "workbox-precaching": "6.5.0", + "workbox-range-requests": "6.5.0", + "workbox-recipes": "6.5.0", + "workbox-routing": "6.5.0", + "workbox-strategies": "6.5.0", + "workbox-streams": "6.5.0", + "workbox-sw": "6.5.0", + "workbox-window": "6.5.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/workbox-build/node_modules/@apideck/better-ajv-errors": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/@apideck/better-ajv-errors/-/better-ajv-errors-0.3.4.tgz", + "integrity": "sha512-Ic2d8ZT6HJiSikGVQvSklaFyw1OUv4g8sDOxa0PXSlbmN/3gL5IO1WYY9DOwTDqOFmjWoqG1yaaKnPDqYCE9KA==", + "dev": true, + "dependencies": { + "json-schema": "^0.4.0", + "jsonpointer": "^5.0.0", + "leven": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "ajv": ">=8" + } + }, + "node_modules/workbox-build/node_modules/@rollup/plugin-replace": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-2.4.2.tgz", + "integrity": "sha512-IGcu+cydlUMZ5En85jxHH4qj2hta/11BHq95iHEyb2sbgiN0eCdzvUcHw5gt9pBL5lTi4JDYJ1acCoMGpTvEZg==", + "dev": true, + "dependencies": { + "@rollup/pluginutils": "^3.1.0", + "magic-string": "^0.25.7" + }, + "peerDependencies": { + "rollup": "^1.20.0 || ^2.0.0" + } + }, + "node_modules/workbox-build/node_modules/@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dev": true, + "dependencies": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/workbox-build/node_modules/ajv": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", + "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/workbox-build/node_modules/estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", + "dev": true + }, + "node_modules/workbox-build/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "node_modules/workbox-build/node_modules/source-map": { + "version": "0.8.0-beta.0", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.8.0-beta.0.tgz", + "integrity": "sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==", + "dev": true, + "dependencies": { + "whatwg-url": "^7.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/workbox-cacheable-response": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-cacheable-response/-/workbox-cacheable-response-6.5.0.tgz", + "integrity": "sha512-sqAtWAiBwWvI8HG/2Do7BeKPhHuUczt22ORkAjkH9DfTq9LuWRFd6T4HAMqX5G8F1gM9XA2UPlxRrEeSpFIz/A==", + "dev": true, + "dependencies": { + "workbox-core": "6.5.0" + } + }, + "node_modules/workbox-core": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-core/-/workbox-core-6.5.0.tgz", + "integrity": "sha512-5SPwNipUzYBhrneLVT02JFA0fw3LG82jFAN/G2NzxkIW10t4MVZuML2nU94bbkgjq25u0fkY8+4JXzMfHgxEWQ==", + "dev": true + }, + "node_modules/workbox-expiration": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-expiration/-/workbox-expiration-6.5.0.tgz", + "integrity": "sha512-y3WRkKRy/gMuZZNkrLFahjY0QZtLoq+QfhTbVAsOGHVg1CCtnNbeFAnEidQs7UisI2BK76VqQPvM7hEOFyZ92A==", + "dev": true, + "dependencies": { + "idb": "^6.1.4", + "workbox-core": "6.5.0" + } + }, + "node_modules/workbox-google-analytics": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-google-analytics/-/workbox-google-analytics-6.5.0.tgz", + "integrity": "sha512-CHHh55wMNCc/BV1URrzEM2Zjgf6g2CV6QpAAc1pBRqaLY5755PeQZbp3o8KbJEM7YsC9mIBeQVsOkSKkGS30bg==", + "dev": true, + "dependencies": { + "workbox-background-sync": "6.5.0", + "workbox-core": "6.5.0", + "workbox-routing": "6.5.0", + "workbox-strategies": "6.5.0" + } + }, + "node_modules/workbox-navigation-preload": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-navigation-preload/-/workbox-navigation-preload-6.5.0.tgz", + "integrity": "sha512-ktrRQzXJ0zFy0puOtCa49wE3BSBGUB8KRMot3tEieikCkSO0wMLmiCb9GwTVvNMJLl0THRlsdFoI93si04nTxA==", + "dev": true, + "dependencies": { + "workbox-core": "6.5.0" + } + }, + "node_modules/workbox-precaching": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-precaching/-/workbox-precaching-6.5.0.tgz", + "integrity": "sha512-IVLzgHx38T6LphJyEOltd7XAvpDi73p85uCT2ZtT1HHg9FAYC49a+5iHUVOnqye73fLW20eiAMFcnehGxz9RWg==", + "dev": true, + "dependencies": { + "workbox-core": "6.5.0", + "workbox-routing": "6.5.0", + "workbox-strategies": "6.5.0" + } + }, + "node_modules/workbox-range-requests": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-range-requests/-/workbox-range-requests-6.5.0.tgz", + "integrity": "sha512-+qTELdGZE5rOjuv+ifFrfRDN8Uvzpbm5Fal7qSUqB1V1DLCMxPwHCj6mWwQBRKBpW7G09kAwewH7zA3Asjkf/Q==", + "dev": true, + "dependencies": { + "workbox-core": "6.5.0" + } + }, + "node_modules/workbox-recipes": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-recipes/-/workbox-recipes-6.5.0.tgz", + "integrity": "sha512-7hWZAIcXmvr31NwYSWaQIrnThCH/Dx9+eYv/YdkpUeWIXRiHRkYvP1FdiHItbLSjL4Y6K7cy2Y9y5lGCkgaE4w==", + "dev": true, + "dependencies": { + "workbox-cacheable-response": "6.5.0", + "workbox-core": "6.5.0", + "workbox-expiration": "6.5.0", + "workbox-precaching": "6.5.0", + "workbox-routing": "6.5.0", + "workbox-strategies": "6.5.0" + } + }, + "node_modules/workbox-routing": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-routing/-/workbox-routing-6.5.0.tgz", + "integrity": "sha512-w1A9OVa/yYStu9ds0Dj+TC6zOAoskKlczf+wZI5mrM9nFCt/KOMQiFp1/41DMFPrrN/8KlZTS3Cel/Ttutw93Q==", + "dev": true, + "dependencies": { + "workbox-core": "6.5.0" + } + }, + "node_modules/workbox-strategies": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-strategies/-/workbox-strategies-6.5.0.tgz", + "integrity": "sha512-Ngnwo+tfGw4uKSlTz3h1fYKb/lCV7SDI/dtTb8VaJzRl0N9XssloDGYERBmF6BN/DV/x3bnRsshfobnKI/3z0g==", + "dev": true, + "dependencies": { + "workbox-core": "6.5.0" + } + }, + "node_modules/workbox-streams": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-streams/-/workbox-streams-6.5.0.tgz", + "integrity": "sha512-ZbeaZINkju4x45P9DFyRbOYInE+dyNAJIelflz4f9AOAdm+zZUJCooU4MdfsedVhHiTIA6pCD/3jCmW1XbvlbA==", + "dev": true, + "dependencies": { + "workbox-core": "6.5.0", + "workbox-routing": "6.5.0" + } + }, + "node_modules/workbox-sw": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-sw/-/workbox-sw-6.5.0.tgz", + "integrity": "sha512-uPGJ9Yost4yabnCko/IuhouquoQKrWOEqLq7L/xVYtltWe4+J8Hw8iPCVtxvXQ26hffd7MaFWUAN83j2ZWbxRg==", + "dev": true + }, + "node_modules/workbox-window": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-window/-/workbox-window-6.5.0.tgz", + "integrity": "sha512-DOrhiTnWup/CsNstO2uvfdKM4kdStgHd31xGGvBcoCE3Are3DRcy5s3zz3PedcAR1AKskQj3BXz0UhzQiOq8nA==", + "dev": true, + "dependencies": { + "@types/trusted-types": "^2.0.2", + "workbox-core": "6.5.0" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/xml-utils": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/xml-utils/-/xml-utils-1.3.0.tgz", + "integrity": "sha512-i4PIrX33Wd66dvwo4syicwlwmnr6wuvvn4f2ku9hA67C2Uk62Xubczuhct+Evnd12/DV71qKNeDdJwES8HX1RA==" + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true, + "engines": { + "node": ">=0.4" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "target/flow-frontend": { + "name": "@vaadin/flow-frontend", + "version": "1.0.0", + "license": "UNLICENSED" + } + }, + "dependencies": { + "@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "dev": true, + "requires": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@babel/code-frame": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", + "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", + "dev": true, + "requires": { + "@babel/highlight": "^7.16.7" + } + }, + "@babel/compat-data": { + "version": "7.18.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.18.5.tgz", + "integrity": "sha512-BxhE40PVCBxVEJsSBhB6UWyAuqJRxGsAw8BdHMJ3AKGydcwuWW4kOO3HmqBQAdcq/OP+/DlTVxLvsCzRTnZuGg==", + "dev": true + }, + "@babel/core": { + "version": "7.18.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.5.tgz", + "integrity": "sha512-MGY8vg3DxMnctw0LdvSEojOsumc70g0t18gNyUdAZqB1Rpd1Bqo/svHGvt+UJ6JcGX+DIekGFDxxIWofBxLCnQ==", + "dev": true, + "requires": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.18.2", + "@babel/helper-compilation-targets": "^7.18.2", + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helpers": "^7.18.2", + "@babel/parser": "^7.18.5", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.18.5", + "@babel/types": "^7.18.4", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.1", + "semver": "^6.3.0" + }, + "dependencies": { + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/generator": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.2.tgz", + "integrity": "sha512-W1lG5vUwFvfMd8HVXqdfbuG7RuaSrTCCD8cl8fP8wOivdbtbIg2Db3IWUcgvfxKbbn6ZBGYRW/Zk1MIwK49mgw==", + "dev": true, + "requires": { + "@babel/types": "^7.18.2", + "@jridgewell/gen-mapping": "^0.3.0", + "jsesc": "^2.5.1" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true + } + } + }, + "@babel/helper-annotate-as-pure": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.7.tgz", + "integrity": "sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw==", + "dev": true, + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.16.7.tgz", + "integrity": "sha512-C6FdbRaxYjwVu/geKW4ZeQ0Q31AftgRcdSnZ5/jsH6BzCJbtvXvhpfkbkThYSuutZA7nCXpPR6AD9zd1dprMkA==", + "dev": true, + "requires": { + "@babel/helper-explode-assignable-expression": "^7.16.7", + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-compilation-targets": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.2.tgz", + "integrity": "sha512-s1jnPotJS9uQnzFtiZVBUxe67CuBa679oWFHpxYYnTpRL/1ffhyX44R9uYiXoa/pLXcY9H2moJta0iaanlk/rQ==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.17.10", + "@babel/helper-validator-option": "^7.16.7", + "browserslist": "^4.20.2", + "semver": "^6.3.0" + }, + "dependencies": { + "browserslist": { + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.0.tgz", + "integrity": "sha512-UQxE0DIhRB5z/zDz9iA03BOfxaN2+GQdBYH/2WrSIWEUrnpzTPJbhqt+umq6r3acaPRTW1FNTkrcp0PXgtFkvA==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001358", + "electron-to-chromium": "^1.4.164", + "node-releases": "^2.0.5", + "update-browserslist-db": "^1.0.0" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + }, + "update-browserslist-db": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.4.tgz", + "integrity": "sha512-jnmO2BEGUjsMOe/Fg9u0oczOe/ppIDZPebzccl1yDWGLFP16Pa1/RM5wEoKYPG2zstNcDuAStejyxsOuKINdGA==", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + } + } + }, + "@babel/helper-create-class-features-plugin": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.18.0.tgz", + "integrity": "sha512-Kh8zTGR9de3J63e5nS0rQUdRs/kbtwoeQQ0sriS0lItjC96u8XXZN6lKpuyWd2coKSU13py/y+LTmThLuVX0Pg==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-function-name": "^7.17.9", + "@babel/helper-member-expression-to-functions": "^7.17.7", + "@babel/helper-optimise-call-expression": "^7.16.7", + "@babel/helper-replace-supers": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7" + } + }, + "@babel/helper-create-regexp-features-plugin": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.17.12.tgz", + "integrity": "sha512-b2aZrV4zvutr9AIa6/gA3wsZKRwTKYoDxYiFKcESS3Ug2GTXzwBEvMuuFLhCQpEnRXs1zng4ISAXSUxxKBIcxw==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "regexpu-core": "^5.0.1" + }, + "dependencies": { + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "dev": true + }, + "regexpu-core": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.0.1.tgz", + "integrity": "sha512-CriEZlrKK9VJw/xQGJpQM5rY88BtuL8DM+AEwvcThHilbxiTAy8vq4iJnd2tqq8wLmjbGZzP7ZcKFjbGkmEFrw==", + "dev": true, + "requires": { + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.0.1", + "regjsgen": "^0.6.0", + "regjsparser": "^0.8.2", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.0.0" + } + }, + "regjsgen": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.6.0.tgz", + "integrity": "sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA==", + "dev": true + }, + "regjsparser": { + "version": "0.8.4", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.8.4.tgz", + "integrity": "sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA==", + "dev": true, + "requires": { + "jsesc": "~0.5.0" + } + } + } + }, + "@babel/helper-define-polyfill-provider": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.1.tgz", + "integrity": "sha512-J9hGMpJQmtWmj46B3kBHmL38UhJGhYX7eqkcq+2gsstyYt341HmPeWspihX43yVRA0mS+8GGk2Gckc7bY/HCmA==", + "dev": true, + "requires": { + "@babel/helper-compilation-targets": "^7.13.0", + "@babel/helper-module-imports": "^7.12.13", + "@babel/helper-plugin-utils": "^7.13.0", + "@babel/traverse": "^7.13.0", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "dependencies": { + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/helper-environment-visitor": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.2.tgz", + "integrity": "sha512-14GQKWkX9oJzPiQQ7/J36FTXcD4kSp8egKjO9nINlSKiHITRA9q/R74qu8S9xlc/b/yjsJItQUeeh3xnGN0voQ==", + "dev": true + }, + "@babel/helper-explode-assignable-expression": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.7.tgz", + "integrity": "sha512-KyUenhWMC8VrxzkGP0Jizjo4/Zx+1nNZhgocs+gLzyZyB8SHidhoq9KK/8Ato4anhwsivfkBLftky7gvzbZMtQ==", + "dev": true, + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-function-name": { + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz", + "integrity": "sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==", + "dev": true, + "requires": { + "@babel/template": "^7.16.7", + "@babel/types": "^7.17.0" + } + }, + "@babel/helper-hoist-variables": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz", + "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==", + "dev": true, + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.17.7.tgz", + "integrity": "sha512-thxXgnQ8qQ11W2wVUObIqDL4p148VMxkt5T/qpN5k2fboRyzFGFmKsTGViquyM5QHKUy48OZoca8kw4ajaDPyw==", + "dev": true, + "requires": { + "@babel/types": "^7.17.0" + } + }, + "@babel/helper-module-imports": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz", + "integrity": "sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==", + "dev": true, + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-module-transforms": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.0.tgz", + "integrity": "sha512-kclUYSUBIjlvnzN2++K9f2qzYKFgjmnmjwL4zlmU5f8ZtzgWe8s0rUPSTGy2HmK4P8T52MQsS+HTQAgZd3dMEA==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-module-imports": "^7.16.7", + "@babel/helper-simple-access": "^7.17.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/helper-validator-identifier": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.18.0", + "@babel/types": "^7.18.0" + } + }, + "@babel/helper-optimise-call-expression": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.7.tgz", + "integrity": "sha512-EtgBhg7rd/JcnpZFXpBy0ze1YRfdm7BnBX4uKMBd3ixa3RGAE002JZB66FJyNH7g0F38U05pXmA5P8cBh7z+1w==", + "dev": true, + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.17.12.tgz", + "integrity": "sha512-JDkf04mqtN3y4iAbO1hv9U2ARpPyPL1zqyWs/2WG1pgSq9llHFjStX5jdxb84himgJm+8Ng+x0oiWF/nw/XQKA==", + "dev": true + }, + "@babel/helper-remap-async-to-generator": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.8.tgz", + "integrity": "sha512-fm0gH7Flb8H51LqJHy3HJ3wnE1+qtYR2A99K06ahwrawLdOFsCEWjZOrYricXJHoPSudNKxrMBUPEIPxiIIvBw==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-wrap-function": "^7.16.8", + "@babel/types": "^7.16.8" + } + }, + "@babel/helper-replace-supers": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.18.2.tgz", + "integrity": "sha512-XzAIyxx+vFnrOxiQrToSUOzUOn0e1J2Li40ntddek1Y69AXUTXoDJ40/D5RdjFu7s7qHiaeoTiempZcbuVXh2Q==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.18.2", + "@babel/helper-member-expression-to-functions": "^7.17.7", + "@babel/helper-optimise-call-expression": "^7.16.7", + "@babel/traverse": "^7.18.2", + "@babel/types": "^7.18.2" + } + }, + "@babel/helper-simple-access": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.2.tgz", + "integrity": "sha512-7LIrjYzndorDY88MycupkpQLKS1AFfsVRm2k/9PtKScSy5tZq0McZTj+DiMRynboZfIqOKvo03pmhTaUgiD6fQ==", + "dev": true, + "requires": { + "@babel/types": "^7.18.2" + } + }, + "@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.16.0.tgz", + "integrity": "sha512-+il1gTy0oHwUsBQZyJvukbB4vPMdcYBrFHa0Uc4AizLxbq6BOYC51Rv4tWocX9BLBDLZ4kc6qUFpQ6HRgL+3zw==", + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz", + "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==", + "dev": true, + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-validator-identifier": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", + "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==", + "dev": true + }, + "@babel/helper-validator-option": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz", + "integrity": "sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==", + "dev": true + }, + "@babel/helper-wrap-function": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.16.8.tgz", + "integrity": "sha512-8RpyRVIAW1RcDDGTA+GpPAwV22wXCfKOoM9bet6TLkGIFTkRQSkH1nMQ5Yet4MpoXe1ZwHPVtNasc2w0uZMqnw==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.16.8", + "@babel/types": "^7.16.8" + } + }, + "@babel/helpers": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.2.tgz", + "integrity": "sha512-j+d+u5xT5utcQSzrh9p+PaJX94h++KN+ng9b9WEJq7pkUPAd61FGqhjuUEdfknb3E/uDBb7ruwEeKkIxNJPIrg==", + "dev": true, + "requires": { + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.18.2", + "@babel/types": "^7.18.2" + } + }, + "@babel/highlight": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.12.tgz", + "integrity": "sha512-7yykMVF3hfZY2jsHZEEgLc+3x4o1O+fYyULu11GynEUQNwB6lua+IIQn1FiJxNucd5UlyJryrwsOh8PL9Sn8Qg==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.16.7", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "@babel/parser": { + "version": "7.18.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.5.tgz", + "integrity": "sha512-YZWVaglMiplo7v8f1oMQ5ZPQr0vn7HPeZXxXWsxXJRjGVrzUFn9OxFQl1sb5wzfootjA/yChhW84BV+383FSOw==", + "dev": true + }, + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.17.12.tgz", + "integrity": "sha512-xCJQXl4EeQ3J9C4yOmpTrtVGmzpm2iSzyxbkZHw7UCnZBftHpF/hpII80uWVyVrc40ytIClHjgWGTG1g/yB+aw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.17.12.tgz", + "integrity": "sha512-/vt0hpIw0x4b6BLKUkwlvEoiGZYYLNZ96CzyHYPbtG2jZGz6LBe7/V+drYrc/d+ovrF9NBi0pmtvmNb/FsWtRQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", + "@babel/plugin-proposal-optional-chaining": "^7.17.12" + } + }, + "@babel/plugin-proposal-async-generator-functions": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.17.12.tgz", + "integrity": "sha512-RWVvqD1ooLKP6IqWTA5GyFVX2isGEgC5iFxKzfYOIy/QEFdxYyCybBDtIGjipHpb9bDWHzcqGqFakf+mVmBTdQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-remap-async-to-generator": "^7.16.8", + "@babel/plugin-syntax-async-generators": "^7.8.4" + } + }, + "@babel/plugin-proposal-class-properties": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.17.12.tgz", + "integrity": "sha512-U0mI9q8pW5Q9EaTHFPwSVusPMV/DV9Mm8p7csqROFLtIE9rBF5piLqyrBGigftALrBcsBGu4m38JneAe7ZDLXw==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-proposal-class-static-block": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.18.0.tgz", + "integrity": "sha512-t+8LsRMMDE74c6sV7KShIw13sqbqd58tlqNrsWoWBTIMw7SVQ0cZ905wLNS/FBCy/3PyooRHLFFlfrUNyyz5lA==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + } + }, + "@babel/plugin-proposal-dynamic-import": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.16.7.tgz", + "integrity": "sha512-I8SW9Ho3/8DRSdmDdH3gORdyUuYnk1m4cMxUAdu5oy4n3OfN8flDEH+d60iG7dUfi0KkYwSvoalHzzdRzpWHTg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + } + }, + "@babel/plugin-proposal-export-namespace-from": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.17.12.tgz", + "integrity": "sha512-j7Ye5EWdwoXOpRmo5QmRyHPsDIe6+u70ZYZrd7uz+ebPYFKfRcLcNu3Ro0vOlJ5zuv8rU7xa+GttNiRzX56snQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + } + }, + "@babel/plugin-proposal-json-strings": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.17.12.tgz", + "integrity": "sha512-rKJ+rKBoXwLnIn7n6o6fulViHMrOThz99ybH+hKHcOZbnN14VuMnH9fo2eHE69C8pO4uX1Q7t2HYYIDmv8VYkg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-json-strings": "^7.8.3" + } + }, + "@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.17.12.tgz", + "integrity": "sha512-EqFo2s1Z5yy+JeJu7SFfbIUtToJTVlC61/C7WLKDntSw4Sz6JNAIfL7zQ74VvirxpjB5kz/kIx0gCcb+5OEo2Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + } + }, + "@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.17.12.tgz", + "integrity": "sha512-ws/g3FSGVzv+VH86+QvgtuJL/kR67xaEIF2x0iPqdDfYW6ra6JF3lKVBkWynRLcNtIC1oCTfDRVxmm2mKzy+ag==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + } + }, + "@babel/plugin-proposal-numeric-separator": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.16.7.tgz", + "integrity": "sha512-vQgPMknOIgiuVqbokToyXbkY/OmmjAzr/0lhSIbG/KmnzXPGwW/AdhdKpi+O4X/VkWiWjnkKOBiqJrTaC98VKw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + } + }, + "@babel/plugin-proposal-object-rest-spread": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.18.0.tgz", + "integrity": "sha512-nbTv371eTrFabDfHLElkn9oyf9VG+VKK6WMzhY2o4eHKaG19BToD9947zzGMO6I/Irstx9d8CwX6njPNIAR/yw==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.17.10", + "@babel/helper-compilation-targets": "^7.17.10", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.17.12" + } + }, + "@babel/plugin-proposal-optional-catch-binding": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.16.7.tgz", + "integrity": "sha512-eMOH/L4OvWSZAE1VkHbr1vckLG1WUcHGJSLqqQwl2GaUqG6QjddvrOaTUMNYiv77H5IKPMZ9U9P7EaHwvAShfA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + } + }, + "@babel/plugin-proposal-optional-chaining": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.17.12.tgz", + "integrity": "sha512-7wigcOs/Z4YWlK7xxjkvaIw84vGhDv/P1dFGQap0nHkc8gFKY/r+hXc8Qzf5k1gY7CvGIcHqAnOagVKJJ1wVOQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + } + }, + "@babel/plugin-proposal-private-methods": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.17.12.tgz", + "integrity": "sha512-SllXoxo19HmxhDWm3luPz+cPhtoTSKLJE9PXshsfrOzBqs60QP0r8OaJItrPhAj0d7mZMnNF0Y1UUggCDgMz1A==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-proposal-private-property-in-object": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.17.12.tgz", + "integrity": "sha512-/6BtVi57CJfrtDNKfK5b66ydK2J5pXUKBKSPD2G1whamMuEnZWgoOIfO8Vf9F/DoD4izBLD/Au4NMQfruzzykg==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-create-class-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + } + }, + "@babel/plugin-proposal-unicode-property-regex": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.17.12.tgz", + "integrity": "sha512-Wb9qLjXf3ZazqXA7IvI7ozqRIXIGPtSo+L5coFmEkhTQK18ao4UDDD0zdTGAarmbLj2urpRwrc6893cu5Bfh0A==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.12.13" + } + }, + "@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-syntax-import-assertions": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.17.12.tgz", + "integrity": "sha512-n/loy2zkq9ZEM8tEOwON9wTQSTNDTDEz6NujPtJGLU7qObzT1N4c4YZZf8E6ATB2AjNQg/Ib2AIpO03EZaCehw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-arrow-functions": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.17.12.tgz", + "integrity": "sha512-PHln3CNi/49V+mza4xMwrg+WGYevSF1oaiXaC2EQfdp4HWlSjRsrDXWJiQBKpP7749u6vQ9mcry2uuFOv5CXvA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-async-to-generator": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.17.12.tgz", + "integrity": "sha512-J8dbrWIOO3orDzir57NRsjg4uxucvhby0L/KZuGsWDj0g7twWK3g7JhJhOrXtuXiw8MeiSdJ3E0OW9H8LYEzLQ==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.16.7", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-remap-async-to-generator": "^7.16.8" + } + }, + "@babel/plugin-transform-block-scoped-functions": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.16.7.tgz", + "integrity": "sha512-JUuzlzmF40Z9cXyytcbZEZKckgrQzChbQJw/5PuEHYeqzCsvebDx0K0jWnIIVcmmDOAVctCgnYs0pMcrYj2zJg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-block-scoping": { + "version": "7.18.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.18.4.tgz", + "integrity": "sha512-+Hq10ye+jlvLEogSOtq4mKvtk7qwcUQ1f0Mrueai866C82f844Yom2cttfJdMdqRLTxWpsbfbkIkOIfovyUQXw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-classes": { + "version": "7.18.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.18.4.tgz", + "integrity": "sha512-e42NSG2mlKWgxKUAD9EJJSkZxR67+wZqzNxLSpc51T8tRU5SLFHsPmgYR5yr7sdgX4u+iHA1C5VafJ6AyImV3A==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-environment-visitor": "^7.18.2", + "@babel/helper-function-name": "^7.17.9", + "@babel/helper-optimise-call-expression": "^7.16.7", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-replace-supers": "^7.18.2", + "@babel/helper-split-export-declaration": "^7.16.7", + "globals": "^11.1.0" + }, + "dependencies": { + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true + } + } + }, + "@babel/plugin-transform-computed-properties": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.17.12.tgz", + "integrity": "sha512-a7XINeplB5cQUWMg1E/GI1tFz3LfK021IjV1rj1ypE+R7jHm+pIHmHl25VNkZxtx9uuYp7ThGk8fur1HHG7PgQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-destructuring": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.18.0.tgz", + "integrity": "sha512-Mo69klS79z6KEfrLg/1WkmVnB8javh75HX4pi2btjvlIoasuxilEyjtsQW6XPrubNd7AQy0MMaNIaQE4e7+PQw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-dotall-regex": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.16.7.tgz", + "integrity": "sha512-Lyttaao2SjZF6Pf4vk1dVKv8YypMpomAbygW+mU5cYP3S5cWTfCJjG8xV6CFdzGFlfWK81IjL9viiTvpb6G7gQ==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-duplicate-keys": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.17.12.tgz", + "integrity": "sha512-EA5eYFUG6xeerdabina/xIoB95jJ17mAkR8ivx6ZSu9frKShBjpOGZPn511MTDTkiCO+zXnzNczvUM69YSf3Zw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-exponentiation-operator": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.16.7.tgz", + "integrity": "sha512-8UYLSlyLgRixQvlYH3J2ekXFHDFLQutdy7FfFAMm3CPZ6q9wHCwnUyiXpQCe3gVVnQlHc5nsuiEVziteRNTXEA==", + "dev": true, + "requires": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-for-of": { + "version": "7.18.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.1.tgz", + "integrity": "sha512-+TTB5XwvJ5hZbO8xvl2H4XaMDOAK57zF4miuC9qQJgysPNEAZZ9Z69rdF5LJkozGdZrjBIUAIyKUWRMmebI7vg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-function-name": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.16.7.tgz", + "integrity": "sha512-SU/C68YVwTRxqWj5kgsbKINakGag0KTgq9f2iZEXdStoAbOzLHEBRYzImmA6yFo8YZhJVflvXmIHUO7GWHmxxA==", + "dev": true, + "requires": { + "@babel/helper-compilation-targets": "^7.16.7", + "@babel/helper-function-name": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-literals": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.17.12.tgz", + "integrity": "sha512-8iRkvaTjJciWycPIZ9k9duu663FT7VrBdNqNgxnVXEFwOIp55JWcZd23VBRySYbnS3PwQ3rGiabJBBBGj5APmQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-member-expression-literals": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.16.7.tgz", + "integrity": "sha512-mBruRMbktKQwbxaJof32LT9KLy2f3gH+27a5XSuXo6h7R3vqltl0PgZ80C8ZMKw98Bf8bqt6BEVi3svOh2PzMw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-modules-amd": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.18.0.tgz", + "integrity": "sha512-h8FjOlYmdZwl7Xm2Ug4iX2j7Qy63NANI+NQVWQzv6r25fqgg7k2dZl03p95kvqNclglHs4FZ+isv4p1uXMA+QA==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12", + "babel-plugin-dynamic-import-node": "^2.3.3" + } + }, + "@babel/plugin-transform-modules-commonjs": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.2.tgz", + "integrity": "sha512-f5A865gFPAJAEE0K7F/+nm5CmAE3y8AWlMBG9unu5j9+tk50UQVK0QS8RNxSp7MJf0wh97uYyLWt3Zvu71zyOQ==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-simple-access": "^7.18.2", + "babel-plugin-dynamic-import-node": "^2.3.3" + } + }, + "@babel/plugin-transform-modules-systemjs": { + "version": "7.18.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.18.5.tgz", + "integrity": "sha512-SEewrhPpcqMF1V7DhnEbhVJLrC+nnYfe1E0piZMZXBpxi9WvZqWGwpsk7JYP7wPWeqaBh4gyKlBhHJu3uz5g4Q==", + "dev": true, + "requires": { + "@babel/helper-hoist-variables": "^7.16.7", + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-validator-identifier": "^7.16.7", + "babel-plugin-dynamic-import-node": "^2.3.3" + } + }, + "@babel/plugin-transform-modules-umd": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.0.tgz", + "integrity": "sha512-d/zZ8I3BWli1tmROLxXLc9A6YXvGK8egMxHp+E/rRwMh1Kip0AP77VwZae3snEJ33iiWwvNv2+UIIhfalqhzZA==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.17.12.tgz", + "integrity": "sha512-vWoWFM5CKaTeHrdUJ/3SIOTRV+MBVGybOC9mhJkaprGNt5demMymDW24yC74avb915/mIRe3TgNb/d8idvnCRA==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-new-target": { + "version": "7.18.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.5.tgz", + "integrity": "sha512-TuRL5uGW4KXU6OsRj+mLp9BM7pO8e7SGNTEokQRRxHFkXYMFiy2jlKSZPFtI/mKORDzciH+hneskcSOp0gU8hg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-object-super": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.16.7.tgz", + "integrity": "sha512-14J1feiQVWaGvRxj2WjyMuXS2jsBkgB3MdSN5HuC2G5nRspa5RK9COcs82Pwy5BuGcjb+fYaUj94mYcOj7rCvw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-replace-supers": "^7.16.7" + } + }, + "@babel/plugin-transform-parameters": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.17.12.tgz", + "integrity": "sha512-6qW4rWo1cyCdq1FkYri7AHpauchbGLXpdwnYsfxFb+KtddHENfsY5JZb35xUwkK5opOLcJ3BNd2l7PhRYGlwIA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-property-literals": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.16.7.tgz", + "integrity": "sha512-z4FGr9NMGdoIl1RqavCqGG+ZuYjfZ/hkCIeuH6Do7tXmSm0ls11nYVSJqFEUOSJbDab5wC6lRE/w6YjVcr6Hqw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-regenerator": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.18.0.tgz", + "integrity": "sha512-C8YdRw9uzx25HSIzwA7EM7YP0FhCe5wNvJbZzjVNHHPGVcDJ3Aie+qGYYdS1oVQgn+B3eAIJbWFLrJ4Jipv7nw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "regenerator-transform": "^0.15.0" + }, + "dependencies": { + "regenerator-transform": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.0.tgz", + "integrity": "sha512-LsrGtPmbYg19bcPHwdtmXwbW+TqNvtY4riE3P83foeHRroMbH6/2ddFBfab3t7kbzc7v7p4wbkIecHImqt0QNg==", + "dev": true, + "requires": { + "@babel/runtime": "^7.8.4" + } + } + } + }, + "@babel/plugin-transform-reserved-words": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.17.12.tgz", + "integrity": "sha512-1KYqwbJV3Co03NIi14uEHW8P50Md6KqFgt0FfpHdK6oyAHQVTosgPuPSiWud1HX0oYJ1hGRRlk0fP87jFpqXZA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-shorthand-properties": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.16.7.tgz", + "integrity": "sha512-hah2+FEnoRoATdIb05IOXf+4GzXYTq75TVhIn1PewihbpyrNWUt2JbudKQOETWw6QpLe+AIUpJ5MVLYTQbeeUg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-spread": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.17.12.tgz", + "integrity": "sha512-9pgmuQAtFi3lpNUstvG9nGfk9DkrdmWNp9KeKPFmuZCpEnxRzYlS8JgwPjYj+1AWDOSvoGN0H30p1cBOmT/Svg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0" + } + }, + "@babel/plugin-transform-sticky-regex": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.16.7.tgz", + "integrity": "sha512-NJa0Bd/87QV5NZZzTuZG5BPJjLYadeSZ9fO6oOUoL4iQx+9EEuw/eEM92SrsT19Yc2jgB1u1hsjqDtH02c3Drw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-template-literals": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.2.tgz", + "integrity": "sha512-/cmuBVw9sZBGZVOMkpAEaVLwm4JmK2GZ1dFKOGGpMzEHWFmyZZ59lUU0PdRr8YNYeQdNzTDwuxP2X2gzydTc9g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-typeof-symbol": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.17.12.tgz", + "integrity": "sha512-Q8y+Jp7ZdtSPXCThB6zjQ74N3lj0f6TDh1Hnf5B+sYlzQ8i5Pjp8gW0My79iekSpT4WnI06blqP6DT0OmaXXmw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-unicode-escapes": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.16.7.tgz", + "integrity": "sha512-TAV5IGahIz3yZ9/Hfv35TV2xEm+kaBDaZQCn2S/hG9/CZ0DktxJv9eKfPc7yYCvOYR4JGx1h8C+jcSOvgaaI/Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-unicode-regex": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.16.7.tgz", + "integrity": "sha512-oC5tYYKw56HO75KZVLQ+R/Nl3Hro9kf8iG0hXoaHP7tjAyCpvqBiSNe6vGrZni1Z6MggmUOC6A7VP7AVmw225Q==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/preset-env": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.2.tgz", + "integrity": "sha512-PfpdxotV6afmXMU47S08F9ZKIm2bJIQ0YbAAtDfIENX7G1NUAXigLREh69CWDjtgUy7dYn7bsMzkgdtAlmS68Q==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.17.10", + "@babel/helper-compilation-targets": "^7.18.2", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-validator-option": "^7.16.7", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.17.12", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.17.12", + "@babel/plugin-proposal-async-generator-functions": "^7.17.12", + "@babel/plugin-proposal-class-properties": "^7.17.12", + "@babel/plugin-proposal-class-static-block": "^7.18.0", + "@babel/plugin-proposal-dynamic-import": "^7.16.7", + "@babel/plugin-proposal-export-namespace-from": "^7.17.12", + "@babel/plugin-proposal-json-strings": "^7.17.12", + "@babel/plugin-proposal-logical-assignment-operators": "^7.17.12", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.17.12", + "@babel/plugin-proposal-numeric-separator": "^7.16.7", + "@babel/plugin-proposal-object-rest-spread": "^7.18.0", + "@babel/plugin-proposal-optional-catch-binding": "^7.16.7", + "@babel/plugin-proposal-optional-chaining": "^7.17.12", + "@babel/plugin-proposal-private-methods": "^7.17.12", + "@babel/plugin-proposal-private-property-in-object": "^7.17.12", + "@babel/plugin-proposal-unicode-property-regex": "^7.17.12", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.17.12", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.17.12", + "@babel/plugin-transform-async-to-generator": "^7.17.12", + "@babel/plugin-transform-block-scoped-functions": "^7.16.7", + "@babel/plugin-transform-block-scoping": "^7.17.12", + "@babel/plugin-transform-classes": "^7.17.12", + "@babel/plugin-transform-computed-properties": "^7.17.12", + "@babel/plugin-transform-destructuring": "^7.18.0", + "@babel/plugin-transform-dotall-regex": "^7.16.7", + "@babel/plugin-transform-duplicate-keys": "^7.17.12", + "@babel/plugin-transform-exponentiation-operator": "^7.16.7", + "@babel/plugin-transform-for-of": "^7.18.1", + "@babel/plugin-transform-function-name": "^7.16.7", + "@babel/plugin-transform-literals": "^7.17.12", + "@babel/plugin-transform-member-expression-literals": "^7.16.7", + "@babel/plugin-transform-modules-amd": "^7.18.0", + "@babel/plugin-transform-modules-commonjs": "^7.18.2", + "@babel/plugin-transform-modules-systemjs": "^7.18.0", + "@babel/plugin-transform-modules-umd": "^7.18.0", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.17.12", + "@babel/plugin-transform-new-target": "^7.17.12", + "@babel/plugin-transform-object-super": "^7.16.7", + "@babel/plugin-transform-parameters": "^7.17.12", + "@babel/plugin-transform-property-literals": "^7.16.7", + "@babel/plugin-transform-regenerator": "^7.18.0", + "@babel/plugin-transform-reserved-words": "^7.17.12", + "@babel/plugin-transform-shorthand-properties": "^7.16.7", + "@babel/plugin-transform-spread": "^7.17.12", + "@babel/plugin-transform-sticky-regex": "^7.16.7", + "@babel/plugin-transform-template-literals": "^7.18.2", + "@babel/plugin-transform-typeof-symbol": "^7.17.12", + "@babel/plugin-transform-unicode-escapes": "^7.16.7", + "@babel/plugin-transform-unicode-regex": "^7.16.7", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.18.2", + "babel-plugin-polyfill-corejs2": "^0.3.0", + "babel-plugin-polyfill-corejs3": "^0.5.0", + "babel-plugin-polyfill-regenerator": "^0.3.0", + "core-js-compat": "^3.22.1", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/preset-modules": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + } + }, + "@babel/runtime": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.3.tgz", + "integrity": "sha512-38Y8f7YUhce/K7RMwTp7m0uCumpv9hZkitCbBClqQIow1qSbCvGkcegKOXpEWCQLfWmevgRiWokZ1GkpfhbZug==", + "dev": true, + "requires": { + "regenerator-runtime": "^0.13.4" + }, + "dependencies": { + "regenerator-runtime": { + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", + "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", + "dev": true + } + } + }, + "@babel/template": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz", + "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.16.7", + "@babel/parser": "^7.16.7", + "@babel/types": "^7.16.7" + } + }, + "@babel/traverse": { + "version": "7.18.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.5.tgz", + "integrity": "sha512-aKXj1KT66sBj0vVzk6rEeAO6Z9aiiQ68wfDgge3nHhA/my6xMM/7HGQUNumKZaoa2qUPQ5whJG9aAifsxUKfLA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.18.2", + "@babel/helper-environment-visitor": "^7.18.2", + "@babel/helper-function-name": "^7.17.9", + "@babel/helper-hoist-variables": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/parser": "^7.18.5", + "@babel/types": "^7.18.4", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "dependencies": { + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "@babel/types": { + "version": "7.18.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.4.tgz", + "integrity": "sha512-ThN1mBcMq5pG/Vm2IcBmPPfyPXbd8S02rS+OBIDENdufvqC7Z/jHPCv9IcP01277aKtDI8g/2XysBN4hA8niiw==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.16.7", + "to-fast-properties": "^2.0.0" + }, + "dependencies": { + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true + } + } + }, + "@esbuild/linux-loong64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.15.7.tgz", + "integrity": "sha512-IKznSJOsVUuyt7cDzzSZyqBEcZe+7WlBqTVXiF1OXP/4Nm387ToaXZ0fyLwI1iBlI/bzpxVq411QE2/Bt2XWWw==", + "dev": true, + "optional": true + }, + "@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "@jridgewell/resolve-uri": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.8.tgz", + "integrity": "sha512-YK5G9LaddzGbcucK4c8h5tWFmMPBvRZ/uyWmN1/SbBdIvqGUdWGkJ5BAaccgs6XbzVLsqbPJrBSFwKv3kT9i7w==", + "dev": true + }, + "@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true + }, + "@jridgewell/source-map": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "dev": true, + "requires": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + } + } + }, + "@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true + }, + "@jridgewell/trace-mapping": { + "version": "0.3.14", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.14.tgz", + "integrity": "sha512-bJWEfQ9lPTvm3SneWwRFVLzrh6nhjwqw7TUFFBEMzwvg7t7PCDenf2lDwqo4NQXzdpgBXyFgDWnQA+2vkruksQ==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "@lit/reactive-element": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-1.4.1.tgz", + "integrity": "sha512-qDv4851VFSaBWzpS02cXHclo40jsbAjRXnebNXpm0uVg32kCneZPo9RYVQtrTNICtZ+1wAYHu1ZtxWSWMbKrBw==" + }, + "@mapbox/jsonlint-lines-primitives": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@mapbox/jsonlint-lines-primitives/-/jsonlint-lines-primitives-2.0.2.tgz", + "integrity": "sha512-rY0o9A5ECsTQRVhv7tL/OyDpGAoUB4tTvLiW1DSzQGq4bvTPhNw1VpSNjDJc5GFZ2XuyOtSWSVN05qOtcD71qQ==" + }, + "@mapbox/mapbox-gl-style-spec": { + "version": "13.26.0", + "resolved": "https://registry.npmjs.org/@mapbox/mapbox-gl-style-spec/-/mapbox-gl-style-spec-13.26.0.tgz", + "integrity": "sha512-Ya1WiNz1qYau7xPYPQUbionrw9pjgZAIebGQdDXgwJuSAWeVCr02P7rqbYFHbXqX5TeAaq4qVpcaJb9oZtgaVQ==", + "requires": { + "@mapbox/jsonlint-lines-primitives": "~2.0.2", + "@mapbox/point-geometry": "^0.1.0", + "@mapbox/unitbezier": "^0.0.0", + "csscolorparser": "~1.0.2", + "json-stringify-pretty-compact": "^2.0.0", + "minimist": "^1.2.6", + "rw": "^1.3.3", + "sort-object": "^0.3.2" + } + }, + "@mapbox/point-geometry": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@mapbox/point-geometry/-/point-geometry-0.1.0.tgz", + "integrity": "sha512-6j56HdLTwWGO0fJPlrZtdU/B13q8Uwmo18Ck2GnGgN9PCFyKTZ3UbXeEdRFh18i9XQ92eH2VdtpJHpBD3aripQ==" + }, + "@mapbox/unitbezier": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/@mapbox/unitbezier/-/unitbezier-0.0.0.tgz", + "integrity": "sha512-HPnRdYO0WjFjRTSwO3frz1wKaU649OBFPX3Zo/2WZvuRi6zMiRGui8SnPQiQABgqCf8YikDe5t3HViTVw1WUzA==" + }, + "@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + } + }, + "@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true + }, + "@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "requires": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + } + }, + "@open-wc/dedupe-mixin": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@open-wc/dedupe-mixin/-/dedupe-mixin-1.3.1.tgz", + "integrity": "sha512-ukowSvzpZQDUH0Y3znJTsY88HkiGk3Khc0WGpIPhap1xlerieYi27QBg6wx/nTurpWfU6XXXsx9ocxDYCdtw0Q==" + }, + "@petamoriken/float16": { + "version": "3.6.6", + "resolved": "https://registry.npmjs.org/@petamoriken/float16/-/float16-3.6.6.tgz", + "integrity": "sha512-3MUulwMtsdCA9lw8a/Kc0XDBJJVCkYTQ5aGd+///TbfkOMXoOGAzzoiYKwPEsLYZv7He7fKJ/mCacqKOO7REyg==" + }, + "@polymer/iron-a11y-keys-behavior": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@polymer/iron-a11y-keys-behavior/-/iron-a11y-keys-behavior-3.0.1.tgz", + "integrity": "sha512-lnrjKq3ysbBPT/74l0Fj0U9H9C35Tpw2C/tpJ8a+5g8Y3YJs1WSZYnEl1yOkw6sEyaxOq/1DkzH0+60gGu5/PQ==", + "requires": { + "@polymer/polymer": "3.5.1" + } + }, + "@polymer/iron-flex-layout": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@polymer/iron-flex-layout/-/iron-flex-layout-3.0.1.tgz", + "integrity": "sha512-7gB869czArF+HZcPTVSgvA7tXYFze9EKckvM95NB7SqYF+NnsQyhoXgKnpFwGyo95lUjUW9TFDLUwDXnCYFtkw==", + "requires": { + "@polymer/polymer": "3.5.1" + } + }, + "@polymer/iron-icon": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@polymer/iron-icon/-/iron-icon-3.0.1.tgz", + "integrity": "sha512-QLPwirk+UPZNaLnMew9VludXA4CWUCenRewgEcGYwdzVgDPCDbXxy6vRJjmweZobMQv/oVLppT2JZtJFnPxX6g==", + "requires": { + "@polymer/iron-flex-layout": "^3.0.0-pre.26", + "@polymer/iron-meta": "3.0.1", + "@polymer/polymer": "3.5.1" + } + }, + "@polymer/iron-iconset-svg": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@polymer/iron-iconset-svg/-/iron-iconset-svg-3.0.1.tgz", + "integrity": "sha512-XNwURbNHRw6u2fJe05O5fMYye6GSgDlDqCO+q6K1zAnKIrpgZwf2vTkBd5uCcZwsN0FyCB3mvNZx4jkh85dRDw==", + "requires": { + "@polymer/iron-meta": "3.0.1", + "@polymer/polymer": "3.5.1" + } + }, + "@polymer/iron-list": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@polymer/iron-list/-/iron-list-3.1.0.tgz", + "integrity": "sha512-Eiv6xd3h3oPmn8SXFntXVfC3ZnegH+KHAxiKLKcOASFSRY3mHnr2AdcnExUJ9ItoCMA5UzKaM/0U22eWzGERtA==", + "requires": { + "@polymer/iron-a11y-keys-behavior": "^3.0.0-pre.26", + "@polymer/iron-resizable-behavior": "3.0.1", + "@polymer/iron-scroll-target-behavior": "^3.0.0-pre.26", + "@polymer/polymer": "3.5.1" + } + }, + "@polymer/iron-meta": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@polymer/iron-meta/-/iron-meta-3.0.1.tgz", + "integrity": "sha512-pWguPugiLYmWFV9UWxLWzZ6gm4wBwQdDy4VULKwdHCqR7OP7u98h+XDdGZsSlDPv6qoryV/e3tGHlTIT0mbzJA==", + "requires": { + "@polymer/polymer": "3.5.1" + } + }, + "@polymer/iron-resizable-behavior": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@polymer/iron-resizable-behavior/-/iron-resizable-behavior-3.0.1.tgz", + "integrity": "sha512-FyHxRxFspVoRaeZSWpT3y0C9awomb4tXXolIJcZ7RvXhMP632V5lez+ch5G5SwK0LpnAPkg35eB0LPMFv+YMMQ==", + "requires": { + "@polymer/polymer": "3.5.1" + } + }, + "@polymer/iron-scroll-target-behavior": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@polymer/iron-scroll-target-behavior/-/iron-scroll-target-behavior-3.0.1.tgz", + "integrity": "sha512-xg1WanG25BIkQE8rhuReqY9zx1K5M7F+YAIYpswEp5eyDIaZ1Y3vUmVeQ3KG+hiSugzI1M752azXN7kvyhOBcQ==", + "requires": { + "@polymer/polymer": "3.5.1" + } + }, + "@polymer/polymer": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/@polymer/polymer/-/polymer-3.5.1.tgz", + "integrity": "sha512-JlAHuy+1qIC6hL1ojEUfIVD58fzTpJAoCxFwV5yr0mYTXV1H8bz5zy0+rC963Cgr9iNXQ4T9ncSjC2fkF9BQfw==", + "requires": { + "@webcomponents/shadycss": "^1.9.1" + } + }, + "@rollup/plugin-babel": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz", + "integrity": "sha512-WFfdLWU/xVWKeRQnKmIAQULUI7Il0gZnBIH/ZFO069wYIfPu+8zrfp/KMW0atmELoRDq8FbiP3VCss9MhCut7Q==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.10.4", + "@rollup/pluginutils": "^3.1.0" + }, + "dependencies": { + "@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dev": true, + "requires": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + } + }, + "estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", + "dev": true + } + } + }, + "@rollup/plugin-node-resolve": { + "version": "11.2.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-11.2.1.tgz", + "integrity": "sha512-yc2n43jcqVyGE2sqV5/YCmocy9ArjVAP/BeXyTtADTBBX6V0e5UMqwO8CdQ0kzjb6zu5P1qMzsScCMRvE9OlVg==", + "dev": true, + "requires": { + "@rollup/pluginutils": "^3.1.0", + "@types/resolve": "1.17.1", + "builtin-modules": "^3.1.0", + "deepmerge": "^4.2.2", + "is-module": "^1.0.0", + "resolve": "^1.19.0" + }, + "dependencies": { + "@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dev": true, + "requires": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + } + }, + "estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", + "dev": true + } + } + }, + "@rollup/plugin-replace": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-3.1.0.tgz", + "integrity": "sha512-pA3XRUrSKybVYqmH5TqWNZpGxF+VV+1GrYchKgCNIj2vsSOX7CVm2RCtx8p2nrC7xvkziYyK+lSi74T93MU3YA==", + "dev": true, + "requires": { + "@rollup/pluginutils": "^3.1.0", + "magic-string": "^0.25.7" + }, + "dependencies": { + "@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dev": true, + "requires": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + } + }, + "estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", + "dev": true + } + } + }, + "@rollup/pluginutils": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.1.0.tgz", + "integrity": "sha512-TrBhfJkFxA+ER+ew2U2/fHbebhLT/l/2pRk0hfj9KusXUuRXd2v0R58AfaZK9VXDQ4TogOSEmICVrQAA3zFnHQ==", + "dev": true, + "requires": { + "estree-walker": "^2.0.1", + "picomatch": "^2.2.2" + } + }, + "@surma/rollup-plugin-off-main-thread": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/@surma/rollup-plugin-off-main-thread/-/rollup-plugin-off-main-thread-2.2.3.tgz", + "integrity": "sha512-lR8q/9W7hZpMWweNiAKU7NQerBnzQQLvi8qnTDU/fxItPhtZVMbPV3lbCwjhIlNBe9Bbr5V+KHshvWmVSG9cxQ==", + "dev": true, + "requires": { + "ejs": "^3.1.6", + "json5": "^2.2.0", + "magic-string": "^0.25.0", + "string.prototype.matchall": "^4.0.6" + } + }, + "@types/estree": { + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", + "dev": true + }, + "@types/node": { + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.0.0.tgz", + "integrity": "sha512-cHlGmko4gWLVI27cGJntjs/Sj8th9aYwplmZFwmmgYQQvL5NUsgVJG7OddLvNfLqYS31KFN0s3qlaD9qCaxACA==", + "dev": true + }, + "@types/resolve": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", + "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/trusted-types": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.2.tgz", + "integrity": "sha512-F5DIZ36YVLE+PN+Zwws4kJogq47hNgX3Nx6WyDJ3kcplxyke3XIzB8uK5n/Lpm1HBsbGzd6nmGehL8cPekP+Tg==" + }, + "@vaadin/accordion": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/accordion/-/accordion-23.2.3.tgz", + "integrity": "sha512-OSuZ045YMPRQBr62T1IajCcLTNhxX68Vp89m/7p2e4Zpz+Q58Dm4wYsDPidNkN5+SFn0FrdjjYDC1CsyjUzySg==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/details": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/app-layout": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/app-layout/-/app-layout-23.2.3.tgz", + "integrity": "sha512-nLD0SfZcJRstfzO/FrXSxVxU7lup5hHLqZyY8M/Cm/TVAkkubjxr4T4pCTBJEfhLFw9HJ0Tgc9PoiywnCxgoCA==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/button": "23.2.3", + "@vaadin/component-base": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/avatar": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/avatar/-/avatar-23.2.3.tgz", + "integrity": "sha512-rMugxOmCiw3GziNnNl2I3KPMFpQufPCVYdCVaZX86YJg7GxaFY2xpuZ4NvJnzzp4+98Xier4jsHEErbDkBIKIg==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/item": "23.2.3", + "@vaadin/list-box": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-overlay": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/avatar-group": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/avatar-group/-/avatar-group-23.2.3.tgz", + "integrity": "sha512-hvU2W0SQBzB8Y4EBa2H8N+T60FSBy0VYGrcdOEJZSOG09oNruM4781na4gP2Ke2vLzbWZIcyLWA5LO8mKQRmIQ==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/avatar": "23.2.3", + "@vaadin/component-base": "23.2.3", + "@vaadin/item": "23.2.3", + "@vaadin/list-box": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-overlay": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/board": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/board/-/board-23.2.3.tgz", + "integrity": "sha512-WHRtPURcHO9fvuQS5AKqmFYO+XAQtGMoxEgYb4nRSIAsm2O1i1Yq5gPmC/fNeedQTVwFaz9BIQ0XdcpQbu1AXg==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3" + } + }, + "@vaadin/bundles": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/bundles/-/bundles-23.2.3.tgz", + "integrity": "sha512-ANhXyQhtsfW8ddsRjs2InVqnmXljSYyNP7+ALZwzNIWQuoNhjDZyDMzwc0VeV0qoOBuhdj1DXBT0B6OxtGGuiw==", + "requires": {} + }, + "@vaadin/button": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/button/-/button-23.2.3.tgz", + "integrity": "sha512-j5xXZ4XF4jUNXrv8IfywglvCc0Y2+2BDAa7iva9NKjYZG3FlqANE0PHxJkoFhfuDJeZE8tiRfILVZc3XlwolWw==", + "requires": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/charts": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/charts/-/charts-23.2.3.tgz", + "integrity": "sha512-mOEBIkV3s4Q2wYSIFmv1PEuiRR4HszCKelzxbfeg0hY9M94HJT3gYmzzv86uUpZa05404llgFbI5NaK+0Oc13g==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3", + "highcharts": "9.2.2" + } + }, + "@vaadin/checkbox": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/checkbox/-/checkbox-23.2.3.tgz", + "integrity": "sha512-QtJ/t+TpnVXiErX9L5Rcwu53QFI222biDCDiVczjN/tPMqZbdAM2rEoI6xjo4LsG5Ld2MAU0NDBlyJj6/tUlQA==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/field-base": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/checkbox-group": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/checkbox-group/-/checkbox-group-23.2.3.tgz", + "integrity": "sha512-Fk5/5kuv++XT/6zkBEYn1rlgq7BVWDhtZe7X6S7oWsFRdStugfxkxxoN2ly3sIOg8+xCgS5aup9p435hezJ7Rg==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/checkbox": "23.2.3", + "@vaadin/component-base": "23.2.3", + "@vaadin/field-base": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/combo-box": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/combo-box/-/combo-box-23.2.3.tgz", + "integrity": "sha512-1g191PZ079I9gdiCo+2/8b8rc3X+uGTRW6o+XaWxMedJdEvJPXdx5Y/KmzA/r+hvf1DPgA9wbx1UhsXPyUyZ9A==", + "requires": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/field-base": "23.2.3", + "@vaadin/input-container": "23.2.3", + "@vaadin/item": "23.2.3", + "@vaadin/lit-renderer": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-overlay": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/common-frontend": { + "version": "0.0.17", + "resolved": "https://registry.npmjs.org/@vaadin/common-frontend/-/common-frontend-0.0.17.tgz", + "integrity": "sha512-M4tg10cYgdDqQAXfGfXpQ90eHm+xL6ynAFEDgtc2IxXVWXKYU8jGK08SM5yOcZ4wDk0ETyHMtQlKUPDNkz6Qfw==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@vaadin/component-base": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/component-base/-/component-base-23.2.3.tgz", + "integrity": "sha512-GrM1AeiENyQLt4R11G6zKN5lkQFlfAdlP9WvHhtSjyY5tVnEQJQpd1SN0T1Xm6XEb7e9EL7yZnKS98IGOQisvw==", + "requires": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "3.5.1", + "@vaadin/vaadin-development-mode-detector": "2.0.5", + "@vaadin/vaadin-usage-statistics": "2.1.2", + "lit": "2.3.0" + } + }, + "@vaadin/confirm-dialog": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/confirm-dialog/-/confirm-dialog-23.2.3.tgz", + "integrity": "sha512-/ETv2T+bNM/RuneQu7o8SI7LDPp8mDh7sFlBUPLo37YHS/aUeW/ww1STVNknY0pRm2je59s2B43vsCqWsE2bJQ==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/button": "23.2.3", + "@vaadin/component-base": "23.2.3", + "@vaadin/dialog": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-overlay": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/context-menu": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/context-menu/-/context-menu-23.2.3.tgz", + "integrity": "sha512-IkhL0HYSusxzAHJt8WurmUUAWC2Q1s4ABjHCe9dcGLV8w9TGxQqAOzvJ6raCDhey+GSiBNnwqBQSbYZkp20WJg==", + "requires": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/item": "23.2.3", + "@vaadin/list-box": "23.2.3", + "@vaadin/lit-renderer": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-overlay": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/cookie-consent": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/cookie-consent/-/cookie-consent-23.2.3.tgz", + "integrity": "sha512-lvQ9I/jF3VeI723eCOJI4tcRlyv0dsedimvHLZE7MxAcKgwAZ042D23sLZBRqz4Hr68UTykpZaGvCIbfHp1DOg==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "cookieconsent": "^3.0.6" + } + }, + "@vaadin/crud": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/crud/-/crud-23.2.3.tgz", + "integrity": "sha512-1PU4QxOxes28s3pfZhcI6lVeKSxRu6FVPT76m8EHWnRuIaUrtyI4+JffABEXWY0VqUWfmYrJDRIypvxTnWniAg==", + "requires": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "3.5.1", + "@vaadin/button": "23.2.3", + "@vaadin/component-base": "23.2.3", + "@vaadin/confirm-dialog": "23.2.3", + "@vaadin/dialog": "23.2.3", + "@vaadin/form-layout": "23.2.3", + "@vaadin/grid": "23.2.3", + "@vaadin/text-field": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/custom-field": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/custom-field/-/custom-field-23.2.3.tgz", + "integrity": "sha512-/9E1QI9Y7uXyTAzHzjJyhQszWYvdPwejxeNshNS2dCkPJQsi/pjun+LhJynoeCY3F5hvsCJhsCRUX5ynFp0dVg==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/field-base": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/date-picker": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/date-picker/-/date-picker-23.2.3.tgz", + "integrity": "sha512-Q8Ih31I6kaY531y5008+wJZnCUbDqRrdIase9JnMROqOcC9R9laTvPWtfZTveM6XuCCGCQmKfbvMajobykxwcQ==", + "requires": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "3.5.1", + "@vaadin/button": "23.2.3", + "@vaadin/component-base": "23.2.3", + "@vaadin/field-base": "23.2.3", + "@vaadin/input-container": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-overlay": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/date-time-picker": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/date-time-picker/-/date-time-picker-23.2.3.tgz", + "integrity": "sha512-hmvWs9pE4UC7Ha4gg2f/7xCW7DvxsffpFWQPAIQBq4Sdb9tZSxLQSq+ftLTTRHl9Q6xx4bpKErNJyRMSe4KIIw==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/custom-field": "23.2.3", + "@vaadin/date-picker": "23.2.3", + "@vaadin/field-base": "23.2.3", + "@vaadin/time-picker": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/details": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/details/-/details-23.2.3.tgz", + "integrity": "sha512-VdjTAPVhC4Cj7zr6hEoKdOftwj20OWuES6bZTZsXb+819i5emCTaeQx/aPDkTUgSbY2gsv/HWIwSWftmD7L/BQ==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/field-base": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/dialog": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/dialog/-/dialog-23.2.3.tgz", + "integrity": "sha512-2eF8OeLtSrPFnd8HZaZ4KVM0YhzARvZrJXkMLn+Xa3GFIZxM+1Rh3P4b2kn5I9hZ0Hh72DvoFSZfFLHsfsV3hQ==", + "requires": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/lit-renderer": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-overlay": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/email-field": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/email-field/-/email-field-23.2.3.tgz", + "integrity": "sha512-Sc2pQOH2wLtEwG0ZAU1SC8TtYjRlqx+PfOcyyKdxC6RBGniP6K6/CIS470B3a+xdAnhrf8y+DARDmXqRtyMfcQ==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/text-field": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/field-base": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/field-base/-/field-base-23.2.3.tgz", + "integrity": "sha512-vRCP6f+3DaceY8wQ6sh4FE8VFJS5omL8zLceYxZ4djJUZXJHocSBjV2qQMQcQ/ASRktbTqVz8SbzaR4PSHwGBQ==", + "requires": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "lit": "2.3.0" + } + }, + "@vaadin/field-highlighter": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/field-highlighter/-/field-highlighter-23.2.3.tgz", + "integrity": "sha512-WfiWWAqtH4+uqW6F/PtOWt117fHfE9vNSgpeOzAOowybjS6gsTYYkFwfanG2OQ9CbsQVWzAXGjGKvF6qmL6U7g==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-overlay": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3", + "lit": "2.3.0" + } + }, + "@vaadin/flow-frontend": { + "version": "file:target/flow-frontend" + }, + "@vaadin/form-layout": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/form-layout/-/form-layout-23.2.3.tgz", + "integrity": "sha512-Hec2GawwT278uBidtMfALS6zHDTK4qpx6FxAGJXvBb+sRxPw+niybK+tQp+W8JuHMDWtHjvB5SFzQcCeuKzdNA==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/grid": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/grid/-/grid-23.2.3.tgz", + "integrity": "sha512-W/zLseKOwWcPUvz7bePC59kzKPNRk/zJGfkt2WC4Bc0wEfSNvF+9/F79hZ78tF4p8btCLMQNfvyHjFb1tnCIkg==", + "requires": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "3.5.1", + "@vaadin/checkbox": "23.2.3", + "@vaadin/component-base": "23.2.3", + "@vaadin/lit-renderer": "23.2.3", + "@vaadin/text-field": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/grid-pro": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/grid-pro/-/grid-pro-23.2.3.tgz", + "integrity": "sha512-+YCjdM7dsv3ZcOb07bgL6ENuH37E2Wqs0j/6MXaTtUVaXgDm/02vl1mqKHCLHNc/9PHlUH2kygmykr46sdPbzg==", + "requires": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "3.5.1", + "@vaadin/checkbox": "23.2.3", + "@vaadin/component-base": "23.2.3", + "@vaadin/grid": "23.2.3", + "@vaadin/item": "23.2.3", + "@vaadin/list-box": "23.2.3", + "@vaadin/lit-renderer": "23.2.3", + "@vaadin/select": "23.2.3", + "@vaadin/text-field": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/horizontal-layout": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/horizontal-layout/-/horizontal-layout-23.2.3.tgz", + "integrity": "sha512-WPx+LHrFMwMkz75r73VovwPQNbYd0g15V+w01OmXWaU/jqlMIxFY7tCJvKXJipNy458PaugO0Vsa8D62mRJt2Q==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/icon": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/icon/-/icon-23.2.3.tgz", + "integrity": "sha512-iDeewImk475xCGO0t2+7RPcz73RGTfWvzXu+0m55unhTgPL7sJrmQNbvdNY1VpiOrojNdsI/MwX9E0Io3VI0Mw==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3", + "lit": "2.3.0" + } + }, + "@vaadin/icons": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/icons/-/icons-23.2.3.tgz", + "integrity": "sha512-4LQV293TnmsvfDFKtgfIGoOyOCXT3F26WLjb4XNIEmO6RKL2bHOGqJFSWGjfBSoCeNTzEXUQbmuxgKV9ydtkUw==", + "requires": { + "@polymer/iron-icon": "3.0.1", + "@polymer/iron-iconset-svg": "3.0.1", + "@polymer/polymer": "3.5.1", + "@vaadin/icon": "23.2.3" + } + }, + "@vaadin/input-container": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/input-container/-/input-container-23.2.3.tgz", + "integrity": "sha512-rZ1bnB7IqhNqW35s/qMowQBCiSucAFD/n0IE6H7/PY7Hl0LKaATYhkpGsxjjNMTg6C8dkICuM26UaIaeY8axVQ==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/integer-field": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/integer-field/-/integer-field-23.2.3.tgz", + "integrity": "sha512-ixA8Yt7dmHdLTOTVi2b1+5RTMZjN2y+snI70DQOKKQLg0lVLPcorJrzEMCFmFZWGSpW+sAeV46jlfFDj5SWFaw==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/number-field": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3" + } + }, + "@vaadin/item": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/item/-/item-23.2.3.tgz", + "integrity": "sha512-lFF6RHB5M1LDaLv+ewt0PcZm1KG2BD9CF19cUvQ7fk5iu7C1WcJuuP+FXv+PkMfpqMxxxeqInUuzhCjhsRQP/A==", + "requires": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/list-box": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/list-box/-/list-box-23.2.3.tgz", + "integrity": "sha512-oyGtLjcyNrb02RS/CDV3wkN8cjNbdj/J+tr/Vru+VGITTVt1+MmF9iESRshLP6QrVVJ0js83W8JivtWyDtjguw==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/item": "23.2.3", + "@vaadin/vaadin-list-mixin": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/lit-renderer": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/lit-renderer/-/lit-renderer-23.2.3.tgz", + "integrity": "sha512-dZ2iU9GT90vhSjsxym3ogozXoV1mUvSqq8ukidBzGxvz+mPtiWstvgIFMbxPOWHMUDU+ioXIqT8YHU5cZw6CFQ==", + "requires": { + "lit": "2.3.0" + } + }, + "@vaadin/login": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/login/-/login-23.2.3.tgz", + "integrity": "sha512-MaZOt87S8qwmSJWkh69Ifi0gNziRIInK1l13/M8cSUPcGuz2Kur/QppCrEZ55mlAcn0GTDMfFRAZzUa4sHJakw==", + "requires": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "3.5.1", + "@vaadin/button": "23.2.3", + "@vaadin/component-base": "23.2.3", + "@vaadin/password-field": "23.2.3", + "@vaadin/text-field": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-overlay": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/map": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/map/-/map-23.2.3.tgz", + "integrity": "sha512-XWd6F9cqOrD25bRBsWLhIBSTzYPBK1dUhrvuC/FCXVLE63reBjvXn2tYbr5jASy2OHNhW9U0cdAKAO5TXMBmDg==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3", + "ol": "6.13.0" + } + }, + "@vaadin/menu-bar": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/menu-bar/-/menu-bar-23.2.3.tgz", + "integrity": "sha512-fSXZICftDqmfNvZjNGhsTTiP1cvcSRKTsbLP4TuRze7ElaZKHqIK0eYa6l6VDdX/DpTBnG6ImdOLlf0q46m3eQ==", + "requires": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "3.5.1", + "@vaadin/button": "23.2.3", + "@vaadin/component-base": "23.2.3", + "@vaadin/context-menu": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/message-input": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/message-input/-/message-input-23.2.3.tgz", + "integrity": "sha512-Qai3s6e2VTcjoyZBzDDnTVigsY9NycGVPVfO5kxKKGMsjTn4hVvgLzWi9A6XndYWWOeSpjD96rdxXRStQsUiiw==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/button": "23.2.3", + "@vaadin/component-base": "23.2.3", + "@vaadin/text-area": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/message-list": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/message-list/-/message-list-23.2.3.tgz", + "integrity": "sha512-Wx9XaoJskISXOGDkro5qdY6iTX+yG/dKaKmVVY8vDGQvgnIUOx/6K92NQRG2BCPnlmw5jQ2wtTH6pvC1rHn0Zw==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/avatar": "23.2.3", + "@vaadin/component-base": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/multi-select-combo-box": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/multi-select-combo-box/-/multi-select-combo-box-23.2.3.tgz", + "integrity": "sha512-+Zdz6kIoGBoftOYQGTTbKgRGfMHUkTbLZLJ1hWS1+j+AQxw/BcsvSRnQIL1nQG6/plLlVNWmlES6S9KSYQCgdg==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/combo-box": "23.2.3", + "@vaadin/component-base": "23.2.3", + "@vaadin/field-base": "23.2.3", + "@vaadin/input-container": "23.2.3", + "@vaadin/lit-renderer": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/notification": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/notification/-/notification-23.2.3.tgz", + "integrity": "sha512-hRvtp3wEWrIL416tGqFLWxQaKEtglyIsMzd4Sdf7Kg+LcZ34G6V+ASVsLF3J8EWaqi4JwCyoPp6AJt4vbQGiXQ==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/lit-renderer": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3", + "lit": "2.3.0" + } + }, + "@vaadin/number-field": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/number-field/-/number-field-23.2.3.tgz", + "integrity": "sha512-djP1U6n1LoKqLi7dao4xssYhfB1n6fW8paT07sPwEbzHeSnLxncSghfi+TDicSYwoB+XN3OId/VM8HoKBx5uwg==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/field-base": "23.2.3", + "@vaadin/input-container": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/password-field": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/password-field/-/password-field-23.2.3.tgz", + "integrity": "sha512-l1nojHgag5/mwXYcA9cT3GHM14Yeq32Q3ANsrJ1Xkd/N/6JvnQycP9QDTOv7pyzc+BPUU3zQF0OJgqL81l4HDQ==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/button": "23.2.3", + "@vaadin/text-field": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3" + } + }, + "@vaadin/polymer-legacy-adapter": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/polymer-legacy-adapter/-/polymer-legacy-adapter-23.2.3.tgz", + "integrity": "sha512-w81tOU9xMvxHo2UIpZUWfpDn3Lb6Plfzc+/KtxnnU4DBD+a7b9TE0mB4HlN+9dgilwaHUokFHVr21XxM/aEgIQ==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/vaadin-themable-mixin": "23.2.3", + "lit": "2.3.0" + } + }, + "@vaadin/progress-bar": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/progress-bar/-/progress-bar-23.2.3.tgz", + "integrity": "sha512-Ur7PQVdh/5mRe9OXFPFf6RPJN1xcrSeq+vrAS6JHnblWAabptik+NPoBUpJ9V57YCkSyUZu5vzZKoCzqRwM5mw==", + "requires": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/radio-group": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/radio-group/-/radio-group-23.2.3.tgz", + "integrity": "sha512-kHzm95CKw7V2gdV+WodCfXXLygC9N+As57KjTHpa1pXBtiaXneF4otN23MxB5o7Q40ZAcTXDiE40O98IpzkP7g==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/field-base": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/rich-text-editor": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/rich-text-editor/-/rich-text-editor-23.2.3.tgz", + "integrity": "sha512-yl0aFeENlP0/HlMIRqdUkNvX9nflDZ7pLFfP5Y8AGYAZ5WEmwGHIW6lDzhxAsSFwyMoYk6/J5ASJzlOapr8Ihg==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/button": "23.2.3", + "@vaadin/component-base": "23.2.3", + "@vaadin/confirm-dialog": "23.2.3", + "@vaadin/text-field": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/router": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/@vaadin/router/-/router-1.7.4.tgz", + "integrity": "sha512-B4JVtzFVUMlsjuJHNXEMfNZrM4QDrdeOMc6EEigiHYxwF82py6yDdP6SWP0aPoP3f6aQHt51tLWdXSpkKpWf7A==", + "requires": { + "@vaadin/vaadin-usage-statistics": "2.1.2", + "path-to-regexp": "2.4.0" + } + }, + "@vaadin/scroller": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/scroller/-/scroller-23.2.3.tgz", + "integrity": "sha512-sdgPTs/grs7JnSrxYi5rCxwmV9aiMMZ5ONxNRt+c7kQV9i5W3s1iNAJdNth3guQsKGSr11Zt8ethyYa7pEq4hQ==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/select": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/select/-/select-23.2.3.tgz", + "integrity": "sha512-nSvIYrcGyA2GfjUy2sikSDRg39ytBG59vQJl7QQf7De+rYSSSDCG3bv1xgMKhb8Q6Pkec/adWNgpSkEyj4vjOg==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/button": "23.2.3", + "@vaadin/component-base": "23.2.3", + "@vaadin/field-base": "23.2.3", + "@vaadin/input-container": "23.2.3", + "@vaadin/item": "23.2.3", + "@vaadin/list-box": "23.2.3", + "@vaadin/lit-renderer": "23.2.3", + "@vaadin/vaadin-list-mixin": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-overlay": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/split-layout": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/split-layout/-/split-layout-23.2.3.tgz", + "integrity": "sha512-G0XQ8p+ksYLsofELYSds+iemhfelesNUon28RbyNQ52P99Zfz6dnffo8rUL4ghAYO2PttuSRaewJqxm4dNH9cQ==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/tabs": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/tabs/-/tabs-23.2.3.tgz", + "integrity": "sha512-iJde//sD8PU6UdoUloF4Whq5wnbspZMVlBgboMuCqsMBc/Np5tIDgUp27OYWn+PUeYCLtXkoTUFKfuQb5WwC1g==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/item": "23.2.3", + "@vaadin/vaadin-list-mixin": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/text-area": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/text-area/-/text-area-23.2.3.tgz", + "integrity": "sha512-VsBRi4wZE1KzQQXRAjVlOrqILpeVH5xWzGui1fkpW/23FNsVNUzr6JwbGtnV2iY98pKQkuIs6RHf7V+EPt8EBA==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/field-base": "23.2.3", + "@vaadin/input-container": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/text-field": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/text-field/-/text-field-23.2.3.tgz", + "integrity": "sha512-Hth2BqDLfV5yZcsWKwk3tD2Pq5OvkS1WHIQ3X1Za5MmDnJ0D+AwfEu2TGt/9QeOJ1W2JhLLnoPY3yq1dXp0S2g==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/field-base": "23.2.3", + "@vaadin/input-container": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/time-picker": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/time-picker/-/time-picker-23.2.3.tgz", + "integrity": "sha512-Z+Ml0SuYf0EmH9Spm4iARZvVjVv/V9NGPIvYHc9YJ4xEORcWWdVJxB/xxDbNO9Fjj+0NeOabH63T6eDVE0vRcw==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/combo-box": "23.2.3", + "@vaadin/component-base": "23.2.3", + "@vaadin/field-base": "23.2.3", + "@vaadin/input-container": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/upload": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/upload/-/upload-23.2.3.tgz", + "integrity": "sha512-imgVW/HVH8dtJUXyZkLvelAj+lDUWz0hBs2h4vYspS0awff0d9lowYWQ/Oa8qYGl7O6CNfL9MqU3H8lqXeTQ3A==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/button": "23.2.3", + "@vaadin/component-base": "23.2.3", + "@vaadin/progress-bar": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/vaadin-accordion": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-accordion/-/vaadin-accordion-23.2.3.tgz", + "integrity": "sha512-v8Zp4EHiqqX00YUvo3sSQyWzk7rn+xt+BGMUnx66y+Vad1jV3mLXUwX6Km57AR8J2YO3NLxw7Le2SVoJ0HEVZQ==", + "requires": { + "@vaadin/accordion": "23.2.3" + } + }, + "@vaadin/vaadin-app-layout": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-app-layout/-/vaadin-app-layout-23.2.3.tgz", + "integrity": "sha512-7TtM1vo4WwCl+FUtEsUHd50Ja3PBE68/0ux2VqRD03wSa1KCAt9SNIk177D7XkszpcTRtggM2AyxUbsQP7H89g==", + "requires": { + "@vaadin/app-layout": "23.2.3" + } + }, + "@vaadin/vaadin-avatar": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-avatar/-/vaadin-avatar-23.2.3.tgz", + "integrity": "sha512-NlJn9UdvBSaImGtXkxvRmpDUJHLCBW6VmP609RoaaqCqVf8SdEeVHW9LeM6plQCarS7CofAVVk3oRxMz9582Eg==", + "requires": { + "@vaadin/avatar": "23.2.3", + "@vaadin/avatar-group": "23.2.3" + } + }, + "@vaadin/vaadin-board": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-board/-/vaadin-board-23.2.3.tgz", + "integrity": "sha512-0WR3Qd7Pos0lOTDQVTVRiq0WsAhN7Xfgf7aVRj5vA0KGOxnBSakom67BK0HfOR7vAGZyetsoQ1ceN194FN5tmw==", + "requires": { + "@vaadin/board": "23.2.3" + } + }, + "@vaadin/vaadin-button": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-button/-/vaadin-button-23.2.3.tgz", + "integrity": "sha512-Arj/Z4cTntofyCtQ6/O5P1Gw/HbjAeQa7sQMxOsiquWvTqjjxg8CEQ6+OabPHgAYSm3d5ZZjy/XrNiMbr5lF7w==", + "requires": { + "@vaadin/button": "23.2.3" + } + }, + "@vaadin/vaadin-charts": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-charts/-/vaadin-charts-23.2.3.tgz", + "integrity": "sha512-NAJpTTbpCYe2SsSsBqYWuM6MbW5FljYLbDan7L3Vm5Wz+GmTFGdRvSiUIOiulEwfwjV61mrhO8dYb8ImE7achg==", + "requires": { + "@vaadin/charts": "23.2.3" + } + }, + "@vaadin/vaadin-checkbox": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-checkbox/-/vaadin-checkbox-23.2.3.tgz", + "integrity": "sha512-1Aq7m54LbTMgs8vPbl6iDcX4wIY3Fr6ihvjJ1kMPBs63Ru+q7hsjHuo/4ZGRziOqWFUYEDJZrvE+GhrOru9V7Q==", + "requires": { + "@vaadin/checkbox": "23.2.3", + "@vaadin/checkbox-group": "23.2.3" + } + }, + "@vaadin/vaadin-combo-box": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-combo-box/-/vaadin-combo-box-23.2.3.tgz", + "integrity": "sha512-m4U+sw+8e1fXJdo+RBjwAw6Abo4+MVvpax6KBtOT3vVQ+Kb9eMucR4pk+4UZqWF/5EBOYNqrH3AdoLpbRGGMVA==", + "requires": { + "@vaadin/combo-box": "23.2.3" + } + }, + "@vaadin/vaadin-confirm-dialog": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-confirm-dialog/-/vaadin-confirm-dialog-23.2.3.tgz", + "integrity": "sha512-zSKwlO3qol2v4/oD2gl1JjT9iBASV7fNqKhDPS1+qQmZ6kmN/5vzn2t4oay1xpz6Vsayoeq/w17DCowJK0i7fQ==", + "requires": { + "@vaadin/confirm-dialog": "23.2.3" + } + }, + "@vaadin/vaadin-context-menu": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-context-menu/-/vaadin-context-menu-23.2.3.tgz", + "integrity": "sha512-iUMksoII7oHVV+T9h8gsZ0SOFHgYb6bGWCxA9otbVrmkCvfCjqQmDvnXqFDyMYluKhRWP56+7KmRqAFW3xmM5Q==", + "requires": { + "@vaadin/context-menu": "23.2.3" + } + }, + "@vaadin/vaadin-cookie-consent": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-cookie-consent/-/vaadin-cookie-consent-23.2.3.tgz", + "integrity": "sha512-iIeSlXBzzZ4zcktAZk/F2oGc/ICqucfEtZwf9bNkgCeYEx6wfcmCv02WQdyMBFFopJ4W8I4Tk1zHaoNxeHlOOg==", + "requires": { + "@vaadin/cookie-consent": "23.2.3" + } + }, + "@vaadin/vaadin-crud": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-crud/-/vaadin-crud-23.2.3.tgz", + "integrity": "sha512-mJ7lnyh9xoLEky0w5LLpalMEtcOOH4fsgX1UjD+rzNhf3TlYv+4oX9aeBj8ZV1jAAn+8lrCnMUPcxPeGiDRJJQ==", + "requires": { + "@vaadin/crud": "23.2.3" + } + }, + "@vaadin/vaadin-custom-field": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-custom-field/-/vaadin-custom-field-23.2.3.tgz", + "integrity": "sha512-J6KdnfC8gN4GxGNHqNzVF3X+RN81KihQ+vyYEAOTB1hJOySHe/Qw3BpSUoh+Ny6YvuAt9ALQLc9QLFdnAi4dKA==", + "requires": { + "@vaadin/custom-field": "23.2.3" + } + }, + "@vaadin/vaadin-date-picker": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-date-picker/-/vaadin-date-picker-23.2.3.tgz", + "integrity": "sha512-0DcGGbz1ND4AcMy4yfvAQdIDwH8wiI3ODYtWDlgaFcvyxFlnEyKjmJXFWy4ge+kZqrsUy5DylzR5O/cDkYVSyw==", + "requires": { + "@vaadin/date-picker": "23.2.3" + } + }, + "@vaadin/vaadin-date-time-picker": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-date-time-picker/-/vaadin-date-time-picker-23.2.3.tgz", + "integrity": "sha512-0u/5loy6xvZaLrWEv9OsKnKmQKGQ79Ae+eI4A/+Oa4olqodTCzfRLVWbO96Ul3h972dFs3qaKZL5TkRS55LQ8g==", + "requires": { + "@vaadin/date-time-picker": "23.2.3" + } + }, + "@vaadin/vaadin-details": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-details/-/vaadin-details-23.2.3.tgz", + "integrity": "sha512-j5ySG1NWWLmMmd6ic/v0AH56Ms0P3sEeNaM1vMpN0oWgBnX3BHXllWRDvsqCrYXIYsYcgBCQZiGQwm+im77Pgw==", + "requires": { + "@vaadin/details": "23.2.3" + } + }, + "@vaadin/vaadin-development-mode-detector": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-development-mode-detector/-/vaadin-development-mode-detector-2.0.5.tgz", + "integrity": "sha512-miirBQw10UHjKwRv29iZniXCo41cLg3wFotoyTeUZ2PTGIDk/fZVFr4Q4WVKZrp3D15878vz94nNQROSmPLjdg==" + }, + "@vaadin/vaadin-dialog": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-dialog/-/vaadin-dialog-23.2.3.tgz", + "integrity": "sha512-lGEYvLLnbYUZsJilvuFxZ8qFyDgg8KKxaQu+D7vO3gLAqPoL9q9Onbu+bMEfyxMauoTMGKaD4V7AcePIL4uS9A==", + "requires": { + "@vaadin/dialog": "23.2.3" + } + }, + "@vaadin/vaadin-form-layout": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-form-layout/-/vaadin-form-layout-23.2.3.tgz", + "integrity": "sha512-7aD4y9MjFlon2Pelk5CRRLloqEkFVe12OQ/Tq2QuqJbIC5JC+JzHadmRndKvplJV3Gq9bZpPgzT3rdY0KluCBw==", + "requires": { + "@vaadin/form-layout": "23.2.3" + } + }, + "@vaadin/vaadin-grid": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-grid/-/vaadin-grid-23.2.3.tgz", + "integrity": "sha512-mTCblRkN+FGKEt4vNDdXqv2Xa3E7AXA9sNSlUglK7PZXCG9K9ei2ZFzLu1QsKVVVyx7a+EdYUVDCB33SAhMwqg==", + "requires": { + "@vaadin/grid": "23.2.3" + } + }, + "@vaadin/vaadin-grid-pro": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-grid-pro/-/vaadin-grid-pro-23.2.3.tgz", + "integrity": "sha512-az8defrs3QikypTw4yAud8xGnZKNt/9gxnyjzlBuAwxndfIQZvt05v1l628AORoVJiPYS2fj2ir7B8LYAngULg==", + "requires": { + "@vaadin/grid-pro": "23.2.3" + } + }, + "@vaadin/vaadin-icon": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-icon/-/vaadin-icon-23.2.3.tgz", + "integrity": "sha512-R85jNRamKBP8g98eByHmU7MpwiFvHLwpSlFhPUKGMS4BoWDbSkq9GKnD987vt3ZOzqZtZce2n81kjmLk+6hVcg==", + "requires": { + "@vaadin/icon": "23.2.3" + } + }, + "@vaadin/vaadin-icons": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-icons/-/vaadin-icons-23.2.3.tgz", + "integrity": "sha512-IxX3bIC8RBe/9+EbtdUPq8fbmkQeILPXxdDyNqa+Xru5jEHh+DfpLuzxwVS8xMJzwYZ9gurt9JdGA3dsG9rZkA==", + "requires": { + "@vaadin/icons": "23.2.3" + } + }, + "@vaadin/vaadin-item": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-item/-/vaadin-item-23.2.3.tgz", + "integrity": "sha512-2YEdo/5dwJqnHTHMs0UtW7A6K7/1RXR1uwUaTx+/u/E9q6qpN//gu/IqAnjOnrpGSqdjVp92h16RIH0a6jiGTw==", + "requires": { + "@vaadin/item": "23.2.3" + } + }, + "@vaadin/vaadin-list-box": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-list-box/-/vaadin-list-box-23.2.3.tgz", + "integrity": "sha512-UGx2JslBjl4UzNiooVy8yAjlnUcHL/h6xQoEUjW0ippDR4rUxfY3ti0uSeArZahce6X1/yL0YCdvH38VaSyTOw==", + "requires": { + "@vaadin/list-box": "23.2.3" + } + }, + "@vaadin/vaadin-list-mixin": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-list-mixin/-/vaadin-list-mixin-23.2.3.tgz", + "integrity": "sha512-UZxuHKpx8CbC6EJMpxPhgCj1jwnngGMlaHXkcNBRnhk0PjJ72xajrB3pPKv+61bpJDI6hZnEgqhg6KpLBrFkow==", + "requires": { + "@open-wc/dedupe-mixin": "^1.3.0", + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3" + } + }, + "@vaadin/vaadin-login": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-login/-/vaadin-login-23.2.3.tgz", + "integrity": "sha512-fU88vIrzT6/07c6jYija9ef/npYmSG+N/OEcQqX2b6k9By+56d2OPO3HXFdLrkFrSfps3wRXm/3HHgKjAa3zqA==", + "requires": { + "@vaadin/login": "23.2.3" + } + }, + "@vaadin/vaadin-lumo-styles": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-lumo-styles/-/vaadin-lumo-styles-23.2.3.tgz", + "integrity": "sha512-p0WYFnwLbmtHC71pnA5aBlF9ZQHcBXhP7ACBq/JiQEd/k0iHGSt3tl5HpXU3eaWoh4acmIqfAm6rOTnHxTSYfg==", + "requires": { + "@polymer/iron-icon": "3.0.1", + "@polymer/iron-iconset-svg": "3.0.1", + "@polymer/polymer": "3.5.1", + "@vaadin/icon": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/vaadin-material-styles": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-material-styles/-/vaadin-material-styles-23.2.3.tgz", + "integrity": "sha512-I9EMFci2eJvBKaVLkrQ+eBxscjR0hzTMRvVwfzWXxwTvXwzG2DF+NY7yWPLydXdswFcNM2lGm+3b+Tf/lrSBHw==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/vaadin-menu-bar": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-menu-bar/-/vaadin-menu-bar-23.2.3.tgz", + "integrity": "sha512-bvKJLYmoes+KKy9FmkKzmiT3ahPH8Ox4z05Hanz56lRzYPulbGz/a2dRO8O0pGr82yHXHFNUyPAyTobpwBvQTg==", + "requires": { + "@vaadin/menu-bar": "23.2.3" + } + }, + "@vaadin/vaadin-messages": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-messages/-/vaadin-messages-23.2.3.tgz", + "integrity": "sha512-k2KmNMhD27DPpvTaiuL0cKuxEh1xu56OOKSgvpYl0xacuxFnmIDavGmUsgXj5lrTq3MEq59dcMH/jMN65Y3VAQ==", + "requires": { + "@vaadin/message-input": "23.2.3", + "@vaadin/message-list": "23.2.3" + } + }, + "@vaadin/vaadin-notification": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-notification/-/vaadin-notification-23.2.3.tgz", + "integrity": "sha512-ofR1FZacv4MolpEERFuG/TVDbVUsDle6ZcQj2x2Z5+QKxcHKPv6809l2TNZb9XMVUv6z6dHf36e9bmOG+oXIZg==", + "requires": { + "@vaadin/notification": "23.2.3" + } + }, + "@vaadin/vaadin-ordered-layout": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-ordered-layout/-/vaadin-ordered-layout-23.2.3.tgz", + "integrity": "sha512-WDBswS6HRcy/kmNOLfa1HnQIgr1XRvKKJOGQSql6U9ZtNRS7Dpzp+4ZJT/8UX7gkI6dXiIKmj6iAI942V+v3+g==", + "requires": { + "@vaadin/horizontal-layout": "23.2.3", + "@vaadin/scroller": "23.2.3", + "@vaadin/vertical-layout": "23.2.3" + } + }, + "@vaadin/vaadin-overlay": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-overlay/-/vaadin-overlay-23.2.3.tgz", + "integrity": "sha512-SGb5NEHlAvXnRG1l6ncF+1JXcZE7Fis6ncZFMWfUKz79xkU2CbtaWAEL9lB2hnvbRh2n5djserPuKk43QBjwuQ==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/vaadin-progress-bar": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-progress-bar/-/vaadin-progress-bar-23.2.3.tgz", + "integrity": "sha512-12aEUbANAF2TKgaKNhxeuwFD+tG+lATVqGFKo5XvLtqkp4CTQjGnAVB12R16MeMe6V6jOuT0/XoM28ZLZkhxIA==", + "requires": { + "@vaadin/progress-bar": "23.2.3" + } + }, + "@vaadin/vaadin-radio-button": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-radio-button/-/vaadin-radio-button-23.2.3.tgz", + "integrity": "sha512-wyM37uph74AXEs2prBFJdrpuMCsrR9K7jPoKvHTYoIupyn08rXThm1M9/fWy44cIU74YsN0dFJ8m9KgBi8UmcQ==", + "requires": { + "@vaadin/radio-group": "23.2.3" + } + }, + "@vaadin/vaadin-rich-text-editor": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-rich-text-editor/-/vaadin-rich-text-editor-23.2.3.tgz", + "integrity": "sha512-hEibqp3UNdsMcsApR2kTomcaQxyB/GaDNLfEDYE0s1FLgL90IPH06lMnQGaALrQvaxd3BuulYi+cgMDRb6QOLg==", + "requires": { + "@vaadin/rich-text-editor": "23.2.3" + } + }, + "@vaadin/vaadin-select": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-select/-/vaadin-select-23.2.3.tgz", + "integrity": "sha512-JlX5NzTOqyOaa4Hz2/K6FAVjYFmRFFVw0d+E8/9uLX13ekmMEhgDg72MTJGkoVg4USPTh+Q31tuHelB47fV6mg==", + "requires": { + "@vaadin/select": "23.2.3" + } + }, + "@vaadin/vaadin-split-layout": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-split-layout/-/vaadin-split-layout-23.2.3.tgz", + "integrity": "sha512-kIbGVJoLrXnR633OMgNBvNSfqJTT4BXGN0+hYl4wn6MByc/mdgmgh4Bhadwt5cOZlKDPLep7yihIuCXKinWS8w==", + "requires": { + "@vaadin/split-layout": "23.2.3" + } + }, + "@vaadin/vaadin-tabs": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-tabs/-/vaadin-tabs-23.2.3.tgz", + "integrity": "sha512-6ChjCg7gd8pAX9FTd31vNIkWFoI78Gw2KpQLZLMKPfQEwcH8aqODVsMQTz8aC90I5rrXAhF8I0MLN1KYRpTDew==", + "requires": { + "@vaadin/tabs": "23.2.3" + } + }, + "@vaadin/vaadin-template-renderer": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-template-renderer/-/vaadin-template-renderer-23.2.3.tgz", + "integrity": "sha512-mRFj/vniD5AUtWC2mwldV9XLJDJDVN0b1VXzJj2mZ3qnJoCR/IUrWF6CXu/sfLJ/CToxVA5UzsCMFYYWPIlaAg==", + "requires": { + "@vaadin/polymer-legacy-adapter": "23.2.3" + } + }, + "@vaadin/vaadin-text-field": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-text-field/-/vaadin-text-field-23.2.3.tgz", + "integrity": "sha512-hCwEpY66U1fzgbUNjGqRa8mOHGd53MhWrkYTK7iMq65XSMB2nE2m3YPBPo1ypjUhPpmmlIk1CsY2W8U9MEuQDA==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/email-field": "23.2.3", + "@vaadin/integer-field": "23.2.3", + "@vaadin/number-field": "23.2.3", + "@vaadin/password-field": "23.2.3", + "@vaadin/text-area": "23.2.3", + "@vaadin/text-field": "23.2.3" + } + }, + "@vaadin/vaadin-themable-mixin": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-themable-mixin/-/vaadin-themable-mixin-23.2.3.tgz", + "integrity": "sha512-MyCM4TWkl/FVyWmwLk/3+GbgWYLRO/C1nOaV5aaZssZU4oNRhvW0xIwyzGztF1Tzi7vMCC/Uj/KT00YxzTDqQA==", + "requires": { + "@open-wc/dedupe-mixin": "^1.3.0", + "lit": "2.3.0" + } + }, + "@vaadin/vaadin-time-picker": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-time-picker/-/vaadin-time-picker-23.2.3.tgz", + "integrity": "sha512-XtVMMgCEu4OwxIMxxD0qSQk8eD6G6SEzPJuRZm7YSCN8Bbm+L72oHlNm2WOq9S+RcToKMx5SBlCwOf6yITwhQw==", + "requires": { + "@vaadin/time-picker": "23.2.3" + } + }, + "@vaadin/vaadin-upload": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-upload/-/vaadin-upload-23.2.3.tgz", + "integrity": "sha512-pLqr3SyykLxA+gkfvRMclGU1yNvrb7SanxQIAwTC5ZAPU2XjbOfxCyhv8BxShbIB2Yz+OgbmWkCG2ndL+k8OZA==", + "requires": { + "@vaadin/upload": "23.2.3" + } + }, + "@vaadin/vaadin-usage-statistics": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-usage-statistics/-/vaadin-usage-statistics-2.1.2.tgz", + "integrity": "sha512-xKs1PvRfTXsG0eWWcImLXWjv7D+f1vfoIvovppv6pZ5QX8xgcxWUdNgERlOOdGt3CTuxQXukTBW3+Qfva+OXSg==", + "requires": { + "@vaadin/vaadin-development-mode-detector": "2.0.5" + } + }, + "@vaadin/vaadin-virtual-list": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vaadin-virtual-list/-/vaadin-virtual-list-23.2.3.tgz", + "integrity": "sha512-C8MxGWdBO36InA27ScErkSJxyA4Ksz3ceYw75OzEgxPKy43v5ArfXEWyjF/FfXbphhCIhy5yBkHAj2OT/rM/ng==", + "requires": { + "@vaadin/virtual-list": "23.2.3" + } + }, + "@vaadin/vertical-layout": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/vertical-layout/-/vertical-layout-23.2.3.tgz", + "integrity": "sha512-sJTCtIBYsm/oNVGK4pFjYpy7dofJ++y/BmoVaYHk+LM73AlqkIEtUf/VtcAvOGDFzSFS7iUb1XHB16m/vmZcqw==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@vaadin/virtual-list": { + "version": "23.2.3", + "resolved": "https://registry.npmjs.org/@vaadin/virtual-list/-/virtual-list-23.2.3.tgz", + "integrity": "sha512-q10DhvjGf5zIRftPVkFz5q6a+MKyIQvkPeWRPH83KDuLkEN/YvkG3K7ijpCL8u31Uc4S7uciAQAtTULR8ByWgQ==", + "requires": { + "@polymer/polymer": "3.5.1", + "@vaadin/component-base": "23.2.3", + "@vaadin/lit-renderer": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3" + } + }, + "@webcomponents/shadycss": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webcomponents/shadycss/-/shadycss-1.11.0.tgz", + "integrity": "sha512-L5O/+UPum8erOleNjKq6k58GVl3fNsEQdSOyh0EUhNmi7tHUyRuCJy1uqJiWydWcLARE5IPsMoPYMZmUGrz1JA==" + }, + "acorn-node": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz", + "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", + "dev": true, + "requires": { + "acorn": "^7.0.0", + "acorn-walk": "^7.0.0", + "xtend": "^4.0.2" + }, + "dependencies": { + "acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true + } + } + }, + "acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "dev": true + }, + "ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "requires": { + "type-fest": "^0.21.3" + }, + "dependencies": { + "type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true + } + } + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", + "dev": true + }, + "anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dev": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "async": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.2.tgz", + "integrity": "sha512-H0E+qZaDEfx/FY4t7iLRv1W2fFI6+pyCeTw1uN20AQPiwqwM6ojPxHxdLv4z8hi2DtnW9BOckSspLucW7pIE5g==", + "dev": true + }, + "at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "dev": true + }, + "babel-plugin-dynamic-import-node": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", + "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "dev": true, + "requires": { + "object.assign": "^4.1.0" + } + }, + "babel-plugin-polyfill-corejs2": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.1.tgz", + "integrity": "sha512-v7/T6EQcNfVLfcN2X8Lulb7DjprieyLWJK/zOWH5DUYcAgex9sP3h25Q+DLsX9TloXe3y1O8l2q2Jv9q8UVB9w==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.13.11", + "@babel/helper-define-polyfill-provider": "^0.3.1", + "semver": "^6.1.1" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "babel-plugin-polyfill-corejs3": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.2.tgz", + "integrity": "sha512-G3uJih0XWiID451fpeFaYGVuxHEjzKTHtc9uGFEjR6hHrvNzeS/PX+LLLcetJcytsB5m4j+K3o/EpXJNb/5IEQ==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.3.1", + "core-js-compat": "^3.21.0" + } + }, + "babel-plugin-polyfill-regenerator": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz", + "integrity": "sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.3.1" + } + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "browser-process-hrtime": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz", + "integrity": "sha512-bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw==", + "dev": true + }, + "buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "builtin-modules": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", + "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", + "dev": true + }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "caniuse-lite": { + "version": "1.0.30001359", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001359.tgz", + "integrity": "sha512-Xln/BAsPzEuiVLgJ2/45IaqD9jShtk3Y33anKb4+yLwQzws3+v6odKfpgES/cDEaZMLzSChpIGdbOYtH9MyuHw==", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "requires": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "common-tags": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz", + "integrity": "sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "construct-style-sheets-polyfill": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/construct-style-sheets-polyfill/-/construct-style-sheets-polyfill-3.1.0.tgz", + "integrity": "sha512-HBLKP0chz8BAY6rBdzda11c3wAZeCZ+kIG4weVC2NM3AXzxx09nhe8t0SQNdloAvg5GLuHwq/0SPOOSPvtCcKw==" + }, + "convert-source-map": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", + "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + } + }, + "cookieconsent": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/cookieconsent/-/cookieconsent-3.1.1.tgz", + "integrity": "sha512-v8JWLJcI7Zs9NWrs8hiVldVtm3EBF70TJI231vxn6YToBGj0c9dvdnYwltydkAnrbBMOM/qX1xLFrnTfm5wTag==" + }, + "core-js-compat": { + "version": "3.23.3", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.23.3.tgz", + "integrity": "sha512-WSzUs2h2vvmKsacLHNTdpyOC9k43AEhcGoFlVgCY4L7aw98oSBKtPL6vD0/TqZjRWRQYdDSLkzZIni4Crbbiqw==", + "dev": true, + "requires": { + "browserslist": "^4.21.0", + "semver": "7.0.0" + }, + "dependencies": { + "browserslist": { + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.0.tgz", + "integrity": "sha512-UQxE0DIhRB5z/zDz9iA03BOfxaN2+GQdBYH/2WrSIWEUrnpzTPJbhqt+umq6r3acaPRTW1FNTkrcp0PXgtFkvA==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001358", + "electron-to-chromium": "^1.4.164", + "node-releases": "^2.0.5", + "update-browserslist-db": "^1.0.0" + } + }, + "semver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", + "dev": true + }, + "update-browserslist-db": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.4.tgz", + "integrity": "sha512-jnmO2BEGUjsMOe/Fg9u0oczOe/ppIDZPebzccl1yDWGLFP16Pa1/RM5wEoKYPG2zstNcDuAStejyxsOuKINdGA==", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + } + } + }, + "crypto-random-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", + "dev": true + }, + "csscolorparser": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/csscolorparser/-/csscolorparser-1.0.3.tgz", + "integrity": "sha512-umPSgYwZkdFoUrH5hIq5kf0wPSXiro51nPw0j2K/c83KflkPSTBGMz6NJvMB+07VlL0y7VPo6QJcDjcgKTTm3w==" + }, + "dash-ast": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dash-ast/-/dash-ast-1.0.0.tgz", + "integrity": "sha512-Vy4dx7gquTeMcQR/hDkYLGUnwVil6vk4FOOct+djUnHOUWt+zJPJAaRIXaAFkPXtJjvlY7o3rfRu0/3hpnwoUA==", + "dev": true + }, + "date-fns": { + "version": "2.29.3", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.29.3.tgz", + "integrity": "sha512-dDCnyH2WnnKusqvZZ6+jA1O51Ibt8ZMRNkDZdyAyK4YfbDwa/cEmuztzG5pk6hqlp9aSBPYcjOlktquahGwGeA==" + }, + "deepmerge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "dev": true + }, + "define-properties": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "dev": true, + "requires": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + } + }, + "ejs": { + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.8.tgz", + "integrity": "sha512-/sXZeMlhS0ArkfX2Aw780gJzXSMPnKjtspYZv+f3NiKLlubezAHDU5+9xz6gd3/NhG3txQCo6xlglmTS+oTGEQ==", + "dev": true, + "requires": { + "jake": "^10.8.5" + } + }, + "electron-to-chromium": { + "version": "1.4.170", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.170.tgz", + "integrity": "sha512-rZ8PZLhK4ORPjFqLp9aqC4/S1j4qWFsPPz13xmWdrbBkU/LlxMcok+f+6f8YnQ57MiZwKtOaW15biZZsY5Igvw==", + "dev": true + }, + "es-abstract": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.1.tgz", + "integrity": "sha512-WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.1.1", + "get-symbol-description": "^1.0.0", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "is-callable": "^1.2.4", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.2", + "regexp.prototype.flags": "^1.4.3", + "string.prototype.trimend": "^1.0.5", + "string.prototype.trimstart": "^1.0.5", + "unbox-primitive": "^1.0.2" + } + }, + "es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "esbuild": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.15.7.tgz", + "integrity": "sha512-7V8tzllIbAQV1M4QoE52ImKu8hT/NLGlGXkiDsbEU5PS6K8Mn09ZnYoS+dcmHxOS9CRsV4IRAMdT3I67IyUNXw==", + "dev": true, + "requires": { + "@esbuild/linux-loong64": "0.15.7", + "esbuild-android-64": "0.15.7", + "esbuild-android-arm64": "0.15.7", + "esbuild-darwin-64": "0.15.7", + "esbuild-darwin-arm64": "0.15.7", + "esbuild-freebsd-64": "0.15.7", + "esbuild-freebsd-arm64": "0.15.7", + "esbuild-linux-32": "0.15.7", + "esbuild-linux-64": "0.15.7", + "esbuild-linux-arm": "0.15.7", + "esbuild-linux-arm64": "0.15.7", + "esbuild-linux-mips64le": "0.15.7", + "esbuild-linux-ppc64le": "0.15.7", + "esbuild-linux-riscv64": "0.15.7", + "esbuild-linux-s390x": "0.15.7", + "esbuild-netbsd-64": "0.15.7", + "esbuild-openbsd-64": "0.15.7", + "esbuild-sunos-64": "0.15.7", + "esbuild-windows-32": "0.15.7", + "esbuild-windows-64": "0.15.7", + "esbuild-windows-arm64": "0.15.7" + } + }, + "esbuild-android-64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.15.7.tgz", + "integrity": "sha512-p7rCvdsldhxQr3YHxptf1Jcd86dlhvc3EQmQJaZzzuAxefO9PvcI0GLOa5nCWem1AJ8iMRu9w0r5TG8pHmbi9w==", + "dev": true, + "optional": true + }, + "esbuild-android-arm64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.15.7.tgz", + "integrity": "sha512-L775l9ynJT7rVqRM5vo+9w5g2ysbOCfsdLV4CWanTZ1k/9Jb3IYlQ06VCI1edhcosTYJRECQFJa3eAvkx72eyQ==", + "dev": true, + "optional": true + }, + "esbuild-darwin-64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.15.7.tgz", + "integrity": "sha512-KGPt3r1c9ww009t2xLB6Vk0YyNOXh7hbjZ3EecHoVDxgtbUlYstMPDaReimKe6eOEfyY4hBEEeTvKwPsiH5WZg==", + "dev": true, + "optional": true + }, + "esbuild-darwin-arm64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.15.7.tgz", + "integrity": "sha512-kBIHvtVqbSGajN88lYMnR3aIleH3ABZLLFLxwL2stiuIGAjGlQW741NxVTpUHQXUmPzxi6POqc9npkXa8AcSZQ==", + "dev": true, + "optional": true + }, + "esbuild-freebsd-64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.15.7.tgz", + "integrity": "sha512-hESZB91qDLV5MEwNxzMxPfbjAhOmtfsr9Wnuci7pY6TtEh4UDuevmGmkUIjX/b+e/k4tcNBMf7SRQ2mdNuK/HQ==", + "dev": true, + "optional": true + }, + "esbuild-freebsd-arm64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.15.7.tgz", + "integrity": "sha512-dLFR0ChH5t+b3J8w0fVKGvtwSLWCv7GYT2Y2jFGulF1L5HftQLzVGN+6pi1SivuiVSmTh28FwUhi9PwQicXI6Q==", + "dev": true, + "optional": true + }, + "esbuild-linux-32": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.15.7.tgz", + "integrity": "sha512-v3gT/LsONGUZcjbt2swrMjwxo32NJzk+7sAgtxhGx1+ZmOFaTRXBAi1PPfgpeo/J//Un2jIKm/I+qqeo4caJvg==", + "dev": true, + "optional": true + }, + "esbuild-linux-64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.15.7.tgz", + "integrity": "sha512-LxXEfLAKwOVmm1yecpMmWERBshl+Kv5YJ/1KnyAr6HRHFW8cxOEsEfisD3sVl/RvHyW//lhYUVSuy9jGEfIRAQ==", + "dev": true, + "optional": true + }, + "esbuild-linux-arm": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.15.7.tgz", + "integrity": "sha512-JKgAHtMR5f75wJTeuNQbyznZZa+pjiUHV7sRZp42UNdyXC6TiUYMW/8z8yIBAr2Fpad8hM1royZKQisqPABPvQ==", + "dev": true, + "optional": true + }, + "esbuild-linux-arm64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.15.7.tgz", + "integrity": "sha512-P3cfhudpzWDkglutWgXcT2S7Ft7o2e3YDMrP1n0z2dlbUZghUkKCyaWw0zhp4KxEEzt/E7lmrtRu/pGWnwb9vw==", + "dev": true, + "optional": true + }, + "esbuild-linux-mips64le": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.15.7.tgz", + "integrity": "sha512-T7XKuxl0VpeFLCJXub6U+iybiqh0kM/bWOTb4qcPyDDwNVhLUiPcGdG2/0S7F93czUZOKP57YiLV8YQewgLHKw==", + "dev": true, + "optional": true + }, + "esbuild-linux-ppc64le": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.15.7.tgz", + "integrity": "sha512-6mGuC19WpFN7NYbecMIJjeQgvDb5aMuvyk0PDYBJrqAEMkTwg3Z98kEKuCm6THHRnrgsdr7bp4SruSAxEM4eJw==", + "dev": true, + "optional": true + }, + "esbuild-linux-riscv64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.15.7.tgz", + "integrity": "sha512-uUJsezbswAYo/X7OU/P+PuL/EI9WzxsEQXDekfwpQ23uGiooxqoLFAPmXPcRAt941vjlY9jtITEEikWMBr+F/g==", + "dev": true, + "optional": true + }, + "esbuild-linux-s390x": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.15.7.tgz", + "integrity": "sha512-+tO+xOyTNMc34rXlSxK7aCwJgvQyffqEM5MMdNDEeMU3ss0S6wKvbBOQfgd5jRPblfwJ6b+bKiz0g5nABpY0QQ==", + "dev": true, + "optional": true + }, + "esbuild-netbsd-64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.15.7.tgz", + "integrity": "sha512-yVc4Wz+Pu3cP5hzm5kIygNPrjar/v5WCSoRmIjCPWfBVJkZNb5brEGKUlf+0Y759D48BCWa0WHrWXaNy0DULTQ==", + "dev": true, + "optional": true + }, + "esbuild-openbsd-64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.15.7.tgz", + "integrity": "sha512-GsimbwC4FSR4lN3wf8XmTQ+r8/0YSQo21rWDL0XFFhLHKlzEA4SsT1Tl8bPYu00IU6UWSJ+b3fG/8SB69rcuEQ==", + "dev": true, + "optional": true + }, + "esbuild-sunos-64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.15.7.tgz", + "integrity": "sha512-8CDI1aL/ts0mDGbWzjEOGKXnU7p3rDzggHSBtVryQzkSOsjCHRVe0iFYUuhczlxU1R3LN/E7HgUO4NXzGGP/Ag==", + "dev": true, + "optional": true + }, + "esbuild-windows-32": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.15.7.tgz", + "integrity": "sha512-cOnKXUEPS8EGCzRSFa1x6NQjGhGsFlVgjhqGEbLTPsA7x4RRYiy2RKoArNUU4iR2vHmzqS5Gr84MEumO/wxYKA==", + "dev": true, + "optional": true + }, + "esbuild-windows-64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.15.7.tgz", + "integrity": "sha512-7MI08Ec2sTIDv+zH6StNBKO+2hGUYIT42GmFyW6MBBWWtJhTcQLinKS6ldIN1d52MXIbiJ6nXyCJ+LpL4jBm3Q==", + "dev": true, + "optional": true + }, + "esbuild-windows-arm64": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.15.7.tgz", + "integrity": "sha512-R06nmqBlWjKHddhRJYlqDd3Fabx9LFdKcjoOy08YLimwmsswlFBJV4rXzZCxz/b7ZJXvrZgj8DDv1ewE9+StMw==", + "dev": true, + "optional": true + }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true + }, + "estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "fast-glob": { + "version": "3.2.11", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz", + "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "dependencies": { + "micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "requires": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + } + } + } + }, + "fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "fastq": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", + "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", + "dev": true, + "requires": { + "reusify": "^1.0.4" + } + }, + "filelist": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", + "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", + "dev": true, + "requires": { + "minimatch": "^5.0.1" + }, + "dependencies": { + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0" + } + }, + "minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "dev": true, + "requires": { + "brace-expansion": "^2.0.1" + } + } + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "requires": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "optional": true + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "function.prototype.name": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", + "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + } + }, + "functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true + }, + "gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true + }, + "geotiff": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/geotiff/-/geotiff-2.0.5.tgz", + "integrity": "sha512-U5kVYm118YAmw2swiLu8rhfrYnDKOFI7VaMjuQwcq6Intuuid9Pyb4jjxYUxxkq8kOu2r7Am0Rmb52PObGp4pQ==", + "requires": { + "@petamoriken/float16": "^3.4.7", + "lerc": "^3.0.0", + "pako": "^2.0.4", + "parse-headers": "^2.0.2", + "quick-lru": "^6.1.0", + "web-worker": "^1.2.0", + "xml-utils": "^1.0.2" + } + }, + "get-intrinsic": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz", + "integrity": "sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + } + }, + "get-own-enumerable-property-symbols": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", + "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==", + "dev": true + }, + "get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + } + }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + }, + "graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", + "dev": true + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true + }, + "has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dev": true, + "requires": { + "get-intrinsic": "^1.1.1" + } + }, + "has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true + }, + "has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dev": true, + "requires": { + "has-symbols": "^1.0.2" + } + }, + "highcharts": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/highcharts/-/highcharts-9.2.2.tgz", + "integrity": "sha512-OMEdFCaG626ES1JEcKAvJTpxAOMuchy0XuAplmnOs0Yu7NMd2RMfTLFQ2fCJOxo3ubSdm/RVQwKAWC+5HYThnw==" + }, + "idb": { + "version": "6.1.5", + "resolved": "https://registry.npmjs.org/idb/-/idb-6.1.5.tgz", + "integrity": "sha512-IJtugpKkiVXQn5Y+LteyBCNk1N8xpGV3wWZk9EVtZWH8DYkjBn0bX1XnGP9RkyZF0sAcywa6unHqSWKe7q4LGw==", + "dev": true + }, + "ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "internal-slot": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "dev": true, + "requires": { + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + } + }, + "is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "requires": { + "has-bigints": "^1.0.1" + } + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-callable": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", + "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", + "dev": true + }, + "is-core-module": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", + "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", + "dev": true, + "requires": { + "has": "^1.0.3" + } + }, + "is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true + }, + "is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==", + "dev": true + }, + "is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==", + "dev": true + }, + "is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", + "integrity": "sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==", + "dev": true + }, + "is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2" + } + }, + "is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true + }, + "is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dev": true, + "requires": { + "has-symbols": "^1.0.2" + } + }, + "is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2" + } + }, + "jake": { + "version": "10.8.5", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.8.5.tgz", + "integrity": "sha512-sVpxYeuAhWt0OTWITwT98oyV0GsXyMlXCF+3L1SuafBVUIr/uILGRB+NqwkzhgXKvoJpDIpQvqkUALgdmQsQxw==", + "dev": true, + "requires": { + "async": "^3.2.3", + "chalk": "^4.0.2", + "filelist": "^1.0.1", + "minimatch": "^3.0.4" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "async": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", + "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", + "dev": true + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "jest-worker": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", + "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^7.0.0" + }, + "dependencies": { + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "json-schema": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", + "dev": true + }, + "json-stringify-pretty-compact": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/json-stringify-pretty-compact/-/json-stringify-pretty-compact-2.0.0.tgz", + "integrity": "sha512-WRitRfs6BGq4q8gTgOy4ek7iPFXjbra0H3PmDLKm2xnZ+Gh1HUhiKGgCZkSPNULlP7mvfu6FV/mOLhCarspADQ==" + }, + "json5": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", + "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", + "dev": true + }, + "jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "jsonpointer": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-5.0.0.tgz", + "integrity": "sha512-PNYZIdMjVIvVgDSYKTT63Y+KZ6IZvGRNNWcxwD+GNnUz1MKPfv30J8ueCjdwcN0nDx2SlshgyB7Oy0epAzVRRg==", + "dev": true + }, + "lerc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lerc/-/lerc-3.0.0.tgz", + "integrity": "sha512-Rm4J/WaHhRa93nCN2mwWDZFoRVF18G1f47C+kvQWyHGEZxFpTUi73p7lMVSAndyxGt6lJ2/CFbOcf9ra5p8aww==" + }, + "leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true + }, + "lit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/lit/-/lit-2.3.0.tgz", + "integrity": "sha512-ynSGsUYKSGN2weFQ1F3SZq0Ihlj+vr/3KAET//Yf8Tz86L7lZizlw9Px+ab5iN8Si4RkVoLqd9YtKQmjdyKHNg==", + "requires": { + "@lit/reactive-element": "^1.4.0", + "lit-element": "^3.2.0", + "lit-html": "^2.3.0" + } + }, + "lit-element": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-3.2.2.tgz", + "integrity": "sha512-6ZgxBR9KNroqKb6+htkyBwD90XGRiqKDHVrW/Eh0EZ+l+iC+u+v+w3/BA5NGi4nizAVHGYvQBHUDuSmLjPp7NQ==", + "requires": { + "@lit/reactive-element": "^1.3.0", + "lit-html": "^2.2.0" + } + }, + "lit-html": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-2.3.1.tgz", + "integrity": "sha512-FyKH6LTW6aBdkfNhNSHyZTnLgJSTe5hMk7HFtc/+DcN1w74C215q8B+Cfxc2OuIEpBNcEKxgF64qL8as30FDHA==", + "requires": { + "@types/trusted-types": "^2.0.2" + } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true + }, + "lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q==", + "dev": true + }, + "lodash.sortby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", + "integrity": "sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==", + "dev": true + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "magic-string": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", + "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", + "dev": true, + "requires": { + "sourcemap-codec": "^1.4.8" + } + }, + "mapbox-to-css-font": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/mapbox-to-css-font/-/mapbox-to-css-font-2.4.1.tgz", + "integrity": "sha512-QQ/iKiM43DM9+aujTL45Iz5o7gDeSFmy4LPl3HZmNcwCE++NxGazf+yFpY+wCb+YS23sDa1ghpo3zrNFOcHlow==" + }, + "merge-source-map": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.0.4.tgz", + "integrity": "sha512-PGSmS0kfnTnMJCzJ16BLLCEe6oeYCamKFFdQKshi4BmM6FUwipjVOcBFGxqtQtirtAG4iZvHlqST9CpZKqlRjA==", + "dev": true, + "requires": { + "source-map": "^0.5.6" + } + }, + "merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true + }, + "mgrs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/mgrs/-/mgrs-1.0.0.tgz", + "integrity": "sha512-awNbTOqCxK1DBGjalK3xqWIstBZgN6fxsMSiXLs9/spqWkF2pAhb2rrYCFSsr1/tT7PhcDGjZndG8SWYn0byYA==" + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + }, + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true + }, + "mutexify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/mutexify/-/mutexify-1.4.0.tgz", + "integrity": "sha512-pbYSsOrSB/AKN5h/WzzLRMFgZhClWccf2XIB4RSMC8JbquiB0e0/SH5AIfdQMdyHmYtv4seU7yV/TvAwPLJ1Yg==", + "dev": true, + "requires": { + "queue-tick": "^1.0.0" + } + }, + "nanobench": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nanobench/-/nanobench-2.1.1.tgz", + "integrity": "sha512-z+Vv7zElcjN+OpzAxAquUayFLGK3JI/ubCl0Oh64YQqsTGG09CGqieJVQw4ui8huDnnAgrvTv93qi5UaOoNj8A==", + "dev": true, + "requires": { + "browser-process-hrtime": "^0.1.2", + "chalk": "^1.1.3", + "mutexify": "^1.1.0", + "pretty-hrtime": "^1.0.2" + } + }, + "nanoid": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", + "dev": true + }, + "node-releases": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.5.tgz", + "integrity": "sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==", + "dev": true + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "requires": { + "path-key": "^3.0.0" + } + }, + "object-inspect": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", + "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", + "dev": true + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true + }, + "object.assign": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" + } + }, + "ol": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/ol/-/ol-6.13.0.tgz", + "integrity": "sha512-Fa6yt+FArWE9fwYRRhi/8+ULcFDRS2ZuDcLp3R9bQeDVa5T4E4TT9iqLeJhmHG+bzWiLWJHIeFUqw8GD2gW0YA==", + "requires": { + "geotiff": "^2.0.2", + "ol-mapbox-style": "^7.0.0", + "pbf": "3.2.1", + "rbush": "^3.0.1" + } + }, + "ol-mapbox-style": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/ol-mapbox-style/-/ol-mapbox-style-7.1.1.tgz", + "integrity": "sha512-GLTEYiH/Ec9Zn1eS4S/zXyR2sierVrUc+OLVP8Ra0FRyqRhoYbXdko0b7OIeSHWdtJfHssWYefDOGxfTRUUZ/A==", + "requires": { + "@mapbox/mapbox-gl-style-spec": "^13.20.1", + "mapbox-to-css-font": "^2.4.1", + "webfont-matcher": "^1.1.0" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "pako": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pako/-/pako-2.0.4.tgz", + "integrity": "sha512-v8tweI900AUkZN6heMU/4Uy4cXRc2AYNRggVmTR+dEncawDJgCdLMximOVA2p4qO57WMynangsfGRb5WD6L1Bg==" + }, + "parse-headers": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.5.tgz", + "integrity": "sha512-ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1Zau/HwI75HA==" + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true + }, + "path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "path-to-regexp": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.4.0.tgz", + "integrity": "sha512-G6zHoVqC6GGTQkZwF4lkuEyMbVOjoBKAEybQUypI1WTkqinCOrq2x6U2+phkJ1XsEMTy4LjtwPI7HW+NVrRR2w==" + }, + "pbf": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/pbf/-/pbf-3.2.1.tgz", + "integrity": "sha512-ClrV7pNOn7rtmoQVF4TS1vyU0WhYRnP92fzbfF75jAIwpnzdJXf8iTd4CMEqO4yUenH6NDqLiwjqlh6QgZzgLQ==", + "requires": { + "ieee754": "^1.1.12", + "resolve-protobuf-schema": "^2.1.0" + } + }, + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true + }, + "postcss": { + "version": "8.4.16", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.16.tgz", + "integrity": "sha512-ipHE1XBvKzm5xI7hiHCZJCSugxvsdq2mPnsq5+UF+VHCjiBvtDrlxJfMBToWaP9D5XlgNmcFGqoHmUn0EYEaRQ==", + "dev": true, + "requires": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + } + }, + "pretty-bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", + "dev": true + }, + "pretty-hrtime": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", + "integrity": "sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A==", + "dev": true + }, + "proj4": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/proj4/-/proj4-2.8.0.tgz", + "integrity": "sha512-baC+YcD4xsSqJ+CpCZljj2gcQDhlKb+J+Zjv/2KSBwWNjk4M0pafgQsE+mWurd84tflMIsP+7j7mtIpFDHzQfQ==", + "requires": { + "mgrs": "1.0.0", + "wkt-parser": "^1.3.1" + } + }, + "protocol-buffers-schema": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/protocol-buffers-schema/-/protocol-buffers-schema-3.6.0.tgz", + "integrity": "sha512-TdDRD+/QNdrCGCE7v8340QyuXd4kIWIgapsE2+n/SaGiSSbomYl4TjHlvIoCWRpE7wFt02EpB35VVA2ImcBVqw==" + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, + "queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true + }, + "queue-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.0.tgz", + "integrity": "sha512-ULWhjjE8BmiICGn3G8+1L9wFpERNxkf8ysxkAer4+TFdRefDaXOCV5m92aMB9FtBVmn/8sETXLXY6BfW7hyaWQ==", + "dev": true + }, + "quick-lru": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-6.1.1.tgz", + "integrity": "sha512-S27GBT+F0NTRiehtbrgaSE1idUAJ5bX8dPAQTdylEyNlrdcH5X4Lz7Edz3DYzecbsCluD5zO8ZNEe04z3D3u6Q==" + }, + "quickselect": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz", + "integrity": "sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw==" + }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "rbush": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/rbush/-/rbush-3.0.1.tgz", + "integrity": "sha512-XRaVO0YecOpEuIvbhbpTrZgoiI6xBlz6hnlr6EHhd+0x9ase6EmeN+hdwwUaJvLcsFFQ8iWVF1GAK1yB0BWi0w==", + "requires": { + "quickselect": "^2.0.0" + } + }, + "readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "requires": { + "picomatch": "^2.2.1" + } + }, + "regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true + }, + "regenerate-unicode-properties": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.0.1.tgz", + "integrity": "sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw==", + "dev": true, + "requires": { + "regenerate": "^1.4.2" + } + }, + "regexp.prototype.flags": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" + } + }, + "require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true + }, + "resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dev": true, + "requires": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "resolve-protobuf-schema": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/resolve-protobuf-schema/-/resolve-protobuf-schema-2.1.0.tgz", + "integrity": "sha512-kI5ffTiZWmJaS/huM8wZfEMer1eRd7oJQhDuxeCLe3t7N7mX3z94CN0xPxBQxFYQTSNz9T0i+v6inKqSdK8xrQ==", + "requires": { + "protocol-buffers-schema": "^3.3.1" + } + }, + "reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true + }, + "rollup": { + "version": "2.78.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.78.1.tgz", + "integrity": "sha512-VeeCgtGi4P+o9hIg+xz4qQpRl6R401LWEXBmxYKOV4zlF82lyhgh2hTZnheFUbANE8l2A41F458iwj2vEYaXJg==", + "dev": true, + "requires": { + "fsevents": "~2.3.2" + } + }, + "rollup-plugin-brotli": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/rollup-plugin-brotli/-/rollup-plugin-brotli-3.1.0.tgz", + "integrity": "sha512-vXRPVd9B1x+aaXeBdmLKNNsai9AH3o0Qikf4u0m1icKqgi3qVA4UhOfwGaPYoAHML1GLMUnR//PDhiMHXN/M6g==", + "dev": true + }, + "rollup-plugin-terser": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/rollup-plugin-terser/-/rollup-plugin-terser-7.0.2.tgz", + "integrity": "sha512-w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.10.4", + "jest-worker": "^26.2.1", + "serialize-javascript": "^4.0.0", + "terser": "^5.0.0" + } + }, + "run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "requires": { + "queue-microtask": "^1.2.2" + } + }, + "rw": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/rw/-/rw-1.3.3.tgz", + "integrity": "sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==" + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "semver": { + "version": "7.3.7", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "serialize-javascript": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz", + "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", + "dev": true, + "requires": { + "randombytes": "^2.1.0" + } + }, + "side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + } + }, + "sort-asc": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/sort-asc/-/sort-asc-0.1.0.tgz", + "integrity": "sha512-jBgdDd+rQ+HkZF2/OHCmace5dvpos/aWQpcxuyRs9QUbPRnkEJmYVo81PIGpjIdpOcsnJ4rGjStfDHsbn+UVyw==" + }, + "sort-desc": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/sort-desc/-/sort-desc-0.1.1.tgz", + "integrity": "sha512-jfZacW5SKOP97BF5rX5kQfJmRVZP5/adDUTY8fCSPvNcXDVpUEe2pr/iKGlcyZzchRJZrswnp68fgk3qBXgkJw==" + }, + "sort-object": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/sort-object/-/sort-object-0.3.2.tgz", + "integrity": "sha512-aAQiEdqFTTdsvUFxXm3umdo04J7MRljoVGbBlkH7BgNsMvVNAJyGj7C/wV1A8wHWAJj/YikeZbfuCKqhggNWGA==", + "requires": { + "sort-asc": "^0.1.0", + "sort-desc": "^0.1.1" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "dev": true + }, + "source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "dev": true + }, + "sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "dev": true + }, + "string.prototype.matchall": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.7.tgz", + "integrity": "sha512-f48okCX7JiwVi1NXCVWcFnZgADDC/n2vePlQ/KUCNqCikLLilQvwjMO8+BHVKvgzH0JB0J9LEPgxOGT02RoETg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.1", + "get-intrinsic": "^1.1.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "regexp.prototype.flags": "^1.4.1", + "side-channel": "^1.0.4" + } + }, + "string.prototype.trimend": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz", + "integrity": "sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5" + } + }, + "string.prototype.trimstart": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz", + "integrity": "sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5" + } + }, + "stringify-object": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", + "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", + "dev": true, + "requires": { + "get-own-enumerable-property-symbols": "^3.0.0", + "is-obj": "^1.0.1", + "is-regexp": "^1.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-comments/-/strip-comments-2.0.1.tgz", + "integrity": "sha512-ZprKx+bBLXv067WTCALv8SSz5l2+XhpYCsVtSqlMnkAXMWDq+/ekVbl1ghqP9rUHTzv6sm/DwCOiYutU/yp1fw==", + "dev": true + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", + "dev": true + }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true + }, + "temp-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", + "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", + "dev": true + }, + "tempy": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tempy/-/tempy-0.6.0.tgz", + "integrity": "sha512-G13vtMYPT/J8A4X2SjdtBTphZlrp1gKv6hZiOjw14RCWg6GbHuQBGtjlx75xLbYV/wEc0D7G5K4rxKP/cXk8Bw==", + "dev": true, + "requires": { + "is-stream": "^2.0.0", + "temp-dir": "^2.0.0", + "type-fest": "^0.16.0", + "unique-string": "^2.0.0" + } + }, + "terser": { + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.15.0.tgz", + "integrity": "sha512-L1BJiXVmheAQQy+as0oF3Pwtlo4s3Wi1X2zNZ2NxOB4wx9bdS9Vk67XQENLFdLYGCK/Z2di53mTj/hBafR+dTA==", + "dev": true, + "requires": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "dependencies": { + "acorn": { + "version": "8.8.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", + "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==", + "dev": true + }, + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + } + } + }, + "tiny-invariant": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.2.0.tgz", + "integrity": "sha512-1Uhn/aqw5C6RI4KejVeTg6mIS7IqxnLJ8Mv2tV5rTc0qWobay7pDUz6Wi392Cnc8ak1H0F2cjoRzb2/AW4+Fvg==", + "dev": true + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + }, + "tr46": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", + "integrity": "sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "transform-ast": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/transform-ast/-/transform-ast-2.4.4.tgz", + "integrity": "sha512-AxjeZAcIOUO2lev2GDe3/xZ1Q0cVGjIMk5IsriTy8zbWlsEnjeB025AhkhBJHoy997mXpLd4R+kRbvnnQVuQHQ==", + "dev": true, + "requires": { + "acorn-node": "^1.3.0", + "convert-source-map": "^1.5.1", + "dash-ast": "^1.0.0", + "is-buffer": "^2.0.0", + "magic-string": "^0.23.2", + "merge-source-map": "1.0.4", + "nanobench": "^2.1.1" + }, + "dependencies": { + "is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "dev": true + }, + "magic-string": { + "version": "0.23.2", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.23.2.tgz", + "integrity": "sha512-oIUZaAxbcxYIp4AyLafV6OVKoB3YouZs0UTCJ8mOKBHNyJgGDaMJ4TgA+VylJh6fx7EQCC52XkbURxxG9IoJXA==", + "dev": true, + "requires": { + "sourcemap-codec": "^1.4.1" + } + } + } + }, + "tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" + }, + "type-fest": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.16.0.tgz", + "integrity": "sha512-eaBzG6MxNzEn9kiwvtre90cXaNLkmadMWa1zQMs3XORCXNbsH/OewwbxC5ia9dCxIxnTAsSxXJaa/p5y8DlvJg==", + "dev": true + }, + "typescript": { + "version": "4.7.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz", + "integrity": "sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==", + "dev": true + }, + "unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + } + }, + "unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true + }, + "unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "requires": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + } + }, + "unicode-match-property-value-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz", + "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==", + "dev": true + }, + "unicode-property-aliases-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz", + "integrity": "sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==", + "dev": true + }, + "unique-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "dev": true, + "requires": { + "crypto-random-string": "^2.0.0" + } + }, + "universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "dev": true + }, + "upath": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", + "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", + "dev": true + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "vite": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/vite/-/vite-3.1.0.tgz", + "integrity": "sha512-YBg3dUicDpDWFCGttmvMbVyS9ydjntwEjwXRj2KBFwSB8SxmGcudo1yb8FW5+M/G86aS8x828ujnzUVdsLjs9g==", + "dev": true, + "requires": { + "esbuild": "^0.15.6", + "fsevents": "~2.3.2", + "postcss": "^8.4.16", + "resolve": "^1.22.1", + "rollup": "~2.78.0" + } + }, + "vite-plugin-checker": { + "version": "0.4.9", + "resolved": "https://registry.npmjs.org/vite-plugin-checker/-/vite-plugin-checker-0.4.9.tgz", + "integrity": "sha512-Oii9mTum8bqZovWejcR739kCqST32oG6LdB/XMdwcLVzmcjq0gf1iVDIedVzJJ7t6GLQAYgjNwvB0fuMiT3tlg==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "ansi-escapes": "^4.3.0", + "chalk": "^4.1.1", + "chokidar": "^3.5.1", + "commander": "^8.0.0", + "fast-glob": "^3.2.7", + "lodash.debounce": "^4.0.8", + "lodash.pick": "^4.4.0", + "npm-run-path": "^4.0.1", + "strip-ansi": "^6.0.0", + "tiny-invariant": "^1.1.0", + "vscode-languageclient": "^7.0.0", + "vscode-languageserver": "^7.0.0", + "vscode-languageserver-textdocument": "^1.0.1", + "vscode-uri": "^3.0.2" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "vscode-jsonrpc": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-6.0.0.tgz", + "integrity": "sha512-wnJA4BnEjOSyFMvjZdpiOwhSq9uDoK8e/kpRJDTaMYzwlkrhG1fwDIZI94CLsLzlCK5cIbMMtFlJlfR57Lavmg==", + "dev": true + }, + "vscode-languageclient": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/vscode-languageclient/-/vscode-languageclient-7.0.0.tgz", + "integrity": "sha512-P9AXdAPlsCgslpP9pRxYPqkNYV7Xq8300/aZDpO35j1fJm/ncize8iGswzYlcvFw5DQUx4eVk+KvfXdL0rehNg==", + "dev": true, + "requires": { + "minimatch": "^3.0.4", + "semver": "^7.3.4", + "vscode-languageserver-protocol": "3.16.0" + } + }, + "vscode-languageserver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-7.0.0.tgz", + "integrity": "sha512-60HTx5ID+fLRcgdHfmz0LDZAXYEV68fzwG0JWwEPBode9NuMYTIxuYXPg4ngO8i8+Ou0lM7y6GzaYWbiDL0drw==", + "dev": true, + "requires": { + "vscode-languageserver-protocol": "3.16.0" + } + }, + "vscode-languageserver-protocol": { + "version": "3.16.0", + "resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.16.0.tgz", + "integrity": "sha512-sdeUoAawceQdgIfTI+sdcwkiK2KU+2cbEYA0agzM2uqaUy2UpnnGHtWTHVEtS0ES4zHU0eMFRGN+oQgDxlD66A==", + "dev": true, + "requires": { + "vscode-jsonrpc": "6.0.0", + "vscode-languageserver-types": "3.16.0" + } + }, + "vscode-languageserver-textdocument": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.7.tgz", + "integrity": "sha512-bFJH7UQxlXT8kKeyiyu41r22jCZXG8kuuVVA33OEJn1diWOZK5n8zBSPZFHVBOu8kXZ6h0LIRhf5UnCo61J4Hg==", + "dev": true + }, + "vscode-languageserver-types": { + "version": "3.16.0", + "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.16.0.tgz", + "integrity": "sha512-k8luDIWJWyenLc5ToFQQMaSrqCHiLwyKPHKPQZ5zz21vM+vIVUSvsRpcbiECH4WR88K2XZqc4ScRcZ7nk/jbeA==", + "dev": true + }, + "vscode-uri": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.0.3.tgz", + "integrity": "sha512-EcswR2S8bpR7fD0YPeS7r2xXExrScVMxg4MedACaWHEtx9ftCF/qHG1xGkolzTPcEmjTavCQgbVzHUIdTMzFGA==", + "dev": true + }, + "web-worker": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/web-worker/-/web-worker-1.2.0.tgz", + "integrity": "sha512-PgF341avzqyx60neE9DD+XS26MMNMoUQRz9NOZwW32nPQrF6p77f1htcnjBSEV8BGMKZ16choqUG4hyI0Hx7mA==" + }, + "webfont-matcher": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/webfont-matcher/-/webfont-matcher-1.1.0.tgz", + "integrity": "sha512-ov8lMvF9wi4PD7fK2Axn9PQEpO9cYI0fIoGqErwd+wi8xacFFDmX114D5Q2Lw0Wlgmb+Qw/dKI2KTtimrJf85g==" + }, + "webidl-conversions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", + "dev": true + }, + "whatwg-url": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", + "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", + "dev": true, + "requires": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" + } + }, + "which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "requires": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + } + }, + "wkt-parser": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/wkt-parser/-/wkt-parser-1.3.2.tgz", + "integrity": "sha512-A26BOOo7sHAagyxG7iuRhnKMO7Q3mEOiOT4oGUmohtN/Li5wameeU4S6f8vWw6NADTVKljBs8bzA8JPQgSEMVQ==" + }, + "workbox-background-sync": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-background-sync/-/workbox-background-sync-6.5.0.tgz", + "integrity": "sha512-rrekt/gt6qOIZsisj6QZfmAFPAnocq1Z603zAjt+qHmeXY8DLPOklVtvrXSaHoHH3qIjUq3SQY5s2x240iTIKw==", + "dev": true, + "requires": { + "idb": "^6.1.4", + "workbox-core": "6.5.0" + } + }, + "workbox-broadcast-update": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-broadcast-update/-/workbox-broadcast-update-6.5.0.tgz", + "integrity": "sha512-JC97c7tYqoGWcCfbKO9KHG6lkU+WhXCnDB2j1oFWEiv53nUHy3yjPpzMmAGNLD9oV5lInO15n6V18HfwgkhISw==", + "dev": true, + "requires": { + "workbox-core": "6.5.0" + } + }, + "workbox-build": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-build/-/workbox-build-6.5.0.tgz", + "integrity": "sha512-da0/1b6//P9+ts7ofcIKcMVPyN6suJvjJASXokF7DsqvUmgRBPcCVV4KCy8QWjgfcz7mzuTpkSbdVHcPFJ/p0A==", + "dev": true, + "requires": { + "@apideck/better-ajv-errors": "^0.3.1", + "@babel/core": "^7.11.1", + "@babel/preset-env": "^7.11.0", + "@babel/runtime": "^7.11.2", + "@rollup/plugin-babel": "^5.2.0", + "@rollup/plugin-node-resolve": "^11.2.1", + "@rollup/plugin-replace": "^2.4.1", + "@surma/rollup-plugin-off-main-thread": "^2.2.3", + "ajv": "^8.6.0", + "common-tags": "^1.8.0", + "fast-json-stable-stringify": "^2.1.0", + "fs-extra": "^9.0.1", + "glob": "^7.1.6", + "lodash": "^4.17.20", + "pretty-bytes": "^5.3.0", + "rollup": "^2.43.1", + "rollup-plugin-terser": "^7.0.0", + "source-map": "^0.8.0-beta.0", + "stringify-object": "^3.3.0", + "strip-comments": "^2.0.1", + "tempy": "^0.6.0", + "upath": "^1.2.0", + "workbox-background-sync": "6.5.0", + "workbox-broadcast-update": "6.5.0", + "workbox-cacheable-response": "6.5.0", + "workbox-core": "6.5.0", + "workbox-expiration": "6.5.0", + "workbox-google-analytics": "6.5.0", + "workbox-navigation-preload": "6.5.0", + "workbox-precaching": "6.5.0", + "workbox-range-requests": "6.5.0", + "workbox-recipes": "6.5.0", + "workbox-routing": "6.5.0", + "workbox-strategies": "6.5.0", + "workbox-streams": "6.5.0", + "workbox-sw": "6.5.0", + "workbox-window": "6.5.0" + }, + "dependencies": { + "@apideck/better-ajv-errors": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/@apideck/better-ajv-errors/-/better-ajv-errors-0.3.4.tgz", + "integrity": "sha512-Ic2d8ZT6HJiSikGVQvSklaFyw1OUv4g8sDOxa0PXSlbmN/3gL5IO1WYY9DOwTDqOFmjWoqG1yaaKnPDqYCE9KA==", + "dev": true, + "requires": { + "json-schema": "^0.4.0", + "jsonpointer": "^5.0.0", + "leven": "^3.1.0" + } + }, + "@rollup/plugin-replace": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-2.4.2.tgz", + "integrity": "sha512-IGcu+cydlUMZ5En85jxHH4qj2hta/11BHq95iHEyb2sbgiN0eCdzvUcHw5gt9pBL5lTi4JDYJ1acCoMGpTvEZg==", + "dev": true, + "requires": { + "@rollup/pluginutils": "^3.1.0", + "magic-string": "^0.25.7" + } + }, + "@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dev": true, + "requires": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + } + }, + "ajv": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", + "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", + "dev": true + }, + "json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "source-map": { + "version": "0.8.0-beta.0", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.8.0-beta.0.tgz", + "integrity": "sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==", + "dev": true, + "requires": { + "whatwg-url": "^7.0.0" + } + } + } + }, + "workbox-cacheable-response": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-cacheable-response/-/workbox-cacheable-response-6.5.0.tgz", + "integrity": "sha512-sqAtWAiBwWvI8HG/2Do7BeKPhHuUczt22ORkAjkH9DfTq9LuWRFd6T4HAMqX5G8F1gM9XA2UPlxRrEeSpFIz/A==", + "dev": true, + "requires": { + "workbox-core": "6.5.0" + } + }, + "workbox-core": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-core/-/workbox-core-6.5.0.tgz", + "integrity": "sha512-5SPwNipUzYBhrneLVT02JFA0fw3LG82jFAN/G2NzxkIW10t4MVZuML2nU94bbkgjq25u0fkY8+4JXzMfHgxEWQ==", + "dev": true + }, + "workbox-expiration": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-expiration/-/workbox-expiration-6.5.0.tgz", + "integrity": "sha512-y3WRkKRy/gMuZZNkrLFahjY0QZtLoq+QfhTbVAsOGHVg1CCtnNbeFAnEidQs7UisI2BK76VqQPvM7hEOFyZ92A==", + "dev": true, + "requires": { + "idb": "^6.1.4", + "workbox-core": "6.5.0" + } + }, + "workbox-google-analytics": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-google-analytics/-/workbox-google-analytics-6.5.0.tgz", + "integrity": "sha512-CHHh55wMNCc/BV1URrzEM2Zjgf6g2CV6QpAAc1pBRqaLY5755PeQZbp3o8KbJEM7YsC9mIBeQVsOkSKkGS30bg==", + "dev": true, + "requires": { + "workbox-background-sync": "6.5.0", + "workbox-core": "6.5.0", + "workbox-routing": "6.5.0", + "workbox-strategies": "6.5.0" + } + }, + "workbox-navigation-preload": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-navigation-preload/-/workbox-navigation-preload-6.5.0.tgz", + "integrity": "sha512-ktrRQzXJ0zFy0puOtCa49wE3BSBGUB8KRMot3tEieikCkSO0wMLmiCb9GwTVvNMJLl0THRlsdFoI93si04nTxA==", + "dev": true, + "requires": { + "workbox-core": "6.5.0" + } + }, + "workbox-precaching": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-precaching/-/workbox-precaching-6.5.0.tgz", + "integrity": "sha512-IVLzgHx38T6LphJyEOltd7XAvpDi73p85uCT2ZtT1HHg9FAYC49a+5iHUVOnqye73fLW20eiAMFcnehGxz9RWg==", + "dev": true, + "requires": { + "workbox-core": "6.5.0", + "workbox-routing": "6.5.0", + "workbox-strategies": "6.5.0" + } + }, + "workbox-range-requests": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-range-requests/-/workbox-range-requests-6.5.0.tgz", + "integrity": "sha512-+qTELdGZE5rOjuv+ifFrfRDN8Uvzpbm5Fal7qSUqB1V1DLCMxPwHCj6mWwQBRKBpW7G09kAwewH7zA3Asjkf/Q==", + "dev": true, + "requires": { + "workbox-core": "6.5.0" + } + }, + "workbox-recipes": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-recipes/-/workbox-recipes-6.5.0.tgz", + "integrity": "sha512-7hWZAIcXmvr31NwYSWaQIrnThCH/Dx9+eYv/YdkpUeWIXRiHRkYvP1FdiHItbLSjL4Y6K7cy2Y9y5lGCkgaE4w==", + "dev": true, + "requires": { + "workbox-cacheable-response": "6.5.0", + "workbox-core": "6.5.0", + "workbox-expiration": "6.5.0", + "workbox-precaching": "6.5.0", + "workbox-routing": "6.5.0", + "workbox-strategies": "6.5.0" + } + }, + "workbox-routing": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-routing/-/workbox-routing-6.5.0.tgz", + "integrity": "sha512-w1A9OVa/yYStu9ds0Dj+TC6zOAoskKlczf+wZI5mrM9nFCt/KOMQiFp1/41DMFPrrN/8KlZTS3Cel/Ttutw93Q==", + "dev": true, + "requires": { + "workbox-core": "6.5.0" + } + }, + "workbox-strategies": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-strategies/-/workbox-strategies-6.5.0.tgz", + "integrity": "sha512-Ngnwo+tfGw4uKSlTz3h1fYKb/lCV7SDI/dtTb8VaJzRl0N9XssloDGYERBmF6BN/DV/x3bnRsshfobnKI/3z0g==", + "dev": true, + "requires": { + "workbox-core": "6.5.0" + } + }, + "workbox-streams": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-streams/-/workbox-streams-6.5.0.tgz", + "integrity": "sha512-ZbeaZINkju4x45P9DFyRbOYInE+dyNAJIelflz4f9AOAdm+zZUJCooU4MdfsedVhHiTIA6pCD/3jCmW1XbvlbA==", + "dev": true, + "requires": { + "workbox-core": "6.5.0", + "workbox-routing": "6.5.0" + } + }, + "workbox-sw": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-sw/-/workbox-sw-6.5.0.tgz", + "integrity": "sha512-uPGJ9Yost4yabnCko/IuhouquoQKrWOEqLq7L/xVYtltWe4+J8Hw8iPCVtxvXQ26hffd7MaFWUAN83j2ZWbxRg==", + "dev": true + }, + "workbox-window": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workbox-window/-/workbox-window-6.5.0.tgz", + "integrity": "sha512-DOrhiTnWup/CsNstO2uvfdKM4kdStgHd31xGGvBcoCE3Are3DRcy5s3zz3PedcAR1AKskQj3BXz0UhzQiOq8nA==", + "dev": true, + "requires": { + "@types/trusted-types": "^2.0.2", + "workbox-core": "6.5.0" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "xml-utils": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/xml-utils/-/xml-utils-1.3.0.tgz", + "integrity": "sha512-i4PIrX33Wd66dvwo4syicwlwmnr6wuvvn4f2ku9hA67C2Uk62Xubczuhct+Evnd12/DV71qKNeDdJwES8HX1RA==" + }, + "xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..1ec697a --- /dev/null +++ b/package.json @@ -0,0 +1,395 @@ +{ + "name": "no-name", + "license": "UNLICENSED", + "dependencies": { + "@polymer/iron-icon": "3.0.1", + "@polymer/iron-iconset-svg": "3.0.1", + "@polymer/iron-list": "3.1.0", + "@polymer/iron-meta": "3.0.1", + "@polymer/iron-resizable-behavior": "3.0.1", + "@polymer/polymer": "3.5.1", + "@vaadin/accordion": "23.2.3", + "@vaadin/app-layout": "23.2.3", + "@vaadin/avatar": "23.2.3", + "@vaadin/avatar-group": "23.2.3", + "@vaadin/board": "23.2.3", + "@vaadin/bundles": "23.2.3", + "@vaadin/button": "23.2.3", + "@vaadin/charts": "23.2.3", + "@vaadin/checkbox": "23.2.3", + "@vaadin/checkbox-group": "23.2.3", + "@vaadin/combo-box": "23.2.3", + "@vaadin/common-frontend": "0.0.17", + "@vaadin/component-base": "23.2.3", + "@vaadin/confirm-dialog": "23.2.3", + "@vaadin/context-menu": "23.2.3", + "@vaadin/cookie-consent": "23.2.3", + "@vaadin/crud": "23.2.3", + "@vaadin/custom-field": "23.2.3", + "@vaadin/date-picker": "23.2.3", + "@vaadin/date-time-picker": "23.2.3", + "@vaadin/details": "23.2.3", + "@vaadin/dialog": "23.2.3", + "@vaadin/email-field": "23.2.3", + "@vaadin/field-base": "23.2.3", + "@vaadin/field-highlighter": "23.2.3", + "@vaadin/flow-frontend": "./target/flow-frontend", + "@vaadin/form-layout": "23.2.3", + "@vaadin/grid": "23.2.3", + "@vaadin/grid-pro": "23.2.3", + "@vaadin/horizontal-layout": "23.2.3", + "@vaadin/icon": "23.2.3", + "@vaadin/icons": "23.2.3", + "@vaadin/input-container": "23.2.3", + "@vaadin/integer-field": "23.2.3", + "@vaadin/item": "23.2.3", + "@vaadin/list-box": "23.2.3", + "@vaadin/lit-renderer": "23.2.3", + "@vaadin/login": "23.2.3", + "@vaadin/map": "23.2.3", + "@vaadin/menu-bar": "23.2.3", + "@vaadin/message-input": "23.2.3", + "@vaadin/message-list": "23.2.3", + "@vaadin/multi-select-combo-box": "23.2.3", + "@vaadin/notification": "23.2.3", + "@vaadin/number-field": "23.2.3", + "@vaadin/password-field": "23.2.3", + "@vaadin/polymer-legacy-adapter": "23.2.3", + "@vaadin/progress-bar": "23.2.3", + "@vaadin/radio-group": "23.2.3", + "@vaadin/rich-text-editor": "23.2.3", + "@vaadin/router": "1.7.4", + "@vaadin/scroller": "23.2.3", + "@vaadin/select": "23.2.3", + "@vaadin/split-layout": "23.2.3", + "@vaadin/tabs": "23.2.3", + "@vaadin/text-area": "23.2.3", + "@vaadin/text-field": "23.2.3", + "@vaadin/time-picker": "23.2.3", + "@vaadin/upload": "23.2.3", + "@vaadin/vaadin-accordion": "23.2.3", + "@vaadin/vaadin-app-layout": "23.2.3", + "@vaadin/vaadin-avatar": "23.2.3", + "@vaadin/vaadin-board": "23.2.3", + "@vaadin/vaadin-button": "23.2.3", + "@vaadin/vaadin-charts": "23.2.3", + "@vaadin/vaadin-checkbox": "23.2.3", + "@vaadin/vaadin-combo-box": "23.2.3", + "@vaadin/vaadin-confirm-dialog": "23.2.3", + "@vaadin/vaadin-context-menu": "23.2.3", + "@vaadin/vaadin-cookie-consent": "23.2.3", + "@vaadin/vaadin-crud": "23.2.3", + "@vaadin/vaadin-custom-field": "23.2.3", + "@vaadin/vaadin-date-picker": "23.2.3", + "@vaadin/vaadin-date-time-picker": "23.2.3", + "@vaadin/vaadin-details": "23.2.3", + "@vaadin/vaadin-development-mode-detector": "2.0.5", + "@vaadin/vaadin-dialog": "23.2.3", + "@vaadin/vaadin-form-layout": "23.2.3", + "@vaadin/vaadin-grid": "23.2.3", + "@vaadin/vaadin-grid-pro": "23.2.3", + "@vaadin/vaadin-icon": "23.2.3", + "@vaadin/vaadin-icons": "23.2.3", + "@vaadin/vaadin-item": "23.2.3", + "@vaadin/vaadin-list-box": "23.2.3", + "@vaadin/vaadin-list-mixin": "23.2.3", + "@vaadin/vaadin-login": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-menu-bar": "23.2.3", + "@vaadin/vaadin-messages": "23.2.3", + "@vaadin/vaadin-notification": "23.2.3", + "@vaadin/vaadin-ordered-layout": "23.2.3", + "@vaadin/vaadin-overlay": "23.2.3", + "@vaadin/vaadin-progress-bar": "23.2.3", + "@vaadin/vaadin-radio-button": "23.2.3", + "@vaadin/vaadin-rich-text-editor": "23.2.3", + "@vaadin/vaadin-select": "23.2.3", + "@vaadin/vaadin-split-layout": "23.2.3", + "@vaadin/vaadin-tabs": "23.2.3", + "@vaadin/vaadin-template-renderer": "23.2.3", + "@vaadin/vaadin-text-field": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3", + "@vaadin/vaadin-time-picker": "23.2.3", + "@vaadin/vaadin-upload": "23.2.3", + "@vaadin/vaadin-usage-statistics": "2.1.2", + "@vaadin/vaadin-virtual-list": "23.2.3", + "@vaadin/vertical-layout": "23.2.3", + "@vaadin/virtual-list": "23.2.3", + "construct-style-sheets-polyfill": "3.1.0", + "date-fns": "2.29.3", + "lit": "2.3.0", + "proj4": "2.8.0" + }, + "devDependencies": { + "@rollup/plugin-replace": "3.1.0", + "@rollup/pluginutils": "4.1.0", + "async": "3.2.2", + "glob": "7.2.3", + "mkdirp": "1.0.4", + "rollup-plugin-brotli": "3.1.0", + "transform-ast": "2.4.4", + "typescript": "4.7.4", + "vite": "v3.1.0", + "vite-plugin-checker": "0.4.9", + "workbox-build": "6.5.0", + "workbox-core": "6.5.0", + "workbox-precaching": "6.5.0" + }, + "overrides": { + "@vaadin/bundles": "$@vaadin/bundles", + "@vaadin/accordion": "$@vaadin/accordion", + "@vaadin/app-layout": "$@vaadin/app-layout", + "@vaadin/avatar": "$@vaadin/avatar", + "@vaadin/avatar-group": "$@vaadin/avatar-group", + "@vaadin/button": "$@vaadin/button", + "@vaadin/checkbox": "$@vaadin/checkbox", + "@vaadin/checkbox-group": "$@vaadin/checkbox-group", + "@vaadin/combo-box": "$@vaadin/combo-box", + "@vaadin/component-base": "$@vaadin/component-base", + "@vaadin/context-menu": "$@vaadin/context-menu", + "@vaadin/custom-field": "$@vaadin/custom-field", + "@vaadin/date-picker": "$@vaadin/date-picker", + "@vaadin/date-time-picker": "$@vaadin/date-time-picker", + "@vaadin/details": "$@vaadin/details", + "@vaadin/dialog": "$@vaadin/dialog", + "@vaadin/email-field": "$@vaadin/email-field", + "@vaadin/field-base": "$@vaadin/field-base", + "@vaadin/field-highlighter": "$@vaadin/field-highlighter", + "@vaadin/form-layout": "$@vaadin/form-layout", + "@vaadin/grid": "$@vaadin/grid", + "@vaadin/horizontal-layout": "$@vaadin/horizontal-layout", + "@vaadin/icon": "$@vaadin/icon", + "@vaadin/icons": "$@vaadin/icons", + "@vaadin/input-container": "$@vaadin/input-container", + "@vaadin/integer-field": "$@vaadin/integer-field", + "@polymer/iron-icon": "$@polymer/iron-icon", + "@polymer/iron-iconset-svg": "$@polymer/iron-iconset-svg", + "@polymer/iron-list": "$@polymer/iron-list", + "@polymer/iron-meta": "$@polymer/iron-meta", + "@polymer/iron-resizable-behavior": "$@polymer/iron-resizable-behavior", + "@vaadin/item": "$@vaadin/item", + "@vaadin/list-box": "$@vaadin/list-box", + "@vaadin/lit-renderer": "$@vaadin/lit-renderer", + "@vaadin/login": "$@vaadin/login", + "@vaadin/menu-bar": "$@vaadin/menu-bar", + "@vaadin/message-input": "$@vaadin/message-input", + "@vaadin/message-list": "$@vaadin/message-list", + "@vaadin/notification": "$@vaadin/notification", + "@vaadin/number-field": "$@vaadin/number-field", + "@vaadin/password-field": "$@vaadin/password-field", + "@vaadin/polymer-legacy-adapter": "$@vaadin/polymer-legacy-adapter", + "@vaadin/progress-bar": "$@vaadin/progress-bar", + "@vaadin/radio-group": "$@vaadin/radio-group", + "@vaadin/scroller": "$@vaadin/scroller", + "@vaadin/select": "$@vaadin/select", + "@vaadin/split-layout": "$@vaadin/split-layout", + "@vaadin/tabs": "$@vaadin/tabs", + "@vaadin/text-area": "$@vaadin/text-area", + "@vaadin/text-field": "$@vaadin/text-field", + "@vaadin/time-picker": "$@vaadin/time-picker", + "@vaadin/upload": "$@vaadin/upload", + "@vaadin/vaadin-accordion": "$@vaadin/vaadin-accordion", + "@vaadin/vaadin-app-layout": "$@vaadin/vaadin-app-layout", + "@vaadin/vaadin-avatar": "$@vaadin/vaadin-avatar", + "@vaadin/vaadin-button": "$@vaadin/vaadin-button", + "@vaadin/vaadin-checkbox": "$@vaadin/vaadin-checkbox", + "@vaadin/vaadin-combo-box": "$@vaadin/vaadin-combo-box", + "@vaadin/vaadin-context-menu": "$@vaadin/vaadin-context-menu", + "@vaadin/vaadin-custom-field": "$@vaadin/vaadin-custom-field", + "@vaadin/vaadin-date-picker": "$@vaadin/vaadin-date-picker", + "@vaadin/vaadin-date-time-picker": "$@vaadin/vaadin-date-time-picker", + "@vaadin/vaadin-details": "$@vaadin/vaadin-details", + "@vaadin/vaadin-development-mode-detector": "$@vaadin/vaadin-development-mode-detector", + "@vaadin/vaadin-dialog": "$@vaadin/vaadin-dialog", + "@vaadin/vaadin-form-layout": "$@vaadin/vaadin-form-layout", + "@vaadin/vaadin-grid": "$@vaadin/vaadin-grid", + "@vaadin/vaadin-icon": "$@vaadin/vaadin-icon", + "@vaadin/vaadin-icons": "$@vaadin/vaadin-icons", + "@vaadin/vaadin-item": "$@vaadin/vaadin-item", + "@vaadin/vaadin-list-box": "$@vaadin/vaadin-list-box", + "@vaadin/vaadin-list-mixin": "$@vaadin/vaadin-list-mixin", + "@vaadin/vaadin-login": "$@vaadin/vaadin-login", + "@vaadin/vaadin-lumo-styles": "$@vaadin/vaadin-lumo-styles", + "@vaadin/vaadin-material-styles": "$@vaadin/vaadin-material-styles", + "@vaadin/vaadin-menu-bar": "$@vaadin/vaadin-menu-bar", + "@vaadin/vaadin-messages": "$@vaadin/vaadin-messages", + "@vaadin/vaadin-notification": "$@vaadin/vaadin-notification", + "@vaadin/vaadin-ordered-layout": "$@vaadin/vaadin-ordered-layout", + "@vaadin/vaadin-overlay": "$@vaadin/vaadin-overlay", + "@vaadin/vaadin-progress-bar": "$@vaadin/vaadin-progress-bar", + "@vaadin/vaadin-radio-button": "$@vaadin/vaadin-radio-button", + "@vaadin/router": "$@vaadin/router", + "@vaadin/vaadin-select": "$@vaadin/vaadin-select", + "@vaadin/vaadin-split-layout": "$@vaadin/vaadin-split-layout", + "@vaadin/vaadin-tabs": "$@vaadin/vaadin-tabs", + "@vaadin/vaadin-template-renderer": "$@vaadin/vaadin-template-renderer", + "@vaadin/vaadin-text-field": "$@vaadin/vaadin-text-field", + "@vaadin/vaadin-themable-mixin": "$@vaadin/vaadin-themable-mixin", + "@vaadin/vaadin-time-picker": "$@vaadin/vaadin-time-picker", + "@vaadin/vaadin-upload": "$@vaadin/vaadin-upload", + "@vaadin/vaadin-usage-statistics": "$@vaadin/vaadin-usage-statistics", + "@vaadin/vaadin-virtual-list": "$@vaadin/vaadin-virtual-list", + "@vaadin/vertical-layout": "$@vaadin/vertical-layout", + "@vaadin/virtual-list": "$@vaadin/virtual-list", + "@vaadin/board": "$@vaadin/board", + "@vaadin/charts": "$@vaadin/charts", + "@vaadin/confirm-dialog": "$@vaadin/confirm-dialog", + "@vaadin/cookie-consent": "$@vaadin/cookie-consent", + "@vaadin/crud": "$@vaadin/crud", + "@vaadin/grid-pro": "$@vaadin/grid-pro", + "@vaadin/map": "$@vaadin/map", + "@vaadin/rich-text-editor": "$@vaadin/rich-text-editor", + "@vaadin/vaadin-board": "$@vaadin/vaadin-board", + "@vaadin/vaadin-charts": "$@vaadin/vaadin-charts", + "@vaadin/vaadin-confirm-dialog": "$@vaadin/vaadin-confirm-dialog", + "@vaadin/vaadin-cookie-consent": "$@vaadin/vaadin-cookie-consent", + "@vaadin/vaadin-crud": "$@vaadin/vaadin-crud", + "@vaadin/vaadin-grid-pro": "$@vaadin/vaadin-grid-pro", + "@vaadin/vaadin-rich-text-editor": "$@vaadin/vaadin-rich-text-editor", + "@vaadin/common-frontend": "$@vaadin/common-frontend", + "construct-style-sheets-polyfill": "$construct-style-sheets-polyfill", + "lit": "$lit", + "@polymer/polymer": "$@polymer/polymer", + "date-fns": "$date-fns", + "@vaadin/multi-select-combo-box": "$@vaadin/multi-select-combo-box", + "proj4": "$proj4" + }, + "vaadin": { + "dependencies": { + "@polymer/iron-icon": "3.0.1", + "@polymer/iron-iconset-svg": "3.0.1", + "@polymer/iron-list": "3.1.0", + "@polymer/iron-meta": "3.0.1", + "@polymer/iron-resizable-behavior": "3.0.1", + "@polymer/polymer": "3.5.1", + "@vaadin/accordion": "23.2.3", + "@vaadin/app-layout": "23.2.3", + "@vaadin/avatar": "23.2.3", + "@vaadin/avatar-group": "23.2.3", + "@vaadin/board": "23.2.3", + "@vaadin/bundles": "23.2.3", + "@vaadin/button": "23.2.3", + "@vaadin/charts": "23.2.3", + "@vaadin/checkbox": "23.2.3", + "@vaadin/checkbox-group": "23.2.3", + "@vaadin/combo-box": "23.2.3", + "@vaadin/common-frontend": "0.0.17", + "@vaadin/component-base": "23.2.3", + "@vaadin/confirm-dialog": "23.2.3", + "@vaadin/context-menu": "23.2.3", + "@vaadin/cookie-consent": "23.2.3", + "@vaadin/crud": "23.2.3", + "@vaadin/custom-field": "23.2.3", + "@vaadin/date-picker": "23.2.3", + "@vaadin/date-time-picker": "23.2.3", + "@vaadin/details": "23.2.3", + "@vaadin/dialog": "23.2.3", + "@vaadin/email-field": "23.2.3", + "@vaadin/field-base": "23.2.3", + "@vaadin/field-highlighter": "23.2.3", + "@vaadin/form-layout": "23.2.3", + "@vaadin/grid": "23.2.3", + "@vaadin/grid-pro": "23.2.3", + "@vaadin/horizontal-layout": "23.2.3", + "@vaadin/icon": "23.2.3", + "@vaadin/icons": "23.2.3", + "@vaadin/input-container": "23.2.3", + "@vaadin/integer-field": "23.2.3", + "@vaadin/item": "23.2.3", + "@vaadin/list-box": "23.2.3", + "@vaadin/lit-renderer": "23.2.3", + "@vaadin/login": "23.2.3", + "@vaadin/map": "23.2.3", + "@vaadin/menu-bar": "23.2.3", + "@vaadin/message-input": "23.2.3", + "@vaadin/message-list": "23.2.3", + "@vaadin/multi-select-combo-box": "23.2.3", + "@vaadin/notification": "23.2.3", + "@vaadin/number-field": "23.2.3", + "@vaadin/password-field": "23.2.3", + "@vaadin/polymer-legacy-adapter": "23.2.3", + "@vaadin/progress-bar": "23.2.3", + "@vaadin/radio-group": "23.2.3", + "@vaadin/rich-text-editor": "23.2.3", + "@vaadin/router": "1.7.4", + "@vaadin/scroller": "23.2.3", + "@vaadin/select": "23.2.3", + "@vaadin/split-layout": "23.2.3", + "@vaadin/tabs": "23.2.3", + "@vaadin/text-area": "23.2.3", + "@vaadin/text-field": "23.2.3", + "@vaadin/time-picker": "23.2.3", + "@vaadin/upload": "23.2.3", + "@vaadin/vaadin-accordion": "23.2.3", + "@vaadin/vaadin-app-layout": "23.2.3", + "@vaadin/vaadin-avatar": "23.2.3", + "@vaadin/vaadin-board": "23.2.3", + "@vaadin/vaadin-button": "23.2.3", + "@vaadin/vaadin-charts": "23.2.3", + "@vaadin/vaadin-checkbox": "23.2.3", + "@vaadin/vaadin-combo-box": "23.2.3", + "@vaadin/vaadin-confirm-dialog": "23.2.3", + "@vaadin/vaadin-context-menu": "23.2.3", + "@vaadin/vaadin-cookie-consent": "23.2.3", + "@vaadin/vaadin-crud": "23.2.3", + "@vaadin/vaadin-custom-field": "23.2.3", + "@vaadin/vaadin-date-picker": "23.2.3", + "@vaadin/vaadin-date-time-picker": "23.2.3", + "@vaadin/vaadin-details": "23.2.3", + "@vaadin/vaadin-development-mode-detector": "2.0.5", + "@vaadin/vaadin-dialog": "23.2.3", + "@vaadin/vaadin-form-layout": "23.2.3", + "@vaadin/vaadin-grid": "23.2.3", + "@vaadin/vaadin-grid-pro": "23.2.3", + "@vaadin/vaadin-icon": "23.2.3", + "@vaadin/vaadin-icons": "23.2.3", + "@vaadin/vaadin-item": "23.2.3", + "@vaadin/vaadin-list-box": "23.2.3", + "@vaadin/vaadin-list-mixin": "23.2.3", + "@vaadin/vaadin-login": "23.2.3", + "@vaadin/vaadin-lumo-styles": "23.2.3", + "@vaadin/vaadin-material-styles": "23.2.3", + "@vaadin/vaadin-menu-bar": "23.2.3", + "@vaadin/vaadin-messages": "23.2.3", + "@vaadin/vaadin-notification": "23.2.3", + "@vaadin/vaadin-ordered-layout": "23.2.3", + "@vaadin/vaadin-overlay": "23.2.3", + "@vaadin/vaadin-progress-bar": "23.2.3", + "@vaadin/vaadin-radio-button": "23.2.3", + "@vaadin/vaadin-rich-text-editor": "23.2.3", + "@vaadin/vaadin-select": "23.2.3", + "@vaadin/vaadin-split-layout": "23.2.3", + "@vaadin/vaadin-tabs": "23.2.3", + "@vaadin/vaadin-template-renderer": "23.2.3", + "@vaadin/vaadin-text-field": "23.2.3", + "@vaadin/vaadin-themable-mixin": "23.2.3", + "@vaadin/vaadin-time-picker": "23.2.3", + "@vaadin/vaadin-upload": "23.2.3", + "@vaadin/vaadin-usage-statistics": "2.1.2", + "@vaadin/vaadin-virtual-list": "23.2.3", + "@vaadin/vertical-layout": "23.2.3", + "@vaadin/virtual-list": "23.2.3", + "construct-style-sheets-polyfill": "3.1.0", + "date-fns": "2.29.3", + "lit": "2.3.0", + "proj4": "2.8.0" + }, + "devDependencies": { + "@rollup/plugin-replace": "3.1.0", + "@rollup/pluginutils": "4.1.0", + "async": "3.2.2", + "glob": "7.2.3", + "mkdirp": "1.0.4", + "rollup-plugin-brotli": "3.1.0", + "transform-ast": "2.4.4", + "typescript": "4.7.4", + "vite": "v3.1.0", + "vite-plugin-checker": "0.4.9", + "workbox-build": "6.5.0", + "workbox-core": "6.5.0", + "workbox-precaching": "6.5.0" + }, + "hash": "8851a57f5f11941b2fddd63741d6bd7fdfe84192d1f21fc841a3aa5fa55255c6" + } +} diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..3e93478 --- /dev/null +++ b/pom.xml @@ -0,0 +1,253 @@ + + + 4.0.0 + + my.app + myapp + myapp + 1.0-SNAPSHOT + jar + + + 11 + 23.2.3 + + 4.4.0 + + + + org.springframework.boot + spring-boot-starter-parent + 2.7.3 + + + + + + + + central + https://repo.maven.apache.org/maven2 + + false + + + + vaadin-prereleases + + https://maven.vaadin.com/vaadin-prereleases/ + + + + + Vaadin Directory + https://maven.vaadin.com/vaadin-addons + + false + + + + + + + + central + https://repo.maven.apache.org/maven2 + + false + + + + vaadin-prereleases + + https://maven.vaadin.com/vaadin-prereleases/ + + + + + + + + com.vaadin + vaadin-bom + ${vaadin.version} + pom + import + + + + + + + com.vaadin + + vaadin + + + com.vaadin + vaadin-spring-boot-starter + + + org.springframework.boot + spring-boot-starter-security + + + + org.postgresql + postgresql + + + + org.springframework.boot + spring-boot-starter-data-jpa + + + + org.springframework.boot + spring-boot-starter-validation + + + org.springframework.boot + spring-boot-devtools + true + + + org.springframework.boot + spring-boot-starter-test + test + + + com.vaadin + vaadin-testbench + test + + + + org.junit.vintage + junit-vintage-engine + test + + + org.hamcrest + hamcrest-core + + + + + io.github.bonigarcia + webdrivermanager + 5.1.1 + test + + + + + spring-boot:run + + + org.springframework.boot + spring-boot-maven-plugin + + + -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5888 + 500 + 240 + + + + + + com.vaadin + vaadin-maven-plugin + ${vaadin.version} + + + + prepare-frontend + + + + + + + + + + + production + + + + com.vaadin + vaadin-maven-plugin + ${vaadin.version} + + + + build-frontend + + compile + + + + true + + + + + + + + it + + + + org.springframework.boot + spring-boot-maven-plugin + + + start-spring-boot + pre-integration-test + + start + + + + stop-spring-boot + post-integration-test + + stop + + + + + + + + org.apache.maven.plugins + maven-failsafe-plugin + + + + integration-test + verify + + + + + false + true + + + + + + + + diff --git a/src/main/java/my/app/Application.java b/src/main/java/my/app/Application.java new file mode 100644 index 0000000..33f7a1a --- /dev/null +++ b/src/main/java/my/app/Application.java @@ -0,0 +1,28 @@ +package my.app; + +import com.vaadin.flow.component.dependency.NpmPackage; +import com.vaadin.flow.component.page.AppShellConfigurator; +import com.vaadin.flow.server.PWA; +import com.vaadin.flow.theme.Theme; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +/** + * The entry point of the Spring Boot application. + * + * Use the @PWA annotation make the application installable on phones, tablets + * and some desktop browsers. + * + */ +@SpringBootApplication +@Theme(value = "myapp") +@PWA(name = "My App", shortName = "My App", offlineResources = {}) +@NpmPackage(value = "line-awesome", version = "1.3.0") +@NpmPackage(value = "@vaadin-component-factory/vcf-nav", version = "1.0.6") +public class Application implements AppShellConfigurator { + + public static void main(String[] args) { + SpringApplication.run(Application.class, args); + } + +} diff --git a/src/main/java/my/app/components/appnav/AppNav.java b/src/main/java/my/app/components/appnav/AppNav.java new file mode 100644 index 0000000..fee1f4d --- /dev/null +++ b/src/main/java/my/app/components/appnav/AppNav.java @@ -0,0 +1,145 @@ +package my.app.components.appnav; + +import com.vaadin.flow.component.Component; +import com.vaadin.flow.component.HasSize; +import com.vaadin.flow.component.HasStyle; +import com.vaadin.flow.component.Tag; +import com.vaadin.flow.component.dependency.JsModule; +import com.vaadin.flow.dom.Element; +import java.util.Optional; + +/** + * A navigation menu with support for hierarchical and flat menus. + *

+ * Items can be added using {@link #addItem(AppNavItem)} and hierarchy can be + * created by adding {@link AppNavItem} instances to other {@link AppNavItem} + * instances. + */ +@JsModule("@vaadin-component-factory/vcf-nav") +@Tag("vcf-nav") +public class AppNav extends Component implements HasSize, HasStyle { + + /** + * Creates a new menu without any label. + */ + public AppNav() { + } + + /** + * Creates a new menu with the given label. + * + * @param label + * the label to use + */ + public AppNav(String label) { + setLabel(label); + } + + /** + * Adds menu item(s) to the menu. + * + * @param appNavItems + * the menu item(s) to add + * @return the menu for chaining + */ + public AppNav addItem(AppNavItem... appNavItems) { + for (AppNavItem appNavItem : appNavItems) { + getElement().appendChild(appNavItem.getElement()); + } + + return this; + } + + /** + * Removes the menu item from the menu. + *

+ * If the given menu item is not a child of this menu, does nothing. + * + * @param appNavItem + * the menu item to remove + * @return the menu for chaining + */ + public AppNav removeItem(AppNavItem appNavItem) { + Optional parent = appNavItem.getParent(); + if (parent.isPresent() && parent.get() == this) { + getElement().removeChild(appNavItem.getElement()); + } + + return this; + } + + /** + * Removes all menu items from this item. + * + * @return this item for chaining + */ + public AppNav removeAllItems() { + getElement().removeAllChildren(); + return this; + } + + /** + * Gets the textual label for the navigation. + * + * @return the label or null if no label has been set + */ + public String getLabel() { + return getExistingLabelElement().map(e -> e.getText()).orElse(null); + } + + /** + * Set a textual label for the navigation. + *

+ * This can help the end user to distinguish groups of navigation items. The + * label is also available for screen reader users. + * + * @param label + * the label to set + * @return this instance for chaining + */ + public AppNav setLabel(String label) { + getLabelElement().setText(label); + return this; + } + + private Optional getExistingLabelElement() { + return getElement().getChildren().filter(child -> "label".equals(child.getAttribute("slot"))).findFirst(); + } + + private Element getLabelElement() { + return getExistingLabelElement().orElseGet(() -> { + Element element = new Element("span"); + element.setAttribute("slot", "label"); + getElement().appendChild(element); + return element; + }); + } + + /** + * Check if the end user is allowed to collapse/hide and expand/show the + * navigation items. + *

+ * NOTE: The navigation has to have a label for it to be collapsible. + * + * @return true if the menu is collapsible, false otherwise + */ + public boolean isCollapsible() { + return getElement().hasAttribute("collapsible"); + } + + /** + * Allow the end user to collapse/hide and expand/show the navigation items. + *

+ * NOTE: The navigation has to have a label for it to be collapsible. + * + * @param collapsible + * true to make the whole navigation component collapsible, false + * otherwise + * @return this instance for chaining + */ + public AppNav setCollapsible(boolean collapsible) { + getElement().setAttribute("collapsible", ""); + return this; + } + +} diff --git a/src/main/java/my/app/components/appnav/AppNavItem.java b/src/main/java/my/app/components/appnav/AppNavItem.java new file mode 100644 index 0000000..8f803dc --- /dev/null +++ b/src/main/java/my/app/components/appnav/AppNavItem.java @@ -0,0 +1,298 @@ +package my.app.components.appnav; + +import com.vaadin.flow.component.Component; +import com.vaadin.flow.component.Tag; +import com.vaadin.flow.component.dependency.JsModule; +import com.vaadin.flow.component.html.Span; +import com.vaadin.flow.component.icon.Icon; +import com.vaadin.flow.dom.Element; +import com.vaadin.flow.internal.StateTree; +import com.vaadin.flow.router.RouteConfiguration; +import com.vaadin.flow.router.Router; +import com.vaadin.flow.server.VaadinService; +import java.util.Optional; + +/** + * A menu item for the {@link AppNav} component. + *

+ * Can contain a label and/or an icon and links to a given {@code path}. + */ +@JsModule("@vaadin-component-factory/vcf-nav") +@Tag("vcf-nav-item") +public class AppNavItem extends Component { + + /** + * Creates a menu item which does not link to any view but only shows the given + * label. + * + * @param label + * the label for the item + */ + public AppNavItem(String label) { + setLabel(label); + } + + /** + * Creates a new menu item using the given label that links to the given path. + * + * @param label + * the label for the item + * @param path + * the path to link to + */ + public AppNavItem(String label, String path) { + setPath(path); + setLabel(label); + } + + /** + * Creates a new menu item using the given label that links to the given view. + * + * @param label + * the label for the item + * @param view + * the view to link to + */ + public AppNavItem(String label, Class view) { + setPath(view); + setLabel(label); + } + + /** + * Creates a new menu item using the given label and icon that links to the + * given path. + * + * @param label + * the label for the item + * @param path + * the path to link to + * @param icon + * the icon for the item + */ + public AppNavItem(String label, String path, Icon icon) { + setPath(path); + setLabel(label); + setIcon(icon); + } + + /** + * Creates a new menu item using the given label that links to the given view. + * + * @param label + * the label for the item + * @param view + * the view to link to + * @param icon + * the icon for the item + */ + public AppNavItem(String label, Class view, Icon icon) { + setPath(view); + setLabel(label); + setIcon(icon); + } + + /** + * Creates a new menu item using the given label and icon that links to the + * given path. + * + * @param label + * the label for the item + * @param path + * the path to link to + * @param iconClass + * the CSS class to use for showing the icon + */ + public AppNavItem(String label, String path, String iconClass) { + setPath(path); + setLabel(label); + + setIconClass(iconClass); + } + + /** + * Creates a new menu item using the given label and icon that links to the + * given path. + * + * @param label + * the label for the item + * @param view + * the view to link to + * @param iconClass + * the CSS class to use for showing the icon + */ + public AppNavItem(String label, Class view, String iconClass) { + setPath(view); + setLabel(label); + + setIconClass(iconClass); + } + + /** + * Adds menu item(s) inside this item, creating a hierarchy. + * + * @param appNavItems + * the menu item(s) to add + * @return this item for chaining + */ + public AppNavItem addItem(AppNavItem... appNavItems) { + for (AppNavItem appNavItem : appNavItems) { + appNavItem.getElement().setAttribute("slot", "children"); + getElement().appendChild(appNavItem.getElement()); + } + + return this; + } + + /** + * Removes the given menu item from this item. + *

+ * If the given menu item is not a child of this menu item, does nothing. + * + * @param appNavItem + * the menu item to remove + * @return this item for chaining + */ + public AppNavItem removeItem(AppNavItem appNavItem) { + Optional parent = appNavItem.getParent(); + if (parent.isPresent() && parent.get() == this) { + getElement().removeChild(appNavItem.getElement()); + } + + return this; + } + + /** + * Removes all menu items from this item. + * + * @return this item for chaining + */ + public AppNavItem removeAllItems() { + getElement().removeAllChildren(); + return this; + } + + /** + * Gets the label for the item. + * + * @return the label or null if no label has been set + */ + public String getLabel() { + return getExistingLabelElement().map(e -> e.getText()).orElse(null); + } + + /** + * Set a textual label for the item. + *

+ * The label is also available for screen rader users. + * + * @param label + * the label to set + * @return this instance for chaining + */ + public AppNavItem setLabel(String label) { + getLabelElement().setText(label); + return this; + } + + private Optional getExistingLabelElement() { + return getElement().getChildren().filter(child -> !child.hasAttribute("slot")).findFirst(); + } + + private Element getLabelElement() { + return getExistingLabelElement().orElseGet(() -> { + Element element = Element.createText(""); + getElement().appendChild(element); + return element; + }); + } + + /** + * Sets the path this item links to. + * + * @param path + * the path to link to + * @return this instance for chaining + */ + public AppNavItem setPath(String path) { + getElement().setAttribute("path", path); + return this; + } + + /** + * Sets the view this item links to. + * + * @param view + * the view to link to + * @return this instance for chaining + */ + public AppNavItem setPath(Class view) { + String url = RouteConfiguration.forRegistry(getRouter().getRegistry()).getUrl(view); + setPath(url); + return this; + } + + private Router getRouter() { + Router router = null; + if (getElement().getNode().isAttached()) { + StateTree tree = (StateTree) getElement().getNode().getOwner(); + router = tree.getUI().getInternals().getRouter(); + } + if (router == null) { + router = VaadinService.getCurrent().getRouter(); + } + if (router == null) { + throw new IllegalStateException("Implicit router instance is not available. " + + "Use overloaded method with explicit router parameter."); + } + return router; + } + + public String getPath() { + return getElement().getAttribute("path"); + } + + private int getIconElementIndex() { + for (int i = 0; i < getElement().getChildCount(); i++) { + if ("prefix".equals(getElement().getChild(i).getAttribute("slot"))) { + return i; + } + } + return -1; + } + + /** + * Sets the icon for the item. + *

+ * Can also be used to set a custom component to be shown in front of the label. + * + * @param icon + * the icon to show + * @return this instance for chaining + */ + public AppNavItem setIcon(Component icon) { + icon.getElement().setAttribute("slot", "prefix"); + int iconElementIndex = getIconElementIndex(); + if (iconElementIndex != -1) { + getElement().setChild(iconElementIndex, icon.getElement()); + } else { + getElement().appendChild(icon.getElement()); + } + return this; + } + + /** + * Sets the icon using a CSS class for the item. + *

+ * Can also be used to set a custom component to be shown in front of the label. + * + * @param iconClass + * the CSS class to use for showing the icon + * @return this instance for chaining + */ + public AppNavItem setIconClass(String iconClass) { + Span icon = new Span(); + icon.setClassName(iconClass); + setIcon(icon); + return this; + } +} diff --git a/src/main/java/my/app/data/Role.java b/src/main/java/my/app/data/Role.java new file mode 100644 index 0000000..e16027c --- /dev/null +++ b/src/main/java/my/app/data/Role.java @@ -0,0 +1,5 @@ +package my.app.data; + +public enum Role { + USER, ADMIN; +} diff --git a/src/main/java/my/app/data/entity/AbstractEntity.java b/src/main/java/my/app/data/entity/AbstractEntity.java new file mode 100644 index 0000000..97b6567 --- /dev/null +++ b/src/main/java/my/app/data/entity/AbstractEntity.java @@ -0,0 +1,45 @@ +package my.app.data.entity; + +import java.util.UUID; +import javax.persistence.GeneratedValue; +import javax.persistence.Id; +import javax.persistence.MappedSuperclass; +import org.hibernate.annotations.Type; + +@MappedSuperclass +public abstract class AbstractEntity { + + @Id + @GeneratedValue + @Type(type = "uuid-char") + private UUID id; + + public UUID getId() { + return id; + } + + public void setId(UUID id) { + this.id = id; + } + + @Override + public int hashCode() { + if (id != null) { + return id.hashCode(); + } + return super.hashCode(); + } + + @Override + public boolean equals(Object obj) { + if (!(obj instanceof AbstractEntity)) { + return false; // null or other class + } + AbstractEntity other = (AbstractEntity) obj; + + if (id != null) { + return id.equals(other.id); + } + return super.equals(other); + } +} diff --git a/src/main/java/my/app/data/entity/SampleBook.java b/src/main/java/my/app/data/entity/SampleBook.java new file mode 100644 index 0000000..6114bf8 --- /dev/null +++ b/src/main/java/my/app/data/entity/SampleBook.java @@ -0,0 +1,63 @@ +package my.app.data.entity; + +import java.time.LocalDate; +import javax.annotation.Nonnull; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Lob; + +@Entity +public class SampleBook extends AbstractEntity { + + @Nonnull + @Lob + @Column(length = 1000000) + private byte[] image; + @Nonnull + private String name; + @Nonnull + private String author; + private LocalDate publicationDate; + @Nonnull + private Integer pages; + @Nonnull + private String isbn; + + public byte[] getImage() { + return image; + } + public void setImage(byte[] image) { + this.image = image; + } + public String getName() { + return name; + } + public void setName(String name) { + this.name = name; + } + public String getAuthor() { + return author; + } + public void setAuthor(String author) { + this.author = author; + } + public LocalDate getPublicationDate() { + return publicationDate; + } + public void setPublicationDate(LocalDate publicationDate) { + this.publicationDate = publicationDate; + } + public Integer getPages() { + return pages; + } + public void setPages(Integer pages) { + this.pages = pages; + } + public String getIsbn() { + return isbn; + } + public void setIsbn(String isbn) { + this.isbn = isbn; + } + +} diff --git a/src/main/java/my/app/data/entity/SamplePerson.java b/src/main/java/my/app/data/entity/SamplePerson.java new file mode 100644 index 0000000..b58b225 --- /dev/null +++ b/src/main/java/my/app/data/entity/SamplePerson.java @@ -0,0 +1,68 @@ +package my.app.data.entity; + +import java.time.LocalDate; +import javax.annotation.Nonnull; +import javax.persistence.Entity; +import javax.validation.constraints.Email; + +@Entity +public class SamplePerson extends AbstractEntity { + + @Nonnull + private String firstName; + @Nonnull + private String lastName; + @Email + @Nonnull + private String email; + @Nonnull + private String phone; + private LocalDate dateOfBirth; + @Nonnull + private String occupation; + private boolean important; + + public String getFirstName() { + return firstName; + } + public void setFirstName(String firstName) { + this.firstName = firstName; + } + public String getLastName() { + return lastName; + } + public void setLastName(String lastName) { + this.lastName = lastName; + } + public String getEmail() { + return email; + } + public void setEmail(String email) { + this.email = email; + } + public String getPhone() { + return phone; + } + public void setPhone(String phone) { + this.phone = phone; + } + public LocalDate getDateOfBirth() { + return dateOfBirth; + } + public void setDateOfBirth(LocalDate dateOfBirth) { + this.dateOfBirth = dateOfBirth; + } + public String getOccupation() { + return occupation; + } + public void setOccupation(String occupation) { + this.occupation = occupation; + } + public boolean isImportant() { + return important; + } + public void setImportant(boolean important) { + this.important = important; + } + +} diff --git a/src/main/java/my/app/data/entity/User.java b/src/main/java/my/app/data/entity/User.java new file mode 100644 index 0000000..6df5397 --- /dev/null +++ b/src/main/java/my/app/data/entity/User.java @@ -0,0 +1,66 @@ +package my.app.data.entity; + +import com.fasterxml.jackson.annotation.JsonIgnore; +import java.util.Set; +import javax.annotation.Nonnull; +import javax.persistence.Column; +import javax.persistence.ElementCollection; +import javax.persistence.Entity; +import javax.persistence.EnumType; +import javax.persistence.Enumerated; +import javax.persistence.FetchType; +import javax.persistence.Lob; +import javax.persistence.Table; +import my.app.data.Role; + +@Entity +@Table(name = "application_user") +public class User extends AbstractEntity { + + @Nonnull + private String username; + @Nonnull + private String name; + @JsonIgnore + private String hashedPassword; + @Enumerated(EnumType.STRING) + @ElementCollection(fetch = FetchType.EAGER) + @Nonnull + private Set roles; + @Nonnull + @Lob + @Column(length = 1000000) + private byte[] profilePicture; + + public String getUsername() { + return username; + } + public void setUsername(String username) { + this.username = username; + } + public String getName() { + return name; + } + public void setName(String name) { + this.name = name; + } + public String getHashedPassword() { + return hashedPassword; + } + public void setHashedPassword(String hashedPassword) { + this.hashedPassword = hashedPassword; + } + public Set getRoles() { + return roles; + } + public void setRoles(Set roles) { + this.roles = roles; + } + public byte[] getProfilePicture() { + return profilePicture; + } + public void setProfilePicture(byte[] profilePicture) { + this.profilePicture = profilePicture; + } + +} diff --git a/src/main/java/my/app/data/service/SampleBookRepository.java b/src/main/java/my/app/data/service/SampleBookRepository.java new file mode 100644 index 0000000..29eea6d --- /dev/null +++ b/src/main/java/my/app/data/service/SampleBookRepository.java @@ -0,0 +1,9 @@ +package my.app.data.service; + +import java.util.UUID; +import my.app.data.entity.SampleBook; +import org.springframework.data.jpa.repository.JpaRepository; + +public interface SampleBookRepository extends JpaRepository { + +} \ No newline at end of file diff --git a/src/main/java/my/app/data/service/SampleBookService.java b/src/main/java/my/app/data/service/SampleBookService.java new file mode 100644 index 0000000..c945c0e --- /dev/null +++ b/src/main/java/my/app/data/service/SampleBookService.java @@ -0,0 +1,41 @@ +package my.app.data.service; + +import java.util.Optional; +import java.util.UUID; +import my.app.data.entity.SampleBook; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.Pageable; +import org.springframework.stereotype.Service; + +@Service +public class SampleBookService { + + private final SampleBookRepository repository; + + @Autowired + public SampleBookService(SampleBookRepository repository) { + this.repository = repository; + } + + public Optional get(UUID id) { + return repository.findById(id); + } + + public SampleBook update(SampleBook entity) { + return repository.save(entity); + } + + public void delete(UUID id) { + repository.deleteById(id); + } + + public Page list(Pageable pageable) { + return repository.findAll(pageable); + } + + public int count() { + return (int) repository.count(); + } + +} diff --git a/src/main/java/my/app/data/service/SamplePersonRepository.java b/src/main/java/my/app/data/service/SamplePersonRepository.java new file mode 100644 index 0000000..60af7cb --- /dev/null +++ b/src/main/java/my/app/data/service/SamplePersonRepository.java @@ -0,0 +1,9 @@ +package my.app.data.service; + +import java.util.UUID; +import my.app.data.entity.SamplePerson; +import org.springframework.data.jpa.repository.JpaRepository; + +public interface SamplePersonRepository extends JpaRepository { + +} \ No newline at end of file diff --git a/src/main/java/my/app/data/service/SamplePersonService.java b/src/main/java/my/app/data/service/SamplePersonService.java new file mode 100644 index 0000000..df9cd5a --- /dev/null +++ b/src/main/java/my/app/data/service/SamplePersonService.java @@ -0,0 +1,41 @@ +package my.app.data.service; + +import java.util.Optional; +import java.util.UUID; +import my.app.data.entity.SamplePerson; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.Pageable; +import org.springframework.stereotype.Service; + +@Service +public class SamplePersonService { + + private final SamplePersonRepository repository; + + @Autowired + public SamplePersonService(SamplePersonRepository repository) { + this.repository = repository; + } + + public Optional get(UUID id) { + return repository.findById(id); + } + + public SamplePerson update(SamplePerson entity) { + return repository.save(entity); + } + + public void delete(UUID id) { + repository.deleteById(id); + } + + public Page list(Pageable pageable) { + return repository.findAll(pageable); + } + + public int count() { + return (int) repository.count(); + } + +} diff --git a/src/main/java/my/app/data/service/UserRepository.java b/src/main/java/my/app/data/service/UserRepository.java new file mode 100644 index 0000000..1ce2ae6 --- /dev/null +++ b/src/main/java/my/app/data/service/UserRepository.java @@ -0,0 +1,10 @@ +package my.app.data.service; + +import java.util.UUID; +import my.app.data.entity.User; +import org.springframework.data.jpa.repository.JpaRepository; + +public interface UserRepository extends JpaRepository { + + User findByUsername(String username); +} \ No newline at end of file diff --git a/src/main/java/my/app/data/service/UserService.java b/src/main/java/my/app/data/service/UserService.java new file mode 100644 index 0000000..d2fc38a --- /dev/null +++ b/src/main/java/my/app/data/service/UserService.java @@ -0,0 +1,41 @@ +package my.app.data.service; + +import java.util.Optional; +import java.util.UUID; +import my.app.data.entity.User; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.Pageable; +import org.springframework.stereotype.Service; + +@Service +public class UserService { + + private final UserRepository repository; + + @Autowired + public UserService(UserRepository repository) { + this.repository = repository; + } + + public Optional get(UUID id) { + return repository.findById(id); + } + + public User update(User entity) { + return repository.save(entity); + } + + public void delete(UUID id) { + repository.deleteById(id); + } + + public Page list(Pageable pageable) { + return repository.findAll(pageable); + } + + public int count() { + return (int) repository.count(); + } + +} diff --git a/src/main/java/my/app/security/AuthenticatedUser.java b/src/main/java/my/app/security/AuthenticatedUser.java new file mode 100644 index 0000000..d0fb762 --- /dev/null +++ b/src/main/java/my/app/security/AuthenticatedUser.java @@ -0,0 +1,42 @@ +package my.app.security; + +import com.vaadin.flow.component.UI; +import com.vaadin.flow.server.VaadinServletRequest; +import java.util.Optional; +import my.app.data.entity.User; +import my.app.data.service.UserRepository; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.authentication.AnonymousAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.context.SecurityContext; +import org.springframework.security.core.context.SecurityContextHolder; +import org.springframework.security.web.authentication.logout.SecurityContextLogoutHandler; +import org.springframework.stereotype.Component; + +@Component +public class AuthenticatedUser { + + private final UserRepository userRepository; + + @Autowired + public AuthenticatedUser(UserRepository userRepository) { + this.userRepository = userRepository; + } + + private Optional getAuthentication() { + SecurityContext context = SecurityContextHolder.getContext(); + return Optional.ofNullable(context.getAuthentication()) + .filter(authentication -> !(authentication instanceof AnonymousAuthenticationToken)); + } + + public Optional get() { + return getAuthentication().map(authentication -> userRepository.findByUsername(authentication.getName())); + } + + public void logout() { + UI.getCurrent().getPage().setLocation(SecurityConfiguration.LOGOUT_URL); + SecurityContextLogoutHandler logoutHandler = new SecurityContextLogoutHandler(); + logoutHandler.logout(VaadinServletRequest.getCurrent().getHttpServletRequest(), null, null); + } + +} diff --git a/src/main/java/my/app/security/SecurityConfiguration.java b/src/main/java/my/app/security/SecurityConfiguration.java new file mode 100644 index 0000000..2d70b69 --- /dev/null +++ b/src/main/java/my/app/security/SecurityConfiguration.java @@ -0,0 +1,36 @@ +package my.app.security; + +import com.vaadin.flow.spring.security.VaadinWebSecurity; +import my.app.views.login.LoginView; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.annotation.web.builders.WebSecurity; +import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; +import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; +import org.springframework.security.crypto.password.PasswordEncoder; + +@EnableWebSecurity +@Configuration +public class SecurityConfiguration extends VaadinWebSecurity { + + public static final String LOGOUT_URL = "/"; + + @Bean + public PasswordEncoder passwordEncoder() { + return new BCryptPasswordEncoder(); + } + + @Override + protected void configure(HttpSecurity http) throws Exception { + + super.configure(http); + setLoginView(http, LoginView.class, LOGOUT_URL); + } + + @Override + public void configure(WebSecurity web) throws Exception { + super.configure(web); + web.ignoring().antMatchers("/images/*.png"); + } +} diff --git a/src/main/java/my/app/security/UserDetailsServiceImpl.java b/src/main/java/my/app/security/UserDetailsServiceImpl.java new file mode 100644 index 0000000..9aa6572 --- /dev/null +++ b/src/main/java/my/app/security/UserDetailsServiceImpl.java @@ -0,0 +1,42 @@ +package my.app.security; + +import java.util.List; +import java.util.stream.Collectors; +import my.app.data.entity.User; +import my.app.data.service.UserRepository; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.authority.SimpleGrantedAuthority; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.core.userdetails.UsernameNotFoundException; +import org.springframework.stereotype.Service; + +@Service +public class UserDetailsServiceImpl implements UserDetailsService { + + private final UserRepository userRepository; + + @Autowired + public UserDetailsServiceImpl(UserRepository userRepository) { + this.userRepository = userRepository; + } + + @Override + public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { + User user = userRepository.findByUsername(username); + if (user == null) { + throw new UsernameNotFoundException("No user present with username: " + username); + } else { + return new org.springframework.security.core.userdetails.User(user.getUsername(), user.getHashedPassword(), + getAuthorities(user)); + } + } + + private static List getAuthorities(User user) { + return user.getRoles().stream().map(role -> new SimpleGrantedAuthority("ROLE_" + role)) + .collect(Collectors.toList()); + + } + +} diff --git a/src/main/java/my/app/views/MainLayout.java b/src/main/java/my/app/views/MainLayout.java new file mode 100644 index 0000000..c08f150 --- /dev/null +++ b/src/main/java/my/app/views/MainLayout.java @@ -0,0 +1,154 @@ +package my.app.views; + +import com.vaadin.flow.component.applayout.AppLayout; +import com.vaadin.flow.component.applayout.DrawerToggle; +import com.vaadin.flow.component.avatar.Avatar; +import com.vaadin.flow.component.contextmenu.MenuItem; +import com.vaadin.flow.component.html.Anchor; +import com.vaadin.flow.component.html.Div; +import com.vaadin.flow.component.html.Footer; +import com.vaadin.flow.component.html.H1; +import com.vaadin.flow.component.html.H2; +import com.vaadin.flow.component.html.Header; +import com.vaadin.flow.component.icon.Icon; +import com.vaadin.flow.component.menubar.MenuBar; +import com.vaadin.flow.component.orderedlayout.Scroller; +import com.vaadin.flow.router.PageTitle; +import com.vaadin.flow.server.StreamResource; +import com.vaadin.flow.server.auth.AccessAnnotationChecker; +import com.vaadin.flow.theme.lumo.LumoUtility; +import java.io.ByteArrayInputStream; +import java.util.Optional; +import my.app.components.appnav.AppNav; +import my.app.components.appnav.AppNavItem; +import my.app.data.entity.User; +import my.app.security.AuthenticatedUser; +import my.app.views.adminroleonly.AdminroleonlyView; +import my.app.views.loggedin.LoggedInView; +import my.app.views.masterdetailbook.MasterDetailBookView; +import my.app.views.masterdetailperson.MasterDetailPersonView; +import my.app.views.publicview.PublicviewView; +import my.app.views.userroleonly.UserroleonlyView; + +/** + * The main view is a top-level placeholder for other views. + */ +public class MainLayout extends AppLayout { + + private H2 viewTitle; + + private AuthenticatedUser authenticatedUser; + private AccessAnnotationChecker accessChecker; + + public MainLayout(AuthenticatedUser authenticatedUser, AccessAnnotationChecker accessChecker) { + this.authenticatedUser = authenticatedUser; + this.accessChecker = accessChecker; + + setPrimarySection(Section.DRAWER); + addDrawerContent(); + addHeaderContent(); + } + + private void addHeaderContent() { + DrawerToggle toggle = new DrawerToggle(); + toggle.getElement().setAttribute("aria-label", "Menu toggle"); + + viewTitle = new H2(); + viewTitle.addClassNames(LumoUtility.FontSize.LARGE, LumoUtility.Margin.NONE); + + addToNavbar(true, toggle, viewTitle); + } + + private void addDrawerContent() { + H1 appName = new H1("My App"); + appName.addClassNames(LumoUtility.FontSize.LARGE, LumoUtility.Margin.NONE); + Header header = new Header(appName); + + Scroller scroller = new Scroller(createNavigation()); + + addToDrawer(header, scroller, createFooter()); + } + + private AppNav createNavigation() { + // AppNav is not yet an official component. + // For documentation, visit https://github.com/vaadin/vcf-nav#readme + AppNav nav = new AppNav(); + + if (accessChecker.hasAccess(PublicviewView.class)) { + nav.addItem(new AppNavItem("Public view", PublicviewView.class, "la la-lock-open")); + + } + if (accessChecker.hasAccess(LoggedInView.class)) { + nav.addItem(new AppNavItem("Logged In", LoggedInView.class, "la la-globe")); + + } + if (accessChecker.hasAccess(UserroleonlyView.class)) { + nav.addItem(new AppNavItem("'User' role only", UserroleonlyView.class, "la la-globe")); + + } + if (accessChecker.hasAccess(AdminroleonlyView.class)) { + nav.addItem(new AppNavItem("'Admin' role only", AdminroleonlyView.class, "la la-globe")); + + } + if (accessChecker.hasAccess(MasterDetailPersonView.class)) { + nav.addItem(new AppNavItem("Master Detail Person", MasterDetailPersonView.class, "la la-columns")); + + } + if (accessChecker.hasAccess(MasterDetailBookView.class)) { + nav.addItem(new AppNavItem("Master Detail Book", MasterDetailBookView.class, "la la-columns")); + + } + + return nav; + } + + private Footer createFooter() { + Footer layout = new Footer(); + + Optional maybeUser = authenticatedUser.get(); + if (maybeUser.isPresent()) { + User user = maybeUser.get(); + + Avatar avatar = new Avatar(user.getName()); + StreamResource resource = new StreamResource("profile-pic", + () -> new ByteArrayInputStream(user.getProfilePicture())); + avatar.setImageResource(resource); + avatar.setThemeName("xsmall"); + avatar.getElement().setAttribute("tabindex", "-1"); + + MenuBar userMenu = new MenuBar(); + userMenu.setThemeName("tertiary-inline contrast"); + + MenuItem userName = userMenu.addItem(""); + Div div = new Div(); + div.add(avatar); + div.add(user.getName()); + div.add(new Icon("lumo", "dropdown")); + div.getElement().getStyle().set("display", "flex"); + div.getElement().getStyle().set("align-items", "center"); + div.getElement().getStyle().set("gap", "var(--lumo-space-s)"); + userName.add(div); + userName.getSubMenu().addItem("Sign out", e -> { + authenticatedUser.logout(); + }); + + layout.add(userMenu); + } else { + Anchor loginLink = new Anchor("login", "Sign in"); + layout.add(loginLink); + } + + return layout; + } + + @Override + protected void afterNavigation() { + super.afterNavigation(); + viewTitle.setText(getCurrentPageTitle()); + } + + private String getCurrentPageTitle() { + PageTitle title = getContent().getClass().getAnnotation(PageTitle.class); + return title == null ? "" : title.value(); + } +} diff --git a/src/main/java/my/app/views/adminroleonly/AdminroleonlyView.java b/src/main/java/my/app/views/adminroleonly/AdminroleonlyView.java new file mode 100644 index 0000000..5c07fe3 --- /dev/null +++ b/src/main/java/my/app/views/adminroleonly/AdminroleonlyView.java @@ -0,0 +1,35 @@ +package my.app.views.adminroleonly; + +import com.vaadin.flow.component.Key; +import com.vaadin.flow.component.button.Button; +import com.vaadin.flow.component.notification.Notification; +import com.vaadin.flow.component.orderedlayout.HorizontalLayout; +import com.vaadin.flow.component.textfield.TextField; +import com.vaadin.flow.router.PageTitle; +import com.vaadin.flow.router.Route; +import javax.annotation.security.RolesAllowed; +import my.app.views.MainLayout; + +@PageTitle("'Admin' role only") +@Route(value = "admin-role", layout = MainLayout.class) +@RolesAllowed("ADMIN") +public class AdminroleonlyView extends HorizontalLayout { + + private TextField name; + private Button sayHello; + + public AdminroleonlyView() { + name = new TextField("Your name"); + sayHello = new Button("Say hello"); + sayHello.addClickListener(e -> { + Notification.show("Hello " + name.getValue()); + }); + sayHello.addClickShortcut(Key.ENTER); + + setMargin(true); + setVerticalComponentAlignment(Alignment.END, name, sayHello); + + add(name, sayHello); + } + +} diff --git a/src/main/java/my/app/views/loggedin/LoggedInView.java b/src/main/java/my/app/views/loggedin/LoggedInView.java new file mode 100644 index 0000000..b5a47b8 --- /dev/null +++ b/src/main/java/my/app/views/loggedin/LoggedInView.java @@ -0,0 +1,35 @@ +package my.app.views.loggedin; + +import com.vaadin.flow.component.Key; +import com.vaadin.flow.component.button.Button; +import com.vaadin.flow.component.notification.Notification; +import com.vaadin.flow.component.orderedlayout.HorizontalLayout; +import com.vaadin.flow.component.textfield.TextField; +import com.vaadin.flow.router.PageTitle; +import com.vaadin.flow.router.Route; +import javax.annotation.security.PermitAll; +import my.app.views.MainLayout; + +@PageTitle("Logged In") +@Route(value = "logged-in", layout = MainLayout.class) +@PermitAll +public class LoggedInView extends HorizontalLayout { + + private TextField name; + private Button sayHello; + + public LoggedInView() { + name = new TextField("Your name"); + sayHello = new Button("Say hello"); + sayHello.addClickListener(e -> { + Notification.show("Hello " + name.getValue()); + }); + sayHello.addClickShortcut(Key.ENTER); + + setMargin(true); + setVerticalComponentAlignment(Alignment.END, name, sayHello); + + add(name, sayHello); + } + +} diff --git a/src/main/java/my/app/views/login/LoginView.java b/src/main/java/my/app/views/login/LoginView.java new file mode 100644 index 0000000..8a17acc --- /dev/null +++ b/src/main/java/my/app/views/login/LoginView.java @@ -0,0 +1,46 @@ +package my.app.views.login; + +import com.vaadin.flow.component.login.LoginI18n; +import com.vaadin.flow.component.login.LoginOverlay; +import com.vaadin.flow.router.BeforeEnterEvent; +import com.vaadin.flow.router.BeforeEnterObserver; +import com.vaadin.flow.router.PageTitle; +import com.vaadin.flow.router.Route; +import com.vaadin.flow.router.internal.RouteUtil; +import com.vaadin.flow.server.VaadinService; +import com.vaadin.flow.server.auth.AnonymousAllowed; +import my.app.security.AuthenticatedUser; + +@AnonymousAllowed +@PageTitle("Login") +@Route(value = "login") +public class LoginView extends LoginOverlay implements BeforeEnterObserver { + + private final AuthenticatedUser authenticatedUser; + + public LoginView(AuthenticatedUser authenticatedUser) { + this.authenticatedUser = authenticatedUser; + setAction(RouteUtil.getRoutePath(VaadinService.getCurrent().getContext(), getClass())); + + LoginI18n i18n = LoginI18n.createDefault(); + i18n.setHeader(new LoginI18n.Header()); + i18n.getHeader().setTitle("My App"); + i18n.getHeader().setDescription("Login using user/user or admin/admin"); + i18n.setAdditionalInformation(null); + setI18n(i18n); + + setForgotPasswordButtonVisible(false); + setOpened(true); + } + + @Override + public void beforeEnter(BeforeEnterEvent event) { + if (authenticatedUser.get().isPresent()) { + // Already logged in + setOpened(false); + event.forwardTo(""); + } + + setError(event.getLocation().getQueryParameters().getParameters().containsKey("error")); + } +} diff --git a/src/main/java/my/app/views/masterdetailbook/MasterDetailBookView.java b/src/main/java/my/app/views/masterdetailbook/MasterDetailBookView.java new file mode 100644 index 0000000..13d6dd3 --- /dev/null +++ b/src/main/java/my/app/views/masterdetailbook/MasterDetailBookView.java @@ -0,0 +1,247 @@ +package my.app.views.masterdetailbook; + +import com.vaadin.flow.component.UI; +import com.vaadin.flow.component.button.Button; +import com.vaadin.flow.component.button.ButtonVariant; +import com.vaadin.flow.component.datepicker.DatePicker; +import com.vaadin.flow.component.formlayout.FormLayout; +import com.vaadin.flow.component.grid.Grid; +import com.vaadin.flow.component.grid.GridVariant; +import com.vaadin.flow.component.html.Div; +import com.vaadin.flow.component.html.Image; +import com.vaadin.flow.component.html.Label; +import com.vaadin.flow.component.notification.Notification; +import com.vaadin.flow.component.orderedlayout.HorizontalLayout; +import com.vaadin.flow.component.splitlayout.SplitLayout; +import com.vaadin.flow.component.textfield.TextField; +import com.vaadin.flow.component.upload.Upload; +import com.vaadin.flow.data.binder.BeanValidationBinder; +import com.vaadin.flow.data.binder.ValidationException; +import com.vaadin.flow.data.converter.StringToIntegerConverter; +import com.vaadin.flow.data.renderer.LitRenderer; +import com.vaadin.flow.router.BeforeEnterEvent; +import com.vaadin.flow.router.BeforeEnterObserver; +import com.vaadin.flow.router.PageTitle; +import com.vaadin.flow.router.Route; +import com.vaadin.flow.server.StreamResource; +import com.vaadin.flow.server.auth.AnonymousAllowed; +import com.vaadin.flow.spring.data.VaadinSpringDataHelpers; +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.util.Base64; +import java.util.Optional; +import java.util.UUID; +import my.app.data.entity.SampleBook; +import my.app.data.service.SampleBookService; +import my.app.views.MainLayout; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.domain.PageRequest; + +@PageTitle("Master Detail Book") +@Route(value = "master-detail-book/:sampleBookID?/:action?(edit)", layout = MainLayout.class) +@AnonymousAllowed +public class MasterDetailBookView extends Div implements BeforeEnterObserver { + + private final String SAMPLEBOOK_ID = "sampleBookID"; + private final String SAMPLEBOOK_EDIT_ROUTE_TEMPLATE = "master-detail-book/%s/edit"; + + private final Grid grid = new Grid<>(SampleBook.class, false); + + private Upload image; + private Image imagePreview; + private TextField name; + private TextField author; + private DatePicker publicationDate; + private TextField pages; + private TextField isbn; + + private final Button cancel = new Button("Cancel"); + private final Button save = new Button("Save"); + + private final BeanValidationBinder binder; + + private SampleBook sampleBook; + + private final SampleBookService sampleBookService; + + @Autowired + public MasterDetailBookView(SampleBookService sampleBookService) { + this.sampleBookService = sampleBookService; + addClassNames("master-detail-book-view"); + + // Create UI + SplitLayout splitLayout = new SplitLayout(); + + createGridLayout(splitLayout); + createEditorLayout(splitLayout); + + add(splitLayout); + + // Configure Grid + LitRenderer imageRenderer = LitRenderer + .of("").withProperty("image", item -> { + if (item != null && item.getImage() != null) { + return "data:image;base64," + Base64.getEncoder().encodeToString(item.getImage()); + } else { + return ""; + } + }); + grid.addColumn(imageRenderer).setHeader("Image").setWidth("68px").setFlexGrow(0); + + grid.addColumn("name").setAutoWidth(true); + grid.addColumn("author").setAutoWidth(true); + grid.addColumn("publicationDate").setAutoWidth(true); + grid.addColumn("pages").setAutoWidth(true); + grid.addColumn("isbn").setAutoWidth(true); + grid.setItems(query -> sampleBookService.list( + PageRequest.of(query.getPage(), query.getPageSize(), VaadinSpringDataHelpers.toSpringDataSort(query))) + .stream()); + grid.addThemeVariants(GridVariant.LUMO_NO_BORDER); + + // when a row is selected or deselected, populate form + grid.asSingleSelect().addValueChangeListener(event -> { + if (event.getValue() != null) { + UI.getCurrent().navigate(String.format(SAMPLEBOOK_EDIT_ROUTE_TEMPLATE, event.getValue().getId())); + } else { + clearForm(); + UI.getCurrent().navigate(MasterDetailBookView.class); + } + }); + + // Configure Form + binder = new BeanValidationBinder<>(SampleBook.class); + + // Bind fields. This is where you'd define e.g. validation rules + binder.forField(pages).withConverter(new StringToIntegerConverter("Only numbers are allowed")).bind("pages"); + + binder.bindInstanceFields(this); + + attachImageUpload(image, imagePreview); + + cancel.addClickListener(e -> { + clearForm(); + refreshGrid(); + }); + + save.addClickListener(e -> { + try { + if (this.sampleBook == null) { + this.sampleBook = new SampleBook(); + } + binder.writeBean(this.sampleBook); + sampleBookService.update(this.sampleBook); + clearForm(); + refreshGrid(); + Notification.show("SampleBook details stored."); + UI.getCurrent().navigate(MasterDetailBookView.class); + } catch (ValidationException validationException) { + Notification.show("An exception happened while trying to store the sampleBook details."); + } + }); + + } + + @Override + public void beforeEnter(BeforeEnterEvent event) { + Optional sampleBookId = event.getRouteParameters().get(SAMPLEBOOK_ID).map(UUID::fromString); + if (sampleBookId.isPresent()) { + Optional sampleBookFromBackend = sampleBookService.get(sampleBookId.get()); + if (sampleBookFromBackend.isPresent()) { + populateForm(sampleBookFromBackend.get()); + } else { + Notification.show(String.format("The requested sampleBook was not found, ID = %s", sampleBookId.get()), + 3000, Notification.Position.BOTTOM_START); + // when a row is selected but the data is no longer available, + // refresh grid + refreshGrid(); + event.forwardTo(MasterDetailBookView.class); + } + } + } + + private void createEditorLayout(SplitLayout splitLayout) { + Div editorLayoutDiv = new Div(); + editorLayoutDiv.setClassName("editor-layout"); + + Div editorDiv = new Div(); + editorDiv.setClassName("editor"); + editorLayoutDiv.add(editorDiv); + + FormLayout formLayout = new FormLayout(); + Label imageLabel = new Label("Image"); + imagePreview = new Image(); + imagePreview.setWidth("100%"); + image = new Upload(); + image.getStyle().set("box-sizing", "border-box"); + image.getElement().appendChild(imagePreview.getElement()); + name = new TextField("Name"); + author = new TextField("Author"); + publicationDate = new DatePicker("Publication Date"); + pages = new TextField("Pages"); + isbn = new TextField("Isbn"); + formLayout.add(imageLabel, image, name, author, publicationDate, pages, isbn); + + editorDiv.add(formLayout); + createButtonLayout(editorLayoutDiv); + + splitLayout.addToSecondary(editorLayoutDiv); + } + + private void createButtonLayout(Div editorLayoutDiv) { + HorizontalLayout buttonLayout = new HorizontalLayout(); + buttonLayout.setClassName("button-layout"); + cancel.addThemeVariants(ButtonVariant.LUMO_TERTIARY); + save.addThemeVariants(ButtonVariant.LUMO_PRIMARY); + buttonLayout.add(save, cancel); + editorLayoutDiv.add(buttonLayout); + } + + private void createGridLayout(SplitLayout splitLayout) { + Div wrapper = new Div(); + wrapper.setClassName("grid-wrapper"); + splitLayout.addToPrimary(wrapper); + wrapper.add(grid); + } + + private void attachImageUpload(Upload upload, Image preview) { + ByteArrayOutputStream uploadBuffer = new ByteArrayOutputStream(); + upload.setAcceptedFileTypes("image/*"); + upload.setReceiver((fileName, mimeType) -> { + uploadBuffer.reset(); + return uploadBuffer; + }); + upload.addSucceededListener(e -> { + StreamResource resource = new StreamResource(e.getFileName(), + () -> new ByteArrayInputStream(uploadBuffer.toByteArray())); + preview.setSrc(resource); + preview.setVisible(true); + if (this.sampleBook == null) { + this.sampleBook = new SampleBook(); + } + this.sampleBook.setImage(uploadBuffer.toByteArray()); + }); + preview.setVisible(false); + } + + private void refreshGrid() { + grid.select(null); + grid.getDataProvider().refreshAll(); + } + + private void clearForm() { + populateForm(null); + } + + private void populateForm(SampleBook value) { + this.sampleBook = value; + binder.readBean(this.sampleBook); + this.imagePreview.setVisible(value != null); + if (value == null || value.getImage() == null) { + this.image.clearFileList(); + this.imagePreview.setSrc(""); + } else { + this.imagePreview.setSrc("data:image;base64," + Base64.getEncoder().encodeToString(value.getImage())); + } + + } +} diff --git a/src/main/java/my/app/views/masterdetailperson/MasterDetailPersonView.java b/src/main/java/my/app/views/masterdetailperson/MasterDetailPersonView.java new file mode 100644 index 0000000..2b5ec37 --- /dev/null +++ b/src/main/java/my/app/views/masterdetailperson/MasterDetailPersonView.java @@ -0,0 +1,210 @@ +package my.app.views.masterdetailperson; + +import com.vaadin.flow.component.UI; +import com.vaadin.flow.component.button.Button; +import com.vaadin.flow.component.button.ButtonVariant; +import com.vaadin.flow.component.checkbox.Checkbox; +import com.vaadin.flow.component.datepicker.DatePicker; +import com.vaadin.flow.component.dependency.Uses; +import com.vaadin.flow.component.formlayout.FormLayout; +import com.vaadin.flow.component.grid.Grid; +import com.vaadin.flow.component.grid.GridVariant; +import com.vaadin.flow.component.html.Div; +import com.vaadin.flow.component.icon.Icon; +import com.vaadin.flow.component.notification.Notification; +import com.vaadin.flow.component.orderedlayout.HorizontalLayout; +import com.vaadin.flow.component.splitlayout.SplitLayout; +import com.vaadin.flow.component.textfield.TextField; +import com.vaadin.flow.data.binder.BeanValidationBinder; +import com.vaadin.flow.data.binder.ValidationException; +import com.vaadin.flow.data.renderer.LitRenderer; +import com.vaadin.flow.router.BeforeEnterEvent; +import com.vaadin.flow.router.BeforeEnterObserver; +import com.vaadin.flow.router.PageTitle; +import com.vaadin.flow.router.Route; +import com.vaadin.flow.server.auth.AnonymousAllowed; +import com.vaadin.flow.spring.data.VaadinSpringDataHelpers; +import java.util.Optional; +import java.util.UUID; +import my.app.data.entity.SamplePerson; +import my.app.data.service.SamplePersonService; +import my.app.views.MainLayout; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.domain.PageRequest; + +@PageTitle("Master Detail Person") +@Route(value = "master-detail-person/:samplePersonID?/:action?(edit)", layout = MainLayout.class) +@AnonymousAllowed +@Uses(Icon.class) +public class MasterDetailPersonView extends Div implements BeforeEnterObserver { + + private final String SAMPLEPERSON_ID = "samplePersonID"; + private final String SAMPLEPERSON_EDIT_ROUTE_TEMPLATE = "master-detail-person/%s/edit"; + + private final Grid grid = new Grid<>(SamplePerson.class, false); + + private TextField firstName; + private TextField lastName; + private TextField email; + private TextField phone; + private DatePicker dateOfBirth; + private TextField occupation; + private Checkbox important; + + private final Button cancel = new Button("Cancel"); + private final Button save = new Button("Save"); + + private final BeanValidationBinder binder; + + private SamplePerson samplePerson; + + private final SamplePersonService samplePersonService; + + @Autowired + public MasterDetailPersonView(SamplePersonService samplePersonService) { + this.samplePersonService = samplePersonService; + addClassNames("master-detail-person-view"); + + // Create UI + SplitLayout splitLayout = new SplitLayout(); + + createGridLayout(splitLayout); + createEditorLayout(splitLayout); + + add(splitLayout); + + // Configure Grid + grid.addColumn("firstName").setAutoWidth(true); + grid.addColumn("lastName").setAutoWidth(true); + grid.addColumn("email").setAutoWidth(true); + grid.addColumn("phone").setAutoWidth(true); + grid.addColumn("dateOfBirth").setAutoWidth(true); + grid.addColumn("occupation").setAutoWidth(true); + LitRenderer importantRenderer = LitRenderer.of( + "") + .withProperty("icon", important -> important.isImportant() ? "check" : "minus").withProperty("color", + important -> important.isImportant() + ? "var(--lumo-primary-text-color)" + : "var(--lumo-disabled-text-color)"); + + grid.addColumn(importantRenderer).setHeader("Important").setAutoWidth(true); + + grid.setItems(query -> samplePersonService.list( + PageRequest.of(query.getPage(), query.getPageSize(), VaadinSpringDataHelpers.toSpringDataSort(query))) + .stream()); + grid.addThemeVariants(GridVariant.LUMO_NO_BORDER); + + // when a row is selected or deselected, populate form + grid.asSingleSelect().addValueChangeListener(event -> { + if (event.getValue() != null) { + UI.getCurrent().navigate(String.format(SAMPLEPERSON_EDIT_ROUTE_TEMPLATE, event.getValue().getId())); + } else { + clearForm(); + UI.getCurrent().navigate(MasterDetailPersonView.class); + } + }); + + // Configure Form + binder = new BeanValidationBinder<>(SamplePerson.class); + + // Bind fields. This is where you'd define e.g. validation rules + + binder.bindInstanceFields(this); + + cancel.addClickListener(e -> { + clearForm(); + refreshGrid(); + }); + + save.addClickListener(e -> { + try { + if (this.samplePerson == null) { + this.samplePerson = new SamplePerson(); + } + binder.writeBean(this.samplePerson); + samplePersonService.update(this.samplePerson); + clearForm(); + refreshGrid(); + Notification.show("SamplePerson details stored."); + UI.getCurrent().navigate(MasterDetailPersonView.class); + } catch (ValidationException validationException) { + Notification.show("An exception happened while trying to store the samplePerson details."); + } + }); + + } + + @Override + public void beforeEnter(BeforeEnterEvent event) { + Optional samplePersonId = event.getRouteParameters().get(SAMPLEPERSON_ID).map(UUID::fromString); + if (samplePersonId.isPresent()) { + Optional samplePersonFromBackend = samplePersonService.get(samplePersonId.get()); + if (samplePersonFromBackend.isPresent()) { + populateForm(samplePersonFromBackend.get()); + } else { + Notification.show( + String.format("The requested samplePerson was not found, ID = %s", samplePersonId.get()), 3000, + Notification.Position.BOTTOM_START); + // when a row is selected but the data is no longer available, + // refresh grid + refreshGrid(); + event.forwardTo(MasterDetailPersonView.class); + } + } + } + + private void createEditorLayout(SplitLayout splitLayout) { + Div editorLayoutDiv = new Div(); + editorLayoutDiv.setClassName("editor-layout"); + + Div editorDiv = new Div(); + editorDiv.setClassName("editor"); + editorLayoutDiv.add(editorDiv); + + FormLayout formLayout = new FormLayout(); + firstName = new TextField("First Name"); + lastName = new TextField("Last Name"); + email = new TextField("Email"); + phone = new TextField("Phone"); + dateOfBirth = new DatePicker("Date Of Birth"); + occupation = new TextField("Occupation"); + important = new Checkbox("Important"); + formLayout.add(firstName, lastName, email, phone, dateOfBirth, occupation, important); + + editorDiv.add(formLayout); + createButtonLayout(editorLayoutDiv); + + splitLayout.addToSecondary(editorLayoutDiv); + } + + private void createButtonLayout(Div editorLayoutDiv) { + HorizontalLayout buttonLayout = new HorizontalLayout(); + buttonLayout.setClassName("button-layout"); + cancel.addThemeVariants(ButtonVariant.LUMO_TERTIARY); + save.addThemeVariants(ButtonVariant.LUMO_PRIMARY); + buttonLayout.add(save, cancel); + editorLayoutDiv.add(buttonLayout); + } + + private void createGridLayout(SplitLayout splitLayout) { + Div wrapper = new Div(); + wrapper.setClassName("grid-wrapper"); + splitLayout.addToPrimary(wrapper); + wrapper.add(grid); + } + + private void refreshGrid() { + grid.select(null); + grid.getDataProvider().refreshAll(); + } + + private void clearForm() { + populateForm(null); + } + + private void populateForm(SamplePerson value) { + this.samplePerson = value; + binder.readBean(this.samplePerson); + + } +} diff --git a/src/main/java/my/app/views/publicview/PublicviewView.java b/src/main/java/my/app/views/publicview/PublicviewView.java new file mode 100644 index 0000000..0474a3c --- /dev/null +++ b/src/main/java/my/app/views/publicview/PublicviewView.java @@ -0,0 +1,35 @@ +package my.app.views.publicview; + +import com.vaadin.flow.component.html.H2; +import com.vaadin.flow.component.html.Image; +import com.vaadin.flow.component.html.Paragraph; +import com.vaadin.flow.component.orderedlayout.VerticalLayout; +import com.vaadin.flow.router.PageTitle; +import com.vaadin.flow.router.Route; +import com.vaadin.flow.router.RouteAlias; +import com.vaadin.flow.server.auth.AnonymousAllowed; +import my.app.views.MainLayout; + +@PageTitle("Public view") +@Route(value = "public", layout = MainLayout.class) +@RouteAlias(value = "", layout = MainLayout.class) +@AnonymousAllowed +public class PublicviewView extends VerticalLayout { + + public PublicviewView() { + setSpacing(false); + + Image img = new Image("images/empty-plant.png", "placeholder plant"); + img.setWidth("200px"); + add(img); + + add(new H2("This place intentionally left empty")); + add(new Paragraph("It’s a place where you can grow your own UI 🤗")); + + setSizeFull(); + setJustifyContentMode(JustifyContentMode.CENTER); + setDefaultHorizontalComponentAlignment(Alignment.CENTER); + getStyle().set("text-align", "center"); + } + +} diff --git a/src/main/java/my/app/views/userroleonly/UserroleonlyView.java b/src/main/java/my/app/views/userroleonly/UserroleonlyView.java new file mode 100644 index 0000000..47ebca9 --- /dev/null +++ b/src/main/java/my/app/views/userroleonly/UserroleonlyView.java @@ -0,0 +1,35 @@ +package my.app.views.userroleonly; + +import com.vaadin.flow.component.Key; +import com.vaadin.flow.component.button.Button; +import com.vaadin.flow.component.notification.Notification; +import com.vaadin.flow.component.orderedlayout.HorizontalLayout; +import com.vaadin.flow.component.textfield.TextField; +import com.vaadin.flow.router.PageTitle; +import com.vaadin.flow.router.Route; +import javax.annotation.security.RolesAllowed; +import my.app.views.MainLayout; + +@PageTitle("'User' role only") +@Route(value = "user-role", layout = MainLayout.class) +@RolesAllowed("USER") +public class UserroleonlyView extends HorizontalLayout { + + private TextField name; + private Button sayHello; + + public UserroleonlyView() { + name = new TextField("Your name"); + sayHello = new Button("Say hello"); + sayHello.addClickListener(e -> { + Notification.show("Hello " + name.getValue()); + }); + sayHello.addClickShortcut(Key.ENTER); + + setMargin(true); + setVerticalComponentAlignment(Alignment.END, name, sayHello); + + add(name, sayHello); + } + +} diff --git a/src/main/resources/META-INF/resources/icons/icon.png b/src/main/resources/META-INF/resources/icons/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..df2ed4bd80778f7141c825ce9275984b4a34a15c GIT binary patch literal 2424 zcmb7GYdDl!8(!}_2Xi!xLSytzg|bPKGNKGdQ9{O+Mmf~5kr)bTi+7yjDmC;)Ax){I z!*)I-hJgV-~m>2#eiJdBKFd<3_8n6Io=hB2qm7CYu9O3 z0zkOu#&z^L08O-tR0RN${3zEeSF8KK#;IF&j$SWAQbB5s2(9EKzB z^Da35@IY%rH25Kcr3n#9Ea%9Z*qN$1Wn5aY^N2E|+p)g)VbS&ec{7g|RF_7zhQ9P@ z9yJtfd|8OyXCdeydcAzqT!x*f=r2AxXPA(bI&rxlm(Na~g!_06#7yqw%;pP2qxKW0 z6ekI)$kl&X1E*PbcXllP`;=MKDEWH-L1 zJqwMdAhJ)hd_>y^#1AECemZQfh2zWviA$auf@u4!aAZaKRY zzt3EQ&m*BaGq!6w!#6!QjVp^k`l^OPLIXZE{;(bPC>>2Eal&8cQ!do}fhTbSO8alG zTtPfKWo;-jt#)^Wq*{>P_TOkrLh~PZD%woFAO$Zs#BP|Ur)%DpWk617z1QQ88-)1z zQFk^LH&jMod<)$pvYS!Cl zlvPo+lA14Ikh02`Kd3WzuPUh}_%2sR*MHp}(E`)QsX$7ijsdr}5}}T|+&tFNw^y4n`en55hinWX3eD zrUd*`52D}1#C7m44j*)A<+5{qM3hNVlTz@ z&}_OK2K!qbBa5PBOPPX=CQ(E2!EWMGVb#a2*UV*tjHks26w7Xy9k`=g)T?*UXA4b4 zT+JhAiFZeQ3cR-nU$Hz!ynEAZ_JUZS5{D^+Sf89sP>2gBU3NozlO2ymlpmlNk&tU~ z8l21~3~T4hG|t!zM%*4d8-OskJwDtT*uBi_M35oopzFgx(ns+U|Icx(ICfeJMm@NM9 z5gt}L>Y#XDe6ZO!g)yo$zx07wvZcrLBXwYH^QN^Lx3w#Xc@?jfE1P1IcfRh@>{?ug z(lY8K9SXA&C+~L8obn4DY{A9AxKZWKvZ5KBTwD;466+ydnrO8LzB7|InNWPcjV|du z+srCh)$&Fs_KEV_=}k@h);n1h6tAD(oin#PLttU6HzFK5o{qimAKNoD!#r(s>@}Pc z_Mpb_em^W2Jbpt)Wwl#yLg${Jx(bch5weEylfompA_MC;)*u$K=X5T=6w3hqQVcgr zo6PT|B!aG8d=%YcKLRywF<*Kl-5%I9<@W$rDH$H*nNkt420<2PdJ)1(&0Zxe3Q@RQ z^_y}S`Q7j%*|^OJ`?c8Zu1>JcK4WVHBxdCobAQ7bhvYkL_w=cnYT|iNwU3T?MmffhO+zP#O<}9>mfrr z(08-6*k_mJvC^@SO)FMmEOlf`-<;zl+NJCb-y8<$zs;O0t2Z=(DvqHXHd7>;vH;eu z01*!CSR~}Y6R;a9#beX=h)~SKujH0|BB0U%D=BL|i3Jq|Q>2HWdv_6hVb2L95*yDy zKu3hsrUWc&o=9Yg#kcjwP^7oE8WNX%i8c_AneJ!9Pb7IcC`TdFMz|{8xF4Ay)&UIM zruFS*cNR})X^Cp>_HeQ^ATEBZHLIW~M&vnK%QLDS& zaBx>D7&3-MBB8=Ui`pcR!_W|3^nvIihx>F6UUBRrP|}r-gL-FpG{PTpxLa}$D?5(~ z^1OUtfz^ZENGMzs094B2z12!LQcCn%U;4xLj?1FUAswpf}2X^=6!9UzsZV2rin zQW!QL5n%EVSXASvFb8AuO(ae|-f)qSO>hn(261k%9w101NRJSM$C6{VE){=anRx%@ zDu$yEV}c=xpuqj5VVhnMewR-r=oNq zGDe`pZF$g*4Ld-XSS3>>kMgrt7pMfNlT@c~R=1HtAduBB#Q3bZz#Vr*^BVl&$`eeGVHm@3l9-1XQ{j&!?^`(YTdq~qC z@SZh%)lLn!tB`-_u2O$IP*%$Ooi)ocCRY8A-w*_xH{bdCE)GXm7r422aQ|`&O8pO# C@ant( literal 0 HcmV?d00001 diff --git a/src/main/resources/META-INF/resources/images/empty-plant.png b/src/main/resources/META-INF/resources/images/empty-plant.png new file mode 100644 index 0000000000000000000000000000000000000000..9777f260a67891001eb2444f49569037a74f671d GIT binary patch literal 70951 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 z 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 ({ + // Here you can add custom Vite parameters + // https://vitejs.dev/config/ +}); + +export default overrideVaadinConfig(customConfig);