diff options
| -rw-r--r-- | docker/nginx/sites/www/.dockerignore | 1 | ||||
| -rw-r--r-- | docker/nginx/sites/www/.proxyrc.json | 6 | ||||
| -rw-r--r-- | docker/nginx/sites/www/index.html | 81 | ||||
| -rw-r--r-- | docker/nginx/sites/www/package.json | 8 | ||||
| -rw-r--r-- | docker/nginx/sites/www/pnpm-lock.yaml | 1595 | ||||
| -rw-r--r-- | docker/nginx/sites/www/src/main.ts | 114 | ||||
| -rw-r--r-- | docker/nginx/sites/www/src/mock-todos.ts | 126 | ||||
| -rw-r--r-- | docker/nginx/sites/www/src/style.css | 142 | ||||
| -rw-r--r-- | docker/nginx/sites/www/src/todos.ts | 29 | 
9 files changed, 861 insertions, 1241 deletions
| diff --git a/docker/nginx/sites/www/.dockerignore b/docker/nginx/sites/www/.dockerignore index de4d1f0..ef718b9 100644 --- a/docker/nginx/sites/www/.dockerignore +++ b/docker/nginx/sites/www/.dockerignore @@ -1,2 +1,3 @@ +.parcel-cache  dist  node_modules diff --git a/docker/nginx/sites/www/.proxyrc.json b/docker/nginx/sites/www/.proxyrc.json deleted file mode 100644 index 8fe13c0..0000000 --- a/docker/nginx/sites/www/.proxyrc.json +++ /dev/null @@ -1,6 +0,0 @@ -{ -    "/api": { -        "target": "http://localhost:5188", -        "changeOrigin": true -    } -} diff --git a/docker/nginx/sites/www/index.html b/docker/nginx/sites/www/index.html index 03485c5..714bb2e 100644 --- a/docker/nginx/sites/www/index.html +++ b/docker/nginx/sites/www/index.html @@ -12,81 +12,54 @@  <body>    <div class="slogan-container">      <div class="slogan happy"> -      <span class="slogan-text">🙃The world is full of pain, but we can fix it with love!</span> +      <span>🙃The world is full of pain, but we can fix it with love!</span>      </div>      <div class="slogan angry"> -      <span class="slogan-text">😡The world is a piece of shit, so let's make it a little better!</span> +      <span>😡The world is a piece of shit, so let's make it a little better!</span>      </div>    </div>    <article id="main-article"> -    <img id="avatar" src="./avatar.png" title="my avatar" width="100" height="100"> -    <h1 id="title">Hello! This is <span id="title-name">crupest</span>.</h1> +    <img id="avatar" src="./avatar.png" title="my avatar" width="80" height="80"> +    <h1 id="title">Hello! This is <span id="title-name">crupest</span> !</h1>      <section> -      <p>Welcome to my home page! I'm very glad to meet you here.</p> -      <p>If you have something interesting to share with me, feel free to reach me via email at <a class="mono" -          href="mailto:crupest@outlook.com">crupest@outlook.com</a> or, of course, <a class="mono" -          href="mailto:I@crupest.life">I@crupest.life</a>. You can also fire an issue in -        any repo on GitHub. Here is the link to my GitHub profile, <a class="mono" -          href="https://github.com/crupest">https://github.com/crupest</a>.</p> -      <p>Currently this page is hosted on my own server and my own apex domain (crupest.life). You can also share this -        website link, aka, <a class="mono" href="https://crupest.life">https://crupest.life</a>.</p> +      <p>Welcome to my home page! Nice to meet you here!</p> +      <p>If you have something interesting to share with me, feel free to email me at +        <a href="mailto:crupest@crupest.life">crupest@crupest.life</a>.</p> +      <p>You can also file an issue in any of my repos on GitHub, +        <a href="https://github.com/crupest">https://github.com/crupest</a>.</p>      </section>      <section> -      <h2 id="todos">TODOs of me <span class="h-note">grabbed from <a -            href="https://github.com/users/crupest/projects/2">my Github -            project</a></span></h2> -      <p id="todo-message">Fetching...</p> -      <ul id="todo-container"> -      </ul> -    </section> -    <section> -      <h2 id="friends">Friends of me:</h2> +      <h2 id="friends">My Friends</h2>        <div id="friends-container">          <a class="friend-link" href="https://wsmcs.cn" target="_blank">            <img class="friend-img" -            src="https://wsmcs.cn/wp-content/uploads/2023/02/BifengxiaPanda_ZH-CN8879969527_UHD-scaled.jpg"> +            src="https://wsmcs.cn/wp-content/uploads/2023/02/BifengxiaPanda_ZH-CN8879969527_UHD-scaled.jpg" +            width="80" height="80">            <span class="friend-name">wsm</span>          </a>        </div>      </section>      <section> -      <p>This is just the home page. I also run some other services on my server under this domain:</p> -      <p>Public:</p> -      <ul> -        <li> -          https://crupest.life/api: Some APIs written in <a class="mono" -            href="https://learn.microsoft.com/en-us/aspnet/core/introduction-to-aspnet-core" target="_blank">ASP.NET -            Core</a>. -        </li> -        <li><a class="mono" href="https://blog.crupest.life" target="_blank">https://blog.crupest.life</a>: My blogs -          built with <a class="mono" href="https://gohugo.io" target="_blank">hugo</a>.</li> -        <li><a class="mono" href="https://timeline.crupest.life" target="_blank">https://timeline.crupest.life</a>: My -          micro-blogs -          with -          my own web app <a class="mono" href="https://github.com/crupest/Timeline">Timeline</a>.</li> -        <li><a href="https://github.crupest.life" target="_blank">https://github.crupest.life</a>: Redirect to my github -          profile, aka, <a class="mono" href="https://github.com/crupest">https://github.com/crupest</a>.</li> -      </ul> -      <p>Private:</p> +      <h2>Other Links</h2>        <ul> -        <li><a class="mono" href="https://code.crupest.life" target="_blank">https://code.crupest.life</a>: Browser -          based vscode with -          <a class="mono" href="https://github.com/coder/code-server" target="_blank">code-server</a>. +        <li><a href="https://crupest.life" target="_blank">https://crupest.life</a> : my home page, +          aka the one you are reading. Built with <a href="https://parceljs.org" target="_blank">Parcel</a> +          and <a href="https://pnpm.io" target="_blank">pnpm</a>.</li> +        <li><a href="https://crupest.life/blog" target="_blank">https://crupest.life/blog</a> : my blogs +          built with <a href="https://gohugo.io" target="_blank">hugo</a>.</li> +        <li><a href="https://git.crupest.life" target="_blank">https://git.crupest.life</a> : my private +          hosted <a href="https://forgejo.org" target="_blank">Forgejo</a> instance.</li> +        <li><del><a href="https://timeline.crupest.life" target="_blank">https://timeline.crupest.life</a> : my +          micro-blog with my own web app <a href="https://github.com/crupest/Timeline">Timeline</a>.</del> +          No longer maintain, so it stops serving due to security problems.          </li>        </ul> -      <p>If you wish to deploy similar services like me, you are in the right place. Take a look at <a class="mono" -          href="https://github.com/crupest/crupest" target="_blank">https://github.com/crupest/crupest</a> and there is -        all you need to start with. Also, contact me if you run into some problem.</p>      </section>      <footer> -      <p>That's all of me!</p> -      <p>© 2022 crupest</p> -      <p> -        <a rel="license" href="https://creativecommons.org/licenses/by-nc/4.0/"><img alt="Creative Commons License" -            style="border-width:0" src="https://i.creativecommons.org/l/by-nc/4.0/88x31.png" /></a><br />This work is -        licensed under a <a rel="license" href="https://creativecommons.org/licenses/by-nc/4.0/">Creative Commons -          Attribution-NonCommercial 4.0 International License</a>. -      </p> +      © 2025 crupest <a rel="license" href="https://creativecommons.org/licenses/by-nc/4.0/"><img alt="Creative Commons License" +        src="https://i.creativecommons.org/l/by-nc/4.0/88x31.png" /></a><br/> +      This work is licensed under a <a rel="license" href="https://creativecommons.org/licenses/by-nc/4.0/">Creative Commons +      Attribution-NonCommercial 4.0 International License</a>.      </footer>    </article>    <script type="module" src="./src/main.ts"></script> diff --git a/docker/nginx/sites/www/package.json b/docker/nginx/sites/www/package.json index c42bb29..daf1e9a 100644 --- a/docker/nginx/sites/www/package.json +++ b/docker/nginx/sites/www/package.json @@ -8,10 +8,10 @@      "build": "tsc && parcel build"    },    "devDependencies": { -    "@tsconfig/recommended": "^1.0.7", +    "@tsconfig/recommended": "^1.0.8",      "@types/parcel-env": "^0.0.6", -    "parcel": "^2.12.0", -    "prettier": "^3.3.3", -    "typescript": "^5.5.4" +    "parcel": "^2.13.3", +    "prettier": "^3.4.2", +    "typescript": "^5.7.3"    }  }
\ No newline at end of file diff --git a/docker/nginx/sites/www/pnpm-lock.yaml b/docker/nginx/sites/www/pnpm-lock.yaml index aa83a70..eb2ca04 100644 --- a/docker/nginx/sites/www/pnpm-lock.yaml +++ b/docker/nginx/sites/www/pnpm-lock.yaml @@ -9,37 +9,33 @@ importers:    .:      devDependencies:        '@tsconfig/recommended': -        specifier: ^1.0.7 -        version: 1.0.7 +        specifier: ^1.0.8 +        version: 1.0.8        '@types/parcel-env':          specifier: ^0.0.6          version: 0.0.6        parcel: -        specifier: ^2.12.0 -        version: 2.12.0(@swc/helpers@0.5.12)(typescript@5.5.4) +        specifier: ^2.13.3 +        version: 2.13.3(@swc/helpers@0.5.15)(typescript@5.7.3)        prettier: -        specifier: ^3.3.3 -        version: 3.3.3 +        specifier: ^3.4.2 +        version: 3.4.2        typescript: -        specifier: ^5.5.4 -        version: 5.5.4 +        specifier: ^5.7.3 +        version: 5.7.3  packages: -  '@babel/code-frame@7.24.7': -    resolution: {integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==} +  '@babel/code-frame@7.26.2': +    resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==}      engines: {node: '>=6.9.0'} -  '@babel/helper-validator-identifier@7.24.7': -    resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==} +  '@babel/helper-validator-identifier@7.25.9': +    resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==}      engines: {node: '>=6.9.0'} -  '@babel/highlight@7.24.7': -    resolution: {integrity: sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==} -    engines: {node: '>=6.9.0'} - -  '@lezer/common@1.2.1': -    resolution: {integrity: sha512-yemX0ZD2xS/73llMZIK6KplkjIjf2EvAHcinDi/TfJ9hS25G0388+ClHt6/3but0oOxinTcQHJLDXh6w1crzFQ==} +  '@lezer/common@1.2.3': +    resolution: {integrity: sha512-w7ojc8ejBqr2REPsWxJjrMFsA/ysDCFICn8zEOR9mrqzOu2amhITYuLD8ag6XZf0CFXDrhKqw7+tW8cX66NaDA==}    '@lezer/lr@1.4.2':      resolution: {integrity: sha512-pu0K1jCIdnQ12aWNaAVU5bzi7Bd1w54J3ECgANPmYLtQKP0HBj2cE/5coBD66MT10xbtIuUr7tg0Shbsvk0mDA==} @@ -108,366 +104,379 @@ packages:      cpu: [x64]      os: [win32] -  '@parcel/bundler-default@2.12.0': -    resolution: {integrity: sha512-3ybN74oYNMKyjD6V20c9Gerdbh7teeNvVMwIoHIQMzuIFT6IGX53PyOLlOKRLbjxMc0TMimQQxIt2eQqxR5LsA==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/bundler-default@2.13.3': +    resolution: {integrity: sha512-mOuWeth0bZzRv1b9Lrvydis/hAzJyePy0gwa0tix3/zyYBvw0JY+xkXVR4qKyD/blc1Ra2qOlfI2uD3ucnsdXA==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/cache@2.12.0': -    resolution: {integrity: sha512-FX5ZpTEkxvq/yvWklRHDESVRz+c7sLTXgFuzz6uEnBcXV38j6dMSikflNpHA6q/L4GKkCqRywm9R6XQwhwIMyw==} -    engines: {node: '>= 12.0.0'} +  '@parcel/cache@2.13.3': +    resolution: {integrity: sha512-Vz5+K5uCt9mcuQAMDo0JdbPYDmVdB8Nvu/A2vTEK2rqZPxvoOTczKeMBA4JqzKqGURHPRLaJCvuR8nDG+jhK9A==} +    engines: {node: '>= 16.0.0'}      peerDependencies: -      '@parcel/core': ^2.12.0 +      '@parcel/core': ^2.13.3 -  '@parcel/codeframe@2.12.0': -    resolution: {integrity: sha512-v2VmneILFiHZJTxPiR7GEF1wey1/IXPdZMcUlNXBiPZyWDfcuNgGGVQkx/xW561rULLIvDPharOMdxz5oHOKQg==} -    engines: {node: '>= 12.0.0'} +  '@parcel/codeframe@2.13.3': +    resolution: {integrity: sha512-L/PQf+PT0xM8k9nc0B+PxxOYO2phQYnbuifu9o4pFRiqVmCtHztP+XMIvRJ2gOEXy3pgAImSPFVJ3xGxMFky4g==} +    engines: {node: '>= 16.0.0'} -  '@parcel/compressor-raw@2.12.0': -    resolution: {integrity: sha512-h41Q3X7ZAQ9wbQ2csP8QGrwepasLZdXiuEdpUryDce6rF9ZiHoJ97MRpdLxOhOPyASTw/xDgE1xyaPQr0Q3f5A==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/compressor-raw@2.13.3': +    resolution: {integrity: sha512-C6vjDlgTLjYc358i7LA/dqcL0XDQZ1IHXFw6hBaHHOfxPKW2T4bzUI6RURyToEK9Q1X7+ggDKqgdLxwp4veCFg==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/config-default@2.12.0': -    resolution: {integrity: sha512-dPNe2n9eEsKRc1soWIY0yToMUPirPIa2QhxcCB3Z5RjpDGIXm0pds+BaiqY6uGLEEzsjhRO0ujd4v2Rmm0vuFg==} +  '@parcel/config-default@2.13.3': +    resolution: {integrity: sha512-WUsx83ic8DgLwwnL1Bua4lRgQqYjxiTT+DBxESGk1paNm1juWzyfPXEQDLXwiCTcWMQGiXQFQ8OuSISauVQ8dQ==}      peerDependencies: -      '@parcel/core': ^2.12.0 +      '@parcel/core': ^2.13.3 -  '@parcel/core@2.12.0': -    resolution: {integrity: sha512-s+6pwEj+GfKf7vqGUzN9iSEPueUssCCQrCBUlcAfKrJe0a22hTUCjewpB0I7lNrCIULt8dkndD+sMdOrXsRl6Q==} -    engines: {node: '>= 12.0.0'} +  '@parcel/core@2.13.3': +    resolution: {integrity: sha512-SRZFtqGiaKHlZ2YAvf+NHvBFWS3GnkBvJMfOJM7kxJRK3M1bhbwJa/GgSdzqro5UVf9Bfj6E+pkdrRQIOZ7jMQ==} +    engines: {node: '>= 16.0.0'} -  '@parcel/diagnostic@2.12.0': -    resolution: {integrity: sha512-8f1NOsSFK+F4AwFCKynyIu9Kr/uWHC+SywAv4oS6Bv3Acig0gtwUjugk0C9UaB8ztBZiW5TQZhw+uPZn9T/lJA==} -    engines: {node: '>= 12.0.0'} +  '@parcel/diagnostic@2.13.3': +    resolution: {integrity: sha512-C70KXLBaXLJvr7XCEVu8m6TqNdw1gQLxqg5BQ8roR62R4vWWDnOq8PEksxDi4Y8Z/FF4i3Sapv6tRx9iBNxDEg==} +    engines: {node: '>= 16.0.0'} -  '@parcel/events@2.12.0': -    resolution: {integrity: sha512-nmAAEIKLjW1kB2cUbCYSmZOGbnGj8wCzhqnK727zCCWaA25ogzAtt657GPOeFyqW77KyosU728Tl63Fc8hphIA==} -    engines: {node: '>= 12.0.0'} +  '@parcel/events@2.13.3': +    resolution: {integrity: sha512-ZkSHTTbD/E+53AjUzhAWTnMLnxLEU5yRw0H614CaruGh+GjgOIKyukGeToF5Gf/lvZ159VrJCGE0Z5EpgHVkuQ==} +    engines: {node: '>= 16.0.0'} -  '@parcel/fs@2.12.0': -    resolution: {integrity: sha512-NnFkuvou1YBtPOhTdZr44WN7I60cGyly2wpHzqRl62yhObyi1KvW0SjwOMa0QGNcBOIzp4G0CapoZ93hD0RG5Q==} -    engines: {node: '>= 12.0.0'} +  '@parcel/feature-flags@2.13.3': +    resolution: {integrity: sha512-UZm14QpamDFoUut9YtCZSpG1HxPs07lUwUCpsAYL0PpxASD3oWJQxIJGfDZPa2272DarXDG9adTKrNXvkHZblw==} +    engines: {node: '>= 16.0.0'} + +  '@parcel/fs@2.13.3': +    resolution: {integrity: sha512-+MPWAt0zr+TCDSlj1LvkORTjfB/BSffsE99A9AvScKytDSYYpY2s0t4vtV9unSh0FHMS2aBCZNJ4t7KL+DcPIg==} +    engines: {node: '>= 16.0.0'}      peerDependencies: -      '@parcel/core': ^2.12.0 +      '@parcel/core': ^2.13.3 -  '@parcel/graph@3.2.0': -    resolution: {integrity: sha512-xlrmCPqy58D4Fg5umV7bpwDx5Vyt7MlnQPxW68vae5+BA4GSWetfZt+Cs5dtotMG2oCHzZxhIPt7YZ7NRyQzLA==} -    engines: {node: '>= 12.0.0'} +  '@parcel/graph@3.3.3': +    resolution: {integrity: sha512-pxs4GauEdvCN8nRd6wG3st6LvpHske3GfqGwUSR0P0X0pBPI1/NicvXz6xzp3rgb9gPWfbKXeI/2IOTfIxxVfg==} +    engines: {node: '>= 16.0.0'} -  '@parcel/logger@2.12.0': -    resolution: {integrity: sha512-cJ7Paqa7/9VJ7C+KwgJlwMqTQBOjjn71FbKk0G07hydUEBISU2aDfmc/52o60ErL9l+vXB26zTrIBanbxS8rVg==} -    engines: {node: '>= 12.0.0'} +  '@parcel/logger@2.13.3': +    resolution: {integrity: sha512-8YF/ZhsQgd7ohQ2vEqcMD1Ag9JlJULROWRPGgGYLGD+twuxAiSdiFBpN3f+j4gQN4PYaLaIS/SwUFx11J243fQ==} +    engines: {node: '>= 16.0.0'} -  '@parcel/markdown-ansi@2.12.0': -    resolution: {integrity: sha512-WZz3rzL8k0H3WR4qTHX6Ic8DlEs17keO9gtD4MNGyMNQbqQEvQ61lWJaIH0nAtgEetu0SOITiVqdZrb8zx/M7w==} -    engines: {node: '>= 12.0.0'} +  '@parcel/markdown-ansi@2.13.3': +    resolution: {integrity: sha512-B4rUdlNUulJs2xOQuDbN7Hq5a9roq8IZUcJ1vQ8PAv+zMGb7KCfqIIr/BSCDYGhayfAGBVWW8x55Kvrl1zrDYw==} +    engines: {node: '>= 16.0.0'} -  '@parcel/namer-default@2.12.0': -    resolution: {integrity: sha512-9DNKPDHWgMnMtqqZIMiEj/R9PNWW16lpnlHjwK3ciRlMPgjPJ8+UNc255teZODhX0T17GOzPdGbU/O/xbxVPzA==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/namer-default@2.13.3': +    resolution: {integrity: sha512-A2a5A5fuyNcjSGOS0hPcdQmOE2kszZnLIXof7UMGNkNkeC62KAG8WcFZH5RNOY3LT5H773hq51zmc2Y2gE5Rnw==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/node-resolver-core@3.3.0': -    resolution: {integrity: sha512-rhPW9DYPEIqQBSlYzz3S0AjXxjN6Ub2yS6tzzsW/4S3Gpsgk/uEq4ZfxPvoPf/6TgZndVxmKwpmxaKtGMmf3cA==} -    engines: {node: '>= 12.0.0'} +  '@parcel/node-resolver-core@3.4.3': +    resolution: {integrity: sha512-IEnMks49egEic1ITBp59VQyHzkSQUXqpU9hOHwqN3KoSTdZ6rEgrXcS3pa6tdXay4NYGlcZ88kFCE8i/xYoVCg==} +    engines: {node: '>= 16.0.0'} -  '@parcel/optimizer-css@2.12.0': -    resolution: {integrity: sha512-ifbcC97fRzpruTjaa8axIFeX4MjjSIlQfem3EJug3L2AVqQUXnM1XO8L0NaXGNLTW2qnh1ZjIJ7vXT/QhsphsA==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/optimizer-css@2.13.3': +    resolution: {integrity: sha512-A8o9IVCv919vhv69SkLmyW2WjJR5WZgcMqV6L1uiGF8i8z18myrMhrp2JuSHx29PRT9uNyzNC4Xrd4StYjIhJg==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/optimizer-htmlnano@2.12.0': -    resolution: {integrity: sha512-MfPMeCrT8FYiOrpFHVR+NcZQlXAptK2r4nGJjfT+ndPBhEEZp4yyL7n1y7HfX9geg5altc4WTb4Gug7rCoW8VQ==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/optimizer-htmlnano@2.13.3': +    resolution: {integrity: sha512-K4Uvg0Sy2pECP7pdvvbud++F0pfcbNkq+IxTrgqBX5HJnLEmRZwgdvZEKF43oMEolclMnURMQRGjRplRaPdbXg==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/optimizer-image@2.12.0': -    resolution: {integrity: sha512-bo1O7raeAIbRU5nmNVtx8divLW9Xqn0c57GVNGeAK4mygnQoqHqRZ0mR9uboh64pxv6ijXZHPhKvU9HEpjPjBQ==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/optimizer-image@2.13.3': +    resolution: {integrity: sha512-wlDUICA29J4UnqkKrWiyt68g1e85qfYhp4zJFcFJL0LX1qqh1QwsLUz3YJ+KlruoqPxJSFEC8ncBEKiVCsqhEQ==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3}      peerDependencies: -      '@parcel/core': ^2.12.0 +      '@parcel/core': ^2.13.3 -  '@parcel/optimizer-svgo@2.12.0': -    resolution: {integrity: sha512-Kyli+ZZXnoonnbeRQdoWwee9Bk2jm/49xvnfb+2OO8NN0d41lblBoRhOyFiScRnJrw7eVl1Xrz7NTkXCIO7XFQ==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/optimizer-svgo@2.13.3': +    resolution: {integrity: sha512-piIKxQKzhZK54dJR6yqIcq+urZmpsfgUpLCZT3cnWlX4ux5+S2iN66qqZBs0zVn+a58LcWcoP4Z9ieiJmpiu2w==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/optimizer-swc@2.12.0': -    resolution: {integrity: sha512-iBi6LZB3lm6WmbXfzi8J3DCVPmn4FN2lw7DGXxUXu7MouDPVWfTsM6U/5TkSHJRNRogZ2gqy5q9g34NPxHbJcw==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/optimizer-swc@2.13.3': +    resolution: {integrity: sha512-zNSq6oWqLlW8ksPIDjM0VgrK6ZAJbPQCDvs1V+p0oX3CzEe85lT5VkRpnfrN1+/vvEJNGL8e60efHKpI+rXGTA==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/package-manager@2.12.0': -    resolution: {integrity: sha512-0nvAezcjPx9FT+hIL+LS1jb0aohwLZXct7jAh7i0MLMtehOi0z1Sau+QpgMlA9rfEZZ1LIeFdnZZwqSy7Ccspw==} -    engines: {node: '>= 12.0.0'} +  '@parcel/package-manager@2.13.3': +    resolution: {integrity: sha512-FLNI5OrZxymGf/Yln0E/kjnGn5sdkQAxW7pQVdtuM+5VeN75yibJRjsSGv88PvJ+KvpD2ANgiIJo1RufmoPcww==} +    engines: {node: '>= 16.0.0'}      peerDependencies: -      '@parcel/core': ^2.12.0 +      '@parcel/core': ^2.13.3 -  '@parcel/packager-css@2.12.0': -    resolution: {integrity: sha512-j3a/ODciaNKD19IYdWJT+TP+tnhhn5koBGBWWtrKSu0UxWpnezIGZetit3eE+Y9+NTePalMkvpIlit2eDhvfJA==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/packager-css@2.13.3': +    resolution: {integrity: sha512-ghDqRMtrUwaDERzFm9le0uz2PTeqqsjsW0ihQSZPSAptElRl9o5BR+XtMPv3r7Ui0evo+w35gD55oQCJ28vCig==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/packager-html@2.12.0': -    resolution: {integrity: sha512-PpvGB9hFFe+19NXGz2ApvPrkA9GwEqaDAninT+3pJD57OVBaxB8U+HN4a5LICKxjUppPPqmrLb6YPbD65IX4RA==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/packager-html@2.13.3': +    resolution: {integrity: sha512-jDLnKSA/EzVEZ3/aegXO3QJ/Ij732AgBBkIQfeC8tUoxwVz5b3HiPBAjVjcUSfZs7mdBSHO+ELWC3UD+HbsIrQ==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/packager-js@2.12.0': -    resolution: {integrity: sha512-viMF+FszITRRr8+2iJyk+4ruGiL27Y6AF7hQ3xbJfzqnmbOhGFtLTQwuwhOLqN/mWR2VKdgbLpZSarWaO3yAMg==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/packager-js@2.13.3': +    resolution: {integrity: sha512-0pMHHf2zOn7EOJe88QJw5h/wcV1bFfj6cXVcE55Wa8GX3V+SdCgolnlvNuBcRQ1Tlx0Xkpo+9hMFVIQbNQY6zw==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/packager-raw@2.12.0': -    resolution: {integrity: sha512-tJZqFbHqP24aq1F+OojFbQIc09P/u8HAW5xfndCrFnXpW4wTgM3p03P0xfw3gnNq+TtxHJ8c3UFE5LnXNNKhYA==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/packager-raw@2.13.3': +    resolution: {integrity: sha512-AWu4UB+akBdskzvT3KGVHIdacU9f7cI678DQQ1jKQuc9yZz5D0VFt3ocFBOmvDfEQDF0uH3jjtJR7fnuvX7Biw==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/packager-svg@2.12.0': -    resolution: {integrity: sha512-ldaGiacGb2lLqcXas97k8JiZRbAnNREmcvoY2W2dvW4loVuDT9B9fU777mbV6zODpcgcHWsLL3lYbJ5Lt3y9cg==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/packager-svg@2.13.3': +    resolution: {integrity: sha512-tKGRiFq/4jh5u2xpTstNQ7gu+RuZWzlWqpw5NaFmcKe6VQe5CMcS499xTFoREAGnRvevSeIgC38X1a+VOo+/AA==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/packager-wasm@2.12.0': -    resolution: {integrity: sha512-fYqZzIqO9fGYveeImzF8ll6KRo2LrOXfD+2Y5U3BiX/wp9wv17dz50QLDQm9hmTcKGWxK4yWqKQh+Evp/fae7A==} -    engines: {node: '>=12.0.0', parcel: ^2.12.0} +  '@parcel/packager-wasm@2.13.3': +    resolution: {integrity: sha512-SZB56/b230vFrSehVXaUAWjJmWYc89gzb8OTLkBm7uvtFtov2J1R8Ig9TTJwinyXE3h84MCFP/YpQElSfoLkJw==} +    engines: {node: '>=16.0.0', parcel: ^2.13.3} -  '@parcel/plugin@2.12.0': -    resolution: {integrity: sha512-nc/uRA8DiMoe4neBbzV6kDndh/58a4wQuGKw5oEoIwBCHUvE2W8ZFSu7ollSXUGRzfacTt4NdY8TwS73ScWZ+g==} -    engines: {node: '>= 12.0.0'} +  '@parcel/plugin@2.13.3': +    resolution: {integrity: sha512-cterKHHcwg6q11Gpif/aqvHo056TR+yDVJ3fSdiG2xr5KD1VZ2B3hmofWERNNwjMcnR1h9Xq40B7jCKUhOyNFA==} +    engines: {node: '>= 16.0.0'} -  '@parcel/profiler@2.12.0': -    resolution: {integrity: sha512-q53fvl5LDcFYzMUtSusUBZSjQrKjMlLEBgKeQHFwkimwR1mgoseaDBDuNz0XvmzDzF1UelJ02TUKCGacU8W2qA==} -    engines: {node: '>= 12.0.0'} +  '@parcel/profiler@2.13.3': +    resolution: {integrity: sha512-ok6BwWSLvyHe5TuSXjSacYnDStFgP5Y30tA9mbtWSm0INDsYf+m5DqzpYPx8U54OaywWMK8w3MXUClosJX3aPA==} +    engines: {node: '>= 16.0.0'} -  '@parcel/reporter-cli@2.12.0': -    resolution: {integrity: sha512-TqKsH4GVOLPSCanZ6tcTPj+rdVHERnt5y4bwTM82cajM21bCX1Ruwp8xOKU+03091oV2pv5ieB18pJyRF7IpIw==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/reporter-cli@2.13.3': +    resolution: {integrity: sha512-EA5tKt/6bXYNMEavSs35qHlFdx6cZmRazlZxPBgxPePQYoouNAPMNLUOEQozaPhz9f5fvNDN7EHOFaAWcdO2LA==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/reporter-dev-server@2.12.0': -    resolution: {integrity: sha512-tIcDqRvAPAttRlTV28dHcbWT5K2r/MBFks7nM4nrEDHWtnrCwimkDmZTc1kD8QOCCjGVwRHcQybpHvxfwol6GA==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/reporter-dev-server@2.13.3': +    resolution: {integrity: sha512-ZNeFp6AOIQFv7mZIv2P5O188dnZHNg0ymeDVcakfZomwhpSva2dFNS3AnvWo4eyWBlUxkmQO8BtaxeWTs7jAuA==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/reporter-tracer@2.12.0': -    resolution: {integrity: sha512-g8rlu9GxB8Ut/F8WGx4zidIPQ4pcYFjU9bZO+fyRIPrSUFH2bKijCnbZcr4ntqzDGx74hwD6cCG4DBoleq2UlQ==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/reporter-tracer@2.13.3': +    resolution: {integrity: sha512-aBsVPI8jLZTDkFYrI69GxnsdvZKEYerkPsu935LcX9rfUYssOnmmUP+3oI+8fbg+qNjJuk9BgoQ4hCp9FOphMQ==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/resolver-default@2.12.0': -    resolution: {integrity: sha512-uuhbajTax37TwCxu7V98JtRLiT6hzE4VYSu5B7Qkauy14/WFt2dz6GOUXPgVsED569/hkxebPx3KCMtZW6cHHA==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/resolver-default@2.13.3': +    resolution: {integrity: sha512-urBZuRALWT9pFMeWQ8JirchLmsQEyI9lrJptiwLbJWrwvmlwSUGkcstmPwoNRf/aAQjICB7ser/247Vny0pFxA==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/runtime-browser-hmr@2.12.0': -    resolution: {integrity: sha512-4ZLp2FWyD32r0GlTulO3+jxgsA3oO1P1b5oO2IWuWilfhcJH5LTiazpL5YdusUjtNn9PGN6QLAWfxmzRIfM+Ow==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/runtime-browser-hmr@2.13.3': +    resolution: {integrity: sha512-EAcPojQFUNUGUrDk66cu3ySPO0NXRVS5CKPd4QrxPCVVbGzde4koKu8krC/TaGsoyUqhie8HMnS70qBP0GFfcQ==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/runtime-js@2.12.0': -    resolution: {integrity: sha512-sBerP32Z1crX5PfLNGDSXSdqzlllM++GVnVQVeM7DgMKS8JIFG3VLi28YkX+dYYGtPypm01JoIHCkvwiZEcQJg==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/runtime-js@2.13.3': +    resolution: {integrity: sha512-62OucNAnxb2Q0uyTFWW/0Hvv2DJ4b5H6neh/YFu2/wmxaZ37xTpEuEcG2do7KW54xE5DeLP+RliHLwi4NvR3ww==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/runtime-react-refresh@2.12.0': -    resolution: {integrity: sha512-SCHkcczJIDFTFdLTzrHTkQ0aTrX3xH6jrA4UsCBL6ji61+w+ohy4jEEe9qCgJVXhnJfGLE43HNXek+0MStX+Mw==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/runtime-react-refresh@2.13.3': +    resolution: {integrity: sha512-PYZ1klpJVwqE3WuifILjtF1dugtesHEuJcXYZI85T6UoRSD5ctS1nAIpZzT14Ga1lRt/jd+eAmhWL1l3m/Vk1Q==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/runtime-service-worker@2.12.0': -    resolution: {integrity: sha512-BXuMBsfiwpIEnssn+jqfC3jkgbS8oxeo3C7xhSQsuSv+AF2FwY3O3AO1c1RBskEW3XrBLNINOJujroNw80VTKA==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/runtime-service-worker@2.13.3': +    resolution: {integrity: sha512-BjMhPuT7Us1+YIo31exPRwomPiL+jrZZS5UUAwlEW2XGHDceEotzRM94LwxeFliCScT4IOokGoxixm19qRuzWg==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/rust@2.12.0': -    resolution: {integrity: sha512-005cldMdFZFDPOjbDVEXcINQ3wT4vrxvSavRWI3Az0e3E18exO/x/mW9f648KtXugOXMAqCEqhFHcXECL9nmMw==} -    engines: {node: '>= 12.0.0'} +  '@parcel/rust@2.13.3': +    resolution: {integrity: sha512-dLq85xDAtzr3P5200cvxk+8WXSWauYbxuev9LCPdwfhlaWo/JEj6cu9seVdWlkagjGwkoV1kXC+GGntgUXOLAQ==} +    engines: {node: '>= 16.0.0'}    '@parcel/source-map@2.1.1':      resolution: {integrity: sha512-Ejx1P/mj+kMjQb8/y5XxDUn4reGdr+WyKYloBljpppUy8gs42T+BNoEOuRYqDVdgPc6NxduzIDoJS9pOFfV5Ew==}      engines: {node: ^12.18.3 || >=14} -  '@parcel/transformer-babel@2.12.0': -    resolution: {integrity: sha512-zQaBfOnf/l8rPxYGnsk/ufh/0EuqvmnxafjBIpKZ//j6rGylw5JCqXSb1QvvAqRYruKeccxGv7+HrxpqKU6V4A==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/transformer-babel@2.13.3': +    resolution: {integrity: sha512-ikzK9f5WTFrdQsPitQgjCPH6HmVU8AQPRemIJ2BndYhtodn5PQut5cnSvTrqax8RjYvheEKCQk/Zb/uR7qgS3g==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/transformer-css@2.12.0': -    resolution: {integrity: sha512-vXhOqoAlQGATYyQ433Z1DXKmiKmzOAUmKysbYH3FD+LKEKLMEl/pA14goqp00TW+A/EjtSKKyeMyHlMIIUqj4Q==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/transformer-css@2.13.3': +    resolution: {integrity: sha512-zbrNURGph6JeVADbGydyZ7lcu/izj41kDxQ9xw4RPRW/3rofQiTU0OTREi+uBWiMENQySXVivEdzHA9cA+aLAA==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/transformer-html@2.12.0': -    resolution: {integrity: sha512-5jW4dFFBlYBvIQk4nrH62rfA/G/KzVzEDa6S+Nne0xXhglLjkm64Ci9b/d4tKZfuGWUbpm2ASAq8skti/nfpXw==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/transformer-html@2.13.3': +    resolution: {integrity: sha512-Yf74FkL9RCCB4+hxQRVMNQThH9+fZ5w0NLiQPpWUOcgDEEyxTi4FWPQgEBsKl/XK2ehdydbQB9fBgPQLuQxwPg==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/transformer-image@2.12.0': -    resolution: {integrity: sha512-8hXrGm2IRII49R7lZ0RpmNk27EhcsH+uNKsvxuMpXPuEnWgC/ha/IrjaI29xCng1uGur74bJF43NUSQhR4aTdw==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/transformer-image@2.13.3': +    resolution: {integrity: sha512-wL1CXyeFAqbp2wcEq/JD3a/tbAyVIDMTC6laQxlIwnVV7dsENhK1qRuJZuoBdixESeUpFQSmmQvDIhcfT/cUUg==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3}      peerDependencies: -      '@parcel/core': ^2.12.0 +      '@parcel/core': ^2.13.3 -  '@parcel/transformer-js@2.12.0': -    resolution: {integrity: sha512-OSZpOu+FGDbC/xivu24v092D9w6EGytB3vidwbdiJ2FaPgfV7rxS0WIUjH4I0OcvHAcitArRXL0a3+HrNTdQQw==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/transformer-js@2.13.3': +    resolution: {integrity: sha512-KqfNGn1IHzDoN2aPqt4nDksgb50Xzcny777C7A7hjlQ3cmkjyJrixYjzzsPaPSGJ+kJpknh3KE8unkQ9mhFvRQ==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3}      peerDependencies: -      '@parcel/core': ^2.12.0 +      '@parcel/core': ^2.13.3 -  '@parcel/transformer-json@2.12.0': -    resolution: {integrity: sha512-Utv64GLRCQILK5r0KFs4o7I41ixMPllwOLOhkdjJKvf1hZmN6WqfOmB1YLbWS/y5Zb/iB52DU2pWZm96vLFQZQ==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/transformer-json@2.13.3': +    resolution: {integrity: sha512-rrq0ab6J0w9ePtsxi0kAvpCmrUYXXAx1Z5PATZakv89rSYbHBKEdXxyCoKFui/UPVCUEGVs5r0iOFepdHpIyeA==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/transformer-postcss@2.12.0': -    resolution: {integrity: sha512-FZqn+oUtiLfPOn67EZxPpBkfdFiTnF4iwiXPqvst3XI8H+iC+yNgzmtJkunOOuylpYY6NOU5jT8d7saqWSDv2Q==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/transformer-postcss@2.13.3': +    resolution: {integrity: sha512-AIiWpU0QSFBrPcYIqAnhqB8RGE6yHFznnxztfg1t2zMSOnK3xoU6xqYKv8H/MduShGGrC3qVOeDfM8MUwzL3cw==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/transformer-posthtml@2.12.0': -    resolution: {integrity: sha512-z6Z7rav/pcaWdeD+2sDUcd0mmNZRUvtHaUGa50Y2mr+poxrKilpsnFMSiWBT+oOqPt7j71jzDvrdnAF4XkCljg==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/transformer-posthtml@2.13.3': +    resolution: {integrity: sha512-5GSLyccpHASwFAu3uJ83gDIBSvfsGdVmhJvy0Vxe+K1Fklk2ibhvvtUHMhB7mg6SPHC+R9jsNc3ZqY04ZLeGjw==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/transformer-raw@2.12.0': -    resolution: {integrity: sha512-Ht1fQvXxix0NncdnmnXZsa6hra20RXYh1VqhBYZLsDfkvGGFnXIgO03Jqn4Z8MkKoa0tiNbDhpKIeTjyclbBxQ==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/transformer-raw@2.13.3': +    resolution: {integrity: sha512-BFsAbdQF0l8/Pdb7dSLJeYcd8jgwvAUbHgMink2MNXJuRUvDl19Gns8jVokU+uraFHulJMBj40+K/RTd33in4g==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/transformer-react-refresh-wrap@2.12.0': -    resolution: {integrity: sha512-GE8gmP2AZtkpBIV5vSCVhewgOFRhqwdM5Q9jNPOY5PKcM3/Ff0qCqDiTzzGLhk0/VMBrdjssrfZkVx6S/lHdJw==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/transformer-react-refresh-wrap@2.13.3': +    resolution: {integrity: sha512-mOof4cRyxsZRdg8kkWaFtaX98mHpxUhcGPU+nF9RQVa9q737ItxrorsPNR9hpZAyE2TtFNflNW7RoYsgvlLw8w==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/transformer-svg@2.12.0': -    resolution: {integrity: sha512-cZJqGRJ4JNdYcb+vj94J7PdOuTnwyy45dM9xqbIMH+HSiiIkfrMsdEwYft0GTyFTdsnf+hdHn3tau7Qa5hhX+A==} -    engines: {node: '>= 12.0.0', parcel: ^2.12.0} +  '@parcel/transformer-svg@2.13.3': +    resolution: {integrity: sha512-9jm7ZF4KHIrGLWlw/SFUz5KKJ20nxHvjFAmzde34R9Wu+F1BOjLZxae7w4ZRwvIc+UVOUcBBQFmhSVwVDZg6Dw==} +    engines: {node: '>= 16.0.0', parcel: ^2.13.3} -  '@parcel/types@2.12.0': -    resolution: {integrity: sha512-8zAFiYNCwNTQcglIObyNwKfRYQK5ELlL13GuBOrSMxueUiI5ylgsGbTS1N7J3dAGZixHO8KhHGv5a71FILn9rQ==} +  '@parcel/types-internal@2.13.3': +    resolution: {integrity: sha512-Lhx0n+9RCp+Ipktf/I+CLm3zE9Iq9NtDd8b2Vr5lVWyoT8AbzBKIHIpTbhLS4kjZ80L3I6o93OYjqAaIjsqoZw==} -  '@parcel/utils@2.12.0': -    resolution: {integrity: sha512-z1JhLuZ8QmDaYoEIuUCVZlhcFrS7LMfHrb2OCRui5SQFntRWBH2fNM6H/fXXUkT9SkxcuFP2DUA6/m4+Gkz72g==} -    engines: {node: '>= 12.0.0'} +  '@parcel/types@2.13.3': +    resolution: {integrity: sha512-+RpFHxx8fy8/dpuehHUw/ja9PRExC3wJoIlIIF42E7SLu2SvlTHtKm6EfICZzxCXNEBzjoDbamCRcN0nmTPlhw==} -  '@parcel/watcher-android-arm64@2.4.1': -    resolution: {integrity: sha512-LOi/WTbbh3aTn2RYddrO8pnapixAziFl6SMxHM69r3tvdSm94JtCenaKgk1GRg5FJ5wpMCpHeW+7yqPlvZv7kg==} +  '@parcel/utils@2.13.3': +    resolution: {integrity: sha512-yxY9xw2wOUlJaScOXYZmMGoZ4Ck4Kqj+p6Koe5kLkkWM1j98Q0Dj2tf/mNvZi4yrdnlm+dclCwNRnuE8Q9D+pw==} +    engines: {node: '>= 16.0.0'} + +  '@parcel/watcher-android-arm64@2.5.0': +    resolution: {integrity: sha512-qlX4eS28bUcQCdribHkg/herLe+0A9RyYC+mm2PXpncit8z5b3nSqGVzMNR3CmtAOgRutiZ02eIJJgP/b1iEFQ==}      engines: {node: '>= 10.0.0'}      cpu: [arm64]      os: [android] -  '@parcel/watcher-darwin-arm64@2.4.1': -    resolution: {integrity: sha512-ln41eihm5YXIY043vBrrHfn94SIBlqOWmoROhsMVTSXGh0QahKGy77tfEywQ7v3NywyxBBkGIfrWRHm0hsKtzA==} +  '@parcel/watcher-darwin-arm64@2.5.0': +    resolution: {integrity: sha512-hyZ3TANnzGfLpRA2s/4U1kbw2ZI4qGxaRJbBH2DCSREFfubMswheh8TeiC1sGZ3z2jUf3s37P0BBlrD3sjVTUw==}      engines: {node: '>= 10.0.0'}      cpu: [arm64]      os: [darwin] -  '@parcel/watcher-darwin-x64@2.4.1': -    resolution: {integrity: sha512-yrw81BRLjjtHyDu7J61oPuSoeYWR3lDElcPGJyOvIXmor6DEo7/G2u1o7I38cwlcoBHQFULqF6nesIX3tsEXMg==} +  '@parcel/watcher-darwin-x64@2.5.0': +    resolution: {integrity: sha512-9rhlwd78saKf18fT869/poydQK8YqlU26TMiNg7AIu7eBp9adqbJZqmdFOsbZ5cnLp5XvRo9wcFmNHgHdWaGYA==}      engines: {node: '>= 10.0.0'}      cpu: [x64]      os: [darwin] -  '@parcel/watcher-freebsd-x64@2.4.1': -    resolution: {integrity: sha512-TJa3Pex/gX3CWIx/Co8k+ykNdDCLx+TuZj3f3h7eOjgpdKM+Mnix37RYsYU4LHhiYJz3DK5nFCCra81p6g050w==} +  '@parcel/watcher-freebsd-x64@2.5.0': +    resolution: {integrity: sha512-syvfhZzyM8kErg3VF0xpV8dixJ+RzbUaaGaeb7uDuz0D3FK97/mZ5AJQ3XNnDsXX7KkFNtyQyFrXZzQIcN49Tw==}      engines: {node: '>= 10.0.0'}      cpu: [x64]      os: [freebsd] -  '@parcel/watcher-linux-arm-glibc@2.4.1': -    resolution: {integrity: sha512-4rVYDlsMEYfa537BRXxJ5UF4ddNwnr2/1O4MHM5PjI9cvV2qymvhwZSFgXqbS8YoTk5i/JR0L0JDs69BUn45YA==} +  '@parcel/watcher-linux-arm-glibc@2.5.0': +    resolution: {integrity: sha512-0VQY1K35DQET3dVYWpOaPFecqOT9dbuCfzjxoQyif1Wc574t3kOSkKevULddcR9znz1TcklCE7Ht6NIxjvTqLA==} +    engines: {node: '>= 10.0.0'} +    cpu: [arm] +    os: [linux] + +  '@parcel/watcher-linux-arm-musl@2.5.0': +    resolution: {integrity: sha512-6uHywSIzz8+vi2lAzFeltnYbdHsDm3iIB57d4g5oaB9vKwjb6N6dRIgZMujw4nm5r6v9/BQH0noq6DzHrqr2pA==}      engines: {node: '>= 10.0.0'}      cpu: [arm]      os: [linux] -  '@parcel/watcher-linux-arm64-glibc@2.4.1': -    resolution: {integrity: sha512-BJ7mH985OADVLpbrzCLgrJ3TOpiZggE9FMblfO65PlOCdG++xJpKUJ0Aol74ZUIYfb8WsRlUdgrZxKkz3zXWYA==} +  '@parcel/watcher-linux-arm64-glibc@2.5.0': +    resolution: {integrity: sha512-BfNjXwZKxBy4WibDb/LDCriWSKLz+jJRL3cM/DllnHH5QUyoiUNEp3GmL80ZqxeumoADfCCP19+qiYiC8gUBjA==}      engines: {node: '>= 10.0.0'}      cpu: [arm64]      os: [linux] -  '@parcel/watcher-linux-arm64-musl@2.4.1': -    resolution: {integrity: sha512-p4Xb7JGq3MLgAfYhslU2SjoV9G0kI0Xry0kuxeG/41UfpjHGOhv7UoUDAz/jb1u2elbhazy4rRBL8PegPJFBhA==} +  '@parcel/watcher-linux-arm64-musl@2.5.0': +    resolution: {integrity: sha512-S1qARKOphxfiBEkwLUbHjCY9BWPdWnW9j7f7Hb2jPplu8UZ3nes7zpPOW9bkLbHRvWM0WDTsjdOTUgW0xLBN1Q==}      engines: {node: '>= 10.0.0'}      cpu: [arm64]      os: [linux] -  '@parcel/watcher-linux-x64-glibc@2.4.1': -    resolution: {integrity: sha512-s9O3fByZ/2pyYDPoLM6zt92yu6P4E39a03zvO0qCHOTjxmt3GHRMLuRZEWhWLASTMSrrnVNWdVI/+pUElJBBBg==} +  '@parcel/watcher-linux-x64-glibc@2.5.0': +    resolution: {integrity: sha512-d9AOkusyXARkFD66S6zlGXyzx5RvY+chTP9Jp0ypSTC9d4lzyRs9ovGf/80VCxjKddcUvnsGwCHWuF2EoPgWjw==}      engines: {node: '>= 10.0.0'}      cpu: [x64]      os: [linux] -  '@parcel/watcher-linux-x64-musl@2.4.1': -    resolution: {integrity: sha512-L2nZTYR1myLNST0O632g0Dx9LyMNHrn6TOt76sYxWLdff3cB22/GZX2UPtJnaqQPdCRoszoY5rcOj4oMTtp5fQ==} +  '@parcel/watcher-linux-x64-musl@2.5.0': +    resolution: {integrity: sha512-iqOC+GoTDoFyk/VYSFHwjHhYrk8bljW6zOhPuhi5t9ulqiYq1togGJB5e3PwYVFFfeVgc6pbz3JdQyDoBszVaA==}      engines: {node: '>= 10.0.0'}      cpu: [x64]      os: [linux] -  '@parcel/watcher-win32-arm64@2.4.1': -    resolution: {integrity: sha512-Uq2BPp5GWhrq/lcuItCHoqxjULU1QYEcyjSO5jqqOK8RNFDBQnenMMx4gAl3v8GiWa59E9+uDM7yZ6LxwUIfRg==} +  '@parcel/watcher-win32-arm64@2.5.0': +    resolution: {integrity: sha512-twtft1d+JRNkM5YbmexfcH/N4znDtjgysFaV9zvZmmJezQsKpkfLYJ+JFV3uygugK6AtIM2oADPkB2AdhBrNig==}      engines: {node: '>= 10.0.0'}      cpu: [arm64]      os: [win32] -  '@parcel/watcher-win32-ia32@2.4.1': -    resolution: {integrity: sha512-maNRit5QQV2kgHFSYwftmPBxiuK5u4DXjbXx7q6eKjq5dsLXZ4FJiVvlcw35QXzk0KrUecJmuVFbj4uV9oYrcw==} +  '@parcel/watcher-win32-ia32@2.5.0': +    resolution: {integrity: sha512-+rgpsNRKwo8A53elqbbHXdOMtY/tAtTzManTWShB5Kk54N8Q9mzNWV7tV+IbGueCbcj826MfWGU3mprWtuf1TA==}      engines: {node: '>= 10.0.0'}      cpu: [ia32]      os: [win32] -  '@parcel/watcher-win32-x64@2.4.1': -    resolution: {integrity: sha512-+DvS92F9ezicfswqrvIRM2njcYJbd5mb9CUgtrHCHmvn7pPPa+nMDRu1o1bYYz/l5IB2NVGNJWiH7h1E58IF2A==} +  '@parcel/watcher-win32-x64@2.5.0': +    resolution: {integrity: sha512-lPrxve92zEHdgeff3aiu4gDOIt4u7sJYha6wbdEZDCDUhtjTsOMiaJzG5lMY4GkWH8p0fMmO2Ppq5G5XXG+DQw==}      engines: {node: '>= 10.0.0'}      cpu: [x64]      os: [win32] -  '@parcel/watcher@2.4.1': -    resolution: {integrity: sha512-HNjmfLQEVRZmHRET336f20H/8kOozUGwk7yajvsonjNxbj2wBTK1WsQuHkD5yYh9RxFGL2EyDHryOihOwUoKDA==} +  '@parcel/watcher@2.5.0': +    resolution: {integrity: sha512-i0GV1yJnm2n3Yq1qw6QrUrd/LI9bE8WEBOTtOkpCXHHdyN3TAGgqAK/DAT05z4fq2x04cARXt2pDmjWjL92iTQ==}      engines: {node: '>= 10.0.0'} -  '@parcel/workers@2.12.0': -    resolution: {integrity: sha512-zv5We5Jmb+ZWXlU6A+AufyjY4oZckkxsZ8J4dvyWL0W8IQvGO1JB4FGeryyttzQv3RM3OxcN/BpTGPiDG6keBw==} -    engines: {node: '>= 12.0.0'} +  '@parcel/workers@2.13.3': +    resolution: {integrity: sha512-oAHmdniWTRwwwsKbcF4t3VjOtKN+/W17Wj5laiYB+HLkfsjGTfIQPj3sdXmrlBAGpI4omIcvR70PHHXnfdTfwA==} +    engines: {node: '>= 16.0.0'}      peerDependencies: -      '@parcel/core': ^2.12.0 +      '@parcel/core': ^2.13.3 -  '@swc/core-darwin-arm64@1.7.11': -    resolution: {integrity: sha512-HRQv4qIeMBPThZ6Y/4yYW52rGsS6yrpusvuxLGyoFo45Y0y12/V2yXkOIA/0HIQyrqoUAxn1k4zQXpPaPNCmnw==} +  '@swc/core-darwin-arm64@1.10.8': +    resolution: {integrity: sha512-FtacTu9zS5YuepujQqujveNw8BQ8ESJ+pN1Z7C+WrKCHlCl+5dh0n6gMAlEj+3iRvY6UAYqkzTVeiX/bOMoJKA==}      engines: {node: '>=10'}      cpu: [arm64]      os: [darwin] -  '@swc/core-darwin-x64@1.7.11': -    resolution: {integrity: sha512-vtMQj0F3oYwDu5yhO7SKDRg1XekRSi6/TbzHAbBXv+dBhlGGvcZZynT1H90EVFTv+7w7Sh+lOFvRv5Z4ZTcxow==} +  '@swc/core-darwin-x64@1.10.8': +    resolution: {integrity: sha512-nfk+iq7EKQwADaCERzZLSi9ovzjJcqDWaO4e2ztyCNaLFi6fP1m6+ij21aki5KAd8AXoY4fue4Mo2fuYbesX9Q==}      engines: {node: '>=10'}      cpu: [x64]      os: [darwin] -  '@swc/core-linux-arm-gnueabihf@1.7.11': -    resolution: {integrity: sha512-mHtzWKxhtyreI4CSxs+3+ENv8t/Qo35WFoYG66qHEgJz/Z2Lh6jv1E+MYgHdYwnpQHgHbdvAco7HsBu/Dt6xXw==} +  '@swc/core-linux-arm-gnueabihf@1.10.8': +    resolution: {integrity: sha512-CL2zfbnrEc6nIiWbgshOz0mjn/zY8JcYqO12vGcTxmZOrh0n+mmHN2ejX91pYWQnQDtbhCmFTaEndExFpA7Gww==}      engines: {node: '>=10'}      cpu: [arm]      os: [linux] -  '@swc/core-linux-arm64-gnu@1.7.11': -    resolution: {integrity: sha512-FRwe/x0GfXSQjGP2lIk+NO0pUFS/lI/RorCLBPiK808EVE9JTbh9DKCc/4Bbb4jgScAjNkrFCUVObQYl3YKmpA==} +  '@swc/core-linux-arm64-gnu@1.10.8': +    resolution: {integrity: sha512-quS8F18DDScW3B7qnbWkz95abZ5p0xp/W8N498NAAls/YQj4jQIlf8WlAWoxVVjY/SmSus5kN5tuwhHD8t0NPw==}      engines: {node: '>=10'}      cpu: [arm64]      os: [linux] -  '@swc/core-linux-arm64-musl@1.7.11': -    resolution: {integrity: sha512-GY/rs0+GUq14Gbnza90KOrQd/9yHd5qQMii5jcSWcUCT5A8QTa8kiicsM2NxZeTJ69xlKmT7sLod5l99lki/2A==} +  '@swc/core-linux-arm64-musl@1.10.8': +    resolution: {integrity: sha512-wI0Hny8fHbBK/OjJ7eFYP0uDKiCMMMr5OBWGKMRRUvWs2zlGeJQZbwUeCnWuLLXzDfL+feMfh5TieYlqKTTtRw==}      engines: {node: '>=10'}      cpu: [arm64]      os: [linux] -  '@swc/core-linux-x64-gnu@1.7.11': -    resolution: {integrity: sha512-QDkGRwSPmp2RBOlSs503IUXlWYlny8DyznTT0QuK0ML2RpDFlXWU94K/EZhS0RBEUkMY/W51OacM8P8aS/dkCg==} +  '@swc/core-linux-x64-gnu@1.10.8': +    resolution: {integrity: sha512-24FCRUFO8gzPP2eu3soHTm3lk+ktcsIhdM2DTOlXGA+2TBYFWgAZX/yZV+eeRrtIZYSr4OcOWsNWnQ5Ma4budA==}      engines: {node: '>=10'}      cpu: [x64]      os: [linux] -  '@swc/core-linux-x64-musl@1.7.11': -    resolution: {integrity: sha512-SBEfKrXy6zQ6ksnyxw1FaCftrIH4fLfA81xNnKb7x/6iblv7Ko6H0aK3P5C86jyqF/82+ONl9C7ImGkUFQADig==} +  '@swc/core-linux-x64-musl@1.10.8': +    resolution: {integrity: sha512-mBo7M/FmUhoWpUG17MLbS98iRA7t6ThxQBWDJZd322whkN1GqrvumYm2wvvjmoMTeDOPwAL3hIIa5H+Q4vb1zA==}      engines: {node: '>=10'}      cpu: [x64]      os: [linux] -  '@swc/core-win32-arm64-msvc@1.7.11': -    resolution: {integrity: sha512-a2Y4xxEsLLYHJN7sMnw9+YQJDi3M1BxEr9hklfopPuGGnYLFNnx5CypH1l9ReijEfWjIAHNi7pq3m023lzW1Hg==} +  '@swc/core-win32-arm64-msvc@1.10.8': +    resolution: {integrity: sha512-rXJ9y77JZZXoZkgFR0mObKa3TethRBJ6Exs/pwhScl9pz4qsfxhj/bQbEu1g1i/ihmd0l+IKZwGSC7Ibh3HA2Q==}      engines: {node: '>=10'}      cpu: [arm64]      os: [win32] -  '@swc/core-win32-ia32-msvc@1.7.11': -    resolution: {integrity: sha512-ZbZFMwZO+j8ulhegJ7EhJ/QVZPoQ5qc30ylJQSxizizTJaen71Q7/13lXWc6ksuCKvg6dUKrp/TPgoxOOtSrFA==} +  '@swc/core-win32-ia32-msvc@1.10.8': +    resolution: {integrity: sha512-n6ekYFJEBPvTpRIqJiu6EHXVzVnuCtDTpFnn/0KVGJI1yQHriGVEovnb/+qyLh8Rwx2AZM9qgZVgMhVtfcFQJg==}      engines: {node: '>=10'}      cpu: [ia32]      os: [win32] -  '@swc/core-win32-x64-msvc@1.7.11': -    resolution: {integrity: sha512-IUohZedSJyDu/ReEBG/mqX6uG29uA7zZ9z6dIAF+p6eFxjXmh9MuHryyM+H8ebUyoq/Ad3rL+rUCksnuYNnI0w==} +  '@swc/core-win32-x64-msvc@1.10.8': +    resolution: {integrity: sha512-vplXxtH/lFc/epELnAyvdCvqlDJrM+OKtkphYcbPqq50g/dEZYZ8FYHU5Df9Uo19UooWSo1LaxPk4R7n6i1Axw==}      engines: {node: '>=10'}      cpu: [x64]      os: [win32] -  '@swc/core@1.7.11': -    resolution: {integrity: sha512-AB+qc45UrJrDfbhPKcUXk+9z/NmFfYYwJT6G7/iur0fCse9kXjx45gi40+u/O2zgarG/30/zV6E3ps8fUvjh7g==} +  '@swc/core@1.10.8': +    resolution: {integrity: sha512-I3G+n9qbHNu6KNraaAG1+Z1S1x5S7MGRA6OEppT8Pt3Z9uD5a/kYAGU33eXy7zY+BoKuKA2X1H0r4vSimAgU8w==}      engines: {node: '>=10'}      peerDependencies:        '@swc/helpers': '*' @@ -478,29 +487,18 @@ packages:    '@swc/counter@0.1.3':      resolution: {integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==} -  '@swc/helpers@0.5.12': -    resolution: {integrity: sha512-KMZNXiGibsW9kvZAO1Pam2JPTDBm+KSHMMHWdsyI/1DbIZjT2A6Gy3hblVXUMEDvUAKq+e0vL0X0o54owWji7g==} +  '@swc/helpers@0.5.15': +    resolution: {integrity: sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==} -  '@swc/types@0.1.12': -    resolution: {integrity: sha512-wBJA+SdtkbFhHjTMYH+dEH1y4VpfGdAc2Kw/LK09i9bXd/K6j6PkDcFCEzb6iVfZMkPRrl/q0e3toqTAJdkIVA==} +  '@swc/types@0.1.17': +    resolution: {integrity: sha512-V5gRru+aD8YVyCOMAjMpWR1Ui577DD5KSJsHP8RAxopAH22jFz6GZd/qxqjO6MJHQhcsjvjOFXyDhyLQUnMveQ==} -  '@trysound/sax@0.2.0': -    resolution: {integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==} -    engines: {node: '>=10.13.0'} - -  '@tsconfig/recommended@1.0.7': -    resolution: {integrity: sha512-xiNMgCuoy4mCL4JTywk9XFs5xpRUcKxtWEcMR6FNMtsgewYTIgIR+nvlP4A4iRCAzRsHMnPhvTRrzp4AGcRTEA==} +  '@tsconfig/recommended@1.0.8': +    resolution: {integrity: sha512-TotjFaaXveVUdsrXCdalyF6E5RyG6+7hHHQVZonQtdlk1rJZ1myDIvPUUKPhoYv+JAzThb2lQJh9+9ZfF46hsA==}    '@types/parcel-env@0.0.6':      resolution: {integrity: sha512-HlPNbKhUe+0xVqzeqttl/gFC27dUZCjrUSI6MlfGoudjCtNeVOwm2kmDalkfXVWXsj4NJ4oa0PO3SdtOdGaGDg==} -  abortcontroller-polyfill@1.7.5: -    resolution: {integrity: sha512-JMJ5soJWP18htbbxJjG7bG6yuI6pRhgJ0scHHTfkUjf6wjP912xZWvM+A4sJK3gqd9E8fcPbDnOefbA9Th/FIQ==} - -  ansi-styles@3.2.1: -    resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} -    engines: {node: '>=4'} -    ansi-styles@4.3.0:      resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}      engines: {node: '>=8'} @@ -511,15 +509,12 @@ packages:    base-x@3.0.10:      resolution: {integrity: sha512-7d0s06rR9rYaIWHkpfLIFICM/tkSVdoPC9qYAQRpxn9DdKNWNsKC0uk++akckyLq16Tx2WIinnZ6WRriAt6njQ==} -  boolbase@1.0.0: -    resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} -    braces@3.0.3:      resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}      engines: {node: '>=8'} -  browserslist@4.23.3: -    resolution: {integrity: sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==} +  browserslist@4.24.4: +    resolution: {integrity: sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==}      engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}      hasBin: true @@ -527,12 +522,8 @@ packages:      resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}      engines: {node: '>=6'} -  caniuse-lite@1.0.30001651: -    resolution: {integrity: sha512-9Cf+Xv1jJNe1xPZLGuUXLNkE1BoDkqRqYyFJ9TDYSqhduqA4hu4oR9HluGoWYQC/aj8WHjsGVV+bwkh0+tegRg==} - -  chalk@2.4.2: -    resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} -    engines: {node: '>=4'} +  caniuse-lite@1.0.30001695: +    resolution: {integrity: sha512-vHyLade6wTgI2u1ec3WQBxv+2BrTERV28UXQu9LO6lZ9pYeMk34vjXFLOxo1A4UBA8XTL4njRQZdno/yYaSmWw==}    chalk@4.1.2:      resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} @@ -546,22 +537,16 @@ packages:      resolution: {integrity: sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==}      engines: {node: '>=0.8'} -  color-convert@1.9.3: -    resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} -    color-convert@2.0.1:      resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}      engines: {node: '>=7.0.0'} -  color-name@1.1.3: -    resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} -    color-name@1.1.4:      resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} -  commander@7.2.0: -    resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} -    engines: {node: '>= 10'} +  commander@12.1.0: +    resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==} +    engines: {node: '>=18'}    cosmiconfig@9.0.0:      resolution: {integrity: sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==} @@ -572,21 +557,6 @@ packages:        typescript:          optional: true -  css-select@4.3.0: -    resolution: {integrity: sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==} - -  css-tree@1.1.3: -    resolution: {integrity: sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==} -    engines: {node: '>=8.0.0'} - -  css-what@6.1.0: -    resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==} -    engines: {node: '>= 6'} - -  csso@4.2.0: -    resolution: {integrity: sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==} -    engines: {node: '>=8.0.0'} -    detect-libc@1.0.3:      resolution: {integrity: sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==}      engines: {node: '>=0.10'} @@ -599,6 +569,9 @@ packages:    dom-serializer@1.4.1:      resolution: {integrity: sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==} +  dom-serializer@2.0.0: +    resolution: {integrity: sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==} +    domelementtype@2.3.0:      resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==} @@ -606,18 +579,26 @@ packages:      resolution: {integrity: sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==}      engines: {node: '>= 4'} +  domhandler@5.0.3: +    resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==} +    engines: {node: '>= 4'} +    domutils@2.8.0:      resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==} -  dotenv-expand@5.1.0: -    resolution: {integrity: sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==} +  domutils@3.2.2: +    resolution: {integrity: sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==} -  dotenv@7.0.0: -    resolution: {integrity: sha512-M3NhsLbV1i6HuGzBUH8vXrtxOk+tWmzWKDMbAVSUp3Zsjm7ywFeuwrUXhmhQyRK1q5B5GGy7hcXPbj3bnfZg2g==} -    engines: {node: '>=6'} +  dotenv-expand@11.0.7: +    resolution: {integrity: sha512-zIHwmZPRshsCdpMDyVsqGmgyP0yT8GAgXUnkdAoJisxvf33k7yO6OuoKmcTGuXPWSsm8Oh88nZicRLA9Y0rUeA==} +    engines: {node: '>=12'} + +  dotenv@16.4.7: +    resolution: {integrity: sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==} +    engines: {node: '>=12'} -  electron-to-chromium@1.5.9: -    resolution: {integrity: sha512-HfkT8ndXR0SEkU8gBQQM3rz035bpE/hxkZ1YIt4KJPEFES68HfIU6LzKukH0H794Lm83WJtkSAMfEToxCs15VA==} +  electron-to-chromium@1.5.83: +    resolution: {integrity: sha512-LcUDPqSt+V0QmI47XLzZrz5OqILSMGsPFkDYus22rIbgorSvBYEFqq854ltTmUdHkY92FSdAAvsh4jWEULMdfQ==}    entities@2.2.0:      resolution: {integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==} @@ -626,6 +607,10 @@ packages:      resolution: {integrity: sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==}      engines: {node: '>=0.12'} +  entities@4.5.0: +    resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} +    engines: {node: '>=0.12'} +    env-paths@2.2.1:      resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==}      engines: {node: '>=6'} @@ -633,14 +618,10 @@ packages:    error-ex@1.3.2:      resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} -  escalade@3.1.2: -    resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==} +  escalade@3.2.0: +    resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}      engines: {node: '>=6'} -  escape-string-regexp@1.0.5: -    resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} -    engines: {node: '>=0.8.0'} -    fill-range@7.1.1:      resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==}      engines: {node: '>=8'} @@ -653,10 +634,6 @@ packages:      resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==}      engines: {node: '>=8'} -  has-flag@3.0.0: -    resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} -    engines: {node: '>=4'} -    has-flag@4.0.0:      resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}      engines: {node: '>=8'} @@ -693,6 +670,9 @@ packages:    htmlparser2@7.2.0:      resolution: {integrity: sha512-H7MImA4MS6cw7nbyURtLPO1Tms7C5H602LRETv95z1MxO/7CP7rDVROehUYeYBUYEON94NXXDEPmZuq+hX4sog==} +  htmlparser2@9.1.0: +    resolution: {integrity: sha512-5zfg6mHUoaer/97TxnGpxmbR7zJtPwIYFMZ/H5ucTlPZhKvtum05yiPK3Mgai3a0DyVxv7qYqoweaEd2nrYQzQ==} +    import-fresh@3.3.0:      resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==}      engines: {node: '>=6'} @@ -730,68 +710,68 @@ packages:      engines: {node: '>=6'}      hasBin: true -  lightningcss-darwin-arm64@1.26.0: -    resolution: {integrity: sha512-n4TIvHO1NY1ondKFYpL2ZX0bcC2y6yjXMD6JfyizgR8BCFNEeArINDzEaeqlfX9bXz73Bpz/Ow0nu+1qiDrBKg==} +  lightningcss-darwin-arm64@1.29.1: +    resolution: {integrity: sha512-HtR5XJ5A0lvCqYAoSv2QdZZyoHNttBpa5EP9aNuzBQeKGfbyH5+UipLWvVzpP4Uml5ej4BYs5I9Lco9u1fECqw==}      engines: {node: '>= 12.0.0'}      cpu: [arm64]      os: [darwin] -  lightningcss-darwin-x64@1.26.0: -    resolution: {integrity: sha512-Rf9HuHIDi1R6/zgBkJh25SiJHF+dm9axUZW/0UoYCW1/8HV0gMI0blARhH4z+REmWiU1yYT/KyNF3h7tHyRXUg==} +  lightningcss-darwin-x64@1.29.1: +    resolution: {integrity: sha512-k33G9IzKUpHy/J/3+9MCO4e+PzaFblsgBjSGlpAaFikeBFm8B/CkO3cKU9oI4g+fjS2KlkLM/Bza9K/aw8wsNA==}      engines: {node: '>= 12.0.0'}      cpu: [x64]      os: [darwin] -  lightningcss-freebsd-x64@1.26.0: -    resolution: {integrity: sha512-C/io7POAxp6sZxFSVGezjajMlCKQ8KSwISLLGRq8xLQpQMokYrUoqYEwmIX8mLmF6C/CZPk0gFmRSzd8biWM0g==} +  lightningcss-freebsd-x64@1.29.1: +    resolution: {integrity: sha512-0SUW22fv/8kln2LnIdOCmSuXnxgxVC276W5KLTwoehiO0hxkacBxjHOL5EtHD8BAXg2BvuhsJPmVMasvby3LiQ==}      engines: {node: '>= 12.0.0'}      cpu: [x64]      os: [freebsd] -  lightningcss-linux-arm-gnueabihf@1.26.0: -    resolution: {integrity: sha512-Aag9kqXqkyPSW+dXMgyWk66C984Nay2pY8Nws+67gHlDzV3cWh7TvFlzuaTaVFMVqdDTzN484LSK3u39zFBnzg==} +  lightningcss-linux-arm-gnueabihf@1.29.1: +    resolution: {integrity: sha512-sD32pFvlR0kDlqsOZmYqH/68SqUMPNj+0pucGxToXZi4XZgZmqeX/NkxNKCPsswAXU3UeYgDSpGhu05eAufjDg==}      engines: {node: '>= 12.0.0'}      cpu: [arm]      os: [linux] -  lightningcss-linux-arm64-gnu@1.26.0: -    resolution: {integrity: sha512-iJmZM7fUyVjH+POtdiCtExG+67TtPUTer7K/5A8DIfmPfrmeGvzfRyBltGhQz13Wi15K1lf2cPYoRaRh6vcwNA==} +  lightningcss-linux-arm64-gnu@1.29.1: +    resolution: {integrity: sha512-0+vClRIZ6mmJl/dxGuRsE197o1HDEeeRk6nzycSy2GofC2JsY4ifCRnvUWf/CUBQmlrvMzt6SMQNMSEu22csWQ==}      engines: {node: '>= 12.0.0'}      cpu: [arm64]      os: [linux] -  lightningcss-linux-arm64-musl@1.26.0: -    resolution: {integrity: sha512-XxoEL++tTkyuvu+wq/QS8bwyTXZv2y5XYCMcWL45b8XwkiS8eEEEej9BkMGSRwxa5J4K+LDeIhLrS23CpQyfig==} +  lightningcss-linux-arm64-musl@1.29.1: +    resolution: {integrity: sha512-UKMFrG4rL/uHNgelBsDwJcBqVpzNJbzsKkbI3Ja5fg00sgQnHw/VrzUTEc4jhZ+AN2BvQYz/tkHu4vt1kLuJyw==}      engines: {node: '>= 12.0.0'}      cpu: [arm64]      os: [linux] -  lightningcss-linux-x64-gnu@1.26.0: -    resolution: {integrity: sha512-1dkTfZQAYLj8MUSkd6L/+TWTG8V6Kfrzfa0T1fSlXCXQHrt1HC1/UepXHtKHDt/9yFwyoeayivxXAsApVxn6zA==} +  lightningcss-linux-x64-gnu@1.29.1: +    resolution: {integrity: sha512-u1S+xdODy/eEtjADqirA774y3jLcm8RPtYztwReEXoZKdzgsHYPl0s5V52Tst+GKzqjebkULT86XMSxejzfISw==}      engines: {node: '>= 12.0.0'}      cpu: [x64]      os: [linux] -  lightningcss-linux-x64-musl@1.26.0: -    resolution: {integrity: sha512-yX3Rk9m00JGCUzuUhFEojY+jf/6zHs3XU8S8Vk+FRbnr4St7cjyMXdNjuA2LjiT8e7j8xHRCH8hyZ4H/btRE4A==} +  lightningcss-linux-x64-musl@1.29.1: +    resolution: {integrity: sha512-L0Tx0DtaNUTzXv0lbGCLB/c/qEADanHbu4QdcNOXLIe1i8i22rZRpbT3gpWYsCh9aSL9zFujY/WmEXIatWvXbw==}      engines: {node: '>= 12.0.0'}      cpu: [x64]      os: [linux] -  lightningcss-win32-arm64-msvc@1.26.0: -    resolution: {integrity: sha512-X/597/cFnCogy9VItj/+7Tgu5VLbAtDF7KZDPdSw0MaL6FL940th1y3HiOzFIlziVvAtbo0RB3NAae1Oofr+Tw==} +  lightningcss-win32-arm64-msvc@1.29.1: +    resolution: {integrity: sha512-QoOVnkIEFfbW4xPi+dpdft/zAKmgLgsRHfJalEPYuJDOWf7cLQzYg0DEh8/sn737FaeMJxHZRc1oBreiwZCjog==}      engines: {node: '>= 12.0.0'}      cpu: [arm64]      os: [win32] -  lightningcss-win32-x64-msvc@1.26.0: -    resolution: {integrity: sha512-pYS3EyGP3JRhfqEFYmfFDiZ9/pVNfy8jVIYtrx9TVNusVyDK3gpW1w/rbvroQ4bDJi7grdUtyrYU6V2xkY/bBw==} +  lightningcss-win32-x64-msvc@1.29.1: +    resolution: {integrity: sha512-NygcbThNBe4JElP+olyTI/doBNGJvLs3bFCRPdvuCcxZCcCZ71B858IHpdm7L1btZex0FvCmM17FK98Y9MRy1Q==}      engines: {node: '>= 12.0.0'}      cpu: [x64]      os: [win32] -  lightningcss@1.26.0: -    resolution: {integrity: sha512-a/XZ5hdgifrofQJUArr5AiJjx26SwMam3SJUSMjgebZbESZ96i+6Qsl8tLi0kaUsdMzBWXh9sN1Oe6hp2/dkQw==} +  lightningcss@1.29.1: +    resolution: {integrity: sha512-FmGoeD4S05ewj+AkhTY+D+myDvXI6eL27FjHIjoyUkO/uw7WZD1fBVs0QxeYWa7E17CUHJaYX/RUGISCtcrG4Q==}      engines: {node: '>= 12.0.0'}    lines-and-columns@1.2.4: @@ -801,19 +781,16 @@ packages:      resolution: {integrity: sha512-9bMdFfc80S+vSldBmG3HOuLVHnxRdNTlpzR6QDnzqCQtCzGUEAGTzBKYMeIM+I/sU4oZfgbcbS7X7F65/z/oxQ==}      hasBin: true -  mdn-data@2.0.14: -    resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} - -  micromatch@4.0.7: -    resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==} +  micromatch@4.0.8: +    resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==}      engines: {node: '>=8.6'}    msgpackr-extract@3.0.3:      resolution: {integrity: sha512-P0efT1C9jIdVRefqjzOQ9Xml57zpOXnIuS+csaB4MdZbTdmGDLo8XhzBG1N7aO11gKDDkJvBLULeFTo46wwreA==}      hasBin: true -  msgpackr@1.11.0: -    resolution: {integrity: sha512-I8qXuuALqJe5laEBYoFykChhSXLikZmUhccjGsPuSJ/7uPip2TJ7lwdIQwWSAi0jGZDXv4WOP8Qg65QZRuXxXw==} +  msgpackr@1.11.2: +    resolution: {integrity: sha512-F9UngXRlPyWCDEASDpTf6c9uNhGPTqnTeLVt7bN+bU1eajoR/8V9ys2BRaV5C/e5ihE6sJ9uPIKaYt6bFuO32g==}    node-addon-api@6.1.0:      resolution: {integrity: sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA==} @@ -829,21 +806,18 @@ packages:      resolution: {integrity: sha512-s+w+rBWnpTMwSFbaE0UXsRlg7hU4FjekKU4eyAih5T8nJuNZT1nNsskXpxmeqSK9UzkBl6UgRlnKc8hz8IEqOw==}      hasBin: true -  node-releases@2.0.18: -    resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==} - -  nth-check@2.1.1: -    resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} +  node-releases@2.0.19: +    resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==}    nullthrows@1.1.1:      resolution: {integrity: sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==} -  ordered-binary@1.5.1: -    resolution: {integrity: sha512-5VyHfHY3cd0iza71JepYG50My+YUbrFtGoUz2ooEydPyPM7Aai/JW098juLr+RG6+rDJuzNNTsEQu2DZa1A41A==} +  ordered-binary@1.5.3: +    resolution: {integrity: sha512-oGFr3T+pYdTGJ+YFEILMpS3es+GiIbs9h/XQrclBXUtd44ey7XwfsMzM31f64I1SQOawDoDr/D823kNCADI8TA==} -  parcel@2.12.0: -    resolution: {integrity: sha512-W+gxAq7aQ9dJIg/XLKGcRT0cvnStFAQHPaI0pvD0U2l6IVLueUAm3nwN7lkY62zZNmlvNx6jNtE4wlbS+CyqSg==} -    engines: {node: '>= 12.0.0'} +  parcel@2.13.3: +    resolution: {integrity: sha512-8GrC8C7J8mwRpAlk7EJ7lwdFTbCN+dcXH2gy5AsEs9pLfzo9wvxOTx6W0fzSlvCOvZOita+8GdfYlGfEt0tRgA==} +    engines: {node: '>= 16.0.0'}      hasBin: true    parent-module@1.0.1: @@ -854,8 +828,8 @@ packages:      resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}      engines: {node: '>=8'} -  picocolors@1.0.1: -    resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==} +  picocolors@1.1.1: +    resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}    picomatch@2.3.1:      resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} @@ -864,14 +838,14 @@ packages:    postcss-value-parser@4.2.0:      resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} -  posthtml-parser@0.10.2: -    resolution: {integrity: sha512-PId6zZ/2lyJi9LiKfe+i2xv57oEjJgWbsHGGANwos5AvdQp98i6AtamAl8gzSVFGfQ43Glb5D614cvZf012VKg==} -    engines: {node: '>=12'} -    posthtml-parser@0.11.0:      resolution: {integrity: sha512-QecJtfLekJbWVo/dMAA+OSwY79wpRmbqS5TeXvXSX+f0c6pW4/SE6inzZ2qkU7oAMCPqIDkZDvd/bQsSFUnKyw==}      engines: {node: '>=12'} +  posthtml-parser@0.12.1: +    resolution: {integrity: sha512-rYFmsDLfYm+4Ts2Oh4DCDSZPtdC1BLnRXAobypVzX9alj28KGl65dIFtgDY9zB57D0TC4Qxqrawuq/2et1P0GA==} +    engines: {node: '>=16'} +    posthtml-render@3.0.0:      resolution: {integrity: sha512-z+16RoxK3fUPgwaIgH9NGnK1HKY9XIDpydky5eQGgAFVXTCSezalv9U2jQuNV+Z9qV1fDWNzldcw4eK0SSbqKA==}      engines: {node: '>=12'} @@ -880,20 +854,20 @@ packages:      resolution: {integrity: sha512-JcEmHlyLK/o0uGAlj65vgg+7LIms0xKXe60lcDOTU7oVX/3LuEuLwrQpW3VJ7de5TaFKiW4kWkaIpJL42FEgxQ==}      engines: {node: '>=12.0.0'} -  prettier@3.3.3: -    resolution: {integrity: sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==} +  prettier@3.4.2: +    resolution: {integrity: sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ==}      engines: {node: '>=14'}      hasBin: true    react-error-overlay@6.0.9:      resolution: {integrity: sha512-nQTTcUu+ATDbrSD1BZHr5kgSD4oF8OFjxun8uAaL8RwPBacGBNPf/yAuVVdx17N8XNzRDMrZ9XcKZHCjPW+9ew==} -  react-refresh@0.9.0: -    resolution: {integrity: sha512-Gvzk7OZpiqKSkxsQvO/mbTN1poglhmAV7gR/DdIrRrSMXraRQQlfikRJOr3Nb9GTMPC5kof948Zy6jJZIFtDvQ==} +  react-refresh@0.14.2: +    resolution: {integrity: sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==}      engines: {node: '>=0.10.0'} -  regenerator-runtime@0.13.11: -    resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==} +  regenerator-runtime@0.14.1: +    resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==}    resolve-from@4.0.0:      resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} @@ -907,31 +881,14 @@ packages:      engines: {node: '>=10'}      hasBin: true -  source-map@0.6.1: -    resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} -    engines: {node: '>=0.10.0'} -    srcset@4.0.0:      resolution: {integrity: sha512-wvLeHgcVHKO8Sc/H/5lkGreJQVeYMm9rlmt8PuR1xE31rIuXhuzznUUqAt8MqLhB3MqJdFzlNAfpcWnxiFUcPw==}      engines: {node: '>=12'} -  stable@0.1.8: -    resolution: {integrity: sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==} -    deprecated: 'Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility' - -  supports-color@5.5.0: -    resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} -    engines: {node: '>=4'} -    supports-color@7.2.0:      resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}      engines: {node: '>=8'} -  svgo@2.8.0: -    resolution: {integrity: sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==} -    engines: {node: '>=10.13.0'} -    hasBin: true -    term-size@2.2.1:      resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==}      engines: {node: '>=8'} @@ -943,20 +900,20 @@ packages:      resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}      engines: {node: '>=8.0'} -  tslib@2.6.3: -    resolution: {integrity: sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==} +  tslib@2.8.1: +    resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}    type-fest@0.20.2:      resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==}      engines: {node: '>=10'} -  typescript@5.5.4: -    resolution: {integrity: sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==} +  typescript@5.7.3: +    resolution: {integrity: sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==}      engines: {node: '>=14.17'}      hasBin: true -  update-browserslist-db@1.1.0: -    resolution: {integrity: sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==} +  update-browserslist-db@1.1.2: +    resolution: {integrity: sha512-PPypAm5qvlD7XMZC3BujecnaOxwhrtoFR+Dqkk5Aa/6DssiH0ibKoketaj9w8LP7Bont1rYeoV5plxD7RTEPRg==}      hasBin: true      peerDependencies:        browserslist: '>= 4.21.0' @@ -970,25 +927,19 @@ packages:  snapshots: -  '@babel/code-frame@7.24.7': +  '@babel/code-frame@7.26.2':      dependencies: -      '@babel/highlight': 7.24.7 -      picocolors: 1.0.1 - -  '@babel/helper-validator-identifier@7.24.7': {} - -  '@babel/highlight@7.24.7': -    dependencies: -      '@babel/helper-validator-identifier': 7.24.7 -      chalk: 2.4.2 +      '@babel/helper-validator-identifier': 7.25.9        js-tokens: 4.0.0 -      picocolors: 1.0.1 +      picocolors: 1.1.1 + +  '@babel/helper-validator-identifier@7.25.9': {} -  '@lezer/common@1.2.1': {} +  '@lezer/common@1.2.3': {}    '@lezer/lr@1.4.2':      dependencies: -      '@lezer/common': 1.2.1 +      '@lezer/common': 1.2.3    '@lmdb/lmdb-darwin-arm64@2.8.5':      optional: true @@ -1010,7 +961,7 @@ snapshots:    '@mischnic/json-sourcemap@0.1.1':      dependencies: -      '@lezer/common': 1.2.1 +      '@lezer/common': 1.2.3        '@lezer/lr': 1.4.2        json5: 2.2.3 @@ -1032,71 +983,69 @@ snapshots:    '@msgpackr-extract/msgpackr-extract-win32-x64@3.0.3':      optional: true -  '@parcel/bundler-default@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/bundler-default@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/diagnostic': 2.12.0 -      '@parcel/graph': 3.2.0 -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/rust': 2.12.0 -      '@parcel/utils': 2.12.0 +      '@parcel/diagnostic': 2.13.3 +      '@parcel/graph': 3.3.3 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/rust': 2.13.3 +      '@parcel/utils': 2.13.3        nullthrows: 1.1.1      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/cache@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': +  '@parcel/cache@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/core': 2.12.0(@swc/helpers@0.5.12) -      '@parcel/fs': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) -      '@parcel/logger': 2.12.0 -      '@parcel/utils': 2.12.0 +      '@parcel/core': 2.13.3(@swc/helpers@0.5.15) +      '@parcel/fs': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/logger': 2.13.3 +      '@parcel/utils': 2.13.3        lmdb: 2.8.5 -    transitivePeerDependencies: -      - '@swc/helpers' -  '@parcel/codeframe@2.12.0': +  '@parcel/codeframe@2.13.3':      dependencies:        chalk: 4.1.2 -  '@parcel/compressor-raw@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/compressor-raw@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/config-default@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)(typescript@5.5.4)': -    dependencies: -      '@parcel/bundler-default': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/compressor-raw': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/core': 2.12.0(@swc/helpers@0.5.12) -      '@parcel/namer-default': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/optimizer-css': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/optimizer-htmlnano': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(typescript@5.5.4) -      '@parcel/optimizer-image': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/optimizer-svgo': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/optimizer-swc': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) -      '@parcel/packager-css': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/packager-html': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/packager-js': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/packager-raw': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/packager-svg': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/packager-wasm': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/reporter-dev-server': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/resolver-default': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/runtime-browser-hmr': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/runtime-js': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/runtime-react-refresh': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/runtime-service-worker': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/transformer-babel': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/transformer-css': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/transformer-html': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/transformer-image': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/transformer-js': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/transformer-json': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/transformer-postcss': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/transformer-posthtml': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/transformer-raw': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/transformer-react-refresh-wrap': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/transformer-svg': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) +  '@parcel/config-default@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(typescript@5.7.3)': +    dependencies: +      '@parcel/bundler-default': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/compressor-raw': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/core': 2.13.3(@swc/helpers@0.5.15) +      '@parcel/namer-default': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/optimizer-css': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/optimizer-htmlnano': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(typescript@5.7.3) +      '@parcel/optimizer-image': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/optimizer-svgo': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/optimizer-swc': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(@swc/helpers@0.5.15) +      '@parcel/packager-css': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/packager-html': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/packager-js': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/packager-raw': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/packager-svg': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/packager-wasm': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/reporter-dev-server': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/resolver-default': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/runtime-browser-hmr': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/runtime-js': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/runtime-react-refresh': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/runtime-service-worker': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/transformer-babel': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/transformer-css': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/transformer-html': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/transformer-image': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/transformer-js': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/transformer-json': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/transformer-postcss': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/transformer-posthtml': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/transformer-raw': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/transformer-react-refresh-wrap': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/transformer-svg': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))      transitivePeerDependencies:        - '@swc/helpers'        - cssnano @@ -1104,110 +1053,114 @@ snapshots:        - purgecss        - relateurl        - srcset +      - svgo        - terser        - typescript        - uncss -  '@parcel/core@2.12.0(@swc/helpers@0.5.12)': +  '@parcel/core@2.13.3(@swc/helpers@0.5.15)':      dependencies:        '@mischnic/json-sourcemap': 0.1.1 -      '@parcel/cache': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) -      '@parcel/diagnostic': 2.12.0 -      '@parcel/events': 2.12.0 -      '@parcel/fs': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) -      '@parcel/graph': 3.2.0 -      '@parcel/logger': 2.12.0 -      '@parcel/package-manager': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/profiler': 2.12.0 -      '@parcel/rust': 2.12.0 +      '@parcel/cache': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/diagnostic': 2.13.3 +      '@parcel/events': 2.13.3 +      '@parcel/feature-flags': 2.13.3 +      '@parcel/fs': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/graph': 3.3.3 +      '@parcel/logger': 2.13.3 +      '@parcel/package-manager': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(@swc/helpers@0.5.15) +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/profiler': 2.13.3 +      '@parcel/rust': 2.13.3        '@parcel/source-map': 2.1.1 -      '@parcel/types': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) -      '@parcel/utils': 2.12.0 -      '@parcel/workers': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      abortcontroller-polyfill: 1.7.5 +      '@parcel/types': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/utils': 2.13.3 +      '@parcel/workers': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))        base-x: 3.0.10 -      browserslist: 4.23.3 +      browserslist: 4.24.4        clone: 2.1.2 -      dotenv: 7.0.0 -      dotenv-expand: 5.1.0 +      dotenv: 16.4.7 +      dotenv-expand: 11.0.7        json5: 2.2.3 -      msgpackr: 1.11.0 +      msgpackr: 1.11.2        nullthrows: 1.1.1        semver: 7.6.3      transitivePeerDependencies:        - '@swc/helpers' -  '@parcel/diagnostic@2.12.0': +  '@parcel/diagnostic@2.13.3':      dependencies:        '@mischnic/json-sourcemap': 0.1.1        nullthrows: 1.1.1 -  '@parcel/events@2.12.0': {} +  '@parcel/events@2.13.3': {} -  '@parcel/fs@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': +  '@parcel/feature-flags@2.13.3': {} + +  '@parcel/fs@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/core': 2.12.0(@swc/helpers@0.5.12) -      '@parcel/rust': 2.12.0 -      '@parcel/types': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) -      '@parcel/utils': 2.12.0 -      '@parcel/watcher': 2.4.1 -      '@parcel/workers': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -    transitivePeerDependencies: -      - '@swc/helpers' +      '@parcel/core': 2.13.3(@swc/helpers@0.5.15) +      '@parcel/feature-flags': 2.13.3 +      '@parcel/rust': 2.13.3 +      '@parcel/types-internal': 2.13.3 +      '@parcel/utils': 2.13.3 +      '@parcel/watcher': 2.5.0 +      '@parcel/workers': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) -  '@parcel/graph@3.2.0': +  '@parcel/graph@3.3.3':      dependencies: +      '@parcel/feature-flags': 2.13.3        nullthrows: 1.1.1 -  '@parcel/logger@2.12.0': +  '@parcel/logger@2.13.3':      dependencies: -      '@parcel/diagnostic': 2.12.0 -      '@parcel/events': 2.12.0 +      '@parcel/diagnostic': 2.13.3 +      '@parcel/events': 2.13.3 -  '@parcel/markdown-ansi@2.12.0': +  '@parcel/markdown-ansi@2.13.3':      dependencies:        chalk: 4.1.2 -  '@parcel/namer-default@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/namer-default@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/diagnostic': 2.12.0 -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) +      '@parcel/diagnostic': 2.13.3 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))        nullthrows: 1.1.1      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/node-resolver-core@3.3.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/node-resolver-core@3.4.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies:        '@mischnic/json-sourcemap': 0.1.1 -      '@parcel/diagnostic': 2.12.0 -      '@parcel/fs': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) -      '@parcel/rust': 2.12.0 -      '@parcel/utils': 2.12.0 +      '@parcel/diagnostic': 2.13.3 +      '@parcel/fs': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/rust': 2.13.3 +      '@parcel/utils': 2.13.3        nullthrows: 1.1.1        semver: 7.6.3      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/optimizer-css@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/optimizer-css@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/diagnostic': 2.12.0 -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) +      '@parcel/diagnostic': 2.13.3 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))        '@parcel/source-map': 2.1.1 -      '@parcel/utils': 2.12.0 -      browserslist: 4.23.3 -      lightningcss: 1.26.0 +      '@parcel/utils': 2.13.3 +      browserslist: 4.24.4 +      lightningcss: 1.29.1        nullthrows: 1.1.1      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/optimizer-htmlnano@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(typescript@5.5.4)': +  '@parcel/optimizer-htmlnano@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(typescript@5.7.3)':      dependencies: -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      htmlnano: 2.1.1(svgo@2.8.0)(typescript@5.5.4) +      '@parcel/diagnostic': 2.13.3 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/utils': 2.13.3 +      htmlnano: 2.1.1(typescript@5.7.3)        nullthrows: 1.1.1        posthtml: 0.16.6 -      svgo: 2.8.0      transitivePeerDependencies:        - '@parcel/core'        - cssnano @@ -1215,269 +1168,270 @@ snapshots:        - purgecss        - relateurl        - srcset +      - svgo        - terser        - typescript        - uncss -  '@parcel/optimizer-image@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/optimizer-image@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/core': 2.12.0(@swc/helpers@0.5.12) -      '@parcel/diagnostic': 2.12.0 -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/rust': 2.12.0 -      '@parcel/utils': 2.12.0 -      '@parcel/workers': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) +      '@parcel/core': 2.13.3(@swc/helpers@0.5.15) +      '@parcel/diagnostic': 2.13.3 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/rust': 2.13.3 +      '@parcel/utils': 2.13.3 +      '@parcel/workers': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) -  '@parcel/optimizer-svgo@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/optimizer-svgo@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/diagnostic': 2.12.0 -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/utils': 2.12.0 -      svgo: 2.8.0 +      '@parcel/diagnostic': 2.13.3 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/utils': 2.13.3      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/optimizer-swc@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': +  '@parcel/optimizer-swc@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)':      dependencies: -      '@parcel/diagnostic': 2.12.0 -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) +      '@parcel/diagnostic': 2.13.3 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))        '@parcel/source-map': 2.1.1 -      '@parcel/utils': 2.12.0 -      '@swc/core': 1.7.11(@swc/helpers@0.5.12) +      '@parcel/utils': 2.13.3 +      '@swc/core': 1.10.8(@swc/helpers@0.5.15)        nullthrows: 1.1.1      transitivePeerDependencies:        - '@parcel/core'        - '@swc/helpers' -  '@parcel/package-manager@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': -    dependencies: -      '@parcel/core': 2.12.0(@swc/helpers@0.5.12) -      '@parcel/diagnostic': 2.12.0 -      '@parcel/fs': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) -      '@parcel/logger': 2.12.0 -      '@parcel/node-resolver-core': 3.3.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/types': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) -      '@parcel/utils': 2.12.0 -      '@parcel/workers': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@swc/core': 1.7.11(@swc/helpers@0.5.12) +  '@parcel/package-manager@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)': +    dependencies: +      '@parcel/core': 2.13.3(@swc/helpers@0.5.15) +      '@parcel/diagnostic': 2.13.3 +      '@parcel/fs': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/logger': 2.13.3 +      '@parcel/node-resolver-core': 3.4.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/types': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/utils': 2.13.3 +      '@parcel/workers': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@swc/core': 1.10.8(@swc/helpers@0.5.15)        semver: 7.6.3      transitivePeerDependencies:        - '@swc/helpers' -  '@parcel/packager-css@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/packager-css@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/diagnostic': 2.12.0 -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) +      '@parcel/diagnostic': 2.13.3 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))        '@parcel/source-map': 2.1.1 -      '@parcel/utils': 2.12.0 -      lightningcss: 1.26.0 +      '@parcel/utils': 2.13.3 +      lightningcss: 1.29.1        nullthrows: 1.1.1      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/packager-html@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/packager-html@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/types': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) -      '@parcel/utils': 2.12.0 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/types': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/utils': 2.13.3        nullthrows: 1.1.1        posthtml: 0.16.6      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/packager-js@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/packager-js@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/diagnostic': 2.12.0 -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/rust': 2.12.0 +      '@parcel/diagnostic': 2.13.3 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/rust': 2.13.3        '@parcel/source-map': 2.1.1 -      '@parcel/types': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) -      '@parcel/utils': 2.12.0 +      '@parcel/types': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/utils': 2.13.3        globals: 13.24.0        nullthrows: 1.1.1      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/packager-raw@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/packager-raw@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/packager-svg@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/packager-svg@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/types': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) -      '@parcel/utils': 2.12.0 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/types': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/utils': 2.13.3        posthtml: 0.16.6      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/packager-wasm@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/packager-wasm@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/plugin@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/plugin@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/types': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) +      '@parcel/types': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/profiler@2.12.0': +  '@parcel/profiler@2.13.3':      dependencies: -      '@parcel/diagnostic': 2.12.0 -      '@parcel/events': 2.12.0 +      '@parcel/diagnostic': 2.13.3 +      '@parcel/events': 2.13.3 +      '@parcel/types-internal': 2.13.3        chrome-trace-event: 1.0.4 -  '@parcel/reporter-cli@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/reporter-cli@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/types': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) -      '@parcel/utils': 2.12.0 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/types': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/utils': 2.13.3        chalk: 4.1.2        term-size: 2.2.1      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/reporter-dev-server@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/reporter-dev-server@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/utils': 2.12.0 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/utils': 2.13.3      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/reporter-tracer@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/reporter-tracer@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/utils': 2.12.0 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/utils': 2.13.3        chrome-trace-event: 1.0.4        nullthrows: 1.1.1      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/resolver-default@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/resolver-default@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/node-resolver-core': 3.3.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) +      '@parcel/node-resolver-core': 3.4.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/runtime-browser-hmr@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/runtime-browser-hmr@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/utils': 2.12.0 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/utils': 2.13.3      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/runtime-js@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/runtime-js@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/diagnostic': 2.12.0 -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/utils': 2.12.0 +      '@parcel/diagnostic': 2.13.3 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/utils': 2.13.3        nullthrows: 1.1.1      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/runtime-react-refresh@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/runtime-react-refresh@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/utils': 2.12.0 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/utils': 2.13.3        react-error-overlay: 6.0.9 -      react-refresh: 0.9.0 +      react-refresh: 0.14.2      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/runtime-service-worker@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/runtime-service-worker@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/utils': 2.12.0 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/utils': 2.13.3        nullthrows: 1.1.1      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/rust@2.12.0': {} +  '@parcel/rust@2.13.3': {}    '@parcel/source-map@2.1.1':      dependencies:        detect-libc: 1.0.3 -  '@parcel/transformer-babel@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/transformer-babel@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/diagnostic': 2.12.0 -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) +      '@parcel/diagnostic': 2.13.3 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))        '@parcel/source-map': 2.1.1 -      '@parcel/utils': 2.12.0 -      browserslist: 4.23.3 +      '@parcel/utils': 2.13.3 +      browserslist: 4.24.4        json5: 2.2.3        nullthrows: 1.1.1        semver: 7.6.3      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/transformer-css@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/transformer-css@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/diagnostic': 2.12.0 -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) +      '@parcel/diagnostic': 2.13.3 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))        '@parcel/source-map': 2.1.1 -      '@parcel/utils': 2.12.0 -      browserslist: 4.23.3 -      lightningcss: 1.26.0 +      '@parcel/utils': 2.13.3 +      browserslist: 4.24.4 +      lightningcss: 1.29.1        nullthrows: 1.1.1      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/transformer-html@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/transformer-html@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/diagnostic': 2.12.0 -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/rust': 2.12.0 +      '@parcel/diagnostic': 2.13.3 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/rust': 2.13.3        nullthrows: 1.1.1        posthtml: 0.16.6 -      posthtml-parser: 0.10.2 +      posthtml-parser: 0.12.1        posthtml-render: 3.0.0        semver: 7.6.3        srcset: 4.0.0      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/transformer-image@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/transformer-image@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/core': 2.12.0(@swc/helpers@0.5.12) -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/utils': 2.12.0 -      '@parcel/workers': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) +      '@parcel/core': 2.13.3(@swc/helpers@0.5.15) +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/utils': 2.13.3 +      '@parcel/workers': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))        nullthrows: 1.1.1 -  '@parcel/transformer-js@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/transformer-js@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/core': 2.12.0(@swc/helpers@0.5.12) -      '@parcel/diagnostic': 2.12.0 -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/rust': 2.12.0 +      '@parcel/core': 2.13.3(@swc/helpers@0.5.15) +      '@parcel/diagnostic': 2.13.3 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/rust': 2.13.3        '@parcel/source-map': 2.1.1 -      '@parcel/utils': 2.12.0 -      '@parcel/workers': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@swc/helpers': 0.5.12 -      browserslist: 4.23.3 +      '@parcel/utils': 2.13.3 +      '@parcel/workers': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@swc/helpers': 0.5.15 +      browserslist: 4.24.4        nullthrows: 1.1.1 -      regenerator-runtime: 0.13.11 +      regenerator-runtime: 0.14.1        semver: 7.6.3 -  '@parcel/transformer-json@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/transformer-json@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))        json5: 2.2.3      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/transformer-postcss@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/transformer-postcss@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/diagnostic': 2.12.0 -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/rust': 2.12.0 -      '@parcel/utils': 2.12.0 +      '@parcel/diagnostic': 2.13.3 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/rust': 2.13.3 +      '@parcel/utils': 2.13.3        clone: 2.1.2        nullthrows: 1.1.1        postcss-value-parser: 4.2.0 @@ -1485,204 +1439,201 @@ snapshots:      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/transformer-posthtml@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/transformer-posthtml@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/utils': 2.12.0 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/utils': 2.13.3        nullthrows: 1.1.1        posthtml: 0.16.6 -      posthtml-parser: 0.10.2 +      posthtml-parser: 0.12.1        posthtml-render: 3.0.0        semver: 7.6.3      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/transformer-raw@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/transformer-raw@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/transformer-react-refresh-wrap@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/transformer-react-refresh-wrap@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/utils': 2.12.0 -      react-refresh: 0.9.0 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/utils': 2.13.3 +      react-refresh: 0.14.2      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/transformer-svg@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': +  '@parcel/transformer-svg@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))':      dependencies: -      '@parcel/diagnostic': 2.12.0 -      '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/rust': 2.12.0 +      '@parcel/diagnostic': 2.13.3 +      '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/rust': 2.13.3        nullthrows: 1.1.1        posthtml: 0.16.6 -      posthtml-parser: 0.10.2 +      posthtml-parser: 0.12.1        posthtml-render: 3.0.0        semver: 7.6.3      transitivePeerDependencies:        - '@parcel/core' -  '@parcel/types@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': +  '@parcel/types-internal@2.13.3':      dependencies: -      '@parcel/cache': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) -      '@parcel/diagnostic': 2.12.0 -      '@parcel/fs': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) -      '@parcel/package-manager': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) +      '@parcel/diagnostic': 2.13.3 +      '@parcel/feature-flags': 2.13.3        '@parcel/source-map': 2.1.1 -      '@parcel/workers': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))        utility-types: 3.11.0 + +  '@parcel/types@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))': +    dependencies: +      '@parcel/types-internal': 2.13.3 +      '@parcel/workers': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))      transitivePeerDependencies:        - '@parcel/core' -      - '@swc/helpers' -  '@parcel/utils@2.12.0': +  '@parcel/utils@2.13.3':      dependencies: -      '@parcel/codeframe': 2.12.0 -      '@parcel/diagnostic': 2.12.0 -      '@parcel/logger': 2.12.0 -      '@parcel/markdown-ansi': 2.12.0 -      '@parcel/rust': 2.12.0 +      '@parcel/codeframe': 2.13.3 +      '@parcel/diagnostic': 2.13.3 +      '@parcel/logger': 2.13.3 +      '@parcel/markdown-ansi': 2.13.3 +      '@parcel/rust': 2.13.3        '@parcel/source-map': 2.1.1        chalk: 4.1.2        nullthrows: 1.1.1 -  '@parcel/watcher-android-arm64@2.4.1': +  '@parcel/watcher-android-arm64@2.5.0':      optional: true -  '@parcel/watcher-darwin-arm64@2.4.1': +  '@parcel/watcher-darwin-arm64@2.5.0':      optional: true -  '@parcel/watcher-darwin-x64@2.4.1': +  '@parcel/watcher-darwin-x64@2.5.0':      optional: true -  '@parcel/watcher-freebsd-x64@2.4.1': +  '@parcel/watcher-freebsd-x64@2.5.0':      optional: true -  '@parcel/watcher-linux-arm-glibc@2.4.1': +  '@parcel/watcher-linux-arm-glibc@2.5.0':      optional: true -  '@parcel/watcher-linux-arm64-glibc@2.4.1': +  '@parcel/watcher-linux-arm-musl@2.5.0':      optional: true -  '@parcel/watcher-linux-arm64-musl@2.4.1': +  '@parcel/watcher-linux-arm64-glibc@2.5.0':      optional: true -  '@parcel/watcher-linux-x64-glibc@2.4.1': +  '@parcel/watcher-linux-arm64-musl@2.5.0':      optional: true -  '@parcel/watcher-linux-x64-musl@2.4.1': +  '@parcel/watcher-linux-x64-glibc@2.5.0':      optional: true -  '@parcel/watcher-win32-arm64@2.4.1': +  '@parcel/watcher-linux-x64-musl@2.5.0':      optional: true -  '@parcel/watcher-win32-ia32@2.4.1': +  '@parcel/watcher-win32-arm64@2.5.0':      optional: true -  '@parcel/watcher-win32-x64@2.4.1': +  '@parcel/watcher-win32-ia32@2.5.0':      optional: true -  '@parcel/watcher@2.4.1': +  '@parcel/watcher-win32-x64@2.5.0': +    optional: true + +  '@parcel/watcher@2.5.0':      dependencies:        detect-libc: 1.0.3        is-glob: 4.0.3 -      micromatch: 4.0.7 +      micromatch: 4.0.8        node-addon-api: 7.1.1      optionalDependencies: -      '@parcel/watcher-android-arm64': 2.4.1 -      '@parcel/watcher-darwin-arm64': 2.4.1 -      '@parcel/watcher-darwin-x64': 2.4.1 -      '@parcel/watcher-freebsd-x64': 2.4.1 -      '@parcel/watcher-linux-arm-glibc': 2.4.1 -      '@parcel/watcher-linux-arm64-glibc': 2.4.1 -      '@parcel/watcher-linux-arm64-musl': 2.4.1 -      '@parcel/watcher-linux-x64-glibc': 2.4.1 -      '@parcel/watcher-linux-x64-musl': 2.4.1 -      '@parcel/watcher-win32-arm64': 2.4.1 -      '@parcel/watcher-win32-ia32': 2.4.1 -      '@parcel/watcher-win32-x64': 2.4.1 - -  '@parcel/workers@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': -    dependencies: -      '@parcel/core': 2.12.0(@swc/helpers@0.5.12) -      '@parcel/diagnostic': 2.12.0 -      '@parcel/logger': 2.12.0 -      '@parcel/profiler': 2.12.0 -      '@parcel/types': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) -      '@parcel/utils': 2.12.0 +      '@parcel/watcher-android-arm64': 2.5.0 +      '@parcel/watcher-darwin-arm64': 2.5.0 +      '@parcel/watcher-darwin-x64': 2.5.0 +      '@parcel/watcher-freebsd-x64': 2.5.0 +      '@parcel/watcher-linux-arm-glibc': 2.5.0 +      '@parcel/watcher-linux-arm-musl': 2.5.0 +      '@parcel/watcher-linux-arm64-glibc': 2.5.0 +      '@parcel/watcher-linux-arm64-musl': 2.5.0 +      '@parcel/watcher-linux-x64-glibc': 2.5.0 +      '@parcel/watcher-linux-x64-musl': 2.5.0 +      '@parcel/watcher-win32-arm64': 2.5.0 +      '@parcel/watcher-win32-ia32': 2.5.0 +      '@parcel/watcher-win32-x64': 2.5.0 + +  '@parcel/workers@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))': +    dependencies: +      '@parcel/core': 2.13.3(@swc/helpers@0.5.15) +      '@parcel/diagnostic': 2.13.3 +      '@parcel/logger': 2.13.3 +      '@parcel/profiler': 2.13.3 +      '@parcel/types-internal': 2.13.3 +      '@parcel/utils': 2.13.3        nullthrows: 1.1.1 -  '@swc/core-darwin-arm64@1.7.11': +  '@swc/core-darwin-arm64@1.10.8':      optional: true -  '@swc/core-darwin-x64@1.7.11': +  '@swc/core-darwin-x64@1.10.8':      optional: true -  '@swc/core-linux-arm-gnueabihf@1.7.11': +  '@swc/core-linux-arm-gnueabihf@1.10.8':      optional: true -  '@swc/core-linux-arm64-gnu@1.7.11': +  '@swc/core-linux-arm64-gnu@1.10.8':      optional: true -  '@swc/core-linux-arm64-musl@1.7.11': +  '@swc/core-linux-arm64-musl@1.10.8':      optional: true -  '@swc/core-linux-x64-gnu@1.7.11': +  '@swc/core-linux-x64-gnu@1.10.8':      optional: true -  '@swc/core-linux-x64-musl@1.7.11': +  '@swc/core-linux-x64-musl@1.10.8':      optional: true -  '@swc/core-win32-arm64-msvc@1.7.11': +  '@swc/core-win32-arm64-msvc@1.10.8':      optional: true -  '@swc/core-win32-ia32-msvc@1.7.11': +  '@swc/core-win32-ia32-msvc@1.10.8':      optional: true -  '@swc/core-win32-x64-msvc@1.7.11': +  '@swc/core-win32-x64-msvc@1.10.8':      optional: true -  '@swc/core@1.7.11(@swc/helpers@0.5.12)': +  '@swc/core@1.10.8(@swc/helpers@0.5.15)':      dependencies:        '@swc/counter': 0.1.3 -      '@swc/types': 0.1.12 +      '@swc/types': 0.1.17      optionalDependencies: -      '@swc/core-darwin-arm64': 1.7.11 -      '@swc/core-darwin-x64': 1.7.11 -      '@swc/core-linux-arm-gnueabihf': 1.7.11 -      '@swc/core-linux-arm64-gnu': 1.7.11 -      '@swc/core-linux-arm64-musl': 1.7.11 -      '@swc/core-linux-x64-gnu': 1.7.11 -      '@swc/core-linux-x64-musl': 1.7.11 -      '@swc/core-win32-arm64-msvc': 1.7.11 -      '@swc/core-win32-ia32-msvc': 1.7.11 -      '@swc/core-win32-x64-msvc': 1.7.11 -      '@swc/helpers': 0.5.12 +      '@swc/core-darwin-arm64': 1.10.8 +      '@swc/core-darwin-x64': 1.10.8 +      '@swc/core-linux-arm-gnueabihf': 1.10.8 +      '@swc/core-linux-arm64-gnu': 1.10.8 +      '@swc/core-linux-arm64-musl': 1.10.8 +      '@swc/core-linux-x64-gnu': 1.10.8 +      '@swc/core-linux-x64-musl': 1.10.8 +      '@swc/core-win32-arm64-msvc': 1.10.8 +      '@swc/core-win32-ia32-msvc': 1.10.8 +      '@swc/core-win32-x64-msvc': 1.10.8 +      '@swc/helpers': 0.5.15    '@swc/counter@0.1.3': {} -  '@swc/helpers@0.5.12': +  '@swc/helpers@0.5.15':      dependencies: -      tslib: 2.6.3 +      tslib: 2.8.1 -  '@swc/types@0.1.12': +  '@swc/types@0.1.17':      dependencies:        '@swc/counter': 0.1.3 -  '@trysound/sax@0.2.0': {} - -  '@tsconfig/recommended@1.0.7': {} +  '@tsconfig/recommended@1.0.8': {}    '@types/parcel-env@0.0.6': {} -  abortcontroller-polyfill@1.7.5: {} - -  ansi-styles@3.2.1: -    dependencies: -      color-convert: 1.9.3 -    ansi-styles@4.3.0:      dependencies:        color-convert: 2.0.1 @@ -1693,28 +1644,20 @@ snapshots:      dependencies:        safe-buffer: 5.2.1 -  boolbase@1.0.0: {} -    braces@3.0.3:      dependencies:        fill-range: 7.1.1 -  browserslist@4.23.3: +  browserslist@4.24.4:      dependencies: -      caniuse-lite: 1.0.30001651 -      electron-to-chromium: 1.5.9 -      node-releases: 2.0.18 -      update-browserslist-db: 1.1.0(browserslist@4.23.3) +      caniuse-lite: 1.0.30001695 +      electron-to-chromium: 1.5.83 +      node-releases: 2.0.19 +      update-browserslist-db: 1.1.2(browserslist@4.24.4)    callsites@3.1.0: {} -  caniuse-lite@1.0.30001651: {} - -  chalk@2.4.2: -    dependencies: -      ansi-styles: 3.2.1 -      escape-string-regexp: 1.0.5 -      supports-color: 5.5.0 +  caniuse-lite@1.0.30001695: {}    chalk@4.1.2:      dependencies: @@ -1725,47 +1668,22 @@ snapshots:    clone@2.1.2: {} -  color-convert@1.9.3: -    dependencies: -      color-name: 1.1.3 -    color-convert@2.0.1:      dependencies:        color-name: 1.1.4 -  color-name@1.1.3: {} -    color-name@1.1.4: {} -  commander@7.2.0: {} +  commander@12.1.0: {} -  cosmiconfig@9.0.0(typescript@5.5.4): +  cosmiconfig@9.0.0(typescript@5.7.3):      dependencies:        env-paths: 2.2.1        import-fresh: 3.3.0        js-yaml: 4.1.0        parse-json: 5.2.0      optionalDependencies: -      typescript: 5.5.4 - -  css-select@4.3.0: -    dependencies: -      boolbase: 1.0.0 -      css-what: 6.1.0 -      domhandler: 4.3.1 -      domutils: 2.8.0 -      nth-check: 2.1.1 - -  css-tree@1.1.3: -    dependencies: -      mdn-data: 2.0.14 -      source-map: 0.6.1 - -  css-what@6.1.0: {} - -  csso@4.2.0: -    dependencies: -      css-tree: 1.1.3 +      typescript: 5.7.3    detect-libc@1.0.3: {} @@ -1777,37 +1695,55 @@ snapshots:        domhandler: 4.3.1        entities: 2.2.0 +  dom-serializer@2.0.0: +    dependencies: +      domelementtype: 2.3.0 +      domhandler: 5.0.3 +      entities: 4.5.0 +    domelementtype@2.3.0: {}    domhandler@4.3.1:      dependencies:        domelementtype: 2.3.0 +  domhandler@5.0.3: +    dependencies: +      domelementtype: 2.3.0 +    domutils@2.8.0:      dependencies:        dom-serializer: 1.4.1        domelementtype: 2.3.0        domhandler: 4.3.1 -  dotenv-expand@5.1.0: {} +  domutils@3.2.2: +    dependencies: +      dom-serializer: 2.0.0 +      domelementtype: 2.3.0 +      domhandler: 5.0.3 + +  dotenv-expand@11.0.7: +    dependencies: +      dotenv: 16.4.7 -  dotenv@7.0.0: {} +  dotenv@16.4.7: {} -  electron-to-chromium@1.5.9: {} +  electron-to-chromium@1.5.83: {}    entities@2.2.0: {}    entities@3.0.1: {} +  entities@4.5.0: {} +    env-paths@2.2.1: {}    error-ex@1.3.2:      dependencies:        is-arrayish: 0.2.1 -  escalade@3.1.2: {} - -  escape-string-regexp@1.0.5: {} +  escalade@3.2.0: {}    fill-range@7.1.1:      dependencies: @@ -1819,17 +1755,13 @@ snapshots:      dependencies:        type-fest: 0.20.2 -  has-flag@3.0.0: {} -    has-flag@4.0.0: {} -  htmlnano@2.1.1(svgo@2.8.0)(typescript@5.5.4): +  htmlnano@2.1.1(typescript@5.7.3):      dependencies: -      cosmiconfig: 9.0.0(typescript@5.5.4) +      cosmiconfig: 9.0.0(typescript@5.7.3)        posthtml: 0.16.6        timsort: 0.3.0 -    optionalDependencies: -      svgo: 2.8.0      transitivePeerDependencies:        - typescript @@ -1840,6 +1772,13 @@ snapshots:        domutils: 2.8.0        entities: 3.0.1 +  htmlparser2@9.1.0: +    dependencies: +      domelementtype: 2.3.0 +      domhandler: 5.0.3 +      domutils: 3.2.2 +      entities: 4.5.0 +    import-fresh@3.3.0:      dependencies:        parent-module: 1.0.1 @@ -1867,59 +1806,59 @@ snapshots:    json5@2.2.3: {} -  lightningcss-darwin-arm64@1.26.0: +  lightningcss-darwin-arm64@1.29.1:      optional: true -  lightningcss-darwin-x64@1.26.0: +  lightningcss-darwin-x64@1.29.1:      optional: true -  lightningcss-freebsd-x64@1.26.0: +  lightningcss-freebsd-x64@1.29.1:      optional: true -  lightningcss-linux-arm-gnueabihf@1.26.0: +  lightningcss-linux-arm-gnueabihf@1.29.1:      optional: true -  lightningcss-linux-arm64-gnu@1.26.0: +  lightningcss-linux-arm64-gnu@1.29.1:      optional: true -  lightningcss-linux-arm64-musl@1.26.0: +  lightningcss-linux-arm64-musl@1.29.1:      optional: true -  lightningcss-linux-x64-gnu@1.26.0: +  lightningcss-linux-x64-gnu@1.29.1:      optional: true -  lightningcss-linux-x64-musl@1.26.0: +  lightningcss-linux-x64-musl@1.29.1:      optional: true -  lightningcss-win32-arm64-msvc@1.26.0: +  lightningcss-win32-arm64-msvc@1.29.1:      optional: true -  lightningcss-win32-x64-msvc@1.26.0: +  lightningcss-win32-x64-msvc@1.29.1:      optional: true -  lightningcss@1.26.0: +  lightningcss@1.29.1:      dependencies:        detect-libc: 1.0.3      optionalDependencies: -      lightningcss-darwin-arm64: 1.26.0 -      lightningcss-darwin-x64: 1.26.0 -      lightningcss-freebsd-x64: 1.26.0 -      lightningcss-linux-arm-gnueabihf: 1.26.0 -      lightningcss-linux-arm64-gnu: 1.26.0 -      lightningcss-linux-arm64-musl: 1.26.0 -      lightningcss-linux-x64-gnu: 1.26.0 -      lightningcss-linux-x64-musl: 1.26.0 -      lightningcss-win32-arm64-msvc: 1.26.0 -      lightningcss-win32-x64-msvc: 1.26.0 +      lightningcss-darwin-arm64: 1.29.1 +      lightningcss-darwin-x64: 1.29.1 +      lightningcss-freebsd-x64: 1.29.1 +      lightningcss-linux-arm-gnueabihf: 1.29.1 +      lightningcss-linux-arm64-gnu: 1.29.1 +      lightningcss-linux-arm64-musl: 1.29.1 +      lightningcss-linux-x64-gnu: 1.29.1 +      lightningcss-linux-x64-musl: 1.29.1 +      lightningcss-win32-arm64-msvc: 1.29.1 +      lightningcss-win32-x64-msvc: 1.29.1    lines-and-columns@1.2.4: {}    lmdb@2.8.5:      dependencies: -      msgpackr: 1.11.0 +      msgpackr: 1.11.2        node-addon-api: 6.1.0        node-gyp-build-optional-packages: 5.1.1 -      ordered-binary: 1.5.1 +      ordered-binary: 1.5.3        weak-lru-cache: 1.2.2      optionalDependencies:        '@lmdb/lmdb-darwin-arm64': 2.8.5 @@ -1929,9 +1868,7 @@ snapshots:        '@lmdb/lmdb-linux-x64': 2.8.5        '@lmdb/lmdb-win32-x64': 2.8.5 -  mdn-data@2.0.14: {} - -  micromatch@4.0.7: +  micromatch@4.0.8:      dependencies:        braces: 3.0.3        picomatch: 2.3.1 @@ -1948,7 +1885,7 @@ snapshots:        '@msgpackr-extract/msgpackr-extract-win32-x64': 3.0.3      optional: true -  msgpackr@1.11.0: +  msgpackr@1.11.2:      optionalDependencies:        msgpackr-extract: 3.0.3 @@ -1965,31 +1902,28 @@ snapshots:        detect-libc: 2.0.3      optional: true -  node-releases@2.0.18: {} - -  nth-check@2.1.1: -    dependencies: -      boolbase: 1.0.0 +  node-releases@2.0.19: {}    nullthrows@1.1.1: {} -  ordered-binary@1.5.1: {} - -  parcel@2.12.0(@swc/helpers@0.5.12)(typescript@5.5.4): -    dependencies: -      '@parcel/config-default': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)(typescript@5.5.4) -      '@parcel/core': 2.12.0(@swc/helpers@0.5.12) -      '@parcel/diagnostic': 2.12.0 -      '@parcel/events': 2.12.0 -      '@parcel/fs': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) -      '@parcel/logger': 2.12.0 -      '@parcel/package-manager': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) -      '@parcel/reporter-cli': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/reporter-dev-server': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/reporter-tracer': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) -      '@parcel/utils': 2.12.0 +  ordered-binary@1.5.3: {} + +  parcel@2.13.3(@swc/helpers@0.5.15)(typescript@5.7.3): +    dependencies: +      '@parcel/config-default': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(typescript@5.7.3) +      '@parcel/core': 2.13.3(@swc/helpers@0.5.15) +      '@parcel/diagnostic': 2.13.3 +      '@parcel/events': 2.13.3 +      '@parcel/feature-flags': 2.13.3 +      '@parcel/fs': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/logger': 2.13.3 +      '@parcel/package-manager': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(@swc/helpers@0.5.15) +      '@parcel/reporter-cli': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/reporter-dev-server': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/reporter-tracer': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) +      '@parcel/utils': 2.13.3        chalk: 4.1.2 -      commander: 7.2.0 +      commander: 12.1.0        get-port: 4.2.0      transitivePeerDependencies:        - '@swc/helpers' @@ -1998,6 +1932,7 @@ snapshots:        - purgecss        - relateurl        - srcset +      - svgo        - terser        - typescript        - uncss @@ -2008,24 +1943,24 @@ snapshots:    parse-json@5.2.0:      dependencies: -      '@babel/code-frame': 7.24.7 +      '@babel/code-frame': 7.26.2        error-ex: 1.3.2        json-parse-even-better-errors: 2.3.1        lines-and-columns: 1.2.4 -  picocolors@1.0.1: {} +  picocolors@1.1.1: {}    picomatch@2.3.1: {}    postcss-value-parser@4.2.0: {} -  posthtml-parser@0.10.2: +  posthtml-parser@0.11.0:      dependencies:        htmlparser2: 7.2.0 -  posthtml-parser@0.11.0: +  posthtml-parser@0.12.1:      dependencies: -      htmlparser2: 7.2.0 +      htmlparser2: 9.1.0    posthtml-render@3.0.0:      dependencies: @@ -2036,13 +1971,13 @@ snapshots:        posthtml-parser: 0.11.0        posthtml-render: 3.0.0 -  prettier@3.3.3: {} +  prettier@3.4.2: {}    react-error-overlay@6.0.9: {} -  react-refresh@0.9.0: {} +  react-refresh@0.14.2: {} -  regenerator-runtime@0.13.11: {} +  regenerator-runtime@0.14.1: {}    resolve-from@4.0.0: {} @@ -2050,30 +1985,12 @@ snapshots:    semver@7.6.3: {} -  source-map@0.6.1: {} -    srcset@4.0.0: {} -  stable@0.1.8: {} - -  supports-color@5.5.0: -    dependencies: -      has-flag: 3.0.0 -    supports-color@7.2.0:      dependencies:        has-flag: 4.0.0 -  svgo@2.8.0: -    dependencies: -      '@trysound/sax': 0.2.0 -      commander: 7.2.0 -      css-select: 4.3.0 -      css-tree: 1.1.3 -      csso: 4.2.0 -      picocolors: 1.0.1 -      stable: 0.1.8 -    term-size@2.2.1: {}    timsort@0.3.0: {} @@ -2082,17 +1999,17 @@ snapshots:      dependencies:        is-number: 7.0.0 -  tslib@2.6.3: {} +  tslib@2.8.1: {}    type-fest@0.20.2: {} -  typescript@5.5.4: {} +  typescript@5.7.3: {} -  update-browserslist-db@1.1.0(browserslist@4.23.3): +  update-browserslist-db@1.1.2(browserslist@4.24.4):      dependencies: -      browserslist: 4.23.3 -      escalade: 3.1.2 -      picocolors: 1.0.1 +      browserslist: 4.24.4 +      escalade: 3.2.0 +      picocolors: 1.1.1    utility-types@3.11.0: {} diff --git a/docker/nginx/sites/www/src/main.ts b/docker/nginx/sites/www/src/main.ts index 2f09deb..043cb94 100644 --- a/docker/nginx/sites/www/src/main.ts +++ b/docker/nginx/sites/www/src/main.ts @@ -1,97 +1,51 @@  import "./style.css"; -import { fetchTodos } from "./todos"; +class Emotion { +  static opposite_map = new Map<Emotion, Emotion>(); -const happy = "happy" as const; -const angry = "angry" as const; -type Emotion = typeof happy | typeof angry; - -function emotionOpposite(emotion: Emotion): Emotion { -  if (emotion === happy) { -    return angry; -  } else { -    return happy; +  constructor(public name: string) {    } -} -function emotionElement(emotion: Emotion): HTMLDivElement { -  return document.querySelector<HTMLDivElement>(`.slogan.${emotion}`)!; -} +  get opposite(): Emotion { +    return Emotion.opposite_map.get(this)!; +  } -function emotionElementHeight(emotion: Emotion): number { -  return emotionElement(emotion).clientHeight; -} +  get element(): HTMLDivElement { +    return document.querySelector<HTMLDivElement>(`.slogan.${this.name}`)! +  } -function updateBodyTopPadding(emotion: Emotion): void { -  document.body.style.paddingTop = `${emotionElementHeight(emotion)}px`; -} +  get elementHeight(): number { +    return this.element.clientHeight; +  } -const sloganEmotionKey = "sloganEmotion"; +  updateBodyTopPadding(): void { +  } -const savedEmotion = -  (localStorage.getItem(sloganEmotionKey) as Emotion | null) ?? happy; -if (savedEmotion !== happy && savedEmotion !== angry) { -  console.error(`Invalid saved emotion: ${savedEmotion}`); +  apply() { +    localStorage.setItem(emotionKey, this.name); +    document.body.dataset.emotion = this.name; +    document.body.style.paddingTop = `${this.elementHeight}px`; +  }  } -updateBodyTopPadding(savedEmotion); -// Then we add transition animation. -setTimeout(() => { -  document.body.style.transition = "padding-top 1s"; -}); +const happy = new Emotion("happy") +const angry = new Emotion("angry") +Emotion.opposite_map.set(happy, angry) +Emotion.opposite_map.set(angry, happy) -const sloganContainer = document.querySelector( -  ".slogan-container", -) as HTMLDivElement; - -setTimeout(() => { -  sloganContainer.dataset.sloganEmotion = savedEmotion; -}, 500); - -const sloganLoadedPromise = new Promise<void>((resolve) => { -  setTimeout(() => { -    resolve(); -  }, 1500); -}); +const emotionKey = "emotion"; +const savedEmotionName = localStorage.getItem(emotionKey) ?? happy.name; +document.body.dataset.emotion = savedEmotionName;  for (const emotion of [happy, angry]) { -  emotionElement(emotion).addEventListener("click", () => { -    const opposite = emotionOpposite(emotion); -    localStorage.setItem(sloganEmotionKey, opposite); -    sloganContainer.dataset.sloganEmotion = opposite; -    updateBodyTopPadding(opposite); -  }); -} - -async function loadTodos(syncWith: Promise<unknown>): Promise<void> { -  const todoMessage = document.getElementById("todo-message")!; -  const todoContainer = document.getElementById("todo-container")!; - -  try { -    const todosPromise = fetchTodos(); -    await syncWith; // Let's wait this first. -    const todos = await todosPromise; -    todos.forEach((item, index) => { -      const { status, title, closed } = item; -      const li = document.createElement("li"); -      li.dataset.status = closed ? "closed" : "open"; -      li.style.animationDelay = `${index * 0.04}s`; -      // The color from api server is kind of ugly at present. -      // li.style.background = color; -      const statusSpan = document.createElement("span"); -      const titleSpan = document.createElement("span"); -      statusSpan.textContent = status; -      titleSpan.textContent = title; -      li.appendChild(statusSpan); -      li.append(" : "); -      li.append(titleSpan); -      todoContainer.appendChild(li); -    }); -    todoMessage.parentElement!.removeChild(todoMessage); -  } catch (e) { -    todoMessage.style.color = "red"; -    todoMessage.textContent = (e as Error).message; +  if (emotion.name == savedEmotionName) { +    emotion.apply();    } +  emotion.element.addEventListener("click", () => { +    emotion.opposite.apply(); +  });  } -loadTodos(sloganLoadedPromise); +setTimeout(() => { +  document.body.style.transition = "padding-top 0.8s"; +}); diff --git a/docker/nginx/sites/www/src/mock-todos.ts b/docker/nginx/sites/www/src/mock-todos.ts deleted file mode 100644 index aacb40e..0000000 --- a/docker/nginx/sites/www/src/mock-todos.ts +++ /dev/null @@ -1,126 +0,0 @@ -/** Grabbed at Tue, 18 Jul 2023 15:30:05 GMT, used as mock data. 🍻 */ - -const todos = [ -  { -    status: "Done", -    title: "All BLOCKed by graduate paper.", -    closed: true, -    color: "green", -  }, -  { -    status: "Done", -    title: "Slogan is not completely visible on phone.", -    closed: true, -    color: "green", -  }, -  { -    status: "Todo", -    title: "Users api.", -    closed: false, -    color: "blue", -  }, -  { -    status: "Todo", -    title: "Secrets api.", -    closed: false, -    color: "blue", -  }, -  { -    status: "Todo", -    title: "Refactor aio python scripts.", -    closed: false, -    color: "blue", -  }, -  { -    status: "Todo", -    title: "Nginx path redirection.", -    closed: false, -    color: "blue", -  }, -  { -    status: "Todo", -    title: "Make services optional.", -    closed: false, -    color: "blue", -  }, -  { -    status: "Done", -    title: "Optimize code-server.", -    closed: true, -    color: "green", -  }, -  { -    status: "Todo", -    title: "No more alpine.", -    closed: false, -    color: "blue", -  }, -  { -    status: "Done", -    title: "No netease music.", -    closed: true, -    color: "green", -  }, -  { -    status: "Done", -    title: "Draft issue status in www TODOs.", -    closed: true, -    color: "green", -  }, -  { -    status: "Done", -    title: "Re-bootstrap front end.", -    closed: true, -    color: "green", -  }, -  { -    status: "Todo", -    title: "Clean react imports for new jsx usage.", -    closed: false, -    color: "blue", -  }, -  { -    status: "Done", -    title: "i18next backend bug.", -    closed: true, -    color: "green", -  }, -  { -    status: "Done", -    title: "Organize buttons.", -    closed: true, -    color: "green", -  }, -  { -    status: "Done", -    title: "Fix dialog typo.", -    closed: true, -    color: "green", -  }, -  { -    status: "Todo", -    title: "Organize OperationDialog.", -    closed: false, -    color: "blue", -  }, -  { -    status: "Todo", -    title: "New palette api.", -    closed: false, -    color: "blue", -  }, -  { -    status: "Todo", -    title: "No Docker!!!", -    closed: false, -    color: "blue", -  }, -  { -    status: "Done", -    title: "Improve animation of slogan.", -    closed: true, -    color: "green", -  }, -]; - -export default todos; diff --git a/docker/nginx/sites/www/src/style.css b/docker/nginx/sites/www/src/style.css index 1f9c9ed..4dae7ea 100644 --- a/docker/nginx/sites/www/src/style.css +++ b/docker/nginx/sites/www/src/style.css @@ -1,25 +1,40 @@ +:root { +  --im-happy: dodgerblue; +  --im-angry: orangered; +  --im-good: hsl(120, 85%, 85%); +  --im-active: hsl(20, 85%, 85%); +} +  html {    width: 100%; -  line-height: 1.5; -  font-family: ui-sans-serif;  }  body {    width: 100%;    margin: 0;    box-sizing: border-box; +  display: flex; +  flex-direction: column;  } -a.mono { -  font-family: ui-monospace; +a { +  font-family: monospace;  } -.h-note { -  font-size: 0.6em; -  color: gray; +#main-article { +  max-width: 880px; +  margin-top: 1em; +  padding: 0 1em; +  align-self: center;  } -@keyframes article-enter { +#title-name { +  font-family: monospace; +  background-color: black; +  color: white; +} + +@keyframes content-enter {    from {      opacity: 0;      transform: translateY(100px); @@ -31,66 +46,25 @@ a.mono {    }  } -:root { -  --main-article-horizontal-padding: 1em; -  --main-article-horizontal-margin-shrink: -1em; - -  --im-me: deepskyblue; -  --im-happy: dodgerblue; -  --im-angry: orangered; -  --im-good: hsl(120, 85%, 85%); -  --im-active: hsl(20, 85%, 85%); -} - -@media (min-width: 576px) { -  :root { -    --main-article-horizontal-padding: 2em; -    --main-article-horizontal-margin-shrink: -2em; -  } -} - -#main-article { -  padding: 0 var(--main-article-horizontal-padding); -  animation: article-enter 1s; -} - -#title { -  font-size: 2em; -} - -@keyframes title-name-enter { -  from { -    background-color: white; -  } - -  to { -    background-color: var(--im-me); -  } -} - -#title-name { -  font-family: ui-monospace; -  border-radius: 8px; -  background-color: white; -  animation: title-name-enter 3s 2s forwards; -} -  @keyframes avatar-enter {    from {      opacity: 0; -    transform: translateX(calc(100% + var(--main-article-horizontal-padding))); +    transform: translateX(100%);    }    to {      opacity: 1; -    transform: translateX(0); +    transform: translateY(0);    }  } +#main-article > * { +  animation: content-enter 0.8s; +} +  #avatar {    float: right; -  transform: translateX(calc(100% + var(--main-article-horizontal-padding))); -  animation: avatar-enter 0.5s 1s forwards; +  animation: avatar-enter 0.8s;  }  .slogan-container { @@ -105,9 +79,10 @@ a.mono {    padding: 0.5em 1em;    text-align: center;    box-sizing: border-box; +  color: white;    position: absolute;    transform: translateY(-100%); -  transition: transform 1s; +  transition: transform 0.8s;  }  .slogan.happy { @@ -118,68 +93,29 @@ a.mono {    background-color: var(--im-angry);  } -.slogan-container[data-slogan-emotion="happy"] .slogan.happy { +body[data-emotion="happy"] .slogan.happy {    transform: translateY(0);  } -.slogan-container[data-slogan-emotion="angry"] .slogan.angry { +body[data-emotion="angry"] .slogan.angry {    transform: translateY(0);  } -.slogan-text { -  display: inline-block; -  text-align: initial; -  color: white; -  font-size: 1.2em; -} - -#todo-container { -  list-style: none; -  margin-block: 0; -  padding-inline: 0; -} - -@keyframes todo-enter { -  from { -    opacity: 0; -    transform: translateX(-100%); -  } - -  to { -    opacity: 1; -    transform: translateX(0); -  } -} - -#todo-container li { -  margin: 0 var(--main-article-horizontal-margin-shrink); -  padding: 0.25em 3em; -  transform: translateX(-100%); -  animation: todo-enter 1s forwards; -} - -#todo-container li[data-status="closed"] { -  background-color: var(--im-good); -} - -#todo-container li[data-status="open"] { -  background-color: var(--im-active); -} -  .friend-link {    display: inline-block; +  font-family: unset;  }  .friend-img {    display: block; -  width: 80px; -  height: 80px;    object-fit: cover; -  border-radius: 50%;  }  .friend-name {    display: block;    text-align: center; -  font-size: 1.2em; +} + +footer img { +  vertical-align: middle;  } diff --git a/docker/nginx/sites/www/src/todos.ts b/docker/nginx/sites/www/src/todos.ts deleted file mode 100644 index b69f524..0000000 --- a/docker/nginx/sites/www/src/todos.ts +++ /dev/null @@ -1,29 +0,0 @@ -export interface Todo { -  status: string; -  title: string; -  closed: boolean; -  color: string; -} - -export async function fetchTodos(): Promise<Todo[]> { -  console.log("Try to fetch TODOs from server."); - -  if (process.env.NODE_ENV !== "production") { -    console.log("YaY! We are developers. 🍻 Use mock TODOs. (After 2s)"); -    // await new Promise((resolve) => setTimeout(resolve, 2000)); -    return (await import("./mock-todos")).default; -  } else { -    const res = await fetch("/api/todos"); -    const body: Todo[] = await res.json(); - -    if (res.status !== 200) { -      console.error( -        `Failed to get TODOs. Status: ${res.status}. Body: ${body}`, -      ); -      throw new Error( -        "Failed to fetch TODOs. (Maybe due to rate limit. Please try later.)", -      ); -    } -    return body; -  } -} | 
