From 675038f605ba97ef6dc08fdb75e3bab988848c97 Mon Sep 17 00:00:00 2001 From: Martin Weise <martin.weise@tuwien.ac.at> Date: Mon, 24 Feb 2025 21:26:13 +0100 Subject: [PATCH 1/5] Implemented the upload endpoint Signed-off-by: Martin Weise <martin.weise@tuwien.ac.at> --- .docs/api/storage-service.md | 18 +- .docs/api/upload-service.md | 61 - .docs/changelog.md | 5 + .../screenshots/storage-service-filer.png | Bin 0 -> 124740 bytes dbrepo-analyse-service/Pipfile.lock | 579 +- .../lib/dbrepo-1.7.0-py3-none-any.whl | Bin 29753 -> 30194 bytes .../lib/dbrepo-1.7.0.tar.gz | Bin 42858 -> 44413 bytes dbrepo-auth-service/dbrepo-realm.json | 773 +- .../target/create-event-listener.jar | Bin 10141 -> 10139 bytes .../at/tuwien/endpoints/UploadEndpoint.java | 70 + .../at/tuwien/service/StorageService.java | 2 + .../service/impl/StorageServiceS3Impl.java | 15 + dbrepo-gateway-service/dbrepo.conf | 8 +- .../at/tuwien/api/file/UploadResponseDto.java | 19 + .../endpoints/DatabaseEndpointUnitTest.java | 37 + .../endpoints/TableEndpointUnitTest.java | 145 +- .../service/TableServicePersistenceTest.java | 90 +- .../tuwien/service/TableServiceUnitTest.java | 2 +- .../gateway/impl/DataServiceGatewayImpl.java | 7 +- .../tuwien/service/impl/TableServiceImpl.java | 35 +- .../main/java/at/tuwien/test/BaseTest.java | 2 +- dbrepo-search-service/Pipfile.lock | 566 +- dbrepo-search-service/init/Pipfile.lock | 356 +- .../init/lib/dbrepo-1.7.0-py3-none-any.whl | Bin 29753 -> 30194 bytes .../init/lib/dbrepo-1.7.0.tar.gz | Bin 42858 -> 44413 bytes .../lib/dbrepo-1.7.0-py3-none-any.whl | Bin 29753 -> 30194 bytes dbrepo-search-service/lib/dbrepo-1.7.0.tar.gz | Bin 42858 -> 44413 bytes dbrepo-ui/components/table/BlobUpload.vue | 11 +- dbrepo-ui/components/table/TableImport.vue | 4 +- dbrepo-ui/composables/upload-service.ts | 72 +- dbrepo-ui/dto/index.ts | 4 + dbrepo-ui/nuxt.config.ts | 4 - dbrepo-ui/package-lock.json | 12446 ++++++++++++++++ .../pages/database/[database_id]/settings.vue | 6 +- dbrepo-upload-service/.gitignore | 2 - dbrepo-upload-service/mvnw | 310 - dbrepo-upload-service/mvnw.cmd | 182 - dbrepo-upload-service/pom.xml | 168 - dbrepo-upload-service/pre-create.sh | 45 - .../src/main/java/at/tuwien/Application.java | 13 - .../src/main/resources/application-local.yml | 82 - .../src/main/resources/application.yml | 38 - .../java/at/tuwien/config/GatewayConfig.java | 29 - .../java/at/tuwien/config/KeycloakConfig.java | 23 - .../java/at/tuwien/config/TusdConfig.java | 16 - .../at/tuwien/config/TusdContainerConfig.java | 70 - .../interceptor/KeycloakInterceptor.java | 61 - .../java/at/tuwien/mapper/MetadataMapper.java | 22 - .../service/UploadServiceIntegrationTest.java | 140 - .../java/at/tuwien/util/KeycloakUtil.java | 46 - .../src/test/resources/application.properties | 16 - .../src/test/resources/init/dbrepo-realm.json | 2822 ---- docker-compose.yml | 33 - helm/dbrepo/files/create-event-listener.jar | Bin 10141 -> 10139 bytes lib/python/dbrepo/RestClient.py | 47 +- lib/python/dbrepo/UploadClient.py | 40 - lib/python/dbrepo/api/dto.py | 4 + 57 files changed, 14097 insertions(+), 5449 deletions(-) delete mode 100644 .docs/api/upload-service.md create mode 100644 .docs/images/screenshots/storage-service-filer.png create mode 100644 dbrepo-data-service/rest-service/src/main/java/at/tuwien/endpoints/UploadEndpoint.java create mode 100644 dbrepo-metadata-service/api/src/main/java/at/tuwien/api/file/UploadResponseDto.java create mode 100644 dbrepo-ui/package-lock.json delete mode 100644 dbrepo-upload-service/.gitignore delete mode 100755 dbrepo-upload-service/mvnw delete mode 100644 dbrepo-upload-service/mvnw.cmd delete mode 100644 dbrepo-upload-service/pom.xml delete mode 100755 dbrepo-upload-service/pre-create.sh delete mode 100644 dbrepo-upload-service/src/main/java/at/tuwien/Application.java delete mode 100644 dbrepo-upload-service/src/main/resources/application-local.yml delete mode 100644 dbrepo-upload-service/src/main/resources/application.yml delete mode 100644 dbrepo-upload-service/src/test/java/at/tuwien/config/GatewayConfig.java delete mode 100644 dbrepo-upload-service/src/test/java/at/tuwien/config/KeycloakConfig.java delete mode 100644 dbrepo-upload-service/src/test/java/at/tuwien/config/TusdConfig.java delete mode 100644 dbrepo-upload-service/src/test/java/at/tuwien/config/TusdContainerConfig.java delete mode 100644 dbrepo-upload-service/src/test/java/at/tuwien/interceptor/KeycloakInterceptor.java delete mode 100644 dbrepo-upload-service/src/test/java/at/tuwien/mapper/MetadataMapper.java delete mode 100644 dbrepo-upload-service/src/test/java/at/tuwien/service/UploadServiceIntegrationTest.java delete mode 100644 dbrepo-upload-service/src/test/java/at/tuwien/util/KeycloakUtil.java delete mode 100644 dbrepo-upload-service/src/test/resources/application.properties delete mode 100644 dbrepo-upload-service/src/test/resources/init/dbrepo-realm.json delete mode 100644 lib/python/dbrepo/UploadClient.py diff --git a/.docs/api/storage-service.md b/.docs/api/storage-service.md index 939e3dbbcb..e962c70966 100644 --- a/.docs/api/storage-service.md +++ b/.docs/api/storage-service.md @@ -22,19 +22,23 @@ author: Martin Weise We use [SeaweedFS](https://seaweedfs.github.io/) as a high-performance, S3 compatible object store for easy, cloud-ready deployments that by default support replication and monitoring. No graphical user interface is provided out-of-the-box, -administrators can access the S3 storage via S3-compatible clients +administrators can access the S3 storage via S3-compatible clients e.g. [AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/s3/) (see below). -### Users +The default configuration creates admin credentials `seaweedfsadmin:seaweedfsadmin`. By default, one bucket `dbrepo` is +created that holds uploads temporarily. It is recommended to delete the contents regularly. -The default configuration creates one user `seaweedfsadmin` with password `seaweedfsadmin`. +The S3 endpoint of the Storage Service is available on port `9000`. -### Buckets +### Filer UI -The default configuration creates two buckets `dbrepo-upload`, `dbrepo-download`: +The storage service comes with a simple UI that can be used to explore the uploaded files, rename them and delete them. +Please note that the Filer UI is not intended for production and should be turned off for security purposes. -* `dbrepo-upload` for CSV-file upload (for import of data, analysis, etc.) from the User Interface -* `dbrepo-download` for CSV-file download (exporting data, metadata, etc.) +<figure markdown> + +<figcaption>Figure 1: Filer UI</figcaption> +</figure> ## Limitations diff --git a/.docs/api/upload-service.md b/.docs/api/upload-service.md deleted file mode 100644 index 97ca74d14b..0000000000 --- a/.docs/api/upload-service.md +++ /dev/null @@ -1,61 +0,0 @@ ---- -author: Martin Weise ---- - -## tl;dr - -!!! debug "Debug Information" - - Image: [`docker.io/tusproject/tusd:v1.12`](https://hub.docker.com/r/tusproject/tusd) - - * Ports: 1080/tcp - * Prometheus: `http://<hostname>:1080/api/upload/metrics` - * API: `http://<hostname>:1080/api/upload` - - To directly access in Kubernetes (for e.g. debugging), forward the svc port to your local machine: - - ```shell - kubectl [-n namespace] port-forward svc/upload-service 1080:80 - ``` - -## Overview - -We use the [TUS](https://tus.io/) open protocol for resume-able file uploads which based entirely on HTTP. Even though -the Upload Service is part of the standard installation, it is an entirely optional component and can be replaced with -any S3-compatible Blob Storage. - -### Architecture - -The Upload Service communicates internally with the [Storage Service](../storage-service) (c.f. [Figure 1](#fig1)). - -<figure id="fig1" markdown> - -<figcaption>Figure 1: Architecture of the Upload Service</figcaption> -</figure> - -The Upload Service is responsible for uploading files (mainly CSV-files) into a Blob Storage that can be accesses trough -the S3 protocol (e.g. our [Storage Service](../storage-service)). Make sure that the Upload Service can be -accessed from the Gateway Service. - -## Limitations - -* No support for authentication. - -!!! question "Do you miss functionality? Do these limitations affect you?" - - We strongly encourage you to help us implement it as we are welcoming contributors to open-source software and get - in [contact](../contact) with us, we happily answer requests for collaboration with attached CV and your programming - experience! - -## Security - -1. We strongly encourage to limit the clients allowed to upload by adding your subnet, e.g. `128.130.0.0/16` - (=TU Wien subnet) to the [Gateway Service](../system-services-gateway) configuration file like this: - - ```nginx title="dbrepo.conf" - location /api/upload { - allow 128.130.0.0/16; - deny all; - ... - } - ``` diff --git a/.docs/changelog.md b/.docs/changelog.md index 4f64307078..a152fae79c 100644 --- a/.docs/changelog.md +++ b/.docs/changelog.md @@ -17,6 +17,11 @@ author: Martin Weise * Replaced sequential numerical ids with non-guessable random ids in the Metadata Database in [#491](https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services/-/issues/491). +#### Removals + +* Removed the Upload Service in favor of an internal stable upload endpoint in the Data Service + in [#492](https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services/-/issues/492). + ## v1.6.5 (2025-02-18) [:simple-gitlab: GitLab Release](https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services/-/tags/v1.6.5) diff --git a/.docs/images/screenshots/storage-service-filer.png b/.docs/images/screenshots/storage-service-filer.png new file mode 100644 index 0000000000000000000000000000000000000000..c20b9df73e908e86bb559cf687d41c42a590c67c GIT binary patch literal 124740 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 literal 0 HcmV?d00001 diff --git a/dbrepo-analyse-service/Pipfile.lock b/dbrepo-analyse-service/Pipfile.lock index d600643542..6b5baacd0b 100644 --- a/dbrepo-analyse-service/Pipfile.lock +++ b/dbrepo-analyse-service/Pipfile.lock @@ -26,90 +26,90 @@ }, "aiohttp": { "hashes": [ - "sha256:0450ada317a65383b7cce9576096150fdb97396dcfe559109b403c7242faffef", - "sha256:0b5263dcede17b6b0c41ef0c3ccce847d82a7da98709e75cf7efde3e9e3b5cae", - "sha256:0d5176f310a7fe6f65608213cc74f4228e4f4ce9fd10bcb2bb6da8fc66991462", - "sha256:0ed49efcd0dc1611378beadbd97beb5d9ca8fe48579fc04a6ed0844072261b6a", - "sha256:145a73850926018ec1681e734cedcf2716d6a8697d90da11284043b745c286d5", - "sha256:1987770fb4887560363b0e1a9b75aa303e447433c41284d3af2840a2f226d6e0", - "sha256:246067ba0cf5560cf42e775069c5d80a8989d14a7ded21af529a4e10e3e0f0e6", - "sha256:2c311e2f63e42c1bf86361d11e2c4a59f25d9e7aabdbdf53dc38b885c5435cdb", - "sha256:2cee3b117a8d13ab98b38d5b6bdcd040cfb4181068d05ce0c474ec9db5f3c5bb", - "sha256:2de1378f72def7dfb5dbd73d86c19eda0ea7b0a6873910cc37d57e80f10d64e1", - "sha256:30f546358dfa0953db92ba620101fefc81574f87b2346556b90b5f3ef16e55ce", - "sha256:34245498eeb9ae54c687a07ad7f160053911b5745e186afe2d0c0f2898a1ab8a", - "sha256:392432a2dde22b86f70dd4a0e9671a349446c93965f261dbaecfaf28813e5c42", - "sha256:3c0600bcc1adfaaac321422d615939ef300df81e165f6522ad096b73439c0f58", - "sha256:4016e383f91f2814e48ed61e6bda7d24c4d7f2402c75dd28f7e1027ae44ea204", - "sha256:40cd36749a1035c34ba8d8aaf221b91ca3d111532e5ccb5fa8c3703ab1b967ed", - "sha256:413ad794dccb19453e2b97c2375f2ca3cdf34dc50d18cc2693bd5aed7d16f4b9", - "sha256:4a93d28ed4b4b39e6f46fd240896c29b686b75e39cc6992692e3922ff6982b4c", - "sha256:4ee84c2a22a809c4f868153b178fe59e71423e1f3d6a8cd416134bb231fbf6d3", - "sha256:50c5c7b8aa5443304c55c262c5693b108c35a3b61ef961f1e782dd52a2f559c7", - "sha256:525410e0790aab036492eeea913858989c4cb070ff373ec3bc322d700bdf47c1", - "sha256:526c900397f3bbc2db9cb360ce9c35134c908961cdd0ac25b1ae6ffcaa2507ff", - "sha256:54775858c7f2f214476773ce785a19ee81d1294a6bedc5cc17225355aab74802", - "sha256:584096938a001378484aa4ee54e05dc79c7b9dd933e271c744a97b3b6f644957", - "sha256:6130459189e61baac5a88c10019b21e1f0c6d00ebc770e9ce269475650ff7f73", - "sha256:67453e603cea8e85ed566b2700efa1f6916aefbc0c9fcb2e86aaffc08ec38e78", - "sha256:68d54234c8d76d8ef74744f9f9fc6324f1508129e23da8883771cdbb5818cbef", - "sha256:6dfe7f984f28a8ae94ff3a7953cd9678550dbd2a1f9bda5dd9c5ae627744c78e", - "sha256:74bd573dde27e58c760d9ca8615c41a57e719bff315c9adb6f2a4281a28e8798", - "sha256:7603ca26d75b1b86160ce1bbe2787a0b706e592af5b2504e12caa88a217767b0", - "sha256:76719dd521c20a58a6c256d058547b3a9595d1d885b830013366e27011ffe804", - "sha256:7c3623053b85b4296cd3925eeb725e386644fd5bc67250b3bb08b0f144803e7b", - "sha256:7e44eba534381dd2687be50cbd5f2daded21575242ecfdaf86bbeecbc38dae8e", - "sha256:7fe3d65279bfbee8de0fb4f8c17fc4e893eed2dba21b2f680e930cc2b09075c5", - "sha256:8340def6737118f5429a5df4e88f440746b791f8f1c4ce4ad8a595f42c980bd5", - "sha256:84ede78acde96ca57f6cf8ccb8a13fbaf569f6011b9a52f870c662d4dc8cd854", - "sha256:850ff6155371fd802a280f8d369d4e15d69434651b844bde566ce97ee2277420", - "sha256:87a2e00bf17da098d90d4145375f1d985a81605267e7f9377ff94e55c5d769eb", - "sha256:88d385b8e7f3a870146bf5ea31786ef7463e99eb59e31db56e2315535d811f55", - "sha256:8a2fb742ef378284a50766e985804bd6adb5adb5aa781100b09befdbfa757b65", - "sha256:8dc0fba9a74b471c45ca1a3cb6e6913ebfae416678d90529d188886278e7f3f6", - "sha256:8fa1510b96c08aaad49303ab11f8803787c99222288f310a62f493faf883ede1", - "sha256:8fd12d0f989c6099e7b0f30dc6e0d1e05499f3337461f0b2b0dadea6c64b89df", - "sha256:9060addfa4ff753b09392efe41e6af06ea5dd257829199747b9f15bfad819460", - "sha256:930ffa1925393381e1e0a9b82137fa7b34c92a019b521cf9f41263976666a0d6", - "sha256:936d8a4f0f7081327014742cd51d320296b56aa6d324461a13724ab05f4b2933", - "sha256:97fe431f2ed646a3b56142fc81d238abcbaff08548d6912acb0b19a0cadc146b", - "sha256:9bd8695be2c80b665ae3f05cb584093a1e59c35ecb7d794d1edd96e8cc9201d7", - "sha256:9dec0000d2d8621d8015c293e24589d46fa218637d820894cb7356c77eca3259", - "sha256:a478aa11b328983c4444dacb947d4513cb371cd323f3845e53caeda6be5589d5", - "sha256:a481a574af914b6e84624412666cbfbe531a05667ca197804ecc19c97b8ab1b0", - "sha256:a4ac6a0f0f6402854adca4e3259a623f5c82ec3f0c049374133bcb243132baf9", - "sha256:a5e69046f83c0d3cb8f0d5bd9b8838271b1bc898e01562a04398e160953e8eb9", - "sha256:a7442662afebbf7b4c6d28cb7aab9e9ce3a5df055fc4116cc7228192ad6cb484", - "sha256:aa8a8caca81c0a3e765f19c6953416c58e2f4cc1b84829af01dd1c771bb2f91f", - "sha256:ab3247d58b393bda5b1c8f31c9edece7162fc13265334217785518dd770792b8", - "sha256:b10a47e5390c4b30a0d58ee12581003be52eedd506862ab7f97da7a66805befb", - "sha256:b34508f1cd928ce915ed09682d11307ba4b37d0708d1f28e5774c07a7674cac9", - "sha256:b8d3bb96c147b39c02d3db086899679f31958c5d81c494ef0fc9ef5bb1359b3d", - "sha256:b9d45dbb3aaec05cf01525ee1a7ac72de46a8c425cb75c003acd29f76b1ffe94", - "sha256:bf4480a5438f80e0f1539e15a7eb8b5f97a26fe087e9828e2c0ec2be119a9f72", - "sha256:c160a04283c8c6f55b5bf6d4cad59bb9c5b9c9cd08903841b25f1f7109ef1259", - "sha256:c96a43822f1f9f69cc5c3706af33239489a6294be486a0447fb71380070d4d5f", - "sha256:c9fd9dcf9c91affe71654ef77426f5cf8489305e1c66ed4816f5a21874b094b9", - "sha256:cddb31f8474695cd61fc9455c644fc1606c164b93bff2490390d90464b4655df", - "sha256:ce1bb21fc7d753b5f8a5d5a4bae99566386b15e716ebdb410154c16c91494d7f", - "sha256:d1c031a7572f62f66f1257db37ddab4cb98bfaf9b9434a3b4840bf3560f5e788", - "sha256:d589264dbba3b16e8951b6f145d1e6b883094075283dafcab4cdd564a9e353a0", - "sha256:dc065a4285307607df3f3686363e7f8bdd0d8ab35f12226362a847731516e42c", - "sha256:e10c440d142fa8b32cfdb194caf60ceeceb3e49807072e0dc3a8887ea80e8c16", - "sha256:e3552fe98e90fdf5918c04769f338a87fa4f00f3b28830ea9b78b1bdc6140e0d", - "sha256:e392804a38353900c3fd8b7cacbea5132888f7129f8e241915e90b85f00e3250", - "sha256:e4cecdb52aaa9994fbed6b81d4568427b6002f0a91c322697a4bfcc2b2363f5a", - "sha256:e5148ca8955affdfeb864aca158ecae11030e952b25b3ae15d4e2b5ba299bad2", - "sha256:e6b2732ef3bafc759f653a98881b5b9cdef0716d98f013d376ee8dfd7285abf1", - "sha256:ea756b5a7bac046d202a9a3889b9a92219f885481d78cd318db85b15cc0b7bcf", - "sha256:edb69b9589324bdc40961cdf0657815df674f1743a8d5ad9ab56a99e4833cfdd", - "sha256:f0203433121484b32646a5f5ea93ae86f3d9559d7243f07e8c0eab5ff8e3f70e", - "sha256:f6a19bcab7fbd8f8649d6595624856635159a6527861b9cdc3447af288a00c00", - "sha256:f752e80606b132140883bb262a457c475d219d7163d996dc9072434ffb0784c4", - "sha256:f7914ab70d2ee8ab91c13e5402122edbc77821c66d2758abb53aabe87f013287" + "sha256:00c8ac69e259c60976aa2edae3f13d9991cf079aaa4d3cd5a49168ae3748dee3", + "sha256:01816f07c9cc9d80f858615b1365f8319d6a5fd079cd668cc58e15aafbc76a54", + "sha256:02876bf2f69b062584965507b07bc06903c2dc93c57a554b64e012d636952654", + "sha256:0e9eb7e5764abcb49f0e2bd8f5731849b8728efbf26d0cac8e81384c95acec3f", + "sha256:0f6b2c5b4a4d22b8fb2c92ac98e0747f5f195e8e9448bfb7404cd77e7bfa243f", + "sha256:1982c98ac62c132d2b773d50e2fcc941eb0b8bad3ec078ce7e7877c4d5a2dce7", + "sha256:1e83fb1991e9d8982b3b36aea1e7ad27ea0ce18c14d054c7a404d68b0319eebb", + "sha256:25de43bb3cf83ad83efc8295af7310219af6dbe4c543c2e74988d8e9c8a2a917", + "sha256:28a772757c9067e2aee8a6b2b425d0efaa628c264d6416d283694c3d86da7689", + "sha256:2a4a13dfbb23977a51853b419141cd0a9b9573ab8d3a1455c6e63561387b52ff", + "sha256:2a8a6bc19818ac3e5596310ace5aa50d918e1ebdcc204dc96e2f4d505d51740c", + "sha256:2eabb269dc3852537d57589b36d7f7362e57d1ece308842ef44d9830d2dc3c90", + "sha256:35cda4e07f5e058a723436c4d2b7ba2124ab4e0aa49e6325aed5896507a8a42e", + "sha256:42d689a5c0a0c357018993e471893e939f555e302313d5c61dfc566c2cad6185", + "sha256:4586a68730bd2f2b04a83e83f79d271d8ed13763f64b75920f18a3a677b9a7f0", + "sha256:47dc018b1b220c48089b5b9382fbab94db35bef2fa192995be22cbad3c5730c8", + "sha256:507ab05d90586dacb4f26a001c3abf912eb719d05635cbfad930bdbeb469b36c", + "sha256:5194143927e494616e335d074e77a5dac7cd353a04755330c9adc984ac5a628e", + "sha256:51c3ff9c7a25f3cad5c09d9aacbc5aefb9267167c4652c1eb737989b554fe278", + "sha256:55789e93c5ed71832e7fac868167276beadf9877b85697020c46e9a75471f55f", + "sha256:5724cc77f4e648362ebbb49bdecb9e2b86d9b172c68a295263fa072e679ee69d", + "sha256:5ad8f1c19fe277eeb8bc45741c6d60ddd11d705c12a4d8ee17546acff98e0802", + "sha256:5ceb81a4db2decdfa087381b5fc5847aa448244f973e5da232610304e199e7b2", + "sha256:64815c6f02e8506b10113ddbc6b196f58dbef135751cc7c32136df27b736db09", + "sha256:66047eacbc73e6fe2462b77ce39fc170ab51235caf331e735eae91c95e6a11e4", + "sha256:669dd33f028e54fe4c96576f406ebb242ba534dd3a981ce009961bf49960f117", + "sha256:684eea71ab6e8ade86b9021bb62af4bf0881f6be4e926b6b5455de74e420783a", + "sha256:6b35aab22419ba45f8fc290d0010898de7a6ad131e468ffa3922b1b0b24e9d2e", + "sha256:7104d5b3943c6351d1ad7027d90bdd0ea002903e9f610735ac99df3b81f102ee", + "sha256:718d5deb678bc4b9d575bfe83a59270861417da071ab44542d0fcb6faa686636", + "sha256:747ec46290107a490d21fe1ff4183bef8022b848cf9516970cb31de6d9460088", + "sha256:7836587eef675a17d835ec3d98a8c9acdbeb2c1d72b0556f0edf4e855a25e9c1", + "sha256:78e4dd9c34ec7b8b121854eb5342bac8b02aa03075ae8618b6210a06bbb8a115", + "sha256:7b77ee42addbb1c36d35aca55e8cc6d0958f8419e458bb70888d8c69a4ca833d", + "sha256:7c1b20a1ace54af7db1f95af85da530fe97407d9063b7aaf9ce6a32f44730778", + "sha256:7f27eec42f6c3c1df09cfc1f6786308f8b525b8efaaf6d6bd76c1f52c6511f6a", + "sha256:82c249f2bfa5ecbe4a1a7902c81c0fba52ed9ebd0176ab3047395d02ad96cfcb", + "sha256:85fa0b18558eb1427090912bd456a01f71edab0872f4e0f9e4285571941e4090", + "sha256:89ce611b1eac93ce2ade68f1470889e0173d606de20c85a012bfa24be96cf867", + "sha256:8ce789231404ca8fff7f693cdce398abf6d90fd5dae2b1847477196c243b1fbb", + "sha256:90d571c98d19a8b6e793b34aa4df4cee1e8fe2862d65cc49185a3a3d0a1a3996", + "sha256:9229d8613bd8401182868fe95688f7581673e1c18ff78855671a4b8284f47bcb", + "sha256:93a1f7d857c4fcf7cabb1178058182c789b30d85de379e04f64c15b7e88d66fb", + "sha256:967b93f21b426f23ca37329230d5bd122f25516ae2f24a9cea95a30023ff8283", + "sha256:9840be675de208d1f68f84d578eaa4d1a36eee70b16ae31ab933520c49ba1325", + "sha256:9862d077b9ffa015dbe3ce6c081bdf35135948cb89116e26667dd183550833d1", + "sha256:9b5b37c863ad5b0892cc7a4ceb1e435e5e6acd3f2f8d3e11fa56f08d3c67b820", + "sha256:9e64ca2dbea28807f8484c13f684a2f761e69ba2640ec49dacd342763cc265ef", + "sha256:9fe4eb0e7f50cdb99b26250d9328faef30b1175a5dbcfd6d0578d18456bac567", + "sha256:a01fe9f1e05025eacdd97590895e2737b9f851d0eb2e017ae9574d9a4f0b6252", + "sha256:a08ad95fcbd595803e0c4280671d808eb170a64ca3f2980dd38e7a72ed8d1fea", + "sha256:a4fe27dbbeec445e6e1291e61d61eb212ee9fed6e47998b27de71d70d3e8777d", + "sha256:a7d474c5c1f0b9405c1565fafdc4429fa7d986ccbec7ce55bc6a330f36409cad", + "sha256:a86dc177eb4c286c19d1823ac296299f59ed8106c9536d2b559f65836e0fb2c6", + "sha256:aa36c35e94ecdb478246dd60db12aba57cfcd0abcad43c927a8876f25734d496", + "sha256:ab915a57c65f7a29353c8014ac4be685c8e4a19e792a79fe133a8e101111438e", + "sha256:af55314407714fe77a68a9ccaab90fdb5deb57342585fd4a3a8102b6d4370080", + "sha256:afcb6b275c2d2ba5d8418bf30a9654fa978b4f819c2e8db6311b3525c86fe637", + "sha256:b27961d65639128336b7a7c3f0046dcc62a9443d5ef962e3c84170ac620cec47", + "sha256:b5b95787335c483cd5f29577f42bbe027a412c5431f2f80a749c80d040f7ca9f", + "sha256:b73a2b139782a07658fbf170fe4bcdf70fc597fae5ffe75e5b67674c27434a9f", + "sha256:b88aca5adbf4625e11118df45acac29616b425833c3be7a05ef63a6a4017bfdb", + "sha256:b992778d95b60a21c4d8d4a5f15aaab2bd3c3e16466a72d7f9bfd86e8cea0d4b", + "sha256:ba40b7ae0f81c7029583a338853f6607b6d83a341a3dcde8bed1ea58a3af1df9", + "sha256:baae005092e3f200de02699314ac8933ec20abf998ec0be39448f6605bce93df", + "sha256:c4bea08a6aad9195ac9b1be6b0c7e8a702a9cec57ce6b713698b4a5afa9c2e33", + "sha256:c6070bcf2173a7146bb9e4735b3c62b2accba459a6eae44deea0eb23e0035a23", + "sha256:c929f9a7249a11e4aa5c157091cfad7f49cc6b13f4eecf9b747104befd9f56f2", + "sha256:c97be90d70f7db3aa041d720bfb95f4869d6063fcdf2bb8333764d97e319b7d0", + "sha256:ce10ddfbe26ed5856d6902162f71b8fe08545380570a885b4ab56aecfdcb07f4", + "sha256:cf1f31f83d16ec344136359001c5e871915c6ab685a3d8dee38e2961b4c81730", + "sha256:d2b25b2eeb35707113b2d570cadc7c612a57f1c5d3e7bb2b13870fe284e08fc0", + "sha256:d33851d85537bbf0f6291ddc97926a754c8f041af759e0aa0230fe939168852b", + "sha256:e06cf4852ce8c4442a59bae5a3ea01162b8fcb49ab438d8548b8dc79375dad8a", + "sha256:e271beb2b1dabec5cd84eb488bdabf9758d22ad13471e9c356be07ad139b3012", + "sha256:f55d0f242c2d1fcdf802c8fabcff25a9d85550a4cf3a9cf5f2a6b5742c992839", + "sha256:f81cba651db8795f688c589dd11a4fbb834f2e59bbf9bb50908be36e416dc760", + "sha256:fa1fb1b61881c8405829c50e9cc5c875bfdbf685edf57a76817dfb50643e4a1a", + "sha256:fa48dac27f41b36735c807d1ab093a8386701bbf00eb6b89a0f69d9fa26b3671", + "sha256:fbfef0666ae9e07abfa2c54c212ac18a1f63e13e0760a769f70b5717742f3ece", + "sha256:fe7065e2215e4bba63dc00db9ae654c1ba3950a5fff691475a32f511142fcddb" ], "markers": "python_version >= '3.9'", - "version": "==3.11.12" + "version": "==3.11.13" }, "aiosignal": { "hashes": [ @@ -180,20 +180,20 @@ }, "boto3": { "hashes": [ - "sha256:777ec08a6fe0ad77fa0607b431542c51d2d2e4145fecd512bee9f383ee4184f2", - "sha256:c9055fe6a33f79c43053c06db432092cfcf88f4b4181950f5ca8f2f0cb6abb87" + "sha256:523b69457eee55ac15aa707c0e768b2a45ca1521f95b2442931090633ec72458", + "sha256:f67d014a7c5a3cd540606d64d7cb9eec3600cf42acab1ac0518df9751ae115e2" ], "index": "pypi", "markers": "python_version >= '3.8'", - "version": "==1.36.24" + "version": "==1.36.26" }, "botocore": { "hashes": [ - "sha256:7d35ba92ccbed7aa7e1563b12bb339bde612d5f845c89bfdd79a6db8c26b9f2e", - "sha256:b8b2ad60e6545aaef3a40163793c39555fcfd67fb081a38695018026c4f4db25" + "sha256:4a63bcef7ecf6146fd3a61dc4f9b33b7473b49bdaf1770e9aaca6eee0c9eab62", + "sha256:4e3f19913887a58502e71ef8d696fe7eaa54de7813ff73390cd5883f837dfa6e" ], "markers": "python_version >= '3.8'", - "version": "==1.36.24" + "version": "==1.36.26" }, "certifi": { "hashes": [ @@ -273,7 +273,7 @@ "sha256:f7f5baafcc48261359e14bcd6d9bff6d4b28d9103847c9e136694cb0501aef87", "sha256:fc48c783f9c87e60831201f2cce7f3b2e4846bf4d8728eabe54d60700b318a0b" ], - "markers": "platform_python_implementation != 'PyPy'", + "markers": "python_version >= '3.8'", "version": "==1.17.1" }, "charset-normalizer": { @@ -421,7 +421,7 @@ }, "dbrepo": { "hashes": [ - "sha256:779e7ee84ae91131e16100fee7143013b4c231dcd3990d418d024ff76af271e9" + "sha256:871d6852e3e318700314bfa5e0d4bd77612002323b32c278116118bf77e8480b" ], "path": "./lib/dbrepo-1.7.0.tar.gz" }, @@ -458,11 +458,12 @@ }, "flask-cors": { "hashes": [ - "sha256:5aadb4b950c4e93745034594d9f3ea6591f734bb3662e16e255ffbf5e89c88ef", - "sha256:b9e307d082a9261c100d8fb0ba909eec6a228ed1b60a8315fd85f783d61910bc" + "sha256:6ccb38d16d6b72bbc156c1c3f192bc435bfcc3c2bc864b2df1eb9b2d97b2403c", + "sha256:fa5cb364ead54bbf401a26dbf03030c6b18fb2fcaf70408096a572b409586b0c" ], "index": "pypi", - "version": "==5.0.0" + "markers": "python_version >= '3.9' and python_version < '4.0'", + "version": "==5.0.1" }, "flask-httpauth": { "hashes": [ @@ -1105,91 +1106,107 @@ }, "propcache": { "hashes": [ - "sha256:03ff9d3f665769b2a85e6157ac8b439644f2d7fd17615a82fa55739bc97863f4", - "sha256:049324ee97bb67285b49632132db351b41e77833678432be52bdd0289c0e05e4", - "sha256:081a430aa8d5e8876c6909b67bd2d937bfd531b0382d3fdedb82612c618bc41a", - "sha256:0f022d381747f0dfe27e99d928e31bc51a18b65bb9e481ae0af1380a6725dd1f", - "sha256:12d1083f001ace206fe34b6bdc2cb94be66d57a850866f0b908972f90996b3e9", - "sha256:14d86fe14b7e04fa306e0c43cdbeebe6b2c2156a0c9ce56b815faacc193e320d", - "sha256:160291c60081f23ee43d44b08a7e5fb76681221a8e10b3139618c5a9a291b84e", - "sha256:1672137af7c46662a1c2be1e8dc78cb6d224319aaa40271c9257d886be4363a6", - "sha256:19a0f89a7bb9d8048d9c4370c9c543c396e894c76be5525f5e1ad287f1750ddf", - "sha256:1ac2f5fe02fa75f56e1ad473f1175e11f475606ec9bd0be2e78e4734ad575034", - "sha256:1cd9a1d071158de1cc1c71a26014dcdfa7dd3d5f4f88c298c7f90ad6f27bb46d", - "sha256:1ffc3cca89bb438fb9c95c13fc874012f7b9466b89328c3c8b1aa93cdcfadd16", - "sha256:297878dc9d0a334358f9b608b56d02e72899f3b8499fc6044133f0d319e2ec30", - "sha256:2d3af2e79991102678f53e0dbf4c35de99b6b8b58f29a27ca0325816364caaba", - "sha256:30b43e74f1359353341a7adb783c8f1b1c676367b011709f466f42fda2045e95", - "sha256:3156628250f46a0895f1f36e1d4fbe062a1af8718ec3ebeb746f1d23f0c5dc4d", - "sha256:31f5af773530fd3c658b32b6bdc2d0838543de70eb9a2156c03e410f7b0d3aae", - "sha256:3935bfa5fede35fb202c4b569bb9c042f337ca4ff7bd540a0aa5e37131659348", - "sha256:39d51fbe4285d5db5d92a929e3e21536ea3dd43732c5b177c7ef03f918dff9f2", - "sha256:3f77ce728b19cb537714499928fe800c3dda29e8d9428778fc7c186da4c09a64", - "sha256:4160d9283bd382fa6c0c2b5e017acc95bc183570cd70968b9202ad6d8fc48dce", - "sha256:4a571d97dbe66ef38e472703067021b1467025ec85707d57e78711c085984e54", - "sha256:4e6281aedfca15301c41f74d7005e6e3f4ca143584ba696ac69df4f02f40d629", - "sha256:52277518d6aae65536e9cea52d4e7fd2f7a66f4aa2d30ed3f2fcea620ace3c54", - "sha256:556fc6c10989f19a179e4321e5d678db8eb2924131e64652a51fe83e4c3db0e1", - "sha256:574faa3b79e8ebac7cb1d7930f51184ba1ccf69adfdec53a12f319a06030a68b", - "sha256:58791550b27d5488b1bb52bc96328456095d96206a250d28d874fafe11b3dfaf", - "sha256:5b750a8e5a1262434fb1517ddf64b5de58327f1adc3524a5e44c2ca43305eb0b", - "sha256:5d97151bc92d2b2578ff7ce779cdb9174337390a535953cbb9452fb65164c587", - "sha256:5eee736daafa7af6d0a2dc15cc75e05c64f37fc37bafef2e00d77c14171c2097", - "sha256:6445804cf4ec763dc70de65a3b0d9954e868609e83850a47ca4f0cb64bd79fea", - "sha256:647894f5ae99c4cf6bb82a1bb3a796f6e06af3caa3d32e26d2350d0e3e3faf24", - "sha256:66d4cfda1d8ed687daa4bc0274fcfd5267873db9a5bc0418c2da19273040eeb7", - "sha256:6a9a8c34fb7bb609419a211e59da8887eeca40d300b5ea8e56af98f6fbbb1541", - "sha256:6b3f39a85d671436ee3d12c017f8fdea38509e4f25b28eb25877293c98c243f6", - "sha256:6b6fb63ae352e13748289f04f37868099e69dba4c2b3e271c46061e82c745634", - "sha256:70693319e0b8fd35dd863e3e29513875eb15c51945bf32519ef52927ca883bc3", - "sha256:781e65134efaf88feb447e8c97a51772aa75e48b794352f94cb7ea717dedda0d", - "sha256:819ce3b883b7576ca28da3861c7e1a88afd08cc8c96908e08a3f4dd64a228034", - "sha256:857112b22acd417c40fa4595db2fe28ab900c8c5fe4670c7989b1c0230955465", - "sha256:887d9b0a65404929641a9fabb6452b07fe4572b269d901d622d8a34a4e9043b2", - "sha256:8b3489ff1ed1e8315674d0775dc7d2195fb13ca17b3808721b54dbe9fd020faf", - "sha256:92fc4500fcb33899b05ba73276dfb684a20d31caa567b7cb5252d48f896a91b1", - "sha256:9403db39be1393618dd80c746cb22ccda168efce239c73af13c3763ef56ffc04", - "sha256:98110aa363f1bb4c073e8dcfaefd3a5cea0f0834c2aab23dda657e4dab2f53b5", - "sha256:999779addc413181912e984b942fbcc951be1f5b3663cd80b2687758f434c583", - "sha256:9caac6b54914bdf41bcc91e7eb9147d331d29235a7c967c150ef5df6464fd1bb", - "sha256:a7a078f5d37bee6690959c813977da5291b24286e7b962e62a94cec31aa5188b", - "sha256:a7e65eb5c003a303b94aa2c3852ef130230ec79e349632d030e9571b87c4698c", - "sha256:a96dc1fa45bd8c407a0af03b2d5218392729e1822b0c32e62c5bf7eeb5fb3958", - "sha256:aca405706e0b0a44cc6bfd41fbe89919a6a56999157f6de7e182a990c36e37bc", - "sha256:accb6150ce61c9c4b7738d45550806aa2b71c7668c6942f17b0ac182b6142fd4", - "sha256:ad1af54a62ffe39cf34db1aa6ed1a1873bd548f6401db39d8e7cd060b9211f82", - "sha256:ae1aa1cd222c6d205853b3013c69cd04515f9d6ab6de4b0603e2e1c33221303e", - "sha256:b2d0a12018b04f4cb820781ec0dffb5f7c7c1d2a5cd22bff7fb055a2cb19ebce", - "sha256:b480c6a4e1138e1aa137c0079b9b6305ec6dcc1098a8ca5196283e8a49df95a9", - "sha256:b74c261802d3d2b85c9df2dfb2fa81b6f90deeef63c2db9f0e029a3cac50b518", - "sha256:ba278acf14471d36316159c94a802933d10b6a1e117b8554fe0d0d9b75c9d536", - "sha256:bb6178c241278d5fe853b3de743087be7f5f4c6f7d6d22a3b524d323eecec505", - "sha256:bf72af5e0fb40e9babf594308911436c8efde3cb5e75b6f206c34ad18be5c052", - "sha256:bfd3223c15bebe26518d58ccf9a39b93948d3dcb3e57a20480dfdd315356baff", - "sha256:c214999039d4f2a5b2073ac506bba279945233da8c786e490d411dfc30f855c1", - "sha256:c2f992c07c0fca81655066705beae35fc95a2fa7366467366db627d9f2ee097f", - "sha256:cba4cfa1052819d16699e1d55d18c92b6e094d4517c41dd231a8b9f87b6fa681", - "sha256:cea7daf9fc7ae6687cf1e2c049752f19f146fdc37c2cc376e7d0032cf4f25347", - "sha256:cf6c4150f8c0e32d241436526f3c3f9cbd34429492abddbada2ffcff506c51af", - "sha256:d09c333d36c1409d56a9d29b3a1b800a42c76a57a5a8907eacdbce3f18768246", - "sha256:d27b84d5880f6d8aa9ae3edb253c59d9f6642ffbb2c889b78b60361eed449787", - "sha256:d2ccec9ac47cf4e04897619c0e0c1a48c54a71bdf045117d3a26f80d38ab1fb0", - "sha256:d71264a80f3fcf512eb4f18f59423fe82d6e346ee97b90625f283df56aee103f", - "sha256:d93f3307ad32a27bda2e88ec81134b823c240aa3abb55821a8da553eed8d9439", - "sha256:d9631c5e8b5b3a0fda99cb0d29c18133bca1e18aea9effe55adb3da1adef80d3", - "sha256:ddfab44e4489bd79bda09d84c430677fc7f0a4939a73d2bba3073036f487a0a6", - "sha256:e7048abd75fe40712005bcfc06bb44b9dfcd8e101dda2ecf2f5aa46115ad07ca", - "sha256:e73091191e4280403bde6c9a52a6999d69cdfde498f1fdf629105247599b57ec", - "sha256:e800776a79a5aabdb17dcc2346a7d66d0777e942e4cd251defeb084762ecd17d", - "sha256:edc9fc7051e3350643ad929df55c451899bb9ae6d24998a949d2e4c87fb596d3", - "sha256:f089118d584e859c62b3da0892b88a83d611c2033ac410e929cb6754eec0ed16", - "sha256:f174bbd484294ed9fdf09437f889f95807e5f229d5d93588d34e92106fbf6717", - "sha256:f508b0491767bb1f2b87fdfacaba5f7eddc2f867740ec69ece6d1946d29029a6", - "sha256:f7a31fc1e1bd362874863fdeed71aed92d348f5336fd84f2197ba40c59f061bd", - "sha256:f9479aa06a793c5aeba49ce5c5692ffb51fcd9a7016e017d555d5e2b0045d212" + "sha256:02df07041e0820cacc8f739510078f2aadcfd3fc57eaeeb16d5ded85c872c89e", + "sha256:03acd9ff19021bd0567582ac88f821b66883e158274183b9e5586f678984f8fe", + "sha256:03c091bb752349402f23ee43bb2bff6bd80ccab7c9df6b88ad4322258d6960fc", + "sha256:07700939b2cbd67bfb3b76a12e1412405d71019df00ca5697ce75e5ef789d829", + "sha256:0c3e893c4464ebd751b44ae76c12c5f5c1e4f6cbd6fbf67e3783cd93ad221863", + "sha256:119e244ab40f70a98c91906d4c1f4c5f2e68bd0b14e7ab0a06922038fae8a20f", + "sha256:11ae6a8a01b8a4dc79093b5d3ca2c8a4436f5ee251a9840d7790dccbd96cb649", + "sha256:15010f29fbed80e711db272909a074dc79858c6d28e2915704cfc487a8ac89c6", + "sha256:19d36bb351ad5554ff20f2ae75f88ce205b0748c38b146c75628577020351e3c", + "sha256:1c8f7d896a16da9455f882870a507567d4f58c53504dc2d4b1e1d386dfe4588a", + "sha256:2383a17385d9800b6eb5855c2f05ee550f803878f344f58b6e194de08b96352c", + "sha256:24c04f8fbf60094c531667b8207acbae54146661657a1b1be6d3ca7773b7a545", + "sha256:2578541776769b500bada3f8a4eeaf944530516b6e90c089aa368266ed70c49e", + "sha256:26a67e5c04e3119594d8cfae517f4b9330c395df07ea65eab16f3d559b7068fe", + "sha256:2b975528998de037dfbc10144b8aed9b8dd5a99ec547f14d1cb7c5665a43f075", + "sha256:2d15bc27163cd4df433e75f546b9ac31c1ba7b0b128bfb1b90df19082466ff57", + "sha256:2d913d36bdaf368637b4f88d554fb9cb9d53d6920b9c5563846555938d5450bf", + "sha256:3302c5287e504d23bb0e64d2a921d1eb4a03fb93a0a0aa3b53de059f5a5d737d", + "sha256:36ca5e9a21822cc1746023e88f5c0af6fce3af3b85d4520efb1ce4221bed75cc", + "sha256:3b812b3cb6caacd072276ac0492d249f210006c57726b6484a1e1805b3cfeea0", + "sha256:3c6ec957025bf32b15cbc6b67afe233c65b30005e4c55fe5768e4bb518d712f1", + "sha256:41de3da5458edd5678b0f6ff66691507f9885f5fe6a0fb99a5d10d10c0fd2d64", + "sha256:42924dc0c9d73e49908e35bbdec87adedd651ea24c53c29cac103ede0ea1d340", + "sha256:4544699674faf66fb6b4473a1518ae4999c1b614f0b8297b1cef96bac25381db", + "sha256:46ed02532cb66612d42ae5c3929b5e98ae330ea0f3900bc66ec5f4862069519b", + "sha256:49ea05212a529c2caffe411e25a59308b07d6e10bf2505d77da72891f9a05641", + "sha256:4fa0e7c9c3cf7c276d4f6ab9af8adddc127d04e0fcabede315904d2ff76db626", + "sha256:507c5357a8d8b4593b97fb669c50598f4e6cccbbf77e22fa9598aba78292b4d7", + "sha256:549722908de62aa0b47a78b90531c022fa6e139f9166be634f667ff45632cc92", + "sha256:58e6d2a5a7cb3e5f166fd58e71e9a4ff504be9dc61b88167e75f835da5764d07", + "sha256:5a16167118677d94bb48bfcd91e420088854eb0737b76ec374b91498fb77a70e", + "sha256:5d62c4f6706bff5d8a52fd51fec6069bef69e7202ed481486c0bc3874912c787", + "sha256:5fa159dcee5dba00c1def3231c249cf261185189205073bde13797e57dd7540a", + "sha256:6032231d4a5abd67c7f71168fd64a47b6b451fbcb91c8397c2f7610e67683810", + "sha256:63f26258a163c34542c24808f03d734b338da66ba91f410a703e505c8485791d", + "sha256:65a37714b8ad9aba5780325228598a5b16c47ba0f8aeb3dc0514701e4413d7c0", + "sha256:67054e47c01b7b349b94ed0840ccae075449503cf1fdd0a1fdd98ab5ddc2667b", + "sha256:67dda3c7325691c2081510e92c561f465ba61b975f481735aefdfc845d2cd043", + "sha256:6985a593417cdbc94c7f9c3403747335e450c1599da1647a5af76539672464d3", + "sha256:6a1948df1bb1d56b5e7b0553c0fa04fd0e320997ae99689488201f19fa90d2e7", + "sha256:6b5b7fd6ee7b54e01759f2044f936dcf7dea6e7585f35490f7ca0420fe723c0d", + "sha256:6c929916cbdb540d3407c66f19f73387f43e7c12fa318a66f64ac99da601bcdf", + "sha256:6f4d7a7c0aff92e8354cceca6fe223973ddf08401047920df0fcb24be2bd5138", + "sha256:728af36011bb5d344c4fe4af79cfe186729efb649d2f8b395d1572fb088a996c", + "sha256:742840d1d0438eb7ea4280f3347598f507a199a35a08294afdcc560c3739989d", + "sha256:75e872573220d1ee2305b35c9813626e620768248425f58798413e9c39741f46", + "sha256:794c3dd744fad478b6232289c866c25406ecdfc47e294618bdf1697e69bd64a6", + "sha256:7c0fdbdf6983526e269e5a8d53b7ae3622dd6998468821d660d0daf72779aefa", + "sha256:7c5f5290799a3f6539cc5e6f474c3e5c5fbeba74a5e1e5be75587746a940d51e", + "sha256:7c6e7e4f9167fddc438cd653d826f2222222564daed4116a02a184b464d3ef05", + "sha256:7cedd25e5f678f7738da38037435b340694ab34d424938041aa630d8bac42663", + "sha256:7e2e068a83552ddf7a39a99488bcba05ac13454fb205c847674da0352602082f", + "sha256:8319293e85feadbbfe2150a5659dbc2ebc4afdeaf7d98936fb9a2f2ba0d4c35c", + "sha256:8526b0941ec5a40220fc4dfde76aed58808e2b309c03e9fa8e2260083ef7157f", + "sha256:8884ba1a0fe7210b775106b25850f5e5a9dc3c840d1ae9924ee6ea2eb3acbfe7", + "sha256:8cb625bcb5add899cb8ba7bf716ec1d3e8f7cdea9b0713fa99eadf73b6d4986f", + "sha256:8d663fd71491dde7dfdfc899d13a067a94198e90695b4321084c6e450743b8c7", + "sha256:8ee1983728964d6070ab443399c476de93d5d741f71e8f6e7880a065f878e0b9", + "sha256:997e7b8f173a391987df40f3b52c423e5850be6f6df0dcfb5376365440b56667", + "sha256:9be90eebc9842a93ef8335291f57b3b7488ac24f70df96a6034a13cb58e6ff86", + "sha256:9ddd49258610499aab83b4f5b61b32e11fce873586282a0e972e5ab3bcadee51", + "sha256:9ecde3671e62eeb99e977f5221abcf40c208f69b5eb986b061ccec317c82ebd0", + "sha256:9ff4e9ecb6e4b363430edf2c6e50173a63e0820e549918adef70515f87ced19a", + "sha256:a254537b9b696ede293bfdbc0a65200e8e4507bc9f37831e2a0318a9b333c85c", + "sha256:a2b9bf8c79b660d0ca1ad95e587818c30ccdb11f787657458d6f26a1ea18c568", + "sha256:a61a68d630e812b67b5bf097ab84e2cd79b48c792857dc10ba8a223f5b06a2af", + "sha256:a7080b0159ce05f179cfac592cda1a82898ca9cd097dacf8ea20ae33474fbb25", + "sha256:a8fd93de4e1d278046345f49e2238cdb298589325849b2645d4a94c53faeffc5", + "sha256:a94ffc66738da99232ddffcf7910e0f69e2bbe3a0802e54426dbf0714e1c2ffe", + "sha256:aa806bbc13eac1ab6291ed21ecd2dd426063ca5417dd507e6be58de20e58dfcf", + "sha256:b0c1a133d42c6fc1f5fbcf5c91331657a1ff822e87989bf4a6e2e39b818d0ee9", + "sha256:b58229a844931bca61b3a20efd2be2a2acb4ad1622fc026504309a6883686fbf", + "sha256:bb2f144c6d98bb5cbc94adeb0447cfd4c0f991341baa68eee3f3b0c9c0e83767", + "sha256:be90c94570840939fecedf99fa72839aed70b0ced449b415c85e01ae67422c90", + "sha256:bf0d9a171908f32d54f651648c7290397b8792f4303821c42a74e7805bfb813c", + "sha256:bf15fc0b45914d9d1b706f7c9c4f66f2b7b053e9517e40123e137e8ca8958b3d", + "sha256:bf4298f366ca7e1ad1d21bbb58300a6985015909964077afd37559084590c929", + "sha256:c441c841e82c5ba7a85ad25986014be8d7849c3cfbdb6004541873505929a74e", + "sha256:cacea77ef7a2195f04f9279297684955e3d1ae4241092ff0cfcef532bb7a1c32", + "sha256:cd54895e4ae7d32f1e3dd91261df46ee7483a735017dc6f987904f194aa5fd14", + "sha256:d1323cd04d6e92150bcc79d0174ce347ed4b349d748b9358fd2e497b121e03c8", + "sha256:d383bf5e045d7f9d239b38e6acadd7b7fdf6c0087259a84ae3475d18e9a2ae8b", + "sha256:d3e7420211f5a65a54675fd860ea04173cde60a7cc20ccfbafcccd155225f8bc", + "sha256:d8074c5dd61c8a3e915fa8fc04754fa55cfa5978200d2daa1e2d4294c1f136aa", + "sha256:df03cd88f95b1b99052b52b1bb92173229d7a674df0ab06d2b25765ee8404bce", + "sha256:e45377d5d6fefe1677da2a2c07b024a6dac782088e37c0b1efea4cfe2b1be19b", + "sha256:e53d19c2bf7d0d1e6998a7e693c7e87300dd971808e6618964621ccd0e01fe4e", + "sha256:e560fd75aaf3e5693b91bcaddd8b314f4d57e99aef8a6c6dc692f935cc1e6bbf", + "sha256:ec5060592d83454e8063e487696ac3783cc48c9a329498bafae0d972bc7816c9", + "sha256:ecc2920630283e0783c22e2ac94427f8cca29a04cfdf331467d4f661f4072dac", + "sha256:ed7161bccab7696a473fe7ddb619c1d75963732b37da4618ba12e60899fefe4f", + "sha256:ee0bd3a7b2e184e88d25c9baa6a9dc609ba25b76daae942edfb14499ac7ec374", + "sha256:ee25f1ac091def37c4b59d192bbe3a206298feeb89132a470325bf76ad122a1e", + "sha256:efa44f64c37cc30c9f05932c740a8b40ce359f51882c70883cc95feac842da4d", + "sha256:f47d52fd9b2ac418c4890aad2f6d21a6b96183c98021f0a48497a904199f006e", + "sha256:f857034dc68d5ceb30fb60afb6ff2103087aea10a01b613985610e007053a121", + "sha256:fb91d20fa2d3b13deea98a690534697742029f4fb83673a3501ae6e3746508b5", + "sha256:fddb8870bdb83456a489ab67c6b3040a8d5a55069aa6f72f9d872235fbc52f54" ], "markers": "python_version >= '3.9'", - "version": "==0.2.1" + "version": "==0.3.0" }, "pycparser": { "hashes": [ @@ -1453,112 +1470,112 @@ }, "rpds-py": { "hashes": [ - "sha256:009de23c9c9ee54bf11303a966edf4d9087cd43a6003672e6aa7def643d06518", - "sha256:02fbb9c288ae08bcb34fb41d516d5eeb0455ac35b5512d03181d755d80810059", - "sha256:0a0461200769ab3b9ab7e513f6013b7a97fdeee41c29b9db343f3c5a8e2b9e61", - "sha256:0b09865a9abc0ddff4e50b5ef65467cd94176bf1e0004184eb915cbc10fc05c5", - "sha256:0b8db6b5b2d4491ad5b6bdc2bc7c017eec108acbf4e6785f42a9eb0ba234f4c9", - "sha256:0c150c7a61ed4a4f4955a96626574e9baf1adf772c2fb61ef6a5027e52803543", - "sha256:0f3cec041684de9a4684b1572fe28c7267410e02450f4561700ca5a3bc6695a2", - "sha256:1352ae4f7c717ae8cba93421a63373e582d19d55d2ee2cbb184344c82d2ae55a", - "sha256:177c7c0fce2855833819c98e43c262007f42ce86651ffbb84f37883308cb0e7d", - "sha256:1978d0021e943aae58b9b0b196fb4895a25cc53d3956b8e35e0b7682eefb6d56", - "sha256:1a60bce91f81ddaac922a40bbb571a12c1070cb20ebd6d49c48e0b101d87300d", - "sha256:1aef18820ef3e4587ebe8b3bc9ba6e55892a6d7b93bac6d29d9f631a3b4befbd", - "sha256:1e9663daaf7a63ceccbbb8e3808fe90415b0757e2abddbfc2e06c857bf8c5e2b", - "sha256:20070c65396f7373f5df4005862fa162db5d25d56150bddd0b3e8214e8ef45b4", - "sha256:214b7a953d73b5e87f0ebece4a32a5bd83c60a3ecc9d4ec8f1dca968a2d91e99", - "sha256:22bebe05a9ffc70ebfa127efbc429bc26ec9e9b4ee4d15a740033efda515cf3d", - "sha256:24e8abb5878e250f2eb0d7859a8e561846f98910326d06c0d51381fed59357bd", - "sha256:26fd7cac7dd51011a245f29a2cc6489c4608b5a8ce8d75661bb4a1066c52dfbe", - "sha256:27b1d3b3915a99208fee9ab092b8184c420f2905b7d7feb4aeb5e4a9c509b8a1", - "sha256:27e98004595899949bd7a7b34e91fa7c44d7a97c40fcaf1d874168bb652ec67e", - "sha256:2b8f60e1b739a74bab7e01fcbe3dddd4657ec685caa04681df9d562ef15b625f", - "sha256:2de29005e11637e7a2361fa151f780ff8eb2543a0da1413bb951e9f14b699ef3", - "sha256:2e8b55d8517a2fda8d95cb45d62a5a8bbf9dd0ad39c5b25c8833efea07b880ca", - "sha256:2fa4331c200c2521512595253f5bb70858b90f750d39b8cbfd67465f8d1b596d", - "sha256:3445e07bf2e8ecfeef6ef67ac83de670358abf2996916039b16a218e3d95e97e", - "sha256:3453e8d41fe5f17d1f8e9c383a7473cd46a63661628ec58e07777c2fff7196dc", - "sha256:378753b4a4de2a7b34063d6f95ae81bfa7b15f2c1a04a9518e8644e81807ebea", - "sha256:3af6e48651c4e0d2d166dc1b033b7042ea3f871504b6805ba5f4fe31581d8d38", - "sha256:3dfcbc95bd7992b16f3f7ba05af8a64ca694331bd24f9157b49dadeeb287493b", - "sha256:3f21f0495edea7fdbaaa87e633a8689cd285f8f4af5c869f27bc8074638ad69c", - "sha256:4041711832360a9b75cfb11b25a6a97c8fb49c07b8bd43d0d02b45d0b499a4ff", - "sha256:44d61b4b7d0c2c9ac019c314e52d7cbda0ae31078aabd0f22e583af3e0d79723", - "sha256:4617e1915a539a0d9a9567795023de41a87106522ff83fbfaf1f6baf8e85437e", - "sha256:4b232061ca880db21fa14defe219840ad9b74b6158adb52ddf0e87bead9e8493", - "sha256:5246b14ca64a8675e0a7161f7af68fe3e910e6b90542b4bfb5439ba752191df6", - "sha256:5725dd9cc02068996d4438d397e255dcb1df776b7ceea3b9cb972bdb11260a83", - "sha256:583f6a1993ca3369e0f80ba99d796d8e6b1a3a2a442dd4e1a79e652116413091", - "sha256:59259dc58e57b10e7e18ce02c311804c10c5a793e6568f8af4dead03264584d1", - "sha256:593eba61ba0c3baae5bc9be2f5232430453fb4432048de28399ca7376de9c627", - "sha256:59f4a79c19232a5774aee369a0c296712ad0e77f24e62cad53160312b1c1eaa1", - "sha256:5f0e260eaf54380380ac3808aa4ebe2d8ca28b9087cf411649f96bad6900c728", - "sha256:62d9cfcf4948683a18a9aff0ab7e1474d407b7bab2ca03116109f8464698ab16", - "sha256:64607d4cbf1b7e3c3c8a14948b99345eda0e161b852e122c6bb71aab6d1d798c", - "sha256:655ca44a831ecb238d124e0402d98f6212ac527a0ba6c55ca26f616604e60a45", - "sha256:666ecce376999bf619756a24ce15bb14c5bfaf04bf00abc7e663ce17c3f34fe7", - "sha256:68049202f67380ff9aa52f12e92b1c30115f32e6895cd7198fa2a7961621fc5a", - "sha256:69803198097467ee7282750acb507fba35ca22cc3b85f16cf45fb01cb9097730", - "sha256:6c7b99ca52c2c1752b544e310101b98a659b720b21db00e65edca34483259967", - "sha256:6dd9412824c4ce1aca56c47b0991e65bebb7ac3f4edccfd3f156150c96a7bf25", - "sha256:70eb60b3ae9245ddea20f8a4190bd79c705a22f8028aaf8bbdebe4716c3fab24", - "sha256:70fb28128acbfd264eda9bf47015537ba3fe86e40d046eb2963d75024be4d055", - "sha256:7b2513ba235829860b13faa931f3b6846548021846ac808455301c23a101689d", - "sha256:7ef9d9da710be50ff6809fed8f1963fecdfecc8b86656cadfca3bc24289414b0", - "sha256:81e69b0a0e2537f26d73b4e43ad7bc8c8efb39621639b4434b76a3de50c6966e", - "sha256:8633e471c6207a039eff6aa116e35f69f3156b3989ea3e2d755f7bc41754a4a7", - "sha256:8bd7c8cfc0b8247c8799080fbff54e0b9619e17cdfeb0478ba7295d43f635d7c", - "sha256:9253fc214112405f0afa7db88739294295f0e08466987f1d70e29930262b4c8f", - "sha256:99b37292234e61325e7a5bb9689e55e48c3f5f603af88b1642666277a81f1fbd", - "sha256:9bd7228827ec7bb817089e2eb301d907c0d9827a9e558f22f762bb690b131652", - "sha256:9beeb01d8c190d7581a4d59522cd3d4b6887040dcfc744af99aa59fef3e041a8", - "sha256:a63cbdd98acef6570c62b92a1e43266f9e8b21e699c363c0fef13bd530799c11", - "sha256:a76e42402542b1fae59798fab64432b2d015ab9d0c8c47ba7addddbaf7952333", - "sha256:ac0a03221cdb5058ce0167ecc92a8c89e8d0decdc9e99a2ec23380793c4dcb96", - "sha256:b0b4136a252cadfa1adb705bb81524eee47d9f6aab4f2ee4fa1e9d3cd4581f64", - "sha256:b25bc607423935079e05619d7de556c91fb6adeae9d5f80868dde3468657994b", - "sha256:b3d504047aba448d70cf6fa22e06cb09f7cbd761939fdd47604f5e007675c24e", - "sha256:bb47271f60660803ad11f4c61b42242b8c1312a31c98c578f79ef9387bbde21c", - "sha256:bbb232860e3d03d544bc03ac57855cd82ddf19c7a07651a7c0fdb95e9efea8b9", - "sha256:bc27863442d388870c1809a87507727b799c8460573cfbb6dc0eeaef5a11b5ec", - "sha256:bc51abd01f08117283c5ebf64844a35144a0843ff7b2983e0648e4d3d9f10dbb", - "sha256:be2eb3f2495ba669d2a985f9b426c1797b7d48d6963899276d22f23e33d47e37", - "sha256:bf9db5488121b596dbfc6718c76092fda77b703c1f7533a226a5a9f65248f8ad", - "sha256:c58e2339def52ef6b71b8f36d13c3688ea23fa093353f3a4fee2556e62086ec9", - "sha256:cfbc454a2880389dbb9b5b398e50d439e2e58669160f27b60e5eca11f68ae17c", - "sha256:cff63a0272fcd259dcc3be1657b07c929c466b067ceb1c20060e8d10af56f5bf", - "sha256:d115bffdd417c6d806ea9069237a4ae02f513b778e3789a359bc5856e0404cc4", - "sha256:d20cfb4e099748ea39e6f7b16c91ab057989712d31761d3300d43134e26e165f", - "sha256:d48424e39c2611ee1b84ad0f44fb3b2b53d473e65de061e3f460fc0be5f1939d", - "sha256:e0fa2d4ec53dc51cf7d3bb22e0aa0143966119f42a0c3e4998293a3dd2856b09", - "sha256:e32fee8ab45d3c2db6da19a5323bc3362237c8b653c70194414b892fd06a080d", - "sha256:e35ba67d65d49080e8e5a1dd40101fccdd9798adb9b050ff670b7d74fa41c566", - "sha256:e3fb866d9932a3d7d0c82da76d816996d1667c44891bd861a0f97ba27e84fc74", - "sha256:e61b02c3f7a1e0b75e20c3978f7135fd13cb6cf551bf4a6d29b999a88830a338", - "sha256:e67ba3c290821343c192f7eae1d8fd5999ca2dc99994114643e2f2d3e6138b15", - "sha256:e79dd39f1e8c3504be0607e5fc6e86bb60fe3584bec8b782578c3b0fde8d932c", - "sha256:e89391e6d60251560f0a8f4bd32137b077a80d9b7dbe6d5cab1cd80d2746f648", - "sha256:ea7433ce7e4bfc3a85654aeb6747babe3f66eaf9a1d0c1e7a4435bbdf27fea84", - "sha256:eaf16ae9ae519a0e237a0f528fd9f0197b9bb70f40263ee57ae53c2b8d48aeb3", - "sha256:eb0c341fa71df5a4595f9501df4ac5abfb5a09580081dffbd1ddd4654e6e9123", - "sha256:f276b245347e6e36526cbd4a266a417796fc531ddf391e43574cf6466c492520", - "sha256:f47ad3d5f3258bd7058d2d506852217865afefe6153a36eb4b6928758041d831", - "sha256:f56a6b404f74ab372da986d240e2e002769a7d7102cc73eb238a4f72eec5284e", - "sha256:f5cf2a0c2bdadf3791b5c205d55a37a54025c6e18a71c71f82bb536cf9a454bf", - "sha256:f5d36399a1b96e1a5fdc91e0522544580dbebeb1f77f27b2b0ab25559e103b8b", - "sha256:f60bd8423be1d9d833f230fdbccf8f57af322d96bcad6599e5a771b151398eb2", - "sha256:f612463ac081803f243ff13cccc648578e2279295048f2a8d5eb430af2bae6e3", - "sha256:f73d3fef726b3243a811121de45193c0ca75f6407fe66f3f4e183c983573e130", - "sha256:f82a116a1d03628a8ace4859556fb39fd1424c933341a08ea3ed6de1edb0283b", - "sha256:fb0ba113b4983beac1a2eb16faffd76cb41e176bf58c4afe3e14b9c681f702de", - "sha256:fb4f868f712b2dd4bcc538b0a0c1f63a2b1d584c925e69a224d759e7070a12d5", - "sha256:fb6116dfb8d1925cbdb52595560584db42a7f664617a1f7d7f6e32f138cdf37d", - "sha256:fda7cb070f442bf80b642cd56483b5548e43d366fe3f39b98e67cce780cded00", - "sha256:feea821ee2a9273771bae61194004ee2fc33f8ec7db08117ef9147d4bbcbca8e" + "sha256:09cd7dbcb673eb60518231e02874df66ec1296c01a4fcd733875755c02014b19", + "sha256:0f3288930b947cbebe767f84cf618d2cbe0b13be476e749da0e6a009f986248c", + "sha256:0fced9fd4a07a1ded1bac7e961ddd9753dd5d8b755ba8e05acba54a21f5f1522", + "sha256:112b8774b0b4ee22368fec42749b94366bd9b536f8f74c3d4175d4395f5cbd31", + "sha256:11dd60b2ffddba85715d8a66bb39b95ddbe389ad2cfcf42c833f1bcde0878eaf", + "sha256:178f8a60fc24511c0eb756af741c476b87b610dba83270fce1e5a430204566a4", + "sha256:1b08027489ba8fedde72ddd233a5ea411b85a6ed78175f40285bd401bde7466d", + "sha256:1bf5be5ba34e19be579ae873da515a2836a2166d8d7ee43be6ff909eda42b72b", + "sha256:1ed7de3c86721b4e83ac440751329ec6a1102229aa18163f84c75b06b525ad7e", + "sha256:1eedaaccc9bb66581d4ae7c50e15856e335e57ef2734dbc5fd8ba3e2a4ab3cb6", + "sha256:243241c95174b5fb7204c04595852fe3943cc41f47aa14c3828bc18cd9d3b2d6", + "sha256:26bb3e8de93443d55e2e748e9fd87deb5f8075ca7bc0502cfc8be8687d69a2ec", + "sha256:271fa2184cf28bdded86bb6217c8e08d3a169fe0bbe9be5e8d96e8476b707122", + "sha256:28358c54fffadf0ae893f6c1050e8f8853e45df22483b7fff2f6ab6152f5d8bf", + "sha256:285019078537949cecd0190f3690a0b0125ff743d6a53dfeb7a4e6787af154f5", + "sha256:2893d778d4671ee627bac4037a075168b2673c57186fb1a57e993465dbd79a93", + "sha256:2a54027554ce9b129fc3d633c92fa33b30de9f08bc61b32c053dc9b537266fed", + "sha256:2c6ae11e6e93728d86aafc51ced98b1658a0080a7dd9417d24bfb955bb09c3c2", + "sha256:2cfa07c346a7ad07019c33fb9a63cf3acb1f5363c33bc73014e20d9fe8b01cdd", + "sha256:35d5631ce0af26318dba0ae0ac941c534453e42f569011585cb323b7774502a5", + "sha256:3614d280bf7aab0d3721b5ce0e73434acb90a2c993121b6e81a1c15c665298ac", + "sha256:3902df19540e9af4cc0c3ae75974c65d2c156b9257e91f5101a51f99136d834c", + "sha256:3aaf141d39f45322e44fc2c742e4b8b4098ead5317e5f884770c8df0c332da70", + "sha256:3d8abf7896a91fb97e7977d1aadfcc2c80415d6dc2f1d0fca5b8d0df247248f3", + "sha256:3e77febf227a1dc3220159355dba68faa13f8dca9335d97504abf428469fb18b", + "sha256:3e9212f52074fc9d72cf242a84063787ab8e21e0950d4d6709886fb62bcb91d5", + "sha256:3ee9d6f0b38efb22ad94c3b68ffebe4c47865cdf4b17f6806d6c674e1feb4246", + "sha256:4233df01a250b3984465faed12ad472f035b7cd5240ea3f7c76b7a7016084495", + "sha256:4263320ed887ed843f85beba67f8b2d1483b5947f2dc73a8b068924558bfeace", + "sha256:4ab923167cfd945abb9b51a407407cf19f5bee35001221f2911dc85ffd35ff4f", + "sha256:4caafd1a22e5eaa3732acb7672a497123354bef79a9d7ceed43387d25025e935", + "sha256:50fb62f8d8364978478b12d5f03bf028c6bc2af04082479299139dc26edf4c64", + "sha256:55ff4151cfd4bc635e51cfb1c59ac9f7196b256b12e3a57deb9e5742e65941ad", + "sha256:5b98b6c953e5c2bda51ab4d5b4f172617d462eebc7f4bfdc7c7e6b423f6da957", + "sha256:5c9ff044eb07c8468594d12602291c635da292308c8c619244e30698e7fc455a", + "sha256:5e9c206a1abc27e0588cf8b7c8246e51f1a16a103734f7750830a1ccb63f557a", + "sha256:5fb89edee2fa237584e532fbf78f0ddd1e49a47c7c8cfa153ab4849dc72a35e6", + "sha256:633462ef7e61d839171bf206551d5ab42b30b71cac8f10a64a662536e057fdef", + "sha256:66f8d2a17e5838dd6fb9be6baaba8e75ae2f5fa6b6b755d597184bfcd3cb0eba", + "sha256:6959bb9928c5c999aba4a3f5a6799d571ddc2c59ff49917ecf55be2bbb4e3722", + "sha256:698a79d295626ee292d1730bc2ef6e70a3ab135b1d79ada8fde3ed0047b65a10", + "sha256:721f9c4011b443b6e84505fc00cc7aadc9d1743f1c988e4c89353e19c4a968ee", + "sha256:72e680c1518733b73c994361e4b06441b92e973ef7d9449feec72e8ee4f713da", + "sha256:75307599f0d25bf6937248e5ac4e3bde5ea72ae6618623b86146ccc7845ed00b", + "sha256:754fba3084b70162a6b91efceee8a3f06b19e43dac3f71841662053c0584209a", + "sha256:759462b2d0aa5a04be5b3e37fb8183615f47014ae6b116e17036b131985cb731", + "sha256:7938c7b0599a05246d704b3f5e01be91a93b411d0d6cc62275f025293b8a11ce", + "sha256:7b77e07233925bd33fc0022b8537774423e4c6680b6436316c5075e79b6384f4", + "sha256:7e5413d2e2d86025e73f05510ad23dad5950ab8417b7fc6beaad99be8077138b", + "sha256:7f3240dcfa14d198dba24b8b9cb3b108c06b68d45b7babd9eefc1038fdf7e707", + "sha256:7f9682a8f71acdf59fd554b82b1c12f517118ee72c0f3944eda461606dfe7eb9", + "sha256:8d67beb6002441faef8251c45e24994de32c4c8686f7356a1f601ad7c466f7c3", + "sha256:9441af1d25aed96901f97ad83d5c3e35e6cd21a25ca5e4916c82d7dd0490a4fa", + "sha256:98b257ae1e83f81fb947a363a274c4eb66640212516becaff7bef09a5dceacaa", + "sha256:9e9f3a3ac919406bc0414bbbd76c6af99253c507150191ea79fab42fdb35982a", + "sha256:a1c66e71ecfd2a4acf0e4bd75e7a3605afa8f9b28a3b497e4ba962719df2be57", + "sha256:a1e17d8dc8e57d8e0fd21f8f0f0a5211b3fa258b2e444c2053471ef93fe25a00", + "sha256:a20cb698c4a59c534c6701b1c24a968ff2768b18ea2991f886bd8985ce17a89f", + "sha256:a970bfaf130c29a679b1d0a6e0f867483cea455ab1535fb427566a475078f27f", + "sha256:a98f510d86f689fcb486dc59e6e363af04151e5260ad1bdddb5625c10f1e95f8", + "sha256:a9d3b728f5a5873d84cba997b9d617c6090ca5721caaa691f3b1a78c60adc057", + "sha256:ad76f44f70aac3a54ceb1813ca630c53415da3a24fd93c570b2dfb4856591017", + "sha256:ae28144c1daa61366205d32abd8c90372790ff79fc60c1a8ad7fd3c8553a600e", + "sha256:b03a8d50b137ee758e4c73638b10747b7c39988eb8e6cd11abb7084266455165", + "sha256:b5a96fcac2f18e5a0a23a75cd27ce2656c66c11c127b0318e508aab436b77428", + "sha256:b5ef909a37e9738d146519657a1aab4584018746a18f71c692f2f22168ece40c", + "sha256:b79f5ced71efd70414a9a80bbbfaa7160da307723166f09b69773153bf17c590", + "sha256:b91cceb5add79ee563bd1f70b30896bd63bc5f78a11c1f00a1e931729ca4f1f4", + "sha256:b92f5654157de1379c509b15acec9d12ecf6e3bc1996571b6cb82a4302060447", + "sha256:c04ca91dda8a61584165825907f5c967ca09e9c65fe8966ee753a3f2b019fe1e", + "sha256:c1f8afa346ccd59e4e5630d5abb67aba6a9812fddf764fd7eb11f382a345f8cc", + "sha256:c5334a71f7dc1160382d45997e29f2637c02f8a26af41073189d79b95d3321f1", + "sha256:c617d7453a80e29d9973b926983b1e700a9377dbe021faa36041c78537d7b08c", + "sha256:c632419c3870507ca20a37c8f8f5352317aca097639e524ad129f58c125c61c6", + "sha256:c6760211eee3a76316cf328f5a8bd695b47b1626d21c8a27fb3b2473a884d597", + "sha256:c698d123ce5d8f2d0cd17f73336615f6a2e3bdcedac07a1291bb4d8e7d82a05a", + "sha256:c76b32eb2ab650a29e423525e84eb197c45504b1c1e6e17b6cc91fcfeb1a4b1d", + "sha256:c8f7e90b948dc9dcfff8003f1ea3af08b29c062f681c05fd798e36daa3f7e3e8", + "sha256:c9e799dac1ffbe7b10c1fd42fe4cd51371a549c6e108249bde9cd1200e8f59b4", + "sha256:cafa48f2133d4daa028473ede7d81cd1b9f9e6925e9e4003ebdf77010ee02f35", + "sha256:ce473a2351c018b06dd8d30d5da8ab5a0831056cc53b2006e2a8028172c37ce5", + "sha256:d31ed4987d72aabdf521eddfb6a72988703c091cfc0064330b9e5f8d6a042ff5", + "sha256:d550d7e9e7d8676b183b37d65b5cd8de13676a738973d330b59dc8312df9c5dc", + "sha256:d6adb81564af0cd428910f83fa7da46ce9ad47c56c0b22b50872bc4515d91966", + "sha256:d6f6512a90bd5cd9030a6237f5346f046c6f0e40af98657568fa45695d4de59d", + "sha256:d7031d493c4465dbc8d40bd6cafefef4bd472b17db0ab94c53e7909ee781b9ef", + "sha256:d9f75a06ecc68f159d5d7603b734e1ff6daa9497a929150f794013aa9f6e3f12", + "sha256:db7707dde9143a67b8812c7e66aeb2d843fe33cc8e374170f4d2c50bd8f2472d", + "sha256:e0397dd0b3955c61ef9b22838144aa4bef6f0796ba5cc8edfc64d468b93798b4", + "sha256:e0df046f2266e8586cf09d00588302a32923eb6386ced0ca5c9deade6af9a149", + "sha256:e14f86b871ea74c3fddc9a40e947d6a5d09def5adc2076ee61fb910a9014fb35", + "sha256:e5963ea87f88bddf7edd59644a35a0feecf75f8985430124c253612d4f7d27ae", + "sha256:e768267cbe051dd8d1c5305ba690bb153204a09bf2e3de3ae530de955f5b5580", + "sha256:e9cb79ecedfc156c0692257ac7ed415243b6c35dd969baa461a6888fc79f2f07", + "sha256:ed6f011bedca8585787e5082cce081bac3d30f54520097b2411351b3574e1219", + "sha256:f3429fb8e15b20961efca8c8b21432623d85db2228cc73fe22756c6637aa39e7", + "sha256:f35eff113ad430b5272bbfc18ba111c66ff525828f24898b4e146eb479a2cdda", + "sha256:f3a6cb95074777f1ecda2ca4fa7717caa9ee6e534f42b7575a8f0d4cb0c24013", + "sha256:f7356a6da0562190558c4fcc14f0281db191cdf4cb96e7604c06acfcee96df15", + "sha256:f88626e3f5e57432e6191cd0c5d6d6b319b635e70b40be2ffba713053e5147dd", + "sha256:fad784a31869747df4ac968a351e070c06ca377549e4ace94775aaa3ab33ee06", + "sha256:fc869af5cba24d45fb0399b0cfdbcefcf6910bf4dee5d74036a57cf5264b3ff4", + "sha256:fee513135b5a58f3bb6d89e48326cd5aa308e4bcdf2f7d59f67c861ada482bf8" ], "markers": "python_version >= '3.9'", - "version": "==0.22.3" + "version": "==0.23.1" }, "s3transfer": { "hashes": [ @@ -1886,7 +1903,7 @@ "sha256:f7f5baafcc48261359e14bcd6d9bff6d4b28d9103847c9e136694cb0501aef87", "sha256:fc48c783f9c87e60831201f2cce7f3b2e4846bf4d8728eabe54d60700b318a0b" ], - "markers": "platform_python_implementation != 'PyPy'", + "markers": "python_version >= '3.8'", "version": "==1.17.1" }, "charset-normalizer": { diff --git a/dbrepo-analyse-service/lib/dbrepo-1.7.0-py3-none-any.whl b/dbrepo-analyse-service/lib/dbrepo-1.7.0-py3-none-any.whl index f75ec9ba7a7a4ad6c2897e38abdae20c815f56c7..8e9b35e6126deb26a784b5d5088d0d12caeffb79 100644 GIT binary patch delta 17017 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 NEL$SR##RK9008L-MS=hT delta 16542 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 H1t3`fMlFb; diff --git a/dbrepo-analyse-service/lib/dbrepo-1.7.0.tar.gz b/dbrepo-analyse-service/lib/dbrepo-1.7.0.tar.gz index be1dcfe68165001dbeacd670709955723a01e323..2e0bc94f24d9f5626150f4de9de97c577683fbfa 100644 GIT binary patch literal 44413 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 literal 42858 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 diff --git a/dbrepo-auth-service/dbrepo-realm.json b/dbrepo-auth-service/dbrepo-realm.json index bac2ddc978..c311e6cafd 100644 --- a/dbrepo-auth-service/dbrepo-realm.json +++ b/dbrepo-auth-service/dbrepo-realm.json @@ -69,411 +69,617 @@ "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "7ee1c424-11b0-46a9-b0ed-725e9b7fc40c", - "name" : "default-system-roles", - "description" : "${default-system-roles}", - "composite" : true, - "composites" : { - "realm" : [ "delete-database-view", "update-semantic-unit", "export-query-data", "check-foreign-database-access", "default-data-steward-roles", "execute-query", "default-user-handling", "delete-table-data", "find-query", "list-database-views", "persist-query", "update-search-index", "delete-database-access", "view-table-history", "create-ontology", "update-ontology", "modify-user-theme", "default-system-roles", "create-semantic-concept", "default-container-handling", "create-container", "create-table", "default-broker-handling", "default-maintenance-handling", "execute-semantic-query", "uma_authorization", "table-semantic-analyse", "list-containers", "check-database-access", "escalated-query-handling", "delete-identifier", "modify-database-owner", "list-tables", "export-table-data", "create-database-access", "delete-container", "re-execute-query", "create-semantic-unit", "escalated-identifier-handling", "system", "update-table-statistic", "escalated-semantics-handling", "default-database-handling", "delete-ontology", "find-database", "find-database-view", "update-semantic-concept", "find-user", "import-database-data", "publish-identifier", "default-roles-dbrepo", "find-foreign-user", "create-database", "create-maintenance-message", "find-maintenance-message", "escalated-container-handling", "default-researcher-roles", "default-identifier-handling", "escalated-user-handling", "modify-user-information", "create-database-view", "update-maintenance-message", "delete-foreign-table", "offline_access", "modify-foreign-table-column-semantics", "delete-maintenance-message", "find-container", "insert-table-data", "modify-identifier-metadata", "modify-database-image", "escalated-broker-handling", "modify-table-column-semantics", "escalated-database-handling", "default-semantics-handling", "update-database-access", "default-query-handling", "find-table", "list-queries", "default-developer-roles", "create-identifier", "escalated-table-handling", "find-identifier", "view-table-data", "list-licenses", "default-table-handling", "list-identifiers", "create-foreign-identifier", "list-databases", "list-ontologies", "modify-database-visibility", "list-maintenance-messages", "delete-table" ] - }, + "id" : "74648f9a-777e-4ef9-b97b-4c5d749d862f", + "name" : "update-search-index", + "description" : "${update-search-index}", + "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "143ba359-5fa2-451e-8296-43ecf20bb251", - "name" : "update-semantic-concept", - "description" : "${update-semantic-concept}", + "id" : "22492b64-c633-48a0-9678-b28669f2885b", + "name" : "execute-semantic-query", + "description" : "${execute-semantic-query}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "5136d7a3-e3f0-4585-bacd-15cb8a56095c", - "name" : "escalated-container-handling", - "description" : "${escalated-container-handling}", - "composite" : true, - "composites" : { - "realm" : [ "create-container", "delete-container" ] - }, + "id" : "4ed919fa-edc5-44e5-9411-607786e4a86d", + "name" : "view-table-history", + "description" : "${view-table-history}", + "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "b0bc8649-7d84-4dd3-84f0-7f174425babe", - "name" : "list-tables", - "description" : "${list-tables}", + "id" : "fe4a01f3-6590-4df6-9ade-5a9c1fae4736", + "name" : "create-semantic-unit", + "description" : "${create-semantic-unit}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "bfd85d9c-2772-4660-a8f0-cdc0cd8252b3", - "name" : "default-database-handling", - "description" : "${default-database-handling}", + "id" : "be4e1aba-e276-4241-b6ea-01dce6c52f8b", + "name" : "find-container", + "description" : "${find-container}", + "composite" : false, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "3a801b48-f3c2-4bc6-aa25-c7a91d5b32a7", + "name" : "default-researcher-roles", + "description" : "${default-researcher-roles}", "composite" : true, "composites" : { - "realm" : [ "modify-database-image", "modify-database-owner", "update-database-access", "create-database", "list-databases", "create-database-access", "find-database", "modify-database-visibility", "import-database-data", "delete-database-access", "check-database-access" ] + "realm" : [ "default-table-handling", "default-semantics-handling", "default-container-handling", "default-query-handling", "default-user-handling", "default-database-handling", "default-broker-handling", "default-identifier-handling", "default-storage-roles", "default-view-handling" ] }, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "74648f9a-777e-4ef9-b97b-4c5d749d862f", - "name" : "update-search-index", - "description" : "${update-search-index}", + "id" : "3d8104fb-8307-40f0-b4b2-c3e518957110", + "name" : "view-table-data", + "description" : "${view-table-data}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "22492b64-c633-48a0-9678-b28669f2885b", - "name" : "execute-semantic-query", - "description" : "${execute-semantic-query}", + "id" : "fe71b907-7020-44ab-9964-da2b87264582", + "name" : "create-database", + "description" : "${create-database}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "4ed919fa-edc5-44e5-9411-607786e4a86d", - "name" : "view-table-history", - "description" : "${view-table-history}", + "id" : "e51b63c2-48dd-4bd6-95fb-d257d21b26ba", + "name" : "import-database-data", + "description" : "${import-database-data}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "d89a2881-b642-4abb-b990-196e71372f6b", - "name" : "default-table-handling", - "description" : "${default-table-handling}", - "composite" : true, - "composites" : { - "realm" : [ "modify-table-column-semantics", "list-tables", "update-table-statistic", "find-table", "create-table", "delete-table", "update-table" ] - }, + "id" : "1f0a9b13-c2b8-474c-bc08-59dbd71835a6", + "name" : "modify-database-image", + "description" : "${modify-database-image}", + "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "f5ea431a-9b2c-4195-bcb4-9511f38e4b44", - "name" : "create-database-view", - "description" : "${create-database-view}", + "id" : "a7ad038c-5c06-42fc-951c-15ac09d4df66", + "name" : "modify-database-owner", + "description" : "${modify-database-owner}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "a5ffc20e-8b11-498c-9f3b-b5740aec24c7", - "name" : "default-semantics-handling", - "description" : "${default-semantics-handling}", - "composite" : true, - "composites" : { - "realm" : [ "create-semantic-unit", "create-semantic-concept", "execute-semantic-query", "table-semantic-analyse" ] - }, + "id" : "22449528-00c9-4e86-9400-4b8ae6fd8f4d", + "name" : "modify-view-visibility", + "description" : "${modify-view-visibility}", + "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "fe4a01f3-6590-4df6-9ade-5a9c1fae4736", - "name" : "create-semantic-unit", - "description" : "${create-semantic-unit}", + "id" : "c12c1f4e-186f-4153-a795-26e79fb623d6", + "name" : "create-ontology", + "description" : "${create-ontology}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "0e12eedf-545d-4d32-ac4d-2821dcb118b8", - "name" : "update-table-statistic", - "description" : "${update-table-statistic}", + "id" : "b60a5694-4099-4f7d-a7e9-4c433e0eb9c9", + "name" : "update-semantic-unit", + "description" : "${update-semantic-unit}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "e63e61a2-d852-4ad3-bfb5-92d9ceafef6a", - "name" : "escalated-user-handling", - "description" : "${escalated-user-handling}", - "composite" : true, - "composites" : { - "realm" : [ "find-user" ] - }, + "id" : "535f1484-4514-4d24-8d97-e3f6c11a426b", + "name" : "create-container", + "description" : "${create-container}", + "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "be4e1aba-e276-4241-b6ea-01dce6c52f8b", - "name" : "find-container", - "description" : "${find-container}", + "id" : "e1383fb7-d54c-4732-9146-93030eb2ca50", + "name" : "escalated-query-handling", + "description" : "${escalated-query-handling}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "3a801b48-f3c2-4bc6-aa25-c7a91d5b32a7", - "name" : "default-researcher-roles", - "description" : "${default-researcher-roles}", - "composite" : true, - "composites" : { - "realm" : [ "default-table-handling", "default-semantics-handling", "default-container-handling", "default-query-handling", "default-user-handling", "default-database-handling", "default-broker-handling", "default-identifier-handling", "default-view-handling" ] - }, + "id" : "e4cfdc4d-2373-477b-a8df-161db99aba00", + "name" : "create-foreign-identifier", + "description" : "${create-foreign-identifier}", + "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "3d8104fb-8307-40f0-b4b2-c3e518957110", - "name" : "view-table-data", - "description" : "${view-table-data}", + "id" : "be051d45-cd74-4b13-8a45-f2d3351bd995", + "name" : "table-semantic-analyse", + "description" : "${table-semantic-analyse}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "fe71b907-7020-44ab-9964-da2b87264582", - "name" : "create-database", - "description" : "${create-database}", + "id" : "272a79a7-e282-4261-8f7d-5d5d1364243a", + "name" : "update-maintenance-message", + "description" : "${update-maintenance-message}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "e51b63c2-48dd-4bd6-95fb-d257d21b26ba", - "name" : "import-database-data", - "description" : "${import-database-data}", + "id" : "b05e9b2b-748d-490b-949b-e78655bf7805", + "name" : "check-foreign-database-access", + "description" : "${check-foreign-database-access}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "1f0a9b13-c2b8-474c-bc08-59dbd71835a6", - "name" : "modify-database-image", - "description" : "${modify-database-image}", + "id" : "c047d521-cec3-4444-86c4-aef098489b7b", + "name" : "delete-maintenance-message", + "description" : "${delete-maintenance-message}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "a7ad038c-5c06-42fc-951c-15ac09d4df66", - "name" : "modify-database-owner", - "description" : "${modify-database-owner}", + "id" : "df20b7d1-8d30-4a99-80eb-e8195fab0e76", + "name" : "update-database-view", + "description" : "${update-database-view}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "22449528-00c9-4e86-9400-4b8ae6fd8f4d", - "name" : "modify-view-visibility", - "description" : "${modify-view-visibility}", + "id" : "88f82262-be80-4d18-9fb4-5529da031f33", + "name" : "system", + "description" : "${system}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "c12c1f4e-186f-4153-a795-26e79fb623d6", - "name" : "create-ontology", - "description" : "${create-ontology}", + "id" : "e14ab76b-1c24-484d-ae2d-478b8457edea", + "name" : "list-licenses", + "description" : "${list-licenses}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "b60a5694-4099-4f7d-a7e9-4c433e0eb9c9", - "name" : "update-semantic-unit", - "description" : "${update-semantic-unit}", + "id" : "d4f29937-3ca0-41e9-9786-2b7b921b6cdd", + "name" : "modify-foreign-table-column-semantics", + "description" : "${modify-foreign-table-column-semantics}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "e9854bbb-4580-4757-b1ae-305934173249", - "name" : "create-database-access", - "description" : "${create-database-access}", + "id" : "8eda9f5c-938c-4915-bed5-6a81a1de15a8", + "name" : "list-database-views", + "description" : "${list-database-views}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "50c604c1-7c6e-43f3-9c43-2398f5eff66e", - "name" : "list-databases", - "description" : "${list-databases}", + "id" : "abd2d9ee-ebc4-4d0a-839e-6b588a6d442a", + "name" : "default-roles-dbrepo", + "description" : "${role_default-roles}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "d75e7938-9d5e-4cb3-8c57-18a446867d3a", - "name" : "default-view-handling", - "description" : "${default-view-handling}", + "id" : "76e38f7b-99bf-4d12-8d74-1c7d8812f443", + "name" : "update-ontology", + "description" : "${update-ontology}", + "composite" : false, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "f392bfcb-0be5-4fad-9ce4-8ac6396f176d", + "name" : "export-query-data", + "description" : "${export-query-data}", + "composite" : false, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "47f5eee7-9821-4bf8-b434-0da1f81c3e5a", + "name" : "default-broker-handling", + "description" : "${default-broker-handling}", + "composite" : false, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "71874bde-64a5-4a69-8685-d8998303a80c", + "name" : "delete-table-data", + "description" : "${delete-table-data}", + "composite" : false, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "cd0ee04c-4a5e-4035-a11b-f6a1165f7829", + "name" : "delete-container", + "description" : "${delete-container}", + "composite" : false, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "67ee39c0-d601-4a67-a0fe-c4f0021d557e", + "name" : "list-containers", + "description" : "${list-containers}", + "composite" : false, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "d05e7698-ddf5-4f20-9027-771afb2cc3c7", + "name" : "list-identifiers", + "description" : "${list-identifiers}", + "composite" : false, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "e2cb054e-ea41-4ab0-881b-e6f576f7424e", + "name" : "create-semantic-concept", + "description" : "${create-semantic-concept}", + "composite" : false, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "feb612cc-96a6-4ed2-aaa5-01f39b25beb5", + "name" : "insert-table-data", + "description" : "${insert-table-data}", + "composite" : false, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "a0942e33-441b-4343-9f02-4353d03f7bbb", + "name" : "find-database", + "description" : "${find-database}", + "composite" : false, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "7f3652c7-3073-4566-ab63-25385495ebc3", + "name" : "modify-database-visibility", + "description" : "${modify-database-visibility}", + "composite" : false, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "2963c2bb-b129-4224-b98f-c8eeab8e72d1", + "name" : "create-table", + "description" : "${create-table}", + "composite" : false, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "0c487c93-448f-4a82-8b9f-ebd8a0904bf8", + "name" : "find-foreign-user", + "description" : "${find-foreign-user}", + "composite" : false, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "cf9735a9-fb70-4cc5-b5f4-75afc4e5654b", + "name" : "modify-identifier-metadata", + "description" : "${modify-identifier-metadata}", + "composite" : false, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "64c2b8f2-1527-4928-81ea-b2651512d028", + "name" : "delete-ontology", + "description" : "${delete-ontology}", + "composite" : false, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "fd1cc463-3e67-49d9-81b8-2cd90c1daa9c", + "name" : "check-database-access", + "description" : "${check-database-access}", + "composite" : false, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "a2cc60df-d280-46c5-a539-92e2aa249b4a", + "name" : "modify-user-information", + "description" : "${modify-user-information}", + "composite" : false, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "ba1ad8f2-39aa-487d-987f-645e8a459559", + "name" : "delete-table", + "description" : "${delete-table}", + "composite" : false, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "fe3bc45c-61c2-4ece-bcaf-d410dc7de501", + "name" : "update-database-access", + "description" : "${update-database-access}", + "composite" : false, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "6f044bad-6651-4408-bffa-20c2d8f92eee", + "name" : "create-identifier", + "description" : "${create-identifier}", + "composite" : false, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "be91195a-e30a-4d15-a8da-0aca0a68782f", + "name" : "escalated-table-handling", + "description" : "${escalated-table-handling}", "composite" : true, "composites" : { - "realm" : [ "delete-database-view", "update-database-view", "create-database-view", "modify-view-visibility", "find-database-view", "list-database-views" ] + "realm" : [ "delete-foreign-table" ] }, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "535f1484-4514-4d24-8d97-e3f6c11a426b", - "name" : "create-container", - "description" : "${create-container}", + "id" : "15720c6b-027d-4d53-a0ff-0124bfab7c4c", + "name" : "re-execute-query", + "description" : "${re-execute-query}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "f4116230-8642-4bb7-bbc8-db9c5c07b558", - "name" : "create-maintenance-message", - "description" : "${create-maintenance-message}", + "id" : "7ee1c424-11b0-46a9-b0ed-725e9b7fc40c", + "name" : "default-system-roles", + "description" : "${default-system-roles}", + "composite" : true, + "composites" : { + "realm" : [ "delete-database-view", "update-semantic-unit", "export-query-data", "check-foreign-database-access", "default-data-steward-roles", "execute-query", "default-user-handling", "delete-table-data", "find-query", "list-database-views", "persist-query", "update-search-index", "delete-database-access", "view-table-history", "create-ontology", "update-ontology", "modify-user-theme", "default-system-roles", "create-semantic-concept", "default-container-handling", "create-container", "create-table", "default-broker-handling", "default-maintenance-handling", "execute-semantic-query", "uma_authorization", "table-semantic-analyse", "list-containers", "check-database-access", "escalated-query-handling", "delete-identifier", "modify-database-owner", "list-tables", "export-table-data", "create-database-access", "delete-container", "re-execute-query", "create-semantic-unit", "escalated-identifier-handling", "system", "update-table-statistic", "escalated-semantics-handling", "default-database-handling", "delete-ontology", "find-database", "find-database-view", "update-semantic-concept", "find-user", "import-database-data", "publish-identifier", "default-roles-dbrepo", "find-foreign-user", "create-database", "create-maintenance-message", "find-maintenance-message", "escalated-container-handling", "default-researcher-roles", "default-identifier-handling", "escalated-user-handling", "modify-user-information", "create-database-view", "update-maintenance-message", "delete-foreign-table", "offline_access", "modify-foreign-table-column-semantics", "delete-maintenance-message", "find-container", "insert-table-data", "modify-identifier-metadata", "modify-database-image", "escalated-broker-handling", "modify-table-column-semantics", "escalated-database-handling", "default-semantics-handling", "update-database-access", "default-query-handling", "find-table", "list-queries", "default-developer-roles", "create-identifier", "escalated-table-handling", "find-identifier", "view-table-data", "default-storage-roles", "list-licenses", "default-table-handling", "list-identifiers", "create-foreign-identifier", "list-databases", "list-ontologies", "modify-database-visibility", "list-maintenance-messages", "delete-table" ] + }, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "143ba359-5fa2-451e-8296-43ecf20bb251", + "name" : "update-semantic-concept", + "description" : "${update-semantic-concept}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "973f0999-cc70-4b28-9f43-979c470bea8e", - "name" : "default-data-steward-roles", - "description" : "${default-data-steward-roles}", + "id" : "5136d7a3-e3f0-4585-bacd-15cb8a56095c", + "name" : "escalated-container-handling", + "description" : "${escalated-container-handling}", "composite" : true, "composites" : { - "realm" : [ "escalated-identifier-handling", "default-semantics-handling", "escalated-semantics-handling", "default-user-handling" ] + "realm" : [ "create-container", "delete-container" ] }, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "e1383fb7-d54c-4732-9146-93030eb2ca50", - "name" : "escalated-query-handling", - "description" : "${escalated-query-handling}", + "id" : "b0bc8649-7d84-4dd3-84f0-7f174425babe", + "name" : "list-tables", + "description" : "${list-tables}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "993b5c69-9eb2-42af-ac28-b4a46c6b61f2", - "name" : "find-user", - "description" : "${find-user}", - "composite" : false, + "id" : "bfd85d9c-2772-4660-a8f0-cdc0cd8252b3", + "name" : "default-database-handling", + "description" : "${default-database-handling}", + "composite" : true, + "composites" : { + "realm" : [ "modify-database-image", "modify-database-owner", "update-database-access", "create-database", "list-databases", "create-database-access", "find-database", "modify-database-visibility", "import-database-data", "delete-database-access", "check-database-access" ] + }, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "e4cfdc4d-2373-477b-a8df-161db99aba00", - "name" : "create-foreign-identifier", - "description" : "${create-foreign-identifier}", + "id" : "d89a2881-b642-4abb-b990-196e71372f6b", + "name" : "default-table-handling", + "description" : "${default-table-handling}", + "composite" : true, + "composites" : { + "realm" : [ "modify-table-column-semantics", "list-tables", "update-table-statistic", "find-table", "create-table", "delete-table", "update-table" ] + }, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "f5ea431a-9b2c-4195-bcb4-9511f38e4b44", + "name" : "create-database-view", + "description" : "${create-database-view}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "6a5872a5-2b51-415d-ae2d-25a6db4a35df", - "name" : "escalated-semantics-handling", - "description" : "${escalated-semantics-handling}", + "id" : "a5ffc20e-8b11-498c-9f3b-b5740aec24c7", + "name" : "default-semantics-handling", + "description" : "${default-semantics-handling}", "composite" : true, "composites" : { - "realm" : [ "update-semantic-unit", "create-ontology", "update-ontology", "list-ontologies", "delete-ontology", "modify-foreign-table-column-semantics", "update-semantic-concept" ] + "realm" : [ "create-semantic-unit", "create-semantic-concept", "execute-semantic-query", "table-semantic-analyse" ] }, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "09147c48-273b-450b-8b11-7ef9b9245244", - "name" : "export-table-data", - "description" : "${export-table-data}", + "id" : "0e12eedf-545d-4d32-ac4d-2821dcb118b8", + "name" : "update-table-statistic", + "description" : "${update-table-statistic}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "d14af590-60a8-4d75-b864-40ee0165bd7f", - "name" : "delete-database-access", - "description" : "${delete-database-access}", - "composite" : false, + "id" : "e63e61a2-d852-4ad3-bfb5-92d9ceafef6a", + "name" : "escalated-user-handling", + "description" : "${escalated-user-handling}", + "composite" : true, + "composites" : { + "realm" : [ "find-user" ] + }, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "be051d45-cd74-4b13-8a45-f2d3351bd995", - "name" : "table-semantic-analyse", - "description" : "${table-semantic-analyse}", + "id" : "6939aed8-37b0-4fa7-80c9-6a011bd16857", + "name" : "upload-file", + "description" : "${upload-file}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "272a79a7-e282-4261-8f7d-5d5d1364243a", - "name" : "update-maintenance-message", - "description" : "${update-maintenance-message}", + "id" : "e9854bbb-4580-4757-b1ae-305934173249", + "name" : "create-database-access", + "description" : "${create-database-access}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "6ae766b0-b8b4-4067-a95d-c8576bc4ac77", - "name" : "update-table", - "description" : "${update-table}", + "id" : "50c604c1-7c6e-43f3-9c43-2398f5eff66e", + "name" : "list-databases", + "description" : "${list-databases}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "64c16bfb-2015-48ad-a23f-637ff24419cb", - "name" : "default-query-handling", - "description" : "${default-query-handling}", + "id" : "15339799-c6ec-41fa-a48d-fc583c15aba1", + "name" : "default-storage-roles", + "description" : "${default-storage-roles}", "composite" : true, "composites" : { - "realm" : [ "delete-database-view", "export-query-data", "execute-query", "delete-table-data", "export-table-data", "list-queries", "find-query", "list-database-views", "persist-query", "view-table-data", "re-execute-query", "view-table-history", "create-database-view", "find-database-view", "insert-table-data" ] + "realm" : [ "upload-file" ] }, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "b05e9b2b-748d-490b-949b-e78655bf7805", - "name" : "check-foreign-database-access", - "description" : "${check-foreign-database-access}", + "id" : "d75e7938-9d5e-4cb3-8c57-18a446867d3a", + "name" : "default-view-handling", + "description" : "${default-view-handling}", + "composite" : true, + "composites" : { + "realm" : [ "delete-database-view", "update-database-view", "create-database-view", "modify-view-visibility", "find-database-view", "list-database-views" ] + }, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "f4116230-8642-4bb7-bbc8-db9c5c07b558", + "name" : "create-maintenance-message", + "description" : "${create-maintenance-message}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "c047d521-cec3-4444-86c4-aef098489b7b", - "name" : "delete-maintenance-message", - "description" : "${delete-maintenance-message}", + "id" : "973f0999-cc70-4b28-9f43-979c470bea8e", + "name" : "default-data-steward-roles", + "description" : "${default-data-steward-roles}", + "composite" : true, + "composites" : { + "realm" : [ "escalated-identifier-handling", "default-semantics-handling", "escalated-semantics-handling", "default-user-handling", "default-storage-roles" ] + }, + "clientRole" : false, + "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", + "attributes" : { } + }, { + "id" : "993b5c69-9eb2-42af-ac28-b4a46c6b61f2", + "name" : "find-user", + "description" : "${find-user}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "df20b7d1-8d30-4a99-80eb-e8195fab0e76", - "name" : "update-database-view", - "description" : "${update-database-view}", - "composite" : false, + "id" : "6a5872a5-2b51-415d-ae2d-25a6db4a35df", + "name" : "escalated-semantics-handling", + "description" : "${escalated-semantics-handling}", + "composite" : true, + "composites" : { + "realm" : [ "update-semantic-unit", "create-ontology", "update-ontology", "list-ontologies", "delete-ontology", "modify-foreign-table-column-semantics", "update-semantic-concept" ] + }, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "88f82262-be80-4d18-9fb4-5529da031f33", - "name" : "system", - "description" : "${system}", + "id" : "09147c48-273b-450b-8b11-7ef9b9245244", + "name" : "export-table-data", + "description" : "${export-table-data}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "e14ab76b-1c24-484d-ae2d-478b8457edea", - "name" : "list-licenses", - "description" : "${list-licenses}", + "id" : "d14af590-60a8-4d75-b864-40ee0165bd7f", + "name" : "delete-database-access", + "description" : "${delete-database-access}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "d4f29937-3ca0-41e9-9786-2b7b921b6cdd", - "name" : "modify-foreign-table-column-semantics", - "description" : "${modify-foreign-table-column-semantics}", + "id" : "6ae766b0-b8b4-4067-a95d-c8576bc4ac77", + "name" : "update-table", + "description" : "${update-table}", "composite" : false, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } }, { - "id" : "8eda9f5c-938c-4915-bed5-6a81a1de15a8", - "name" : "list-database-views", - "description" : "${list-database-views}", - "composite" : false, + "id" : "64c16bfb-2015-48ad-a23f-637ff24419cb", + "name" : "default-query-handling", + "description" : "${default-query-handling}", + "composite" : true, + "composites" : { + "realm" : [ "delete-database-view", "export-query-data", "execute-query", "delete-table-data", "export-table-data", "list-queries", "find-query", "list-database-views", "persist-query", "view-table-data", "re-execute-query", "view-table-history", "create-database-view", "find-database-view", "insert-table-data" ] + }, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } @@ -485,14 +691,6 @@ "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } - }, { - "id" : "abd2d9ee-ebc4-4d0a-839e-6b588a6d442a", - "name" : "default-roles-dbrepo", - "description" : "${role_default-roles}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } }, { "id" : "3293799a-82b9-4f47-8f25-1aad2e0222fd", "name" : "find-identifier", @@ -509,14 +707,6 @@ "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } - }, { - "id" : "76e38f7b-99bf-4d12-8d74-1c7d8812f443", - "name" : "update-ontology", - "description" : "${update-ontology}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } }, { "id" : "11f7973e-d1eb-42cb-a35d-c59dfc122775", "name" : "modify-user-theme", @@ -525,14 +715,6 @@ "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } - }, { - "id" : "f392bfcb-0be5-4fad-9ce4-8ac6396f176d", - "name" : "export-query-data", - "description" : "${export-query-data}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } }, { "id" : "da493b7e-fb9b-43ca-82a5-e274ad2e6b39", "name" : "find-query", @@ -571,22 +753,6 @@ "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } - }, { - "id" : "47f5eee7-9821-4bf8-b434-0da1f81c3e5a", - "name" : "default-broker-handling", - "description" : "${default-broker-handling}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "71874bde-64a5-4a69-8685-d8998303a80c", - "name" : "delete-table-data", - "description" : "${delete-table-data}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } }, { "id" : "7c0306fc-3b03-4c64-87d1-9a34f2073977", "name" : "modify-table-column-semantics", @@ -595,22 +761,6 @@ "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } - }, { - "id" : "cd0ee04c-4a5e-4035-a11b-f6a1165f7829", - "name" : "delete-container", - "description" : "${delete-container}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "67ee39c0-d601-4a67-a0fe-c4f0021d557e", - "name" : "list-containers", - "description" : "${list-containers}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } }, { "id" : "795c7bb8-3502-414a-a97b-2ba1cfd6a79c", "name" : "persist-query", @@ -619,49 +769,17 @@ "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } - }, { - "id" : "d05e7698-ddf5-4f20-9027-771afb2cc3c7", - "name" : "list-identifiers", - "description" : "${list-identifiers}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } }, { "id" : "e4bfaf36-9a5d-43e0-9fa3-0f4ea7bad8d0", "name" : "default-developer-roles", "description" : "${default-developer-roles}", "composite" : true, "composites" : { - "realm" : [ "escalated-query-handling", "escalated-broker-handling", "default-table-handling", "escalated-database-handling", "default-container-handling", "default-query-handling", "default-user-handling", "default-database-handling", "default-maintenance-handling", "escalated-container-handling", "escalated-table-handling", "default-identifier-handling" ] + "realm" : [ "escalated-query-handling", "escalated-broker-handling", "escalated-database-handling", "default-query-handling", "default-user-handling", "escalated-container-handling", "escalated-table-handling", "default-identifier-handling", "default-storage-roles", "default-table-handling", "default-container-handling", "default-database-handling", "default-maintenance-handling" ] }, "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } - }, { - "id" : "e2cb054e-ea41-4ab0-881b-e6f576f7424e", - "name" : "create-semantic-concept", - "description" : "${create-semantic-concept}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "feb612cc-96a6-4ed2-aaa5-01f39b25beb5", - "name" : "insert-table-data", - "description" : "${insert-table-data}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "a0942e33-441b-4343-9f02-4353d03f7bbb", - "name" : "find-database", - "description" : "${find-database}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } }, { "id" : "6a0bb740-4448-49be-aee8-6dd183325be5", "name" : "delete-foreign-table", @@ -670,14 +788,6 @@ "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } - }, { - "id" : "7f3652c7-3073-4566-ab63-25385495ebc3", - "name" : "modify-database-visibility", - "description" : "${modify-database-visibility}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } }, { "id" : "4a5df51d-f14d-41a2-ad70-6521df5a5b4f", "name" : "offline_access", @@ -694,38 +804,6 @@ "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } - }, { - "id" : "2963c2bb-b129-4224-b98f-c8eeab8e72d1", - "name" : "create-table", - "description" : "${create-table}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "0c487c93-448f-4a82-8b9f-ebd8a0904bf8", - "name" : "find-foreign-user", - "description" : "${find-foreign-user}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "cf9735a9-fb70-4cc5-b5f4-75afc4e5654b", - "name" : "modify-identifier-metadata", - "description" : "${modify-identifier-metadata}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "64c2b8f2-1527-4928-81ea-b2651512d028", - "name" : "delete-ontology", - "description" : "${delete-ontology}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } }, { "id" : "d6e38368-b40f-423b-82e4-e8aa595237c9", "name" : "find-maintenance-message", @@ -734,14 +812,6 @@ "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } - }, { - "id" : "fd1cc463-3e67-49d9-81b8-2cd90c1daa9c", - "name" : "check-database-access", - "description" : "${check-database-access}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } }, { "id" : "74013867-e426-46cc-ab98-2f4a9225ad1e", "name" : "find-table", @@ -750,14 +820,6 @@ "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } - }, { - "id" : "a2cc60df-d280-46c5-a539-92e2aa249b4a", - "name" : "modify-user-information", - "description" : "${modify-user-information}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } }, { "id" : "c367241f-b5b5-491f-84d5-07fe1bef3877", "name" : "default-identifier-handling", @@ -769,14 +831,6 @@ "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } - }, { - "id" : "ba1ad8f2-39aa-487d-987f-645e8a459559", - "name" : "delete-table", - "description" : "${delete-table}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } }, { "id" : "09f7bdb0-296f-46c8-a3a3-8f9254fb17e4", "name" : "list-maintenance-messages", @@ -785,14 +839,6 @@ "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } - }, { - "id" : "fe3bc45c-61c2-4ece-bcaf-d410dc7de501", - "name" : "update-database-access", - "description" : "${update-database-access}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } }, { "id" : "f43e86ed-76de-4ca8-9b5e-c292c9359bfe", "name" : "escalated-broker-handling", @@ -817,25 +863,6 @@ "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } - }, { - "id" : "6f044bad-6651-4408-bffa-20c2d8f92eee", - "name" : "create-identifier", - "description" : "${create-identifier}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "be91195a-e30a-4d15-a8da-0aca0a68782f", - "name" : "escalated-table-handling", - "description" : "${escalated-table-handling}", - "composite" : true, - "composites" : { - "realm" : [ "delete-foreign-table" ] - }, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } }, { "id" : "98bee7d6-d78c-4e7f-b6a3-3705968b248c", "name" : "list-ontologies", @@ -844,14 +871,6 @@ "clientRole" : false, "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", "attributes" : { } - }, { - "id" : "15720c6b-027d-4d53-a0ff-0124bfab7c4c", - "name" : "re-execute-query", - "description" : "${re-execute-query}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } }, { "id" : "a9b5181a-8135-41d3-9862-ef80af42211d", "name" : "delete-identifier", @@ -2409,7 +2428,7 @@ "subType" : "anonymous", "subComponents" : { }, "config" : { - "allowed-protocol-mapper-types" : [ "saml-role-list-mapper", "saml-user-property-mapper", "oidc-address-mapper", "oidc-usermodel-property-mapper", "oidc-full-name-mapper", "saml-user-attribute-mapper", "oidc-usermodel-attribute-mapper", "oidc-sha256-pairwise-sub-mapper" ] + "allowed-protocol-mapper-types" : [ "oidc-sha256-pairwise-sub-mapper", "saml-user-attribute-mapper", "oidc-usermodel-attribute-mapper", "saml-user-property-mapper", "saml-role-list-mapper", "oidc-address-mapper", "oidc-usermodel-property-mapper", "oidc-full-name-mapper" ] } }, { "id" : "1849e52a-b8c9-44a8-af3d-ee19376a1ed1", @@ -2435,7 +2454,7 @@ "subType" : "authenticated", "subComponents" : { }, "config" : { - "allowed-protocol-mapper-types" : [ "oidc-full-name-mapper", "saml-role-list-mapper", "saml-user-attribute-mapper", "oidc-usermodel-attribute-mapper", "oidc-sha256-pairwise-sub-mapper", "oidc-usermodel-property-mapper", "saml-user-property-mapper", "oidc-address-mapper" ] + "allowed-protocol-mapper-types" : [ "oidc-full-name-mapper", "oidc-address-mapper", "saml-user-property-mapper", "saml-role-list-mapper", "oidc-usermodel-attribute-mapper", "oidc-usermodel-property-mapper", "saml-user-attribute-mapper", "oidc-sha256-pairwise-sub-mapper" ] } } ], "org.keycloak.userprofile.UserProfileProvider" : [ { @@ -2459,8 +2478,8 @@ "config" : { "ldap.attribute" : [ "createTimestamp" ], "is.mandatory.in.ldap" : [ "false" ], - "read.only" : [ "true" ], "always.read.value.from.ldap" : [ "true" ], + "read.only" : [ "true" ], "user.model.attribute" : [ "createTimestamp" ] } }, { @@ -2483,8 +2502,8 @@ "config" : { "ldap.attribute" : [ "cn" ], "is.mandatory.in.ldap" : [ "true" ], - "read.only" : [ "false" ], "always.read.value.from.ldap" : [ "true" ], + "read.only" : [ "false" ], "user.model.attribute" : [ "firstName" ] } }, { @@ -2495,8 +2514,8 @@ "config" : { "ldap.attribute" : [ "mail" ], "is.mandatory.in.ldap" : [ "false" ], - "read.only" : [ "false" ], "always.read.value.from.ldap" : [ "false" ], + "read.only" : [ "false" ], "user.model.attribute" : [ "email" ] } }, { @@ -2509,13 +2528,13 @@ "membership.attribute.type" : [ "DN" ], "user.roles.retrieve.strategy" : [ "LOAD_GROUPS_BY_MEMBER_ATTRIBUTE" ], "group.name.ldap.attribute" : [ "cn" ], - "preserve.group.inheritance" : [ "false" ], - "membership.ldap.attribute" : [ "member" ], - "ignore.missing.groups" : [ "false" ], "membership.user.ldap.attribute" : [ "uid" ], + "ignore.missing.groups" : [ "false" ], + "membership.ldap.attribute" : [ "member" ], + "preserve.group.inheritance" : [ "false" ], "groups.dn" : [ "ou=users,dc=dbrepo,dc=at" ], - "group.object.classes" : [ "groupOfNames" ], "memberof.ldap.attribute" : [ "memberOf" ], + "group.object.classes" : [ "groupOfNames" ], "drop.non.existing.groups.during.sync" : [ "false" ], "groups.path" : [ "/" ] } @@ -2527,8 +2546,8 @@ "config" : { "ldap.attribute" : [ "modifyTimestamp" ], "is.mandatory.in.ldap" : [ "false" ], - "read.only" : [ "true" ], "always.read.value.from.ldap" : [ "true" ], + "read.only" : [ "true" ], "user.model.attribute" : [ "modifyTimestamp" ] } }, { @@ -2541,26 +2560,26 @@ "is.mandatory.in.ldap" : [ "true" ], "attribute.force.default" : [ "false" ], "is.binary.attribute" : [ "false" ], - "always.read.value.from.ldap" : [ "false" ], "read.only" : [ "false" ], + "always.read.value.from.ldap" : [ "false" ], "user.model.attribute" : [ "username" ] } } ] }, "config" : { - "fullSyncPeriod" : [ "-1" ], "pagination" : [ "false" ], + "fullSyncPeriod" : [ "-1" ], "startTls" : [ "false" ], - "usersDn" : [ "ou=users,dc=dbrepo,dc=at" ], "connectionPooling" : [ "true" ], + "usersDn" : [ "ou=users,dc=dbrepo,dc=at" ], "cachePolicy" : [ "DEFAULT" ], "useKerberosForPasswordAuthentication" : [ "false" ], "importEnabled" : [ "true" ], "enabled" : [ "true" ], - "bindCredential" : [ "admin" ], "changedSyncPeriod" : [ "-1" ], - "usernameLDAPAttribute" : [ "uid" ], "bindDn" : [ "cn=admin,dc=dbrepo,dc=at" ], + "usernameLDAPAttribute" : [ "uid" ], + "bindCredential" : [ "admin" ], "lastSync" : [ "1719252666" ], "vendor" : [ "other" ], "uuidLDAPAttribute" : [ "entryUUID" ], diff --git a/dbrepo-auth-service/listeners/target/create-event-listener.jar b/dbrepo-auth-service/listeners/target/create-event-listener.jar index 422b57a19db31b248eb17c9cc4586df30558a85b..6549707e790dc8a796f38709e6cc8bc5fc709521 100644 GIT binary patch delta 902 zcmbR1Kigk8z?+#xgn@yBgJJF5h^RGtVy_iW6xOZZvaHk8JevR3N~>V|chWZ^mT|s3 zptkjY+^lOBWinqGblxQ2f2{jG!MAhX4{fV_so9%1N*uj-M^PZl?)LLHa#ma3+*-Ny z<%NwdK71XK*;;4Cs}9fKw&Kv%(-u}P%S^a5LLQxO(>gO#PbN>APj~H3_v@0a&rdY| zUZh_;Z_BPi%jo(uQtu--rfXk$Bc{>!?p1E9Y1FUT?|FXp1}w3E^8e(|O;OKse7Ahv zIc4`<zZsXfv&z}lGN?8z*|?P1e_iMmt1q84{Er11SaF|bvXc0bx4|Hx{qXrdmTY-j z`x1rpfY&*f-peoGJ0B}`d*AopjPpA$IM3_($@zOpmR<fDSJ&EmtLv@mjj!-)9^RA3 zy>M1kUcvfRY-Y|1PC={w=@-0ddiJ3pPSQW)qAd6N4aV+KJ|;0sCHp1?F6t@_d%<+- zrO4%yHHnKR3zg2C=2^7o`=eF*&+9HLoK!qzRnhUz+go3S!zz>0?bt<jP}p-ZFmNz{ z!=3>NOy18Z&a`&!<Qt57Ac})Y9z<y}se!0KCT$Q^$7BkkwlaBxC?@7}AnFox57XMY zn-f^(GJ)v-Y&@JGnpdD!5G38BI2%N1Dox>pNB87oN|qo&Mr9es#gpZfB|sbtWf{g( zlS7piL7WO@8PQ*i3=D}S`T^dIOd`xMM^9d<EF&Y$1ePf&EzeBNLs#%nS%%4(X>uZy zFb|4GITabE0;b7*OtM<Y;t^3ufxw^-=Lj&obzBZoE<O1HlY}Nn3nJ0}nb+pj#lXPu zfq{WR1FnUEVM*hc$@f*vK|YXBm0>(G*;F+U#OY9#VG3fIT)<*7`IagVNaTg84AV!p z$^7gRljYRFB06d^O#k^O7qF;LE>tsMnj<^8j|pVA*yJl}!XPa#)nu6J6yc(075TIw iVS{j&ut&(bWCjL?jSLJ7!YJ;No?NJ|#<pGwBnSXnKSH(u delta 1016 zcmbR3Ki6M4z?+#xgn@yBgJJK4h$xF>5&q(d!n*Y{mi6Z5ZIjy)T)M38j`@a-KEjt8 zeY5`WHMwe0Ci9g+=S}kc$GYVSzMb=aa9ia|&ED)1bL8S7MS(0k`zLSsthT&4wX*l+ zg^eLS{T-FrT4$$Mot7_OacJvl3oEx}CR`dJkNn%T&dk)4c_+oEo4dpPx@7C~6OGkZ zrrY^P-Q6)qxBhwW_caz9OtZ?EMclW4U3W-I_wU(qw!dx~YW7e5pZvKe?rDzmmd`t< z{Qes^;}Un)ceb?*strpvE@k##7kb6&%O@58V}S-%+^2=CBz~;hXpqo;_<SErw!Dpf znL>KN>zq69-!J4lA1ir#-`C%a^E)p%&r|!u{Ch>#zKk`luC@18*IU(_Ug6g~yeE@; z;jE~<j|*0@ZF5#|3R?9~zu-;NvkwJvlKvSN=W?yzXsmuKv(WI;%_SZ}I+r4?r2I_} zshoCLdNjxCoY$4CX;Us=-kTm?Yx#XPn<ro3wS&$j@ljQZju+aeC8WsgWd?;l7Xt$a z132^<;9&A@MoFeU6DD6{)B{m$O!7>7CrnmnQUg)`Oxhr-hRGB}ZD#Uj+B0Di^Er^h z3(P%Cdnas;W0}juv}eNRzid35AU?N1tsqEkm*Q*?rLHuE6CT@>k0@D!1ph0^FfN@e zqb#AYXF^02+$9VQ3_@^@0K;3yGmMiTFpEsiQ0B=-SICT_@DC#cLt=@3fHxzP2s1WM zGB9wVXpm(BYbYr#&rHoj(>M9PvJ9i^<Uh)CAh*h>$S@X7ZcvfY#%H=dis>sSH>lWw z!svjC4AVEJ$pXw;lQ~p*z`phQ&9X|5fq_AXfq}sZu8V<TN#il*$q$%aCReEPD1buj z|EK2N{!9!E*H{@Cj8GJYuuRTlF`0Y=Y9jYP!9TY+7#P+GFffRrDE!PenU`H+vWyxJ z$R}EAGE9sDlk-^AC+DjfFwUF2K+P3w)9!T-l0Z%YVOtaf8WbllR5P7?UXcsxdqnmX d_6Rwb%)r2~k%56h7)6up<a~8Cwv9?4K>&JKO_l%v diff --git a/dbrepo-data-service/rest-service/src/main/java/at/tuwien/endpoints/UploadEndpoint.java b/dbrepo-data-service/rest-service/src/main/java/at/tuwien/endpoints/UploadEndpoint.java new file mode 100644 index 0000000000..9d338e42bf --- /dev/null +++ b/dbrepo-data-service/rest-service/src/main/java/at/tuwien/endpoints/UploadEndpoint.java @@ -0,0 +1,70 @@ +package at.tuwien.endpoints; + +import at.tuwien.api.database.ViewDto; +import at.tuwien.api.error.ApiErrorDto; +import at.tuwien.api.file.UploadResponseDto; +import at.tuwien.exception.*; +import at.tuwien.service.StorageService; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.media.Content; +import io.swagger.v3.oas.annotations.media.Schema; +import io.swagger.v3.oas.annotations.responses.ApiResponse; +import io.swagger.v3.oas.annotations.responses.ApiResponses; +import io.swagger.v3.oas.annotations.security.SecurityRequirement; +import jakarta.validation.constraints.NotNull; +import lombok.extern.log4j.Log4j2; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; + +import java.io.IOException; + +@Log4j2 +@RestController +@CrossOrigin(origins = "*") +@RequestMapping(path = "/api/upload") +public class UploadEndpoint extends RestEndpoint { + + private final StorageService storageService; + + @Autowired + public UploadEndpoint(StorageService storageService) { + this.storageService = storageService; + } + + @PostMapping + @PreAuthorize("hasAuthority('upload-file')") + @Operation(summary = "Uploads a multipart file", + description = "Uploads a multipart file to the Storage Service. Requires role `upload-file`.", + security = {@SecurityRequirement(name = "basicAuth"), @SecurityRequirement(name = "bearerAuth")}) + @ApiResponses(value = { + @ApiResponse(responseCode = "201", + description = "Uploaded the file", + content = {@Content( + mediaType = "application/json", + schema = @Schema(implementation = ViewDto.class))}), + @ApiResponse(responseCode = "503", + description = "Failed to establish connection with the storage service", + content = {@Content( + mediaType = "application/json", + schema = @Schema(implementation = ApiErrorDto.class))}), + }) + public ResponseEntity<UploadResponseDto> create(@NotNull @RequestParam("file") MultipartFile file) throws DatabaseUnavailableException, + DatabaseNotFoundException, RemoteUnavailableException, ViewMalformedException, MetadataServiceException { + log.debug("endpoint upload file, file.originalFilename={}", file.getOriginalFilename()); + try { + final String key = storageService.putObject(file.getBytes()); + return ResponseEntity.status(HttpStatus.CREATED) + .body(UploadResponseDto.builder() + .s3Key(key) + .build()); + } catch (IOException e) { + log.error("Failed to establish connection to database: {}", e.getMessage()); + throw new DatabaseUnavailableException("Failed to establish connection to database: " + e.getMessage(), e); + } + } + +} diff --git a/dbrepo-data-service/services/src/main/java/at/tuwien/service/StorageService.java b/dbrepo-data-service/services/src/main/java/at/tuwien/service/StorageService.java index 135e5cae1f..7ba3f93e71 100644 --- a/dbrepo-data-service/services/src/main/java/at/tuwien/service/StorageService.java +++ b/dbrepo-data-service/services/src/main/java/at/tuwien/service/StorageService.java @@ -13,6 +13,8 @@ import java.util.List; public interface StorageService { + String putObject(byte[] content); + /** * Loads an object of a bucket from the Storage Service into an input stream. * diff --git a/dbrepo-data-service/services/src/main/java/at/tuwien/service/impl/StorageServiceS3Impl.java b/dbrepo-data-service/services/src/main/java/at/tuwien/service/impl/StorageServiceS3Impl.java index dc1c74d3f1..d7f3c0da30 100644 --- a/dbrepo-data-service/services/src/main/java/at/tuwien/service/impl/StorageServiceS3Impl.java +++ b/dbrepo-data-service/services/src/main/java/at/tuwien/service/impl/StorageServiceS3Impl.java @@ -8,15 +8,18 @@ import at.tuwien.exception.StorageUnavailableException; import at.tuwien.exception.TableMalformedException; import at.tuwien.service.StorageService; import lombok.extern.log4j.Log4j2; +import org.apache.commons.lang3.RandomStringUtils; import org.apache.spark.sql.*; import org.apache.spark.sql.catalyst.ExtendedAnalysisException; import org.apache.spark.sql.types.StructField; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.core.io.InputStreamResource; import org.springframework.stereotype.Service; +import software.amazon.awssdk.core.sync.RequestBody; import software.amazon.awssdk.services.s3.S3Client; import software.amazon.awssdk.services.s3.model.GetObjectRequest; import software.amazon.awssdk.services.s3.model.NoSuchKeyException; +import software.amazon.awssdk.services.s3.model.PutObjectRequest; import software.amazon.awssdk.services.s3.model.S3Exception; import java.io.*; @@ -43,6 +46,18 @@ public class StorageServiceS3Impl implements StorageService { this.sparkSession = sparkSession; } + @Override + public String putObject(byte[] content) { + final String key = "dbr_" + RandomStringUtils.randomAlphanumeric(96) + .toLowerCase(); + s3Client.putObject(PutObjectRequest.builder() + .key(key) + .bucket(s3Config.getS3Bucket()) + .build(), RequestBody.fromBytes(content)); + log.debug("put object in S3 bucket {} with key: {}", s3Config.getS3Bucket(), key); + return key; + } + @Override public InputStream getObject(String bucket, String key) throws StorageNotFoundException, StorageUnavailableException { diff --git a/dbrepo-gateway-service/dbrepo.conf b/dbrepo-gateway-service/dbrepo.conf index 94109cf9cc..165aba7643 100644 --- a/dbrepo-gateway-service/dbrepo.conf +++ b/dbrepo-gateway-service/dbrepo.conf @@ -36,10 +36,6 @@ upstream ui { server ui:3000; } -upstream upload { - server upload-service:8080; -} - upstream dashboard-service { server dashboard-service:3000; } @@ -105,14 +101,12 @@ server { } location /api/upload { -# allow 128.130.0.0/16; -# deny all; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Host $host; - proxy_pass http://upload; + proxy_pass http://data; proxy_read_timeout 90; # Disable request and response buffering proxy_request_buffering off; diff --git a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/file/UploadResponseDto.java b/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/file/UploadResponseDto.java new file mode 100644 index 0000000000..3b1cdab223 --- /dev/null +++ b/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/file/UploadResponseDto.java @@ -0,0 +1,19 @@ +package at.tuwien.api.file; + +import com.fasterxml.jackson.annotation.JsonProperty; +import jakarta.validation.constraints.NotBlank; +import lombok.*; + +@Getter +@Setter +@ToString +@Builder +@EqualsAndHashCode +@AllArgsConstructor +@NoArgsConstructor +public class UploadResponseDto { + + @NotBlank + @JsonProperty("s3_key") + String s3Key; +} diff --git a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/DatabaseEndpointUnitTest.java b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/DatabaseEndpointUnitTest.java index 9978574d15..26ad94368e 100644 --- a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/DatabaseEndpointUnitTest.java +++ b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/DatabaseEndpointUnitTest.java @@ -333,6 +333,30 @@ public class DatabaseEndpointUnitTest extends AbstractUnitTest { list_generic("i_do_not_exist", USER_1_PRINCIPAL, 0); } + @Test + @WithMockUser(username = USER_LOCAL_ADMIN_USERNAME, authorities = {"system"}) + public void list_hasSystemRole_succeeds() { + + /* mock */ + when(databaseService.findAll()) + .thenReturn(List.of(DATABASE_1, DATABASE_2, DATABASE_3, DATABASE_4)); + + /* test */ + list_generic(null, USER_LOCAL_ADMIN_PRINCIPAL, 4); + } + + @Test + @WithMockUser(username = USER_LOCAL_ADMIN_USERNAME, authorities = {"system"}) + public void list_hasSystemRoleFilterByName_succeeds() { + + /* mock */ + when(databaseService.findByInternalName(DATABASE_1_INTERNALNAME)) + .thenReturn(List.of(DATABASE_1)); + + /* test */ + list_generic(DATABASE_1_INTERNALNAME, USER_LOCAL_ADMIN_PRINCIPAL, 1); + } + @Test @WithAnonymousUser public void list_filterNoResult_succeeds() { @@ -586,6 +610,19 @@ public class DatabaseEndpointUnitTest extends AbstractUnitTest { assertNotEquals(0, database.getAccesses().size()); } + @Test + @WithMockUser(username = USER_LOCAL_ADMIN_USERNAME, authorities = {"system"}) + public void findById_privateSchemaPrivateDataNoAccessInternalUser_succeeds() throws UserNotFoundException, + NotAllowedException, DataServiceException, DatabaseNotFoundException, ExchangeNotFoundException, + DataServiceConnectionException { + + /* test */ + final DatabaseDto database = findById_generic(DATABASE_1_ID, DATABASE_1, USER_LOCAL_ADMIN_PRINCIPAL); + assertEquals(2, database.getTables().size()); + assertEquals(2, database.getViews().size()); + assertNotEquals(0, database.getAccesses().size()); + } + @Test @WithAnonymousUser public void findById_privateSchema_fails() { diff --git a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/TableEndpointUnitTest.java b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/TableEndpointUnitTest.java index 092b8c563d..5006cf4322 100644 --- a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/TableEndpointUnitTest.java +++ b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/TableEndpointUnitTest.java @@ -57,6 +57,12 @@ public class TableEndpointUnitTest extends AbstractUnitTest { @MockBean private AccessService accessService; + @MockBean + private UnitService unitService; + + @MockBean + private ConceptService conceptService; + @MockBean private TableService tableService; @@ -372,6 +378,142 @@ public class TableEndpointUnitTest extends AbstractUnitTest { }); } + @Test + @WithMockUser(username = USER_3_USERNAME, authorities = {"create-table"}) + public void create_sets_succeeds() throws UserNotFoundException, SearchServiceException, NotAllowedException, + SemanticEntityNotFoundException, DataServiceConnectionException, TableNotFoundException, MalformedException, + DataServiceException, DatabaseNotFoundException, AccessNotFoundException, OntologyNotFoundException, + TableExistsException, SearchServiceConnectionException { + final CreateTableDto request = CreateTableDto.builder() + .name("Some Table") + .description("Some Description") + .columns(List.of(CreateTableColumnDto.builder() + .name("sex") + .type(ColumnTypeDto.SET) + .sets(List.of("male", "female")) + .build())) + .build(); + + /* test */ + generic_create(DATABASE_3_ID, DATABASE_3, request, USER_1_PRINCIPAL, USER_1, DATABASE_3_USER_1_WRITE_OWN_ACCESS); + } + + @Test + @WithMockUser(username = USER_3_USERNAME, authorities = {"create-table"}) + public void create_enum_succeeds() throws UserNotFoundException, SearchServiceException, NotAllowedException, + SemanticEntityNotFoundException, DataServiceConnectionException, TableNotFoundException, MalformedException, + DataServiceException, DatabaseNotFoundException, AccessNotFoundException, OntologyNotFoundException, + TableExistsException, SearchServiceConnectionException { + final CreateTableDto request = CreateTableDto.builder() + .name("Some Table") + .description("Some Description") + .columns(List.of(CreateTableColumnDto.builder() + .name("sex") + .type(ColumnTypeDto.ENUM) + .enums(List.of("male", "female")) + .build())) + .build(); + + /* test */ + generic_create(DATABASE_3_ID, DATABASE_3, request, USER_1_PRINCIPAL, USER_1, DATABASE_3_USER_1_WRITE_OWN_ACCESS); + } + + @Test + @WithMockUser(username = USER_3_USERNAME, authorities = {"create-table"}) + public void create_hasUnit_succeeds() throws UserNotFoundException, SearchServiceException, NotAllowedException, + SemanticEntityNotFoundException, DataServiceConnectionException, TableNotFoundException, MalformedException, + DataServiceException, DatabaseNotFoundException, AccessNotFoundException, OntologyNotFoundException, + TableExistsException, SearchServiceConnectionException, UnitNotFoundException { + final CreateTableDto request = CreateTableDto.builder() + .name("Some Table") + .description("Some Description") + .columns(List.of(CreateTableColumnDto.builder() + .name(UNIT_1_NAME) + .type(ColumnTypeDto.INT) + .unitUri(UNIT_1_URI) + .build())) + .build(); + + /* mock */ + when(unitService.find(UNIT_1_URI)) + .thenReturn(UNIT_1); + + /* test */ + generic_create(DATABASE_3_ID, DATABASE_3, request, USER_1_PRINCIPAL, USER_1, DATABASE_3_USER_1_WRITE_OWN_ACCESS); + } + + @Test + @WithMockUser(username = USER_3_USERNAME, authorities = {"create-table"}) + public void create_hasUnitNotFound_succeeds() throws UserNotFoundException, SearchServiceException, NotAllowedException, + SemanticEntityNotFoundException, DataServiceConnectionException, TableNotFoundException, MalformedException, + DataServiceException, DatabaseNotFoundException, AccessNotFoundException, OntologyNotFoundException, + TableExistsException, SearchServiceConnectionException { + final CreateTableDto request = CreateTableDto.builder() + .name("Some Table") + .description("Some Description") + .columns(List.of(CreateTableColumnDto.builder() + .name(UNIT_1_NAME) + .type(ColumnTypeDto.INT) + .unitUri(UNIT_1_URI) + .build())) + .build(); + + /* mock */ + when(unitService.create(UNIT_1)) + .thenReturn(UNIT_1); + + /* test */ + generic_create(DATABASE_3_ID, DATABASE_3, request, USER_1_PRINCIPAL, USER_1, DATABASE_3_USER_1_WRITE_OWN_ACCESS); + } + + @Test + @WithMockUser(username = USER_3_USERNAME, authorities = {"create-table"}) + public void create_hasConcept_succeeds() throws UserNotFoundException, SearchServiceException, NotAllowedException, + SemanticEntityNotFoundException, DataServiceConnectionException, TableNotFoundException, MalformedException, + DataServiceException, DatabaseNotFoundException, AccessNotFoundException, OntologyNotFoundException, + TableExistsException, SearchServiceConnectionException, ConceptNotFoundException { + final CreateTableDto request = CreateTableDto.builder() + .name("Some Table") + .description("Some Description") + .columns(List.of(CreateTableColumnDto.builder() + .name(CONCEPT_1_NAME) + .type(ColumnTypeDto.INT) + .conceptUri(UNIT_1_URI) + .build())) + .build(); + + /* mock */ + when(conceptService.find(CONCEPT_1_URI)) + .thenReturn(CONCEPT_1); + + /* test */ + generic_create(DATABASE_3_ID, DATABASE_3, request, USER_1_PRINCIPAL, USER_1, DATABASE_3_USER_1_WRITE_OWN_ACCESS); + } + + @Test + @WithMockUser(username = USER_3_USERNAME, authorities = {"create-table"}) + public void create_hasConceptNotFound_succeeds() throws UserNotFoundException, SearchServiceException, NotAllowedException, + SemanticEntityNotFoundException, DataServiceConnectionException, TableNotFoundException, MalformedException, + DataServiceException, DatabaseNotFoundException, AccessNotFoundException, OntologyNotFoundException, + TableExistsException, SearchServiceConnectionException { + final CreateTableDto request = CreateTableDto.builder() + .name("Some Table") + .description("Some Description") + .columns(List.of(CreateTableColumnDto.builder() + .name("precipitation") + .type(ColumnTypeDto.INT) + .conceptUri(UNIT_1_URI) + .build())) + .build(); + + /* mock */ + when(conceptService.create(CONCEPT_1)) + .thenReturn(CONCEPT_1); + + /* test */ + generic_create(DATABASE_3_ID, DATABASE_3, request, USER_1_PRINCIPAL, USER_1, DATABASE_3_USER_1_WRITE_OWN_ACCESS); + } + @ParameterizedTest @MethodSource("canHaveSizeAndD_parameters") @WithMockUser(username = USER_3_USERNAME, authorities = {"create-table"}) @@ -852,7 +994,8 @@ public class TableEndpointUnitTest extends AbstractUnitTest { DatabaseNotFoundException, AccessNotFoundException, SearchServiceException, SearchServiceConnectionException, OntologyNotFoundException, SemanticEntityNotFoundException { final ColumnSemanticsUpdateDto request = ColumnSemanticsUpdateDto.builder() - .unitUri(UNIT_1_URI) + .unitUri(null) + .conceptUri(null) .build(); /* test */ diff --git a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/service/TableServicePersistenceTest.java b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/service/TableServicePersistenceTest.java index 286b7d89cc..459c3b6dbe 100644 --- a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/service/TableServicePersistenceTest.java +++ b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/service/TableServicePersistenceTest.java @@ -1,10 +1,9 @@ package at.tuwien.service; import at.tuwien.api.database.table.CreateTableDto; -import at.tuwien.api.database.table.columns.CreateTableColumnDto; import at.tuwien.api.database.table.columns.ColumnTypeDto; +import at.tuwien.api.database.table.columns.CreateTableColumnDto; import at.tuwien.api.database.table.constraints.CreateTableConstraintsDto; -import at.tuwien.entities.container.Container; import at.tuwien.entities.database.Database; import at.tuwien.entities.database.table.Table; import at.tuwien.entities.database.table.columns.TableColumn; @@ -37,8 +36,7 @@ import java.util.UUID; import static org.junit.jupiter.api.Assertions.*; import static org.mockito.ArgumentMatchers.any; -import static org.mockito.Mockito.doNothing; -import static org.mockito.Mockito.when; +import static org.mockito.Mockito.*; @Log4j2 @SpringBootTest @@ -161,4 +159,88 @@ public class TableServicePersistenceTest extends AbstractUnitTest { }); } + @Test + public void updateTable_succeeds() throws TableNotFoundException, SearchServiceException, DataServiceException, + DatabaseNotFoundException, SearchServiceConnectionException, DataServiceConnectionException { + + /* mock */ + doNothing() + .when(dataServiceGateway) + .updateTable(DATABASE_3_ID, TABLE_8_ID, TABLE_8_UPDATE_DTO); + when(searchServiceGateway.update(any(Database.class))) + .thenReturn(DATABASE_3_BRIEF_DTO); + + /* test */ + final Table response = tableService.updateTable(TABLE_8, TABLE_8_UPDATE_DTO); + assertTrue(response.getIsPublic()); + assertTrue(response.getIsSchemaPublic()); + assertNull(response.getDescription()); + } + + @Test + public void updateTable_dataServiceConnection_fails() throws DataServiceException, DatabaseNotFoundException, + DataServiceConnectionException { + + /* mock */ + doThrow(DataServiceConnectionException.class) + .when(dataServiceGateway) + .updateTable(DATABASE_3_ID, TABLE_8_ID, TABLE_8_UPDATE_DTO); + + /* test */ + assertThrows(DataServiceConnectionException.class, () -> { + tableService.updateTable(TABLE_8, TABLE_8_UPDATE_DTO); + }); + } + + @Test + public void updateTable_dataService_fails() throws DataServiceException, DatabaseNotFoundException, + DataServiceConnectionException { + + /* mock */ + doThrow(DataServiceException.class) + .when(dataServiceGateway) + .updateTable(DATABASE_3_ID, TABLE_8_ID, TABLE_8_UPDATE_DTO); + + /* test */ + assertThrows(DataServiceException.class, () -> { + tableService.updateTable(TABLE_8, TABLE_8_UPDATE_DTO); + }); + } + + @Test + public void updateTable_searchServiceConnection_fails() throws DataServiceException, DatabaseNotFoundException, + DataServiceConnectionException, SearchServiceException, SearchServiceConnectionException { + + /* mock */ + doNothing() + .when(dataServiceGateway) + .updateTable(DATABASE_3_ID, TABLE_8_ID, TABLE_8_UPDATE_DTO); + doThrow(SearchServiceConnectionException.class) + .when(searchServiceGateway) + .update(any(Database.class)); + + /* test */ + assertThrows(SearchServiceConnectionException.class, () -> { + tableService.updateTable(TABLE_8, TABLE_8_UPDATE_DTO); + }); + } + + @Test + public void updateTable_searchService_fails() throws DataServiceException, DatabaseNotFoundException, + DataServiceConnectionException, SearchServiceException, SearchServiceConnectionException { + + /* mock */ + doNothing() + .when(dataServiceGateway) + .updateTable(DATABASE_3_ID, TABLE_8_ID, TABLE_8_UPDATE_DTO); + doThrow(SearchServiceException.class) + .when(searchServiceGateway) + .update(any(Database.class)); + + /* test */ + assertThrows(SearchServiceException.class, () -> { + tableService.updateTable(TABLE_8, TABLE_8_UPDATE_DTO); + }); + } + } diff --git a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/service/TableServiceUnitTest.java b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/service/TableServiceUnitTest.java index 8cb5081f6d..5b1c4ccf6a 100644 --- a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/service/TableServiceUnitTest.java +++ b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/service/TableServiceUnitTest.java @@ -2,9 +2,9 @@ package at.tuwien.service; import at.tuwien.api.database.table.CreateTableDto; import at.tuwien.api.database.table.TableStatisticDto; -import at.tuwien.api.database.table.columns.CreateTableColumnDto; import at.tuwien.api.database.table.columns.ColumnStatisticDto; import at.tuwien.api.database.table.columns.ColumnTypeDto; +import at.tuwien.api.database.table.columns.CreateTableColumnDto; import at.tuwien.api.database.table.columns.concepts.ColumnSemanticsUpdateDto; import at.tuwien.api.database.table.constraints.CreateTableConstraintsDto; import at.tuwien.api.database.table.constraints.foreign.CreateForeignKeyDto; diff --git a/dbrepo-metadata-service/services/src/main/java/at/tuwien/gateway/impl/DataServiceGatewayImpl.java b/dbrepo-metadata-service/services/src/main/java/at/tuwien/gateway/impl/DataServiceGatewayImpl.java index 6439ab47a2..8feed3b291 100644 --- a/dbrepo-metadata-service/services/src/main/java/at/tuwien/gateway/impl/DataServiceGatewayImpl.java +++ b/dbrepo-metadata-service/services/src/main/java/at/tuwien/gateway/impl/DataServiceGatewayImpl.java @@ -424,7 +424,12 @@ public class DataServiceGatewayImpl implements DataServiceGateway { log.error("Failed to analyse table statistic: wrong http code: {}", response.getStatusCode()); throw new DataServiceException("Failed to analyse table statistic: wrong http code: " + response.getStatusCode()); } - return response.getBody(); + final TableStatisticDto body = response.getBody(); + if (body == null) { + log.error("Failed to analyse table statistic: empty body: {}", response.getStatusCode()); + throw new DataServiceException("Failed to analyse table statistic: empty body"); + } + return body; } } diff --git a/dbrepo-metadata-service/services/src/main/java/at/tuwien/service/impl/TableServiceImpl.java b/dbrepo-metadata-service/services/src/main/java/at/tuwien/service/impl/TableServiceImpl.java index 6df1265b75..6dc83d1806 100644 --- a/dbrepo-metadata-service/services/src/main/java/at/tuwien/service/impl/TableServiceImpl.java +++ b/dbrepo-metadata-service/services/src/main/java/at/tuwien/service/impl/TableServiceImpl.java @@ -114,20 +114,24 @@ public class TableServiceImpl implements TableService { for (int i = 0; i < data.getColumns().size(); i++) { final CreateTableColumnDto c = data.getColumns().get(i); final TableColumn column = metadataMapper.columnCreateDtoToTableColumn(c, database.getContainer().getImage()); - column.setEnums(c.getEnums() - .stream() - .map(e -> ColumnEnum.builder() - .column(column) - .value(e) - .build()) - .toList()); - column.setSets(c.getSets() - .stream() - .map(e -> ColumnSet.builder() - .column(column) - .value(e) - .build()) - .toList()); + if (c.getEnums() != null) { + column.setEnums(c.getEnums() + .stream() + .map(e -> ColumnEnum.builder() + .column(column) + .value(e) + .build()) + .toList()); + } + if (c.getSets() != null) { + column.setSets(c.getSets() + .stream() + .map(e -> ColumnSet.builder() + .column(column) + .value(e) + .build()) + .toList()); + } column.setOrdinalPosition(idx[0]++); column.setTable(table); if (c.getUnitUri() != null) { @@ -292,9 +296,6 @@ public class TableServiceImpl implements TableService { DatabaseNotFoundException, SearchServiceConnectionException, MalformedException, TableNotFoundException, DataServiceException, DataServiceConnectionException { final TableStatisticDto statistic = dataServiceGateway.getTableStatistics(table.getTdbid(), table.getId()); - if (statistic == null) { - return; - } table.setNumRows(statistic.getRows()); table.setDataLength(statistic.getDataLength()); table.setAvgRowLength(statistic.getAvgRowLength()); diff --git a/dbrepo-metadata-service/test/src/main/java/at/tuwien/test/BaseTest.java b/dbrepo-metadata-service/test/src/main/java/at/tuwien/test/BaseTest.java index b5da835fa1..0d628aa827 100644 --- a/dbrepo-metadata-service/test/src/main/java/at/tuwien/test/BaseTest.java +++ b/dbrepo-metadata-service/test/src/main/java/at/tuwien/test/BaseTest.java @@ -2306,7 +2306,7 @@ public abstract class BaseTest { .build(); public static final TableUpdateDto TABLE_8_UPDATE_DTO = TableUpdateDto.builder() - .description(TABLE_8_DESCRIPTION) + .description(null) .isPublic(true) .isSchemaPublic(true) .build(); diff --git a/dbrepo-search-service/Pipfile.lock b/dbrepo-search-service/Pipfile.lock index 4dd148a5e4..e9ac4d781c 100644 --- a/dbrepo-search-service/Pipfile.lock +++ b/dbrepo-search-service/Pipfile.lock @@ -26,90 +26,90 @@ }, "aiohttp": { "hashes": [ - "sha256:0450ada317a65383b7cce9576096150fdb97396dcfe559109b403c7242faffef", - "sha256:0b5263dcede17b6b0c41ef0c3ccce847d82a7da98709e75cf7efde3e9e3b5cae", - "sha256:0d5176f310a7fe6f65608213cc74f4228e4f4ce9fd10bcb2bb6da8fc66991462", - "sha256:0ed49efcd0dc1611378beadbd97beb5d9ca8fe48579fc04a6ed0844072261b6a", - "sha256:145a73850926018ec1681e734cedcf2716d6a8697d90da11284043b745c286d5", - "sha256:1987770fb4887560363b0e1a9b75aa303e447433c41284d3af2840a2f226d6e0", - "sha256:246067ba0cf5560cf42e775069c5d80a8989d14a7ded21af529a4e10e3e0f0e6", - "sha256:2c311e2f63e42c1bf86361d11e2c4a59f25d9e7aabdbdf53dc38b885c5435cdb", - "sha256:2cee3b117a8d13ab98b38d5b6bdcd040cfb4181068d05ce0c474ec9db5f3c5bb", - "sha256:2de1378f72def7dfb5dbd73d86c19eda0ea7b0a6873910cc37d57e80f10d64e1", - "sha256:30f546358dfa0953db92ba620101fefc81574f87b2346556b90b5f3ef16e55ce", - "sha256:34245498eeb9ae54c687a07ad7f160053911b5745e186afe2d0c0f2898a1ab8a", - "sha256:392432a2dde22b86f70dd4a0e9671a349446c93965f261dbaecfaf28813e5c42", - "sha256:3c0600bcc1adfaaac321422d615939ef300df81e165f6522ad096b73439c0f58", - "sha256:4016e383f91f2814e48ed61e6bda7d24c4d7f2402c75dd28f7e1027ae44ea204", - "sha256:40cd36749a1035c34ba8d8aaf221b91ca3d111532e5ccb5fa8c3703ab1b967ed", - "sha256:413ad794dccb19453e2b97c2375f2ca3cdf34dc50d18cc2693bd5aed7d16f4b9", - "sha256:4a93d28ed4b4b39e6f46fd240896c29b686b75e39cc6992692e3922ff6982b4c", - "sha256:4ee84c2a22a809c4f868153b178fe59e71423e1f3d6a8cd416134bb231fbf6d3", - "sha256:50c5c7b8aa5443304c55c262c5693b108c35a3b61ef961f1e782dd52a2f559c7", - "sha256:525410e0790aab036492eeea913858989c4cb070ff373ec3bc322d700bdf47c1", - "sha256:526c900397f3bbc2db9cb360ce9c35134c908961cdd0ac25b1ae6ffcaa2507ff", - "sha256:54775858c7f2f214476773ce785a19ee81d1294a6bedc5cc17225355aab74802", - "sha256:584096938a001378484aa4ee54e05dc79c7b9dd933e271c744a97b3b6f644957", - "sha256:6130459189e61baac5a88c10019b21e1f0c6d00ebc770e9ce269475650ff7f73", - "sha256:67453e603cea8e85ed566b2700efa1f6916aefbc0c9fcb2e86aaffc08ec38e78", - "sha256:68d54234c8d76d8ef74744f9f9fc6324f1508129e23da8883771cdbb5818cbef", - "sha256:6dfe7f984f28a8ae94ff3a7953cd9678550dbd2a1f9bda5dd9c5ae627744c78e", - "sha256:74bd573dde27e58c760d9ca8615c41a57e719bff315c9adb6f2a4281a28e8798", - "sha256:7603ca26d75b1b86160ce1bbe2787a0b706e592af5b2504e12caa88a217767b0", - "sha256:76719dd521c20a58a6c256d058547b3a9595d1d885b830013366e27011ffe804", - "sha256:7c3623053b85b4296cd3925eeb725e386644fd5bc67250b3bb08b0f144803e7b", - "sha256:7e44eba534381dd2687be50cbd5f2daded21575242ecfdaf86bbeecbc38dae8e", - "sha256:7fe3d65279bfbee8de0fb4f8c17fc4e893eed2dba21b2f680e930cc2b09075c5", - "sha256:8340def6737118f5429a5df4e88f440746b791f8f1c4ce4ad8a595f42c980bd5", - "sha256:84ede78acde96ca57f6cf8ccb8a13fbaf569f6011b9a52f870c662d4dc8cd854", - "sha256:850ff6155371fd802a280f8d369d4e15d69434651b844bde566ce97ee2277420", - "sha256:87a2e00bf17da098d90d4145375f1d985a81605267e7f9377ff94e55c5d769eb", - "sha256:88d385b8e7f3a870146bf5ea31786ef7463e99eb59e31db56e2315535d811f55", - "sha256:8a2fb742ef378284a50766e985804bd6adb5adb5aa781100b09befdbfa757b65", - "sha256:8dc0fba9a74b471c45ca1a3cb6e6913ebfae416678d90529d188886278e7f3f6", - "sha256:8fa1510b96c08aaad49303ab11f8803787c99222288f310a62f493faf883ede1", - "sha256:8fd12d0f989c6099e7b0f30dc6e0d1e05499f3337461f0b2b0dadea6c64b89df", - "sha256:9060addfa4ff753b09392efe41e6af06ea5dd257829199747b9f15bfad819460", - "sha256:930ffa1925393381e1e0a9b82137fa7b34c92a019b521cf9f41263976666a0d6", - "sha256:936d8a4f0f7081327014742cd51d320296b56aa6d324461a13724ab05f4b2933", - "sha256:97fe431f2ed646a3b56142fc81d238abcbaff08548d6912acb0b19a0cadc146b", - "sha256:9bd8695be2c80b665ae3f05cb584093a1e59c35ecb7d794d1edd96e8cc9201d7", - "sha256:9dec0000d2d8621d8015c293e24589d46fa218637d820894cb7356c77eca3259", - "sha256:a478aa11b328983c4444dacb947d4513cb371cd323f3845e53caeda6be5589d5", - "sha256:a481a574af914b6e84624412666cbfbe531a05667ca197804ecc19c97b8ab1b0", - "sha256:a4ac6a0f0f6402854adca4e3259a623f5c82ec3f0c049374133bcb243132baf9", - "sha256:a5e69046f83c0d3cb8f0d5bd9b8838271b1bc898e01562a04398e160953e8eb9", - "sha256:a7442662afebbf7b4c6d28cb7aab9e9ce3a5df055fc4116cc7228192ad6cb484", - "sha256:aa8a8caca81c0a3e765f19c6953416c58e2f4cc1b84829af01dd1c771bb2f91f", - "sha256:ab3247d58b393bda5b1c8f31c9edece7162fc13265334217785518dd770792b8", - "sha256:b10a47e5390c4b30a0d58ee12581003be52eedd506862ab7f97da7a66805befb", - "sha256:b34508f1cd928ce915ed09682d11307ba4b37d0708d1f28e5774c07a7674cac9", - "sha256:b8d3bb96c147b39c02d3db086899679f31958c5d81c494ef0fc9ef5bb1359b3d", - "sha256:b9d45dbb3aaec05cf01525ee1a7ac72de46a8c425cb75c003acd29f76b1ffe94", - "sha256:bf4480a5438f80e0f1539e15a7eb8b5f97a26fe087e9828e2c0ec2be119a9f72", - "sha256:c160a04283c8c6f55b5bf6d4cad59bb9c5b9c9cd08903841b25f1f7109ef1259", - "sha256:c96a43822f1f9f69cc5c3706af33239489a6294be486a0447fb71380070d4d5f", - "sha256:c9fd9dcf9c91affe71654ef77426f5cf8489305e1c66ed4816f5a21874b094b9", - "sha256:cddb31f8474695cd61fc9455c644fc1606c164b93bff2490390d90464b4655df", - "sha256:ce1bb21fc7d753b5f8a5d5a4bae99566386b15e716ebdb410154c16c91494d7f", - "sha256:d1c031a7572f62f66f1257db37ddab4cb98bfaf9b9434a3b4840bf3560f5e788", - "sha256:d589264dbba3b16e8951b6f145d1e6b883094075283dafcab4cdd564a9e353a0", - "sha256:dc065a4285307607df3f3686363e7f8bdd0d8ab35f12226362a847731516e42c", - "sha256:e10c440d142fa8b32cfdb194caf60ceeceb3e49807072e0dc3a8887ea80e8c16", - "sha256:e3552fe98e90fdf5918c04769f338a87fa4f00f3b28830ea9b78b1bdc6140e0d", - "sha256:e392804a38353900c3fd8b7cacbea5132888f7129f8e241915e90b85f00e3250", - "sha256:e4cecdb52aaa9994fbed6b81d4568427b6002f0a91c322697a4bfcc2b2363f5a", - "sha256:e5148ca8955affdfeb864aca158ecae11030e952b25b3ae15d4e2b5ba299bad2", - "sha256:e6b2732ef3bafc759f653a98881b5b9cdef0716d98f013d376ee8dfd7285abf1", - "sha256:ea756b5a7bac046d202a9a3889b9a92219f885481d78cd318db85b15cc0b7bcf", - "sha256:edb69b9589324bdc40961cdf0657815df674f1743a8d5ad9ab56a99e4833cfdd", - "sha256:f0203433121484b32646a5f5ea93ae86f3d9559d7243f07e8c0eab5ff8e3f70e", - "sha256:f6a19bcab7fbd8f8649d6595624856635159a6527861b9cdc3447af288a00c00", - "sha256:f752e80606b132140883bb262a457c475d219d7163d996dc9072434ffb0784c4", - "sha256:f7914ab70d2ee8ab91c13e5402122edbc77821c66d2758abb53aabe87f013287" + "sha256:00c8ac69e259c60976aa2edae3f13d9991cf079aaa4d3cd5a49168ae3748dee3", + "sha256:01816f07c9cc9d80f858615b1365f8319d6a5fd079cd668cc58e15aafbc76a54", + "sha256:02876bf2f69b062584965507b07bc06903c2dc93c57a554b64e012d636952654", + "sha256:0e9eb7e5764abcb49f0e2bd8f5731849b8728efbf26d0cac8e81384c95acec3f", + "sha256:0f6b2c5b4a4d22b8fb2c92ac98e0747f5f195e8e9448bfb7404cd77e7bfa243f", + "sha256:1982c98ac62c132d2b773d50e2fcc941eb0b8bad3ec078ce7e7877c4d5a2dce7", + "sha256:1e83fb1991e9d8982b3b36aea1e7ad27ea0ce18c14d054c7a404d68b0319eebb", + "sha256:25de43bb3cf83ad83efc8295af7310219af6dbe4c543c2e74988d8e9c8a2a917", + "sha256:28a772757c9067e2aee8a6b2b425d0efaa628c264d6416d283694c3d86da7689", + "sha256:2a4a13dfbb23977a51853b419141cd0a9b9573ab8d3a1455c6e63561387b52ff", + "sha256:2a8a6bc19818ac3e5596310ace5aa50d918e1ebdcc204dc96e2f4d505d51740c", + "sha256:2eabb269dc3852537d57589b36d7f7362e57d1ece308842ef44d9830d2dc3c90", + "sha256:35cda4e07f5e058a723436c4d2b7ba2124ab4e0aa49e6325aed5896507a8a42e", + "sha256:42d689a5c0a0c357018993e471893e939f555e302313d5c61dfc566c2cad6185", + "sha256:4586a68730bd2f2b04a83e83f79d271d8ed13763f64b75920f18a3a677b9a7f0", + "sha256:47dc018b1b220c48089b5b9382fbab94db35bef2fa192995be22cbad3c5730c8", + "sha256:507ab05d90586dacb4f26a001c3abf912eb719d05635cbfad930bdbeb469b36c", + "sha256:5194143927e494616e335d074e77a5dac7cd353a04755330c9adc984ac5a628e", + "sha256:51c3ff9c7a25f3cad5c09d9aacbc5aefb9267167c4652c1eb737989b554fe278", + "sha256:55789e93c5ed71832e7fac868167276beadf9877b85697020c46e9a75471f55f", + "sha256:5724cc77f4e648362ebbb49bdecb9e2b86d9b172c68a295263fa072e679ee69d", + "sha256:5ad8f1c19fe277eeb8bc45741c6d60ddd11d705c12a4d8ee17546acff98e0802", + "sha256:5ceb81a4db2decdfa087381b5fc5847aa448244f973e5da232610304e199e7b2", + "sha256:64815c6f02e8506b10113ddbc6b196f58dbef135751cc7c32136df27b736db09", + "sha256:66047eacbc73e6fe2462b77ce39fc170ab51235caf331e735eae91c95e6a11e4", + "sha256:669dd33f028e54fe4c96576f406ebb242ba534dd3a981ce009961bf49960f117", + "sha256:684eea71ab6e8ade86b9021bb62af4bf0881f6be4e926b6b5455de74e420783a", + "sha256:6b35aab22419ba45f8fc290d0010898de7a6ad131e468ffa3922b1b0b24e9d2e", + "sha256:7104d5b3943c6351d1ad7027d90bdd0ea002903e9f610735ac99df3b81f102ee", + "sha256:718d5deb678bc4b9d575bfe83a59270861417da071ab44542d0fcb6faa686636", + "sha256:747ec46290107a490d21fe1ff4183bef8022b848cf9516970cb31de6d9460088", + "sha256:7836587eef675a17d835ec3d98a8c9acdbeb2c1d72b0556f0edf4e855a25e9c1", + "sha256:78e4dd9c34ec7b8b121854eb5342bac8b02aa03075ae8618b6210a06bbb8a115", + "sha256:7b77ee42addbb1c36d35aca55e8cc6d0958f8419e458bb70888d8c69a4ca833d", + "sha256:7c1b20a1ace54af7db1f95af85da530fe97407d9063b7aaf9ce6a32f44730778", + "sha256:7f27eec42f6c3c1df09cfc1f6786308f8b525b8efaaf6d6bd76c1f52c6511f6a", + "sha256:82c249f2bfa5ecbe4a1a7902c81c0fba52ed9ebd0176ab3047395d02ad96cfcb", + "sha256:85fa0b18558eb1427090912bd456a01f71edab0872f4e0f9e4285571941e4090", + "sha256:89ce611b1eac93ce2ade68f1470889e0173d606de20c85a012bfa24be96cf867", + "sha256:8ce789231404ca8fff7f693cdce398abf6d90fd5dae2b1847477196c243b1fbb", + "sha256:90d571c98d19a8b6e793b34aa4df4cee1e8fe2862d65cc49185a3a3d0a1a3996", + "sha256:9229d8613bd8401182868fe95688f7581673e1c18ff78855671a4b8284f47bcb", + "sha256:93a1f7d857c4fcf7cabb1178058182c789b30d85de379e04f64c15b7e88d66fb", + "sha256:967b93f21b426f23ca37329230d5bd122f25516ae2f24a9cea95a30023ff8283", + "sha256:9840be675de208d1f68f84d578eaa4d1a36eee70b16ae31ab933520c49ba1325", + "sha256:9862d077b9ffa015dbe3ce6c081bdf35135948cb89116e26667dd183550833d1", + "sha256:9b5b37c863ad5b0892cc7a4ceb1e435e5e6acd3f2f8d3e11fa56f08d3c67b820", + "sha256:9e64ca2dbea28807f8484c13f684a2f761e69ba2640ec49dacd342763cc265ef", + "sha256:9fe4eb0e7f50cdb99b26250d9328faef30b1175a5dbcfd6d0578d18456bac567", + "sha256:a01fe9f1e05025eacdd97590895e2737b9f851d0eb2e017ae9574d9a4f0b6252", + "sha256:a08ad95fcbd595803e0c4280671d808eb170a64ca3f2980dd38e7a72ed8d1fea", + "sha256:a4fe27dbbeec445e6e1291e61d61eb212ee9fed6e47998b27de71d70d3e8777d", + "sha256:a7d474c5c1f0b9405c1565fafdc4429fa7d986ccbec7ce55bc6a330f36409cad", + "sha256:a86dc177eb4c286c19d1823ac296299f59ed8106c9536d2b559f65836e0fb2c6", + "sha256:aa36c35e94ecdb478246dd60db12aba57cfcd0abcad43c927a8876f25734d496", + "sha256:ab915a57c65f7a29353c8014ac4be685c8e4a19e792a79fe133a8e101111438e", + "sha256:af55314407714fe77a68a9ccaab90fdb5deb57342585fd4a3a8102b6d4370080", + "sha256:afcb6b275c2d2ba5d8418bf30a9654fa978b4f819c2e8db6311b3525c86fe637", + "sha256:b27961d65639128336b7a7c3f0046dcc62a9443d5ef962e3c84170ac620cec47", + "sha256:b5b95787335c483cd5f29577f42bbe027a412c5431f2f80a749c80d040f7ca9f", + "sha256:b73a2b139782a07658fbf170fe4bcdf70fc597fae5ffe75e5b67674c27434a9f", + "sha256:b88aca5adbf4625e11118df45acac29616b425833c3be7a05ef63a6a4017bfdb", + "sha256:b992778d95b60a21c4d8d4a5f15aaab2bd3c3e16466a72d7f9bfd86e8cea0d4b", + "sha256:ba40b7ae0f81c7029583a338853f6607b6d83a341a3dcde8bed1ea58a3af1df9", + "sha256:baae005092e3f200de02699314ac8933ec20abf998ec0be39448f6605bce93df", + "sha256:c4bea08a6aad9195ac9b1be6b0c7e8a702a9cec57ce6b713698b4a5afa9c2e33", + "sha256:c6070bcf2173a7146bb9e4735b3c62b2accba459a6eae44deea0eb23e0035a23", + "sha256:c929f9a7249a11e4aa5c157091cfad7f49cc6b13f4eecf9b747104befd9f56f2", + "sha256:c97be90d70f7db3aa041d720bfb95f4869d6063fcdf2bb8333764d97e319b7d0", + "sha256:ce10ddfbe26ed5856d6902162f71b8fe08545380570a885b4ab56aecfdcb07f4", + "sha256:cf1f31f83d16ec344136359001c5e871915c6ab685a3d8dee38e2961b4c81730", + "sha256:d2b25b2eeb35707113b2d570cadc7c612a57f1c5d3e7bb2b13870fe284e08fc0", + "sha256:d33851d85537bbf0f6291ddc97926a754c8f041af759e0aa0230fe939168852b", + "sha256:e06cf4852ce8c4442a59bae5a3ea01162b8fcb49ab438d8548b8dc79375dad8a", + "sha256:e271beb2b1dabec5cd84eb488bdabf9758d22ad13471e9c356be07ad139b3012", + "sha256:f55d0f242c2d1fcdf802c8fabcff25a9d85550a4cf3a9cf5f2a6b5742c992839", + "sha256:f81cba651db8795f688c589dd11a4fbb834f2e59bbf9bb50908be36e416dc760", + "sha256:fa1fb1b61881c8405829c50e9cc5c875bfdbf685edf57a76817dfb50643e4a1a", + "sha256:fa48dac27f41b36735c807d1ab093a8386701bbf00eb6b89a0f69d9fa26b3671", + "sha256:fbfef0666ae9e07abfa2c54c212ac18a1f63e13e0760a769f70b5717742f3ece", + "sha256:fe7065e2215e4bba63dc00db9ae654c1ba3950a5fff691475a32f511142fcddb" ], "markers": "python_version >= '3.9'", - "version": "==3.11.12" + "version": "==3.11.13" }, "aiosignal": { "hashes": [ @@ -221,7 +221,7 @@ "sha256:f7f5baafcc48261359e14bcd6d9bff6d4b28d9103847c9e136694cb0501aef87", "sha256:fc48c783f9c87e60831201f2cce7f3b2e4846bf4d8728eabe54d60700b318a0b" ], - "markers": "platform_python_implementation != 'PyPy'", + "markers": "python_version >= '3.8'", "version": "==1.17.1" }, "charset-normalizer": { @@ -369,7 +369,7 @@ }, "dbrepo": { "hashes": [ - "sha256:779e7ee84ae91131e16100fee7143013b4c231dcd3990d418d024ff76af271e9" + "sha256:871d6852e3e318700314bfa5e0d4bd77612002323b32c278116118bf77e8480b" ], "path": "./lib/dbrepo-1.7.0.tar.gz" }, @@ -611,7 +611,7 @@ "sha256:f406b22b7c9a9b4f8aa9d2ab13d6ae0ac3e85c9a809bd590ad53fed2bf70dc79", "sha256:f6ff3b14f2df4c41660a7dec01045a045653998784bf8cfcb5a525bdffffbc8f" ], - "markers": "python_version < '3.14' and (platform_machine == 'aarch64' or (platform_machine == 'ppc64le' or (platform_machine == 'x86_64' or (platform_machine == 'amd64' or (platform_machine == 'AMD64' or (platform_machine == 'win32' or platform_machine == 'WIN32'))))))", + "markers": "python_version >= '3.7'", "version": "==3.1.1" }, "gunicorn": { @@ -910,7 +910,7 @@ "sha256:f4ca91d61a4bf61b0f2228f24bbfa6a9facd5f8af03759fe2a655c50ae2c6610", "sha256:f6b3dfc7661f8842babd8ea07e9897fe3d9b69a1d7e5fbb743e4160f9387833b" ], - "markers": "python_version == '3.11'", + "markers": "python_version >= '3.10'", "version": "==2.2.3" }, "opensearch-py": { @@ -1012,91 +1012,107 @@ }, "propcache": { "hashes": [ - "sha256:03ff9d3f665769b2a85e6157ac8b439644f2d7fd17615a82fa55739bc97863f4", - "sha256:049324ee97bb67285b49632132db351b41e77833678432be52bdd0289c0e05e4", - "sha256:081a430aa8d5e8876c6909b67bd2d937bfd531b0382d3fdedb82612c618bc41a", - "sha256:0f022d381747f0dfe27e99d928e31bc51a18b65bb9e481ae0af1380a6725dd1f", - "sha256:12d1083f001ace206fe34b6bdc2cb94be66d57a850866f0b908972f90996b3e9", - "sha256:14d86fe14b7e04fa306e0c43cdbeebe6b2c2156a0c9ce56b815faacc193e320d", - "sha256:160291c60081f23ee43d44b08a7e5fb76681221a8e10b3139618c5a9a291b84e", - "sha256:1672137af7c46662a1c2be1e8dc78cb6d224319aaa40271c9257d886be4363a6", - "sha256:19a0f89a7bb9d8048d9c4370c9c543c396e894c76be5525f5e1ad287f1750ddf", - "sha256:1ac2f5fe02fa75f56e1ad473f1175e11f475606ec9bd0be2e78e4734ad575034", - "sha256:1cd9a1d071158de1cc1c71a26014dcdfa7dd3d5f4f88c298c7f90ad6f27bb46d", - "sha256:1ffc3cca89bb438fb9c95c13fc874012f7b9466b89328c3c8b1aa93cdcfadd16", - "sha256:297878dc9d0a334358f9b608b56d02e72899f3b8499fc6044133f0d319e2ec30", - "sha256:2d3af2e79991102678f53e0dbf4c35de99b6b8b58f29a27ca0325816364caaba", - "sha256:30b43e74f1359353341a7adb783c8f1b1c676367b011709f466f42fda2045e95", - "sha256:3156628250f46a0895f1f36e1d4fbe062a1af8718ec3ebeb746f1d23f0c5dc4d", - "sha256:31f5af773530fd3c658b32b6bdc2d0838543de70eb9a2156c03e410f7b0d3aae", - "sha256:3935bfa5fede35fb202c4b569bb9c042f337ca4ff7bd540a0aa5e37131659348", - "sha256:39d51fbe4285d5db5d92a929e3e21536ea3dd43732c5b177c7ef03f918dff9f2", - "sha256:3f77ce728b19cb537714499928fe800c3dda29e8d9428778fc7c186da4c09a64", - "sha256:4160d9283bd382fa6c0c2b5e017acc95bc183570cd70968b9202ad6d8fc48dce", - "sha256:4a571d97dbe66ef38e472703067021b1467025ec85707d57e78711c085984e54", - "sha256:4e6281aedfca15301c41f74d7005e6e3f4ca143584ba696ac69df4f02f40d629", - "sha256:52277518d6aae65536e9cea52d4e7fd2f7a66f4aa2d30ed3f2fcea620ace3c54", - "sha256:556fc6c10989f19a179e4321e5d678db8eb2924131e64652a51fe83e4c3db0e1", - "sha256:574faa3b79e8ebac7cb1d7930f51184ba1ccf69adfdec53a12f319a06030a68b", - "sha256:58791550b27d5488b1bb52bc96328456095d96206a250d28d874fafe11b3dfaf", - "sha256:5b750a8e5a1262434fb1517ddf64b5de58327f1adc3524a5e44c2ca43305eb0b", - "sha256:5d97151bc92d2b2578ff7ce779cdb9174337390a535953cbb9452fb65164c587", - "sha256:5eee736daafa7af6d0a2dc15cc75e05c64f37fc37bafef2e00d77c14171c2097", - "sha256:6445804cf4ec763dc70de65a3b0d9954e868609e83850a47ca4f0cb64bd79fea", - "sha256:647894f5ae99c4cf6bb82a1bb3a796f6e06af3caa3d32e26d2350d0e3e3faf24", - "sha256:66d4cfda1d8ed687daa4bc0274fcfd5267873db9a5bc0418c2da19273040eeb7", - "sha256:6a9a8c34fb7bb609419a211e59da8887eeca40d300b5ea8e56af98f6fbbb1541", - "sha256:6b3f39a85d671436ee3d12c017f8fdea38509e4f25b28eb25877293c98c243f6", - "sha256:6b6fb63ae352e13748289f04f37868099e69dba4c2b3e271c46061e82c745634", - "sha256:70693319e0b8fd35dd863e3e29513875eb15c51945bf32519ef52927ca883bc3", - "sha256:781e65134efaf88feb447e8c97a51772aa75e48b794352f94cb7ea717dedda0d", - "sha256:819ce3b883b7576ca28da3861c7e1a88afd08cc8c96908e08a3f4dd64a228034", - "sha256:857112b22acd417c40fa4595db2fe28ab900c8c5fe4670c7989b1c0230955465", - "sha256:887d9b0a65404929641a9fabb6452b07fe4572b269d901d622d8a34a4e9043b2", - "sha256:8b3489ff1ed1e8315674d0775dc7d2195fb13ca17b3808721b54dbe9fd020faf", - "sha256:92fc4500fcb33899b05ba73276dfb684a20d31caa567b7cb5252d48f896a91b1", - "sha256:9403db39be1393618dd80c746cb22ccda168efce239c73af13c3763ef56ffc04", - "sha256:98110aa363f1bb4c073e8dcfaefd3a5cea0f0834c2aab23dda657e4dab2f53b5", - "sha256:999779addc413181912e984b942fbcc951be1f5b3663cd80b2687758f434c583", - "sha256:9caac6b54914bdf41bcc91e7eb9147d331d29235a7c967c150ef5df6464fd1bb", - "sha256:a7a078f5d37bee6690959c813977da5291b24286e7b962e62a94cec31aa5188b", - "sha256:a7e65eb5c003a303b94aa2c3852ef130230ec79e349632d030e9571b87c4698c", - "sha256:a96dc1fa45bd8c407a0af03b2d5218392729e1822b0c32e62c5bf7eeb5fb3958", - "sha256:aca405706e0b0a44cc6bfd41fbe89919a6a56999157f6de7e182a990c36e37bc", - "sha256:accb6150ce61c9c4b7738d45550806aa2b71c7668c6942f17b0ac182b6142fd4", - "sha256:ad1af54a62ffe39cf34db1aa6ed1a1873bd548f6401db39d8e7cd060b9211f82", - "sha256:ae1aa1cd222c6d205853b3013c69cd04515f9d6ab6de4b0603e2e1c33221303e", - "sha256:b2d0a12018b04f4cb820781ec0dffb5f7c7c1d2a5cd22bff7fb055a2cb19ebce", - "sha256:b480c6a4e1138e1aa137c0079b9b6305ec6dcc1098a8ca5196283e8a49df95a9", - "sha256:b74c261802d3d2b85c9df2dfb2fa81b6f90deeef63c2db9f0e029a3cac50b518", - "sha256:ba278acf14471d36316159c94a802933d10b6a1e117b8554fe0d0d9b75c9d536", - "sha256:bb6178c241278d5fe853b3de743087be7f5f4c6f7d6d22a3b524d323eecec505", - "sha256:bf72af5e0fb40e9babf594308911436c8efde3cb5e75b6f206c34ad18be5c052", - "sha256:bfd3223c15bebe26518d58ccf9a39b93948d3dcb3e57a20480dfdd315356baff", - "sha256:c214999039d4f2a5b2073ac506bba279945233da8c786e490d411dfc30f855c1", - "sha256:c2f992c07c0fca81655066705beae35fc95a2fa7366467366db627d9f2ee097f", - "sha256:cba4cfa1052819d16699e1d55d18c92b6e094d4517c41dd231a8b9f87b6fa681", - "sha256:cea7daf9fc7ae6687cf1e2c049752f19f146fdc37c2cc376e7d0032cf4f25347", - "sha256:cf6c4150f8c0e32d241436526f3c3f9cbd34429492abddbada2ffcff506c51af", - "sha256:d09c333d36c1409d56a9d29b3a1b800a42c76a57a5a8907eacdbce3f18768246", - "sha256:d27b84d5880f6d8aa9ae3edb253c59d9f6642ffbb2c889b78b60361eed449787", - "sha256:d2ccec9ac47cf4e04897619c0e0c1a48c54a71bdf045117d3a26f80d38ab1fb0", - "sha256:d71264a80f3fcf512eb4f18f59423fe82d6e346ee97b90625f283df56aee103f", - "sha256:d93f3307ad32a27bda2e88ec81134b823c240aa3abb55821a8da553eed8d9439", - "sha256:d9631c5e8b5b3a0fda99cb0d29c18133bca1e18aea9effe55adb3da1adef80d3", - "sha256:ddfab44e4489bd79bda09d84c430677fc7f0a4939a73d2bba3073036f487a0a6", - "sha256:e7048abd75fe40712005bcfc06bb44b9dfcd8e101dda2ecf2f5aa46115ad07ca", - "sha256:e73091191e4280403bde6c9a52a6999d69cdfde498f1fdf629105247599b57ec", - "sha256:e800776a79a5aabdb17dcc2346a7d66d0777e942e4cd251defeb084762ecd17d", - "sha256:edc9fc7051e3350643ad929df55c451899bb9ae6d24998a949d2e4c87fb596d3", - "sha256:f089118d584e859c62b3da0892b88a83d611c2033ac410e929cb6754eec0ed16", - "sha256:f174bbd484294ed9fdf09437f889f95807e5f229d5d93588d34e92106fbf6717", - "sha256:f508b0491767bb1f2b87fdfacaba5f7eddc2f867740ec69ece6d1946d29029a6", - "sha256:f7a31fc1e1bd362874863fdeed71aed92d348f5336fd84f2197ba40c59f061bd", - "sha256:f9479aa06a793c5aeba49ce5c5692ffb51fcd9a7016e017d555d5e2b0045d212" + "sha256:02df07041e0820cacc8f739510078f2aadcfd3fc57eaeeb16d5ded85c872c89e", + "sha256:03acd9ff19021bd0567582ac88f821b66883e158274183b9e5586f678984f8fe", + "sha256:03c091bb752349402f23ee43bb2bff6bd80ccab7c9df6b88ad4322258d6960fc", + "sha256:07700939b2cbd67bfb3b76a12e1412405d71019df00ca5697ce75e5ef789d829", + "sha256:0c3e893c4464ebd751b44ae76c12c5f5c1e4f6cbd6fbf67e3783cd93ad221863", + "sha256:119e244ab40f70a98c91906d4c1f4c5f2e68bd0b14e7ab0a06922038fae8a20f", + "sha256:11ae6a8a01b8a4dc79093b5d3ca2c8a4436f5ee251a9840d7790dccbd96cb649", + "sha256:15010f29fbed80e711db272909a074dc79858c6d28e2915704cfc487a8ac89c6", + "sha256:19d36bb351ad5554ff20f2ae75f88ce205b0748c38b146c75628577020351e3c", + "sha256:1c8f7d896a16da9455f882870a507567d4f58c53504dc2d4b1e1d386dfe4588a", + "sha256:2383a17385d9800b6eb5855c2f05ee550f803878f344f58b6e194de08b96352c", + "sha256:24c04f8fbf60094c531667b8207acbae54146661657a1b1be6d3ca7773b7a545", + "sha256:2578541776769b500bada3f8a4eeaf944530516b6e90c089aa368266ed70c49e", + "sha256:26a67e5c04e3119594d8cfae517f4b9330c395df07ea65eab16f3d559b7068fe", + "sha256:2b975528998de037dfbc10144b8aed9b8dd5a99ec547f14d1cb7c5665a43f075", + "sha256:2d15bc27163cd4df433e75f546b9ac31c1ba7b0b128bfb1b90df19082466ff57", + "sha256:2d913d36bdaf368637b4f88d554fb9cb9d53d6920b9c5563846555938d5450bf", + "sha256:3302c5287e504d23bb0e64d2a921d1eb4a03fb93a0a0aa3b53de059f5a5d737d", + "sha256:36ca5e9a21822cc1746023e88f5c0af6fce3af3b85d4520efb1ce4221bed75cc", + "sha256:3b812b3cb6caacd072276ac0492d249f210006c57726b6484a1e1805b3cfeea0", + "sha256:3c6ec957025bf32b15cbc6b67afe233c65b30005e4c55fe5768e4bb518d712f1", + "sha256:41de3da5458edd5678b0f6ff66691507f9885f5fe6a0fb99a5d10d10c0fd2d64", + "sha256:42924dc0c9d73e49908e35bbdec87adedd651ea24c53c29cac103ede0ea1d340", + "sha256:4544699674faf66fb6b4473a1518ae4999c1b614f0b8297b1cef96bac25381db", + "sha256:46ed02532cb66612d42ae5c3929b5e98ae330ea0f3900bc66ec5f4862069519b", + "sha256:49ea05212a529c2caffe411e25a59308b07d6e10bf2505d77da72891f9a05641", + "sha256:4fa0e7c9c3cf7c276d4f6ab9af8adddc127d04e0fcabede315904d2ff76db626", + "sha256:507c5357a8d8b4593b97fb669c50598f4e6cccbbf77e22fa9598aba78292b4d7", + "sha256:549722908de62aa0b47a78b90531c022fa6e139f9166be634f667ff45632cc92", + "sha256:58e6d2a5a7cb3e5f166fd58e71e9a4ff504be9dc61b88167e75f835da5764d07", + "sha256:5a16167118677d94bb48bfcd91e420088854eb0737b76ec374b91498fb77a70e", + "sha256:5d62c4f6706bff5d8a52fd51fec6069bef69e7202ed481486c0bc3874912c787", + "sha256:5fa159dcee5dba00c1def3231c249cf261185189205073bde13797e57dd7540a", + "sha256:6032231d4a5abd67c7f71168fd64a47b6b451fbcb91c8397c2f7610e67683810", + "sha256:63f26258a163c34542c24808f03d734b338da66ba91f410a703e505c8485791d", + "sha256:65a37714b8ad9aba5780325228598a5b16c47ba0f8aeb3dc0514701e4413d7c0", + "sha256:67054e47c01b7b349b94ed0840ccae075449503cf1fdd0a1fdd98ab5ddc2667b", + "sha256:67dda3c7325691c2081510e92c561f465ba61b975f481735aefdfc845d2cd043", + "sha256:6985a593417cdbc94c7f9c3403747335e450c1599da1647a5af76539672464d3", + "sha256:6a1948df1bb1d56b5e7b0553c0fa04fd0e320997ae99689488201f19fa90d2e7", + "sha256:6b5b7fd6ee7b54e01759f2044f936dcf7dea6e7585f35490f7ca0420fe723c0d", + "sha256:6c929916cbdb540d3407c66f19f73387f43e7c12fa318a66f64ac99da601bcdf", + "sha256:6f4d7a7c0aff92e8354cceca6fe223973ddf08401047920df0fcb24be2bd5138", + "sha256:728af36011bb5d344c4fe4af79cfe186729efb649d2f8b395d1572fb088a996c", + "sha256:742840d1d0438eb7ea4280f3347598f507a199a35a08294afdcc560c3739989d", + "sha256:75e872573220d1ee2305b35c9813626e620768248425f58798413e9c39741f46", + "sha256:794c3dd744fad478b6232289c866c25406ecdfc47e294618bdf1697e69bd64a6", + "sha256:7c0fdbdf6983526e269e5a8d53b7ae3622dd6998468821d660d0daf72779aefa", + "sha256:7c5f5290799a3f6539cc5e6f474c3e5c5fbeba74a5e1e5be75587746a940d51e", + "sha256:7c6e7e4f9167fddc438cd653d826f2222222564daed4116a02a184b464d3ef05", + "sha256:7cedd25e5f678f7738da38037435b340694ab34d424938041aa630d8bac42663", + "sha256:7e2e068a83552ddf7a39a99488bcba05ac13454fb205c847674da0352602082f", + "sha256:8319293e85feadbbfe2150a5659dbc2ebc4afdeaf7d98936fb9a2f2ba0d4c35c", + "sha256:8526b0941ec5a40220fc4dfde76aed58808e2b309c03e9fa8e2260083ef7157f", + "sha256:8884ba1a0fe7210b775106b25850f5e5a9dc3c840d1ae9924ee6ea2eb3acbfe7", + "sha256:8cb625bcb5add899cb8ba7bf716ec1d3e8f7cdea9b0713fa99eadf73b6d4986f", + "sha256:8d663fd71491dde7dfdfc899d13a067a94198e90695b4321084c6e450743b8c7", + "sha256:8ee1983728964d6070ab443399c476de93d5d741f71e8f6e7880a065f878e0b9", + "sha256:997e7b8f173a391987df40f3b52c423e5850be6f6df0dcfb5376365440b56667", + "sha256:9be90eebc9842a93ef8335291f57b3b7488ac24f70df96a6034a13cb58e6ff86", + "sha256:9ddd49258610499aab83b4f5b61b32e11fce873586282a0e972e5ab3bcadee51", + "sha256:9ecde3671e62eeb99e977f5221abcf40c208f69b5eb986b061ccec317c82ebd0", + "sha256:9ff4e9ecb6e4b363430edf2c6e50173a63e0820e549918adef70515f87ced19a", + "sha256:a254537b9b696ede293bfdbc0a65200e8e4507bc9f37831e2a0318a9b333c85c", + "sha256:a2b9bf8c79b660d0ca1ad95e587818c30ccdb11f787657458d6f26a1ea18c568", + "sha256:a61a68d630e812b67b5bf097ab84e2cd79b48c792857dc10ba8a223f5b06a2af", + "sha256:a7080b0159ce05f179cfac592cda1a82898ca9cd097dacf8ea20ae33474fbb25", + "sha256:a8fd93de4e1d278046345f49e2238cdb298589325849b2645d4a94c53faeffc5", + "sha256:a94ffc66738da99232ddffcf7910e0f69e2bbe3a0802e54426dbf0714e1c2ffe", + "sha256:aa806bbc13eac1ab6291ed21ecd2dd426063ca5417dd507e6be58de20e58dfcf", + "sha256:b0c1a133d42c6fc1f5fbcf5c91331657a1ff822e87989bf4a6e2e39b818d0ee9", + "sha256:b58229a844931bca61b3a20efd2be2a2acb4ad1622fc026504309a6883686fbf", + "sha256:bb2f144c6d98bb5cbc94adeb0447cfd4c0f991341baa68eee3f3b0c9c0e83767", + "sha256:be90c94570840939fecedf99fa72839aed70b0ced449b415c85e01ae67422c90", + "sha256:bf0d9a171908f32d54f651648c7290397b8792f4303821c42a74e7805bfb813c", + "sha256:bf15fc0b45914d9d1b706f7c9c4f66f2b7b053e9517e40123e137e8ca8958b3d", + "sha256:bf4298f366ca7e1ad1d21bbb58300a6985015909964077afd37559084590c929", + "sha256:c441c841e82c5ba7a85ad25986014be8d7849c3cfbdb6004541873505929a74e", + "sha256:cacea77ef7a2195f04f9279297684955e3d1ae4241092ff0cfcef532bb7a1c32", + "sha256:cd54895e4ae7d32f1e3dd91261df46ee7483a735017dc6f987904f194aa5fd14", + "sha256:d1323cd04d6e92150bcc79d0174ce347ed4b349d748b9358fd2e497b121e03c8", + "sha256:d383bf5e045d7f9d239b38e6acadd7b7fdf6c0087259a84ae3475d18e9a2ae8b", + "sha256:d3e7420211f5a65a54675fd860ea04173cde60a7cc20ccfbafcccd155225f8bc", + "sha256:d8074c5dd61c8a3e915fa8fc04754fa55cfa5978200d2daa1e2d4294c1f136aa", + "sha256:df03cd88f95b1b99052b52b1bb92173229d7a674df0ab06d2b25765ee8404bce", + "sha256:e45377d5d6fefe1677da2a2c07b024a6dac782088e37c0b1efea4cfe2b1be19b", + "sha256:e53d19c2bf7d0d1e6998a7e693c7e87300dd971808e6618964621ccd0e01fe4e", + "sha256:e560fd75aaf3e5693b91bcaddd8b314f4d57e99aef8a6c6dc692f935cc1e6bbf", + "sha256:ec5060592d83454e8063e487696ac3783cc48c9a329498bafae0d972bc7816c9", + "sha256:ecc2920630283e0783c22e2ac94427f8cca29a04cfdf331467d4f661f4072dac", + "sha256:ed7161bccab7696a473fe7ddb619c1d75963732b37da4618ba12e60899fefe4f", + "sha256:ee0bd3a7b2e184e88d25c9baa6a9dc609ba25b76daae942edfb14499ac7ec374", + "sha256:ee25f1ac091def37c4b59d192bbe3a206298feeb89132a470325bf76ad122a1e", + "sha256:efa44f64c37cc30c9f05932c740a8b40ce359f51882c70883cc95feac842da4d", + "sha256:f47d52fd9b2ac418c4890aad2f6d21a6b96183c98021f0a48497a904199f006e", + "sha256:f857034dc68d5ceb30fb60afb6ff2103087aea10a01b613985610e007053a121", + "sha256:fb91d20fa2d3b13deea98a690534697742029f4fb83673a3501ae6e3746508b5", + "sha256:fddb8870bdb83456a489ab67c6b3040a8d5a55069aa6f72f9d872235fbc52f54" ], "markers": "python_version >= '3.9'", - "version": "==0.2.1" + "version": "==0.3.0" }, "pycparser": { "hashes": [ @@ -1355,112 +1371,112 @@ }, "rpds-py": { "hashes": [ - "sha256:009de23c9c9ee54bf11303a966edf4d9087cd43a6003672e6aa7def643d06518", - "sha256:02fbb9c288ae08bcb34fb41d516d5eeb0455ac35b5512d03181d755d80810059", - "sha256:0a0461200769ab3b9ab7e513f6013b7a97fdeee41c29b9db343f3c5a8e2b9e61", - "sha256:0b09865a9abc0ddff4e50b5ef65467cd94176bf1e0004184eb915cbc10fc05c5", - "sha256:0b8db6b5b2d4491ad5b6bdc2bc7c017eec108acbf4e6785f42a9eb0ba234f4c9", - "sha256:0c150c7a61ed4a4f4955a96626574e9baf1adf772c2fb61ef6a5027e52803543", - "sha256:0f3cec041684de9a4684b1572fe28c7267410e02450f4561700ca5a3bc6695a2", - "sha256:1352ae4f7c717ae8cba93421a63373e582d19d55d2ee2cbb184344c82d2ae55a", - "sha256:177c7c0fce2855833819c98e43c262007f42ce86651ffbb84f37883308cb0e7d", - "sha256:1978d0021e943aae58b9b0b196fb4895a25cc53d3956b8e35e0b7682eefb6d56", - "sha256:1a60bce91f81ddaac922a40bbb571a12c1070cb20ebd6d49c48e0b101d87300d", - "sha256:1aef18820ef3e4587ebe8b3bc9ba6e55892a6d7b93bac6d29d9f631a3b4befbd", - "sha256:1e9663daaf7a63ceccbbb8e3808fe90415b0757e2abddbfc2e06c857bf8c5e2b", - "sha256:20070c65396f7373f5df4005862fa162db5d25d56150bddd0b3e8214e8ef45b4", - "sha256:214b7a953d73b5e87f0ebece4a32a5bd83c60a3ecc9d4ec8f1dca968a2d91e99", - "sha256:22bebe05a9ffc70ebfa127efbc429bc26ec9e9b4ee4d15a740033efda515cf3d", - "sha256:24e8abb5878e250f2eb0d7859a8e561846f98910326d06c0d51381fed59357bd", - "sha256:26fd7cac7dd51011a245f29a2cc6489c4608b5a8ce8d75661bb4a1066c52dfbe", - "sha256:27b1d3b3915a99208fee9ab092b8184c420f2905b7d7feb4aeb5e4a9c509b8a1", - "sha256:27e98004595899949bd7a7b34e91fa7c44d7a97c40fcaf1d874168bb652ec67e", - "sha256:2b8f60e1b739a74bab7e01fcbe3dddd4657ec685caa04681df9d562ef15b625f", - "sha256:2de29005e11637e7a2361fa151f780ff8eb2543a0da1413bb951e9f14b699ef3", - "sha256:2e8b55d8517a2fda8d95cb45d62a5a8bbf9dd0ad39c5b25c8833efea07b880ca", - "sha256:2fa4331c200c2521512595253f5bb70858b90f750d39b8cbfd67465f8d1b596d", - "sha256:3445e07bf2e8ecfeef6ef67ac83de670358abf2996916039b16a218e3d95e97e", - "sha256:3453e8d41fe5f17d1f8e9c383a7473cd46a63661628ec58e07777c2fff7196dc", - "sha256:378753b4a4de2a7b34063d6f95ae81bfa7b15f2c1a04a9518e8644e81807ebea", - "sha256:3af6e48651c4e0d2d166dc1b033b7042ea3f871504b6805ba5f4fe31581d8d38", - "sha256:3dfcbc95bd7992b16f3f7ba05af8a64ca694331bd24f9157b49dadeeb287493b", - "sha256:3f21f0495edea7fdbaaa87e633a8689cd285f8f4af5c869f27bc8074638ad69c", - "sha256:4041711832360a9b75cfb11b25a6a97c8fb49c07b8bd43d0d02b45d0b499a4ff", - "sha256:44d61b4b7d0c2c9ac019c314e52d7cbda0ae31078aabd0f22e583af3e0d79723", - "sha256:4617e1915a539a0d9a9567795023de41a87106522ff83fbfaf1f6baf8e85437e", - "sha256:4b232061ca880db21fa14defe219840ad9b74b6158adb52ddf0e87bead9e8493", - "sha256:5246b14ca64a8675e0a7161f7af68fe3e910e6b90542b4bfb5439ba752191df6", - "sha256:5725dd9cc02068996d4438d397e255dcb1df776b7ceea3b9cb972bdb11260a83", - "sha256:583f6a1993ca3369e0f80ba99d796d8e6b1a3a2a442dd4e1a79e652116413091", - "sha256:59259dc58e57b10e7e18ce02c311804c10c5a793e6568f8af4dead03264584d1", - "sha256:593eba61ba0c3baae5bc9be2f5232430453fb4432048de28399ca7376de9c627", - "sha256:59f4a79c19232a5774aee369a0c296712ad0e77f24e62cad53160312b1c1eaa1", - "sha256:5f0e260eaf54380380ac3808aa4ebe2d8ca28b9087cf411649f96bad6900c728", - "sha256:62d9cfcf4948683a18a9aff0ab7e1474d407b7bab2ca03116109f8464698ab16", - "sha256:64607d4cbf1b7e3c3c8a14948b99345eda0e161b852e122c6bb71aab6d1d798c", - "sha256:655ca44a831ecb238d124e0402d98f6212ac527a0ba6c55ca26f616604e60a45", - "sha256:666ecce376999bf619756a24ce15bb14c5bfaf04bf00abc7e663ce17c3f34fe7", - "sha256:68049202f67380ff9aa52f12e92b1c30115f32e6895cd7198fa2a7961621fc5a", - "sha256:69803198097467ee7282750acb507fba35ca22cc3b85f16cf45fb01cb9097730", - "sha256:6c7b99ca52c2c1752b544e310101b98a659b720b21db00e65edca34483259967", - "sha256:6dd9412824c4ce1aca56c47b0991e65bebb7ac3f4edccfd3f156150c96a7bf25", - "sha256:70eb60b3ae9245ddea20f8a4190bd79c705a22f8028aaf8bbdebe4716c3fab24", - "sha256:70fb28128acbfd264eda9bf47015537ba3fe86e40d046eb2963d75024be4d055", - "sha256:7b2513ba235829860b13faa931f3b6846548021846ac808455301c23a101689d", - "sha256:7ef9d9da710be50ff6809fed8f1963fecdfecc8b86656cadfca3bc24289414b0", - "sha256:81e69b0a0e2537f26d73b4e43ad7bc8c8efb39621639b4434b76a3de50c6966e", - "sha256:8633e471c6207a039eff6aa116e35f69f3156b3989ea3e2d755f7bc41754a4a7", - "sha256:8bd7c8cfc0b8247c8799080fbff54e0b9619e17cdfeb0478ba7295d43f635d7c", - "sha256:9253fc214112405f0afa7db88739294295f0e08466987f1d70e29930262b4c8f", - "sha256:99b37292234e61325e7a5bb9689e55e48c3f5f603af88b1642666277a81f1fbd", - "sha256:9bd7228827ec7bb817089e2eb301d907c0d9827a9e558f22f762bb690b131652", - "sha256:9beeb01d8c190d7581a4d59522cd3d4b6887040dcfc744af99aa59fef3e041a8", - "sha256:a63cbdd98acef6570c62b92a1e43266f9e8b21e699c363c0fef13bd530799c11", - "sha256:a76e42402542b1fae59798fab64432b2d015ab9d0c8c47ba7addddbaf7952333", - "sha256:ac0a03221cdb5058ce0167ecc92a8c89e8d0decdc9e99a2ec23380793c4dcb96", - "sha256:b0b4136a252cadfa1adb705bb81524eee47d9f6aab4f2ee4fa1e9d3cd4581f64", - "sha256:b25bc607423935079e05619d7de556c91fb6adeae9d5f80868dde3468657994b", - "sha256:b3d504047aba448d70cf6fa22e06cb09f7cbd761939fdd47604f5e007675c24e", - "sha256:bb47271f60660803ad11f4c61b42242b8c1312a31c98c578f79ef9387bbde21c", - "sha256:bbb232860e3d03d544bc03ac57855cd82ddf19c7a07651a7c0fdb95e9efea8b9", - "sha256:bc27863442d388870c1809a87507727b799c8460573cfbb6dc0eeaef5a11b5ec", - "sha256:bc51abd01f08117283c5ebf64844a35144a0843ff7b2983e0648e4d3d9f10dbb", - "sha256:be2eb3f2495ba669d2a985f9b426c1797b7d48d6963899276d22f23e33d47e37", - "sha256:bf9db5488121b596dbfc6718c76092fda77b703c1f7533a226a5a9f65248f8ad", - "sha256:c58e2339def52ef6b71b8f36d13c3688ea23fa093353f3a4fee2556e62086ec9", - "sha256:cfbc454a2880389dbb9b5b398e50d439e2e58669160f27b60e5eca11f68ae17c", - "sha256:cff63a0272fcd259dcc3be1657b07c929c466b067ceb1c20060e8d10af56f5bf", - "sha256:d115bffdd417c6d806ea9069237a4ae02f513b778e3789a359bc5856e0404cc4", - "sha256:d20cfb4e099748ea39e6f7b16c91ab057989712d31761d3300d43134e26e165f", - "sha256:d48424e39c2611ee1b84ad0f44fb3b2b53d473e65de061e3f460fc0be5f1939d", - "sha256:e0fa2d4ec53dc51cf7d3bb22e0aa0143966119f42a0c3e4998293a3dd2856b09", - "sha256:e32fee8ab45d3c2db6da19a5323bc3362237c8b653c70194414b892fd06a080d", - "sha256:e35ba67d65d49080e8e5a1dd40101fccdd9798adb9b050ff670b7d74fa41c566", - "sha256:e3fb866d9932a3d7d0c82da76d816996d1667c44891bd861a0f97ba27e84fc74", - "sha256:e61b02c3f7a1e0b75e20c3978f7135fd13cb6cf551bf4a6d29b999a88830a338", - "sha256:e67ba3c290821343c192f7eae1d8fd5999ca2dc99994114643e2f2d3e6138b15", - "sha256:e79dd39f1e8c3504be0607e5fc6e86bb60fe3584bec8b782578c3b0fde8d932c", - "sha256:e89391e6d60251560f0a8f4bd32137b077a80d9b7dbe6d5cab1cd80d2746f648", - "sha256:ea7433ce7e4bfc3a85654aeb6747babe3f66eaf9a1d0c1e7a4435bbdf27fea84", - "sha256:eaf16ae9ae519a0e237a0f528fd9f0197b9bb70f40263ee57ae53c2b8d48aeb3", - "sha256:eb0c341fa71df5a4595f9501df4ac5abfb5a09580081dffbd1ddd4654e6e9123", - "sha256:f276b245347e6e36526cbd4a266a417796fc531ddf391e43574cf6466c492520", - "sha256:f47ad3d5f3258bd7058d2d506852217865afefe6153a36eb4b6928758041d831", - "sha256:f56a6b404f74ab372da986d240e2e002769a7d7102cc73eb238a4f72eec5284e", - "sha256:f5cf2a0c2bdadf3791b5c205d55a37a54025c6e18a71c71f82bb536cf9a454bf", - "sha256:f5d36399a1b96e1a5fdc91e0522544580dbebeb1f77f27b2b0ab25559e103b8b", - "sha256:f60bd8423be1d9d833f230fdbccf8f57af322d96bcad6599e5a771b151398eb2", - "sha256:f612463ac081803f243ff13cccc648578e2279295048f2a8d5eb430af2bae6e3", - "sha256:f73d3fef726b3243a811121de45193c0ca75f6407fe66f3f4e183c983573e130", - "sha256:f82a116a1d03628a8ace4859556fb39fd1424c933341a08ea3ed6de1edb0283b", - "sha256:fb0ba113b4983beac1a2eb16faffd76cb41e176bf58c4afe3e14b9c681f702de", - "sha256:fb4f868f712b2dd4bcc538b0a0c1f63a2b1d584c925e69a224d759e7070a12d5", - "sha256:fb6116dfb8d1925cbdb52595560584db42a7f664617a1f7d7f6e32f138cdf37d", - "sha256:fda7cb070f442bf80b642cd56483b5548e43d366fe3f39b98e67cce780cded00", - "sha256:feea821ee2a9273771bae61194004ee2fc33f8ec7db08117ef9147d4bbcbca8e" + "sha256:09cd7dbcb673eb60518231e02874df66ec1296c01a4fcd733875755c02014b19", + "sha256:0f3288930b947cbebe767f84cf618d2cbe0b13be476e749da0e6a009f986248c", + "sha256:0fced9fd4a07a1ded1bac7e961ddd9753dd5d8b755ba8e05acba54a21f5f1522", + "sha256:112b8774b0b4ee22368fec42749b94366bd9b536f8f74c3d4175d4395f5cbd31", + "sha256:11dd60b2ffddba85715d8a66bb39b95ddbe389ad2cfcf42c833f1bcde0878eaf", + "sha256:178f8a60fc24511c0eb756af741c476b87b610dba83270fce1e5a430204566a4", + "sha256:1b08027489ba8fedde72ddd233a5ea411b85a6ed78175f40285bd401bde7466d", + "sha256:1bf5be5ba34e19be579ae873da515a2836a2166d8d7ee43be6ff909eda42b72b", + "sha256:1ed7de3c86721b4e83ac440751329ec6a1102229aa18163f84c75b06b525ad7e", + "sha256:1eedaaccc9bb66581d4ae7c50e15856e335e57ef2734dbc5fd8ba3e2a4ab3cb6", + "sha256:243241c95174b5fb7204c04595852fe3943cc41f47aa14c3828bc18cd9d3b2d6", + "sha256:26bb3e8de93443d55e2e748e9fd87deb5f8075ca7bc0502cfc8be8687d69a2ec", + "sha256:271fa2184cf28bdded86bb6217c8e08d3a169fe0bbe9be5e8d96e8476b707122", + "sha256:28358c54fffadf0ae893f6c1050e8f8853e45df22483b7fff2f6ab6152f5d8bf", + "sha256:285019078537949cecd0190f3690a0b0125ff743d6a53dfeb7a4e6787af154f5", + "sha256:2893d778d4671ee627bac4037a075168b2673c57186fb1a57e993465dbd79a93", + "sha256:2a54027554ce9b129fc3d633c92fa33b30de9f08bc61b32c053dc9b537266fed", + "sha256:2c6ae11e6e93728d86aafc51ced98b1658a0080a7dd9417d24bfb955bb09c3c2", + "sha256:2cfa07c346a7ad07019c33fb9a63cf3acb1f5363c33bc73014e20d9fe8b01cdd", + "sha256:35d5631ce0af26318dba0ae0ac941c534453e42f569011585cb323b7774502a5", + "sha256:3614d280bf7aab0d3721b5ce0e73434acb90a2c993121b6e81a1c15c665298ac", + "sha256:3902df19540e9af4cc0c3ae75974c65d2c156b9257e91f5101a51f99136d834c", + "sha256:3aaf141d39f45322e44fc2c742e4b8b4098ead5317e5f884770c8df0c332da70", + "sha256:3d8abf7896a91fb97e7977d1aadfcc2c80415d6dc2f1d0fca5b8d0df247248f3", + "sha256:3e77febf227a1dc3220159355dba68faa13f8dca9335d97504abf428469fb18b", + "sha256:3e9212f52074fc9d72cf242a84063787ab8e21e0950d4d6709886fb62bcb91d5", + "sha256:3ee9d6f0b38efb22ad94c3b68ffebe4c47865cdf4b17f6806d6c674e1feb4246", + "sha256:4233df01a250b3984465faed12ad472f035b7cd5240ea3f7c76b7a7016084495", + "sha256:4263320ed887ed843f85beba67f8b2d1483b5947f2dc73a8b068924558bfeace", + "sha256:4ab923167cfd945abb9b51a407407cf19f5bee35001221f2911dc85ffd35ff4f", + "sha256:4caafd1a22e5eaa3732acb7672a497123354bef79a9d7ceed43387d25025e935", + "sha256:50fb62f8d8364978478b12d5f03bf028c6bc2af04082479299139dc26edf4c64", + "sha256:55ff4151cfd4bc635e51cfb1c59ac9f7196b256b12e3a57deb9e5742e65941ad", + "sha256:5b98b6c953e5c2bda51ab4d5b4f172617d462eebc7f4bfdc7c7e6b423f6da957", + "sha256:5c9ff044eb07c8468594d12602291c635da292308c8c619244e30698e7fc455a", + "sha256:5e9c206a1abc27e0588cf8b7c8246e51f1a16a103734f7750830a1ccb63f557a", + "sha256:5fb89edee2fa237584e532fbf78f0ddd1e49a47c7c8cfa153ab4849dc72a35e6", + "sha256:633462ef7e61d839171bf206551d5ab42b30b71cac8f10a64a662536e057fdef", + "sha256:66f8d2a17e5838dd6fb9be6baaba8e75ae2f5fa6b6b755d597184bfcd3cb0eba", + "sha256:6959bb9928c5c999aba4a3f5a6799d571ddc2c59ff49917ecf55be2bbb4e3722", + "sha256:698a79d295626ee292d1730bc2ef6e70a3ab135b1d79ada8fde3ed0047b65a10", + "sha256:721f9c4011b443b6e84505fc00cc7aadc9d1743f1c988e4c89353e19c4a968ee", + "sha256:72e680c1518733b73c994361e4b06441b92e973ef7d9449feec72e8ee4f713da", + "sha256:75307599f0d25bf6937248e5ac4e3bde5ea72ae6618623b86146ccc7845ed00b", + "sha256:754fba3084b70162a6b91efceee8a3f06b19e43dac3f71841662053c0584209a", + "sha256:759462b2d0aa5a04be5b3e37fb8183615f47014ae6b116e17036b131985cb731", + "sha256:7938c7b0599a05246d704b3f5e01be91a93b411d0d6cc62275f025293b8a11ce", + "sha256:7b77e07233925bd33fc0022b8537774423e4c6680b6436316c5075e79b6384f4", + "sha256:7e5413d2e2d86025e73f05510ad23dad5950ab8417b7fc6beaad99be8077138b", + "sha256:7f3240dcfa14d198dba24b8b9cb3b108c06b68d45b7babd9eefc1038fdf7e707", + "sha256:7f9682a8f71acdf59fd554b82b1c12f517118ee72c0f3944eda461606dfe7eb9", + "sha256:8d67beb6002441faef8251c45e24994de32c4c8686f7356a1f601ad7c466f7c3", + "sha256:9441af1d25aed96901f97ad83d5c3e35e6cd21a25ca5e4916c82d7dd0490a4fa", + "sha256:98b257ae1e83f81fb947a363a274c4eb66640212516becaff7bef09a5dceacaa", + "sha256:9e9f3a3ac919406bc0414bbbd76c6af99253c507150191ea79fab42fdb35982a", + "sha256:a1c66e71ecfd2a4acf0e4bd75e7a3605afa8f9b28a3b497e4ba962719df2be57", + "sha256:a1e17d8dc8e57d8e0fd21f8f0f0a5211b3fa258b2e444c2053471ef93fe25a00", + "sha256:a20cb698c4a59c534c6701b1c24a968ff2768b18ea2991f886bd8985ce17a89f", + "sha256:a970bfaf130c29a679b1d0a6e0f867483cea455ab1535fb427566a475078f27f", + "sha256:a98f510d86f689fcb486dc59e6e363af04151e5260ad1bdddb5625c10f1e95f8", + "sha256:a9d3b728f5a5873d84cba997b9d617c6090ca5721caaa691f3b1a78c60adc057", + "sha256:ad76f44f70aac3a54ceb1813ca630c53415da3a24fd93c570b2dfb4856591017", + "sha256:ae28144c1daa61366205d32abd8c90372790ff79fc60c1a8ad7fd3c8553a600e", + "sha256:b03a8d50b137ee758e4c73638b10747b7c39988eb8e6cd11abb7084266455165", + "sha256:b5a96fcac2f18e5a0a23a75cd27ce2656c66c11c127b0318e508aab436b77428", + "sha256:b5ef909a37e9738d146519657a1aab4584018746a18f71c692f2f22168ece40c", + "sha256:b79f5ced71efd70414a9a80bbbfaa7160da307723166f09b69773153bf17c590", + "sha256:b91cceb5add79ee563bd1f70b30896bd63bc5f78a11c1f00a1e931729ca4f1f4", + "sha256:b92f5654157de1379c509b15acec9d12ecf6e3bc1996571b6cb82a4302060447", + "sha256:c04ca91dda8a61584165825907f5c967ca09e9c65fe8966ee753a3f2b019fe1e", + "sha256:c1f8afa346ccd59e4e5630d5abb67aba6a9812fddf764fd7eb11f382a345f8cc", + "sha256:c5334a71f7dc1160382d45997e29f2637c02f8a26af41073189d79b95d3321f1", + "sha256:c617d7453a80e29d9973b926983b1e700a9377dbe021faa36041c78537d7b08c", + "sha256:c632419c3870507ca20a37c8f8f5352317aca097639e524ad129f58c125c61c6", + "sha256:c6760211eee3a76316cf328f5a8bd695b47b1626d21c8a27fb3b2473a884d597", + "sha256:c698d123ce5d8f2d0cd17f73336615f6a2e3bdcedac07a1291bb4d8e7d82a05a", + "sha256:c76b32eb2ab650a29e423525e84eb197c45504b1c1e6e17b6cc91fcfeb1a4b1d", + "sha256:c8f7e90b948dc9dcfff8003f1ea3af08b29c062f681c05fd798e36daa3f7e3e8", + "sha256:c9e799dac1ffbe7b10c1fd42fe4cd51371a549c6e108249bde9cd1200e8f59b4", + "sha256:cafa48f2133d4daa028473ede7d81cd1b9f9e6925e9e4003ebdf77010ee02f35", + "sha256:ce473a2351c018b06dd8d30d5da8ab5a0831056cc53b2006e2a8028172c37ce5", + "sha256:d31ed4987d72aabdf521eddfb6a72988703c091cfc0064330b9e5f8d6a042ff5", + "sha256:d550d7e9e7d8676b183b37d65b5cd8de13676a738973d330b59dc8312df9c5dc", + "sha256:d6adb81564af0cd428910f83fa7da46ce9ad47c56c0b22b50872bc4515d91966", + "sha256:d6f6512a90bd5cd9030a6237f5346f046c6f0e40af98657568fa45695d4de59d", + "sha256:d7031d493c4465dbc8d40bd6cafefef4bd472b17db0ab94c53e7909ee781b9ef", + "sha256:d9f75a06ecc68f159d5d7603b734e1ff6daa9497a929150f794013aa9f6e3f12", + "sha256:db7707dde9143a67b8812c7e66aeb2d843fe33cc8e374170f4d2c50bd8f2472d", + "sha256:e0397dd0b3955c61ef9b22838144aa4bef6f0796ba5cc8edfc64d468b93798b4", + "sha256:e0df046f2266e8586cf09d00588302a32923eb6386ced0ca5c9deade6af9a149", + "sha256:e14f86b871ea74c3fddc9a40e947d6a5d09def5adc2076ee61fb910a9014fb35", + "sha256:e5963ea87f88bddf7edd59644a35a0feecf75f8985430124c253612d4f7d27ae", + "sha256:e768267cbe051dd8d1c5305ba690bb153204a09bf2e3de3ae530de955f5b5580", + "sha256:e9cb79ecedfc156c0692257ac7ed415243b6c35dd969baa461a6888fc79f2f07", + "sha256:ed6f011bedca8585787e5082cce081bac3d30f54520097b2411351b3574e1219", + "sha256:f3429fb8e15b20961efca8c8b21432623d85db2228cc73fe22756c6637aa39e7", + "sha256:f35eff113ad430b5272bbfc18ba111c66ff525828f24898b4e146eb479a2cdda", + "sha256:f3a6cb95074777f1ecda2ca4fa7717caa9ee6e534f42b7575a8f0d4cb0c24013", + "sha256:f7356a6da0562190558c4fcc14f0281db191cdf4cb96e7604c06acfcee96df15", + "sha256:f88626e3f5e57432e6191cd0c5d6d6b319b635e70b40be2ffba713053e5147dd", + "sha256:fad784a31869747df4ac968a351e070c06ca377549e4ace94775aaa3ab33ee06", + "sha256:fc869af5cba24d45fb0399b0cfdbcefcf6910bf4dee5d74036a57cf5264b3ff4", + "sha256:fee513135b5a58f3bb6d89e48326cd5aa308e4bcdf2f7d59f67c861ada482bf8" ], "markers": "python_version >= '3.9'", - "version": "==0.22.3" + "version": "==0.23.1" }, "six": { "hashes": [ @@ -1594,7 +1610,7 @@ "sha256:1cee9ad369867bfdbbb48b7dd50374c0967a0bb7710050facf0dd6911440e3df", "sha256:f8c5449b3cf0861679ce7e0503c7b44b5ec981bec0d1d3795a07f1ba96f0204d" ], - "markers": "python_version >= '3.10'", + "markers": "python_version >= '3.9'", "version": "==2.3.0" }, "werkzeug": { @@ -2019,7 +2035,7 @@ "sha256:1cee9ad369867bfdbbb48b7dd50374c0967a0bb7710050facf0dd6911440e3df", "sha256:f8c5449b3cf0861679ce7e0503c7b44b5ec981bec0d1d3795a07f1ba96f0204d" ], - "markers": "python_version >= '3.10'", + "markers": "python_version >= '3.9'", "version": "==2.3.0" } } diff --git a/dbrepo-search-service/init/Pipfile.lock b/dbrepo-search-service/init/Pipfile.lock index 11510c1f53..6b9154a0e8 100644 --- a/dbrepo-search-service/init/Pipfile.lock +++ b/dbrepo-search-service/init/Pipfile.lock @@ -26,90 +26,90 @@ }, "aiohttp": { "hashes": [ - "sha256:0450ada317a65383b7cce9576096150fdb97396dcfe559109b403c7242faffef", - "sha256:0b5263dcede17b6b0c41ef0c3ccce847d82a7da98709e75cf7efde3e9e3b5cae", - "sha256:0d5176f310a7fe6f65608213cc74f4228e4f4ce9fd10bcb2bb6da8fc66991462", - "sha256:0ed49efcd0dc1611378beadbd97beb5d9ca8fe48579fc04a6ed0844072261b6a", - "sha256:145a73850926018ec1681e734cedcf2716d6a8697d90da11284043b745c286d5", - "sha256:1987770fb4887560363b0e1a9b75aa303e447433c41284d3af2840a2f226d6e0", - "sha256:246067ba0cf5560cf42e775069c5d80a8989d14a7ded21af529a4e10e3e0f0e6", - "sha256:2c311e2f63e42c1bf86361d11e2c4a59f25d9e7aabdbdf53dc38b885c5435cdb", - "sha256:2cee3b117a8d13ab98b38d5b6bdcd040cfb4181068d05ce0c474ec9db5f3c5bb", - "sha256:2de1378f72def7dfb5dbd73d86c19eda0ea7b0a6873910cc37d57e80f10d64e1", - "sha256:30f546358dfa0953db92ba620101fefc81574f87b2346556b90b5f3ef16e55ce", - "sha256:34245498eeb9ae54c687a07ad7f160053911b5745e186afe2d0c0f2898a1ab8a", - "sha256:392432a2dde22b86f70dd4a0e9671a349446c93965f261dbaecfaf28813e5c42", - "sha256:3c0600bcc1adfaaac321422d615939ef300df81e165f6522ad096b73439c0f58", - "sha256:4016e383f91f2814e48ed61e6bda7d24c4d7f2402c75dd28f7e1027ae44ea204", - "sha256:40cd36749a1035c34ba8d8aaf221b91ca3d111532e5ccb5fa8c3703ab1b967ed", - "sha256:413ad794dccb19453e2b97c2375f2ca3cdf34dc50d18cc2693bd5aed7d16f4b9", - "sha256:4a93d28ed4b4b39e6f46fd240896c29b686b75e39cc6992692e3922ff6982b4c", - "sha256:4ee84c2a22a809c4f868153b178fe59e71423e1f3d6a8cd416134bb231fbf6d3", - "sha256:50c5c7b8aa5443304c55c262c5693b108c35a3b61ef961f1e782dd52a2f559c7", - "sha256:525410e0790aab036492eeea913858989c4cb070ff373ec3bc322d700bdf47c1", - "sha256:526c900397f3bbc2db9cb360ce9c35134c908961cdd0ac25b1ae6ffcaa2507ff", - "sha256:54775858c7f2f214476773ce785a19ee81d1294a6bedc5cc17225355aab74802", - "sha256:584096938a001378484aa4ee54e05dc79c7b9dd933e271c744a97b3b6f644957", - "sha256:6130459189e61baac5a88c10019b21e1f0c6d00ebc770e9ce269475650ff7f73", - "sha256:67453e603cea8e85ed566b2700efa1f6916aefbc0c9fcb2e86aaffc08ec38e78", - "sha256:68d54234c8d76d8ef74744f9f9fc6324f1508129e23da8883771cdbb5818cbef", - "sha256:6dfe7f984f28a8ae94ff3a7953cd9678550dbd2a1f9bda5dd9c5ae627744c78e", - "sha256:74bd573dde27e58c760d9ca8615c41a57e719bff315c9adb6f2a4281a28e8798", - "sha256:7603ca26d75b1b86160ce1bbe2787a0b706e592af5b2504e12caa88a217767b0", - "sha256:76719dd521c20a58a6c256d058547b3a9595d1d885b830013366e27011ffe804", - "sha256:7c3623053b85b4296cd3925eeb725e386644fd5bc67250b3bb08b0f144803e7b", - "sha256:7e44eba534381dd2687be50cbd5f2daded21575242ecfdaf86bbeecbc38dae8e", - "sha256:7fe3d65279bfbee8de0fb4f8c17fc4e893eed2dba21b2f680e930cc2b09075c5", - "sha256:8340def6737118f5429a5df4e88f440746b791f8f1c4ce4ad8a595f42c980bd5", - "sha256:84ede78acde96ca57f6cf8ccb8a13fbaf569f6011b9a52f870c662d4dc8cd854", - "sha256:850ff6155371fd802a280f8d369d4e15d69434651b844bde566ce97ee2277420", - "sha256:87a2e00bf17da098d90d4145375f1d985a81605267e7f9377ff94e55c5d769eb", - "sha256:88d385b8e7f3a870146bf5ea31786ef7463e99eb59e31db56e2315535d811f55", - "sha256:8a2fb742ef378284a50766e985804bd6adb5adb5aa781100b09befdbfa757b65", - "sha256:8dc0fba9a74b471c45ca1a3cb6e6913ebfae416678d90529d188886278e7f3f6", - "sha256:8fa1510b96c08aaad49303ab11f8803787c99222288f310a62f493faf883ede1", - "sha256:8fd12d0f989c6099e7b0f30dc6e0d1e05499f3337461f0b2b0dadea6c64b89df", - "sha256:9060addfa4ff753b09392efe41e6af06ea5dd257829199747b9f15bfad819460", - "sha256:930ffa1925393381e1e0a9b82137fa7b34c92a019b521cf9f41263976666a0d6", - "sha256:936d8a4f0f7081327014742cd51d320296b56aa6d324461a13724ab05f4b2933", - "sha256:97fe431f2ed646a3b56142fc81d238abcbaff08548d6912acb0b19a0cadc146b", - "sha256:9bd8695be2c80b665ae3f05cb584093a1e59c35ecb7d794d1edd96e8cc9201d7", - "sha256:9dec0000d2d8621d8015c293e24589d46fa218637d820894cb7356c77eca3259", - "sha256:a478aa11b328983c4444dacb947d4513cb371cd323f3845e53caeda6be5589d5", - "sha256:a481a574af914b6e84624412666cbfbe531a05667ca197804ecc19c97b8ab1b0", - "sha256:a4ac6a0f0f6402854adca4e3259a623f5c82ec3f0c049374133bcb243132baf9", - "sha256:a5e69046f83c0d3cb8f0d5bd9b8838271b1bc898e01562a04398e160953e8eb9", - "sha256:a7442662afebbf7b4c6d28cb7aab9e9ce3a5df055fc4116cc7228192ad6cb484", - "sha256:aa8a8caca81c0a3e765f19c6953416c58e2f4cc1b84829af01dd1c771bb2f91f", - "sha256:ab3247d58b393bda5b1c8f31c9edece7162fc13265334217785518dd770792b8", - "sha256:b10a47e5390c4b30a0d58ee12581003be52eedd506862ab7f97da7a66805befb", - "sha256:b34508f1cd928ce915ed09682d11307ba4b37d0708d1f28e5774c07a7674cac9", - "sha256:b8d3bb96c147b39c02d3db086899679f31958c5d81c494ef0fc9ef5bb1359b3d", - "sha256:b9d45dbb3aaec05cf01525ee1a7ac72de46a8c425cb75c003acd29f76b1ffe94", - "sha256:bf4480a5438f80e0f1539e15a7eb8b5f97a26fe087e9828e2c0ec2be119a9f72", - "sha256:c160a04283c8c6f55b5bf6d4cad59bb9c5b9c9cd08903841b25f1f7109ef1259", - "sha256:c96a43822f1f9f69cc5c3706af33239489a6294be486a0447fb71380070d4d5f", - "sha256:c9fd9dcf9c91affe71654ef77426f5cf8489305e1c66ed4816f5a21874b094b9", - "sha256:cddb31f8474695cd61fc9455c644fc1606c164b93bff2490390d90464b4655df", - "sha256:ce1bb21fc7d753b5f8a5d5a4bae99566386b15e716ebdb410154c16c91494d7f", - "sha256:d1c031a7572f62f66f1257db37ddab4cb98bfaf9b9434a3b4840bf3560f5e788", - "sha256:d589264dbba3b16e8951b6f145d1e6b883094075283dafcab4cdd564a9e353a0", - "sha256:dc065a4285307607df3f3686363e7f8bdd0d8ab35f12226362a847731516e42c", - "sha256:e10c440d142fa8b32cfdb194caf60ceeceb3e49807072e0dc3a8887ea80e8c16", - "sha256:e3552fe98e90fdf5918c04769f338a87fa4f00f3b28830ea9b78b1bdc6140e0d", - "sha256:e392804a38353900c3fd8b7cacbea5132888f7129f8e241915e90b85f00e3250", - "sha256:e4cecdb52aaa9994fbed6b81d4568427b6002f0a91c322697a4bfcc2b2363f5a", - "sha256:e5148ca8955affdfeb864aca158ecae11030e952b25b3ae15d4e2b5ba299bad2", - "sha256:e6b2732ef3bafc759f653a98881b5b9cdef0716d98f013d376ee8dfd7285abf1", - "sha256:ea756b5a7bac046d202a9a3889b9a92219f885481d78cd318db85b15cc0b7bcf", - "sha256:edb69b9589324bdc40961cdf0657815df674f1743a8d5ad9ab56a99e4833cfdd", - "sha256:f0203433121484b32646a5f5ea93ae86f3d9559d7243f07e8c0eab5ff8e3f70e", - "sha256:f6a19bcab7fbd8f8649d6595624856635159a6527861b9cdc3447af288a00c00", - "sha256:f752e80606b132140883bb262a457c475d219d7163d996dc9072434ffb0784c4", - "sha256:f7914ab70d2ee8ab91c13e5402122edbc77821c66d2758abb53aabe87f013287" + "sha256:00c8ac69e259c60976aa2edae3f13d9991cf079aaa4d3cd5a49168ae3748dee3", + "sha256:01816f07c9cc9d80f858615b1365f8319d6a5fd079cd668cc58e15aafbc76a54", + "sha256:02876bf2f69b062584965507b07bc06903c2dc93c57a554b64e012d636952654", + "sha256:0e9eb7e5764abcb49f0e2bd8f5731849b8728efbf26d0cac8e81384c95acec3f", + "sha256:0f6b2c5b4a4d22b8fb2c92ac98e0747f5f195e8e9448bfb7404cd77e7bfa243f", + "sha256:1982c98ac62c132d2b773d50e2fcc941eb0b8bad3ec078ce7e7877c4d5a2dce7", + "sha256:1e83fb1991e9d8982b3b36aea1e7ad27ea0ce18c14d054c7a404d68b0319eebb", + "sha256:25de43bb3cf83ad83efc8295af7310219af6dbe4c543c2e74988d8e9c8a2a917", + "sha256:28a772757c9067e2aee8a6b2b425d0efaa628c264d6416d283694c3d86da7689", + "sha256:2a4a13dfbb23977a51853b419141cd0a9b9573ab8d3a1455c6e63561387b52ff", + "sha256:2a8a6bc19818ac3e5596310ace5aa50d918e1ebdcc204dc96e2f4d505d51740c", + "sha256:2eabb269dc3852537d57589b36d7f7362e57d1ece308842ef44d9830d2dc3c90", + "sha256:35cda4e07f5e058a723436c4d2b7ba2124ab4e0aa49e6325aed5896507a8a42e", + "sha256:42d689a5c0a0c357018993e471893e939f555e302313d5c61dfc566c2cad6185", + "sha256:4586a68730bd2f2b04a83e83f79d271d8ed13763f64b75920f18a3a677b9a7f0", + "sha256:47dc018b1b220c48089b5b9382fbab94db35bef2fa192995be22cbad3c5730c8", + "sha256:507ab05d90586dacb4f26a001c3abf912eb719d05635cbfad930bdbeb469b36c", + "sha256:5194143927e494616e335d074e77a5dac7cd353a04755330c9adc984ac5a628e", + "sha256:51c3ff9c7a25f3cad5c09d9aacbc5aefb9267167c4652c1eb737989b554fe278", + "sha256:55789e93c5ed71832e7fac868167276beadf9877b85697020c46e9a75471f55f", + "sha256:5724cc77f4e648362ebbb49bdecb9e2b86d9b172c68a295263fa072e679ee69d", + "sha256:5ad8f1c19fe277eeb8bc45741c6d60ddd11d705c12a4d8ee17546acff98e0802", + "sha256:5ceb81a4db2decdfa087381b5fc5847aa448244f973e5da232610304e199e7b2", + "sha256:64815c6f02e8506b10113ddbc6b196f58dbef135751cc7c32136df27b736db09", + "sha256:66047eacbc73e6fe2462b77ce39fc170ab51235caf331e735eae91c95e6a11e4", + "sha256:669dd33f028e54fe4c96576f406ebb242ba534dd3a981ce009961bf49960f117", + "sha256:684eea71ab6e8ade86b9021bb62af4bf0881f6be4e926b6b5455de74e420783a", + "sha256:6b35aab22419ba45f8fc290d0010898de7a6ad131e468ffa3922b1b0b24e9d2e", + "sha256:7104d5b3943c6351d1ad7027d90bdd0ea002903e9f610735ac99df3b81f102ee", + "sha256:718d5deb678bc4b9d575bfe83a59270861417da071ab44542d0fcb6faa686636", + "sha256:747ec46290107a490d21fe1ff4183bef8022b848cf9516970cb31de6d9460088", + "sha256:7836587eef675a17d835ec3d98a8c9acdbeb2c1d72b0556f0edf4e855a25e9c1", + "sha256:78e4dd9c34ec7b8b121854eb5342bac8b02aa03075ae8618b6210a06bbb8a115", + "sha256:7b77ee42addbb1c36d35aca55e8cc6d0958f8419e458bb70888d8c69a4ca833d", + "sha256:7c1b20a1ace54af7db1f95af85da530fe97407d9063b7aaf9ce6a32f44730778", + "sha256:7f27eec42f6c3c1df09cfc1f6786308f8b525b8efaaf6d6bd76c1f52c6511f6a", + "sha256:82c249f2bfa5ecbe4a1a7902c81c0fba52ed9ebd0176ab3047395d02ad96cfcb", + "sha256:85fa0b18558eb1427090912bd456a01f71edab0872f4e0f9e4285571941e4090", + "sha256:89ce611b1eac93ce2ade68f1470889e0173d606de20c85a012bfa24be96cf867", + "sha256:8ce789231404ca8fff7f693cdce398abf6d90fd5dae2b1847477196c243b1fbb", + "sha256:90d571c98d19a8b6e793b34aa4df4cee1e8fe2862d65cc49185a3a3d0a1a3996", + "sha256:9229d8613bd8401182868fe95688f7581673e1c18ff78855671a4b8284f47bcb", + "sha256:93a1f7d857c4fcf7cabb1178058182c789b30d85de379e04f64c15b7e88d66fb", + "sha256:967b93f21b426f23ca37329230d5bd122f25516ae2f24a9cea95a30023ff8283", + "sha256:9840be675de208d1f68f84d578eaa4d1a36eee70b16ae31ab933520c49ba1325", + "sha256:9862d077b9ffa015dbe3ce6c081bdf35135948cb89116e26667dd183550833d1", + "sha256:9b5b37c863ad5b0892cc7a4ceb1e435e5e6acd3f2f8d3e11fa56f08d3c67b820", + "sha256:9e64ca2dbea28807f8484c13f684a2f761e69ba2640ec49dacd342763cc265ef", + "sha256:9fe4eb0e7f50cdb99b26250d9328faef30b1175a5dbcfd6d0578d18456bac567", + "sha256:a01fe9f1e05025eacdd97590895e2737b9f851d0eb2e017ae9574d9a4f0b6252", + "sha256:a08ad95fcbd595803e0c4280671d808eb170a64ca3f2980dd38e7a72ed8d1fea", + "sha256:a4fe27dbbeec445e6e1291e61d61eb212ee9fed6e47998b27de71d70d3e8777d", + "sha256:a7d474c5c1f0b9405c1565fafdc4429fa7d986ccbec7ce55bc6a330f36409cad", + "sha256:a86dc177eb4c286c19d1823ac296299f59ed8106c9536d2b559f65836e0fb2c6", + "sha256:aa36c35e94ecdb478246dd60db12aba57cfcd0abcad43c927a8876f25734d496", + "sha256:ab915a57c65f7a29353c8014ac4be685c8e4a19e792a79fe133a8e101111438e", + "sha256:af55314407714fe77a68a9ccaab90fdb5deb57342585fd4a3a8102b6d4370080", + "sha256:afcb6b275c2d2ba5d8418bf30a9654fa978b4f819c2e8db6311b3525c86fe637", + "sha256:b27961d65639128336b7a7c3f0046dcc62a9443d5ef962e3c84170ac620cec47", + "sha256:b5b95787335c483cd5f29577f42bbe027a412c5431f2f80a749c80d040f7ca9f", + "sha256:b73a2b139782a07658fbf170fe4bcdf70fc597fae5ffe75e5b67674c27434a9f", + "sha256:b88aca5adbf4625e11118df45acac29616b425833c3be7a05ef63a6a4017bfdb", + "sha256:b992778d95b60a21c4d8d4a5f15aaab2bd3c3e16466a72d7f9bfd86e8cea0d4b", + "sha256:ba40b7ae0f81c7029583a338853f6607b6d83a341a3dcde8bed1ea58a3af1df9", + "sha256:baae005092e3f200de02699314ac8933ec20abf998ec0be39448f6605bce93df", + "sha256:c4bea08a6aad9195ac9b1be6b0c7e8a702a9cec57ce6b713698b4a5afa9c2e33", + "sha256:c6070bcf2173a7146bb9e4735b3c62b2accba459a6eae44deea0eb23e0035a23", + "sha256:c929f9a7249a11e4aa5c157091cfad7f49cc6b13f4eecf9b747104befd9f56f2", + "sha256:c97be90d70f7db3aa041d720bfb95f4869d6063fcdf2bb8333764d97e319b7d0", + "sha256:ce10ddfbe26ed5856d6902162f71b8fe08545380570a885b4ab56aecfdcb07f4", + "sha256:cf1f31f83d16ec344136359001c5e871915c6ab685a3d8dee38e2961b4c81730", + "sha256:d2b25b2eeb35707113b2d570cadc7c612a57f1c5d3e7bb2b13870fe284e08fc0", + "sha256:d33851d85537bbf0f6291ddc97926a754c8f041af759e0aa0230fe939168852b", + "sha256:e06cf4852ce8c4442a59bae5a3ea01162b8fcb49ab438d8548b8dc79375dad8a", + "sha256:e271beb2b1dabec5cd84eb488bdabf9758d22ad13471e9c356be07ad139b3012", + "sha256:f55d0f242c2d1fcdf802c8fabcff25a9d85550a4cf3a9cf5f2a6b5742c992839", + "sha256:f81cba651db8795f688c589dd11a4fbb834f2e59bbf9bb50908be36e416dc760", + "sha256:fa1fb1b61881c8405829c50e9cc5c875bfdbf685edf57a76817dfb50643e4a1a", + "sha256:fa48dac27f41b36735c807d1ab093a8386701bbf00eb6b89a0f69d9fa26b3671", + "sha256:fbfef0666ae9e07abfa2c54c212ac18a1f63e13e0760a769f70b5717742f3ece", + "sha256:fe7065e2215e4bba63dc00db9ae654c1ba3950a5fff691475a32f511142fcddb" ], "markers": "python_version >= '3.9'", - "version": "==3.11.12" + "version": "==3.11.13" }, "aiosignal": { "hashes": [ @@ -259,7 +259,7 @@ }, "dbrepo": { "hashes": [ - "sha256:779e7ee84ae91131e16100fee7143013b4c231dcd3990d418d024ff76af271e9" + "sha256:871d6852e3e318700314bfa5e0d4bd77612002323b32c278116118bf77e8480b" ], "path": "./lib/dbrepo-1.7.0.tar.gz" }, @@ -639,7 +639,7 @@ "sha256:f4ca91d61a4bf61b0f2228f24bbfa6a9facd5f8af03759fe2a655c50ae2c6610", "sha256:f6b3dfc7661f8842babd8ea07e9897fe3d9b69a1d7e5fbb743e4160f9387833b" ], - "markers": "python_version == '3.11'", + "markers": "python_version >= '3.10'", "version": "==2.2.3" }, "opensearch-py": { @@ -725,91 +725,107 @@ }, "propcache": { "hashes": [ - "sha256:03ff9d3f665769b2a85e6157ac8b439644f2d7fd17615a82fa55739bc97863f4", - "sha256:049324ee97bb67285b49632132db351b41e77833678432be52bdd0289c0e05e4", - "sha256:081a430aa8d5e8876c6909b67bd2d937bfd531b0382d3fdedb82612c618bc41a", - "sha256:0f022d381747f0dfe27e99d928e31bc51a18b65bb9e481ae0af1380a6725dd1f", - "sha256:12d1083f001ace206fe34b6bdc2cb94be66d57a850866f0b908972f90996b3e9", - "sha256:14d86fe14b7e04fa306e0c43cdbeebe6b2c2156a0c9ce56b815faacc193e320d", - "sha256:160291c60081f23ee43d44b08a7e5fb76681221a8e10b3139618c5a9a291b84e", - "sha256:1672137af7c46662a1c2be1e8dc78cb6d224319aaa40271c9257d886be4363a6", - "sha256:19a0f89a7bb9d8048d9c4370c9c543c396e894c76be5525f5e1ad287f1750ddf", - "sha256:1ac2f5fe02fa75f56e1ad473f1175e11f475606ec9bd0be2e78e4734ad575034", - "sha256:1cd9a1d071158de1cc1c71a26014dcdfa7dd3d5f4f88c298c7f90ad6f27bb46d", - "sha256:1ffc3cca89bb438fb9c95c13fc874012f7b9466b89328c3c8b1aa93cdcfadd16", - "sha256:297878dc9d0a334358f9b608b56d02e72899f3b8499fc6044133f0d319e2ec30", - "sha256:2d3af2e79991102678f53e0dbf4c35de99b6b8b58f29a27ca0325816364caaba", - "sha256:30b43e74f1359353341a7adb783c8f1b1c676367b011709f466f42fda2045e95", - "sha256:3156628250f46a0895f1f36e1d4fbe062a1af8718ec3ebeb746f1d23f0c5dc4d", - "sha256:31f5af773530fd3c658b32b6bdc2d0838543de70eb9a2156c03e410f7b0d3aae", - "sha256:3935bfa5fede35fb202c4b569bb9c042f337ca4ff7bd540a0aa5e37131659348", - "sha256:39d51fbe4285d5db5d92a929e3e21536ea3dd43732c5b177c7ef03f918dff9f2", - "sha256:3f77ce728b19cb537714499928fe800c3dda29e8d9428778fc7c186da4c09a64", - "sha256:4160d9283bd382fa6c0c2b5e017acc95bc183570cd70968b9202ad6d8fc48dce", - "sha256:4a571d97dbe66ef38e472703067021b1467025ec85707d57e78711c085984e54", - "sha256:4e6281aedfca15301c41f74d7005e6e3f4ca143584ba696ac69df4f02f40d629", - "sha256:52277518d6aae65536e9cea52d4e7fd2f7a66f4aa2d30ed3f2fcea620ace3c54", - "sha256:556fc6c10989f19a179e4321e5d678db8eb2924131e64652a51fe83e4c3db0e1", - "sha256:574faa3b79e8ebac7cb1d7930f51184ba1ccf69adfdec53a12f319a06030a68b", - "sha256:58791550b27d5488b1bb52bc96328456095d96206a250d28d874fafe11b3dfaf", - "sha256:5b750a8e5a1262434fb1517ddf64b5de58327f1adc3524a5e44c2ca43305eb0b", - "sha256:5d97151bc92d2b2578ff7ce779cdb9174337390a535953cbb9452fb65164c587", - "sha256:5eee736daafa7af6d0a2dc15cc75e05c64f37fc37bafef2e00d77c14171c2097", - "sha256:6445804cf4ec763dc70de65a3b0d9954e868609e83850a47ca4f0cb64bd79fea", - "sha256:647894f5ae99c4cf6bb82a1bb3a796f6e06af3caa3d32e26d2350d0e3e3faf24", - "sha256:66d4cfda1d8ed687daa4bc0274fcfd5267873db9a5bc0418c2da19273040eeb7", - "sha256:6a9a8c34fb7bb609419a211e59da8887eeca40d300b5ea8e56af98f6fbbb1541", - "sha256:6b3f39a85d671436ee3d12c017f8fdea38509e4f25b28eb25877293c98c243f6", - "sha256:6b6fb63ae352e13748289f04f37868099e69dba4c2b3e271c46061e82c745634", - "sha256:70693319e0b8fd35dd863e3e29513875eb15c51945bf32519ef52927ca883bc3", - "sha256:781e65134efaf88feb447e8c97a51772aa75e48b794352f94cb7ea717dedda0d", - "sha256:819ce3b883b7576ca28da3861c7e1a88afd08cc8c96908e08a3f4dd64a228034", - "sha256:857112b22acd417c40fa4595db2fe28ab900c8c5fe4670c7989b1c0230955465", - "sha256:887d9b0a65404929641a9fabb6452b07fe4572b269d901d622d8a34a4e9043b2", - "sha256:8b3489ff1ed1e8315674d0775dc7d2195fb13ca17b3808721b54dbe9fd020faf", - "sha256:92fc4500fcb33899b05ba73276dfb684a20d31caa567b7cb5252d48f896a91b1", - "sha256:9403db39be1393618dd80c746cb22ccda168efce239c73af13c3763ef56ffc04", - "sha256:98110aa363f1bb4c073e8dcfaefd3a5cea0f0834c2aab23dda657e4dab2f53b5", - "sha256:999779addc413181912e984b942fbcc951be1f5b3663cd80b2687758f434c583", - "sha256:9caac6b54914bdf41bcc91e7eb9147d331d29235a7c967c150ef5df6464fd1bb", - "sha256:a7a078f5d37bee6690959c813977da5291b24286e7b962e62a94cec31aa5188b", - "sha256:a7e65eb5c003a303b94aa2c3852ef130230ec79e349632d030e9571b87c4698c", - "sha256:a96dc1fa45bd8c407a0af03b2d5218392729e1822b0c32e62c5bf7eeb5fb3958", - "sha256:aca405706e0b0a44cc6bfd41fbe89919a6a56999157f6de7e182a990c36e37bc", - "sha256:accb6150ce61c9c4b7738d45550806aa2b71c7668c6942f17b0ac182b6142fd4", - "sha256:ad1af54a62ffe39cf34db1aa6ed1a1873bd548f6401db39d8e7cd060b9211f82", - "sha256:ae1aa1cd222c6d205853b3013c69cd04515f9d6ab6de4b0603e2e1c33221303e", - "sha256:b2d0a12018b04f4cb820781ec0dffb5f7c7c1d2a5cd22bff7fb055a2cb19ebce", - "sha256:b480c6a4e1138e1aa137c0079b9b6305ec6dcc1098a8ca5196283e8a49df95a9", - "sha256:b74c261802d3d2b85c9df2dfb2fa81b6f90deeef63c2db9f0e029a3cac50b518", - "sha256:ba278acf14471d36316159c94a802933d10b6a1e117b8554fe0d0d9b75c9d536", - "sha256:bb6178c241278d5fe853b3de743087be7f5f4c6f7d6d22a3b524d323eecec505", - "sha256:bf72af5e0fb40e9babf594308911436c8efde3cb5e75b6f206c34ad18be5c052", - "sha256:bfd3223c15bebe26518d58ccf9a39b93948d3dcb3e57a20480dfdd315356baff", - "sha256:c214999039d4f2a5b2073ac506bba279945233da8c786e490d411dfc30f855c1", - "sha256:c2f992c07c0fca81655066705beae35fc95a2fa7366467366db627d9f2ee097f", - "sha256:cba4cfa1052819d16699e1d55d18c92b6e094d4517c41dd231a8b9f87b6fa681", - "sha256:cea7daf9fc7ae6687cf1e2c049752f19f146fdc37c2cc376e7d0032cf4f25347", - "sha256:cf6c4150f8c0e32d241436526f3c3f9cbd34429492abddbada2ffcff506c51af", - "sha256:d09c333d36c1409d56a9d29b3a1b800a42c76a57a5a8907eacdbce3f18768246", - "sha256:d27b84d5880f6d8aa9ae3edb253c59d9f6642ffbb2c889b78b60361eed449787", - "sha256:d2ccec9ac47cf4e04897619c0e0c1a48c54a71bdf045117d3a26f80d38ab1fb0", - "sha256:d71264a80f3fcf512eb4f18f59423fe82d6e346ee97b90625f283df56aee103f", - "sha256:d93f3307ad32a27bda2e88ec81134b823c240aa3abb55821a8da553eed8d9439", - "sha256:d9631c5e8b5b3a0fda99cb0d29c18133bca1e18aea9effe55adb3da1adef80d3", - "sha256:ddfab44e4489bd79bda09d84c430677fc7f0a4939a73d2bba3073036f487a0a6", - "sha256:e7048abd75fe40712005bcfc06bb44b9dfcd8e101dda2ecf2f5aa46115ad07ca", - "sha256:e73091191e4280403bde6c9a52a6999d69cdfde498f1fdf629105247599b57ec", - "sha256:e800776a79a5aabdb17dcc2346a7d66d0777e942e4cd251defeb084762ecd17d", - "sha256:edc9fc7051e3350643ad929df55c451899bb9ae6d24998a949d2e4c87fb596d3", - "sha256:f089118d584e859c62b3da0892b88a83d611c2033ac410e929cb6754eec0ed16", - "sha256:f174bbd484294ed9fdf09437f889f95807e5f229d5d93588d34e92106fbf6717", - "sha256:f508b0491767bb1f2b87fdfacaba5f7eddc2f867740ec69ece6d1946d29029a6", - "sha256:f7a31fc1e1bd362874863fdeed71aed92d348f5336fd84f2197ba40c59f061bd", - "sha256:f9479aa06a793c5aeba49ce5c5692ffb51fcd9a7016e017d555d5e2b0045d212" + "sha256:02df07041e0820cacc8f739510078f2aadcfd3fc57eaeeb16d5ded85c872c89e", + "sha256:03acd9ff19021bd0567582ac88f821b66883e158274183b9e5586f678984f8fe", + "sha256:03c091bb752349402f23ee43bb2bff6bd80ccab7c9df6b88ad4322258d6960fc", + "sha256:07700939b2cbd67bfb3b76a12e1412405d71019df00ca5697ce75e5ef789d829", + "sha256:0c3e893c4464ebd751b44ae76c12c5f5c1e4f6cbd6fbf67e3783cd93ad221863", + "sha256:119e244ab40f70a98c91906d4c1f4c5f2e68bd0b14e7ab0a06922038fae8a20f", + "sha256:11ae6a8a01b8a4dc79093b5d3ca2c8a4436f5ee251a9840d7790dccbd96cb649", + "sha256:15010f29fbed80e711db272909a074dc79858c6d28e2915704cfc487a8ac89c6", + "sha256:19d36bb351ad5554ff20f2ae75f88ce205b0748c38b146c75628577020351e3c", + "sha256:1c8f7d896a16da9455f882870a507567d4f58c53504dc2d4b1e1d386dfe4588a", + "sha256:2383a17385d9800b6eb5855c2f05ee550f803878f344f58b6e194de08b96352c", + "sha256:24c04f8fbf60094c531667b8207acbae54146661657a1b1be6d3ca7773b7a545", + "sha256:2578541776769b500bada3f8a4eeaf944530516b6e90c089aa368266ed70c49e", + "sha256:26a67e5c04e3119594d8cfae517f4b9330c395df07ea65eab16f3d559b7068fe", + "sha256:2b975528998de037dfbc10144b8aed9b8dd5a99ec547f14d1cb7c5665a43f075", + "sha256:2d15bc27163cd4df433e75f546b9ac31c1ba7b0b128bfb1b90df19082466ff57", + "sha256:2d913d36bdaf368637b4f88d554fb9cb9d53d6920b9c5563846555938d5450bf", + "sha256:3302c5287e504d23bb0e64d2a921d1eb4a03fb93a0a0aa3b53de059f5a5d737d", + "sha256:36ca5e9a21822cc1746023e88f5c0af6fce3af3b85d4520efb1ce4221bed75cc", + "sha256:3b812b3cb6caacd072276ac0492d249f210006c57726b6484a1e1805b3cfeea0", + "sha256:3c6ec957025bf32b15cbc6b67afe233c65b30005e4c55fe5768e4bb518d712f1", + "sha256:41de3da5458edd5678b0f6ff66691507f9885f5fe6a0fb99a5d10d10c0fd2d64", + "sha256:42924dc0c9d73e49908e35bbdec87adedd651ea24c53c29cac103ede0ea1d340", + "sha256:4544699674faf66fb6b4473a1518ae4999c1b614f0b8297b1cef96bac25381db", + "sha256:46ed02532cb66612d42ae5c3929b5e98ae330ea0f3900bc66ec5f4862069519b", + "sha256:49ea05212a529c2caffe411e25a59308b07d6e10bf2505d77da72891f9a05641", + "sha256:4fa0e7c9c3cf7c276d4f6ab9af8adddc127d04e0fcabede315904d2ff76db626", + "sha256:507c5357a8d8b4593b97fb669c50598f4e6cccbbf77e22fa9598aba78292b4d7", + "sha256:549722908de62aa0b47a78b90531c022fa6e139f9166be634f667ff45632cc92", + "sha256:58e6d2a5a7cb3e5f166fd58e71e9a4ff504be9dc61b88167e75f835da5764d07", + "sha256:5a16167118677d94bb48bfcd91e420088854eb0737b76ec374b91498fb77a70e", + "sha256:5d62c4f6706bff5d8a52fd51fec6069bef69e7202ed481486c0bc3874912c787", + "sha256:5fa159dcee5dba00c1def3231c249cf261185189205073bde13797e57dd7540a", + "sha256:6032231d4a5abd67c7f71168fd64a47b6b451fbcb91c8397c2f7610e67683810", + "sha256:63f26258a163c34542c24808f03d734b338da66ba91f410a703e505c8485791d", + "sha256:65a37714b8ad9aba5780325228598a5b16c47ba0f8aeb3dc0514701e4413d7c0", + "sha256:67054e47c01b7b349b94ed0840ccae075449503cf1fdd0a1fdd98ab5ddc2667b", + "sha256:67dda3c7325691c2081510e92c561f465ba61b975f481735aefdfc845d2cd043", + "sha256:6985a593417cdbc94c7f9c3403747335e450c1599da1647a5af76539672464d3", + "sha256:6a1948df1bb1d56b5e7b0553c0fa04fd0e320997ae99689488201f19fa90d2e7", + "sha256:6b5b7fd6ee7b54e01759f2044f936dcf7dea6e7585f35490f7ca0420fe723c0d", + "sha256:6c929916cbdb540d3407c66f19f73387f43e7c12fa318a66f64ac99da601bcdf", + "sha256:6f4d7a7c0aff92e8354cceca6fe223973ddf08401047920df0fcb24be2bd5138", + "sha256:728af36011bb5d344c4fe4af79cfe186729efb649d2f8b395d1572fb088a996c", + "sha256:742840d1d0438eb7ea4280f3347598f507a199a35a08294afdcc560c3739989d", + "sha256:75e872573220d1ee2305b35c9813626e620768248425f58798413e9c39741f46", + "sha256:794c3dd744fad478b6232289c866c25406ecdfc47e294618bdf1697e69bd64a6", + "sha256:7c0fdbdf6983526e269e5a8d53b7ae3622dd6998468821d660d0daf72779aefa", + "sha256:7c5f5290799a3f6539cc5e6f474c3e5c5fbeba74a5e1e5be75587746a940d51e", + "sha256:7c6e7e4f9167fddc438cd653d826f2222222564daed4116a02a184b464d3ef05", + "sha256:7cedd25e5f678f7738da38037435b340694ab34d424938041aa630d8bac42663", + "sha256:7e2e068a83552ddf7a39a99488bcba05ac13454fb205c847674da0352602082f", + "sha256:8319293e85feadbbfe2150a5659dbc2ebc4afdeaf7d98936fb9a2f2ba0d4c35c", + "sha256:8526b0941ec5a40220fc4dfde76aed58808e2b309c03e9fa8e2260083ef7157f", + "sha256:8884ba1a0fe7210b775106b25850f5e5a9dc3c840d1ae9924ee6ea2eb3acbfe7", + "sha256:8cb625bcb5add899cb8ba7bf716ec1d3e8f7cdea9b0713fa99eadf73b6d4986f", + "sha256:8d663fd71491dde7dfdfc899d13a067a94198e90695b4321084c6e450743b8c7", + "sha256:8ee1983728964d6070ab443399c476de93d5d741f71e8f6e7880a065f878e0b9", + "sha256:997e7b8f173a391987df40f3b52c423e5850be6f6df0dcfb5376365440b56667", + "sha256:9be90eebc9842a93ef8335291f57b3b7488ac24f70df96a6034a13cb58e6ff86", + "sha256:9ddd49258610499aab83b4f5b61b32e11fce873586282a0e972e5ab3bcadee51", + "sha256:9ecde3671e62eeb99e977f5221abcf40c208f69b5eb986b061ccec317c82ebd0", + "sha256:9ff4e9ecb6e4b363430edf2c6e50173a63e0820e549918adef70515f87ced19a", + "sha256:a254537b9b696ede293bfdbc0a65200e8e4507bc9f37831e2a0318a9b333c85c", + "sha256:a2b9bf8c79b660d0ca1ad95e587818c30ccdb11f787657458d6f26a1ea18c568", + "sha256:a61a68d630e812b67b5bf097ab84e2cd79b48c792857dc10ba8a223f5b06a2af", + "sha256:a7080b0159ce05f179cfac592cda1a82898ca9cd097dacf8ea20ae33474fbb25", + "sha256:a8fd93de4e1d278046345f49e2238cdb298589325849b2645d4a94c53faeffc5", + "sha256:a94ffc66738da99232ddffcf7910e0f69e2bbe3a0802e54426dbf0714e1c2ffe", + "sha256:aa806bbc13eac1ab6291ed21ecd2dd426063ca5417dd507e6be58de20e58dfcf", + "sha256:b0c1a133d42c6fc1f5fbcf5c91331657a1ff822e87989bf4a6e2e39b818d0ee9", + "sha256:b58229a844931bca61b3a20efd2be2a2acb4ad1622fc026504309a6883686fbf", + "sha256:bb2f144c6d98bb5cbc94adeb0447cfd4c0f991341baa68eee3f3b0c9c0e83767", + "sha256:be90c94570840939fecedf99fa72839aed70b0ced449b415c85e01ae67422c90", + "sha256:bf0d9a171908f32d54f651648c7290397b8792f4303821c42a74e7805bfb813c", + "sha256:bf15fc0b45914d9d1b706f7c9c4f66f2b7b053e9517e40123e137e8ca8958b3d", + "sha256:bf4298f366ca7e1ad1d21bbb58300a6985015909964077afd37559084590c929", + "sha256:c441c841e82c5ba7a85ad25986014be8d7849c3cfbdb6004541873505929a74e", + "sha256:cacea77ef7a2195f04f9279297684955e3d1ae4241092ff0cfcef532bb7a1c32", + "sha256:cd54895e4ae7d32f1e3dd91261df46ee7483a735017dc6f987904f194aa5fd14", + "sha256:d1323cd04d6e92150bcc79d0174ce347ed4b349d748b9358fd2e497b121e03c8", + "sha256:d383bf5e045d7f9d239b38e6acadd7b7fdf6c0087259a84ae3475d18e9a2ae8b", + "sha256:d3e7420211f5a65a54675fd860ea04173cde60a7cc20ccfbafcccd155225f8bc", + "sha256:d8074c5dd61c8a3e915fa8fc04754fa55cfa5978200d2daa1e2d4294c1f136aa", + "sha256:df03cd88f95b1b99052b52b1bb92173229d7a674df0ab06d2b25765ee8404bce", + "sha256:e45377d5d6fefe1677da2a2c07b024a6dac782088e37c0b1efea4cfe2b1be19b", + "sha256:e53d19c2bf7d0d1e6998a7e693c7e87300dd971808e6618964621ccd0e01fe4e", + "sha256:e560fd75aaf3e5693b91bcaddd8b314f4d57e99aef8a6c6dc692f935cc1e6bbf", + "sha256:ec5060592d83454e8063e487696ac3783cc48c9a329498bafae0d972bc7816c9", + "sha256:ecc2920630283e0783c22e2ac94427f8cca29a04cfdf331467d4f661f4072dac", + "sha256:ed7161bccab7696a473fe7ddb619c1d75963732b37da4618ba12e60899fefe4f", + "sha256:ee0bd3a7b2e184e88d25c9baa6a9dc609ba25b76daae942edfb14499ac7ec374", + "sha256:ee25f1ac091def37c4b59d192bbe3a206298feeb89132a470325bf76ad122a1e", + "sha256:efa44f64c37cc30c9f05932c740a8b40ce359f51882c70883cc95feac842da4d", + "sha256:f47d52fd9b2ac418c4890aad2f6d21a6b96183c98021f0a48497a904199f006e", + "sha256:f857034dc68d5ceb30fb60afb6ff2103087aea10a01b613985610e007053a121", + "sha256:fb91d20fa2d3b13deea98a690534697742029f4fb83673a3501ae6e3746508b5", + "sha256:fddb8870bdb83456a489ab67c6b3040a8d5a55069aa6f72f9d872235fbc52f54" ], "markers": "python_version >= '3.9'", - "version": "==0.2.1" + "version": "==0.3.0" }, "pydantic": { "hashes": [ @@ -1043,7 +1059,7 @@ "sha256:1cee9ad369867bfdbbb48b7dd50374c0967a0bb7710050facf0dd6911440e3df", "sha256:f8c5449b3cf0861679ce7e0503c7b44b5ec981bec0d1d3795a07f1ba96f0204d" ], - "markers": "python_version >= '3.10'", + "markers": "python_version >= '3.9'", "version": "==2.3.0" }, "werkzeug": { @@ -1307,7 +1323,7 @@ "sha256:f7f5baafcc48261359e14bcd6d9bff6d4b28d9103847c9e136694cb0501aef87", "sha256:fc48c783f9c87e60831201f2cce7f3b2e4846bf4d8728eabe54d60700b318a0b" ], - "markers": "platform_python_implementation != 'PyPy'", + "markers": "python_version >= '3.8'", "version": "==1.17.1" }, "charset-normalizer": { @@ -1594,7 +1610,7 @@ "sha256:1cee9ad369867bfdbbb48b7dd50374c0967a0bb7710050facf0dd6911440e3df", "sha256:f8c5449b3cf0861679ce7e0503c7b44b5ec981bec0d1d3795a07f1ba96f0204d" ], - "markers": "python_version >= '3.10'", + "markers": "python_version >= '3.9'", "version": "==2.3.0" } } diff --git a/dbrepo-search-service/init/lib/dbrepo-1.7.0-py3-none-any.whl b/dbrepo-search-service/init/lib/dbrepo-1.7.0-py3-none-any.whl index f75ec9ba7a7a4ad6c2897e38abdae20c815f56c7..8e9b35e6126deb26a784b5d5088d0d12caeffb79 100644 GIT binary patch delta 17017 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 NEL$SR##RK9008L-MS=hT delta 16542 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 H1t3`fMlFb; diff --git a/dbrepo-search-service/init/lib/dbrepo-1.7.0.tar.gz b/dbrepo-search-service/init/lib/dbrepo-1.7.0.tar.gz index be1dcfe68165001dbeacd670709955723a01e323..2e0bc94f24d9f5626150f4de9de97c577683fbfa 100644 GIT binary patch literal 44413 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 literal 42858 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 diff --git a/dbrepo-search-service/lib/dbrepo-1.7.0-py3-none-any.whl b/dbrepo-search-service/lib/dbrepo-1.7.0-py3-none-any.whl index f75ec9ba7a7a4ad6c2897e38abdae20c815f56c7..8e9b35e6126deb26a784b5d5088d0d12caeffb79 100644 GIT binary patch delta 17017 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 NEL$SR##RK9008L-MS=hT delta 16542 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 H1t3`fMlFb; diff --git a/dbrepo-search-service/lib/dbrepo-1.7.0.tar.gz b/dbrepo-search-service/lib/dbrepo-1.7.0.tar.gz index be1dcfe68165001dbeacd670709955723a01e323..2e0bc94f24d9f5626150f4de9de97c577683fbfa 100644 GIT binary patch literal 44413 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 literal 42858 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 diff --git a/dbrepo-ui/components/table/BlobUpload.vue b/dbrepo-ui/components/table/BlobUpload.vue index 4973c6b76e..8ec851d9bf 100644 --- a/dbrepo-ui/components/table/BlobUpload.vue +++ b/dbrepo-ui/components/table/BlobUpload.vue @@ -24,8 +24,6 @@ export default { filename: null } }, - computed: { - }, methods: { upload () { if (!this.file || this.file.length === 0) { @@ -34,11 +32,10 @@ export default { console.debug('upload file', this.file) const uploadService = useUploadService() uploadService.create(this.file) - .then((filename) => { - console.debug('uploaded file', filename) - this.filename = filename - this.value = filename - this.$emit('blob', { column: this.column, s3key: filename }) + .then(({s3_key}) => { + this.filename = s3_key + this.value = s3_key + this.$emit('blob', { column: this.column, s3key: s3_key }) }) .catch((error) => { console.error('Failed to upload dataset', error) diff --git a/dbrepo-ui/components/table/TableImport.vue b/dbrepo-ui/components/table/TableImport.vue index 319fe3b37c..6bcd1c843a 100644 --- a/dbrepo-ui/components/table/TableImport.vue +++ b/dbrepo-ui/components/table/TableImport.vue @@ -472,11 +472,11 @@ export default { const uploadService = useUploadService() return new Promise((resolve, reject) => { return uploadService.create(this.file) - .then((s3key) => { + .then(({s3_key}) => { const toast = useToastInstance() toast.success(this.$t('success.upload.dataset')) this.loading = false - resolve(s3key) + resolve(s3_key) }) .catch((error) => { console.error('Failed to upload dataset', error) diff --git a/dbrepo-ui/composables/upload-service.ts b/dbrepo-ui/composables/upload-service.ts index ee0bdd5dc0..689f9dcdbc 100644 --- a/dbrepo-ui/composables/upload-service.ts +++ b/dbrepo-ui/composables/upload-service.ts @@ -1,64 +1,26 @@ -import * as tus from 'tus-js-client' -import {useCacheStore} from '@/stores/cache' +import {axiosErrorToApiError} from '@/utils' export const useUploadService = (): any => { - function create (data: File) { - const config = useRuntimeConfig() - const endpoint = config.public.upload.client - return new Promise<string>((resolve, reject) => { - if (!tus.isSupported) { - console.error('Your browser does not support uploads!') - return - } - const { loggedIn, user, login, logout } = useOidcAuth() - if (!loggedIn || !user.value?.accessToken) { - console.error('Please login to use the upload!') - return - } - const { accessToken } = user.value - const uploadClient: tus.Upload = new tus.Upload(data, { - endpoint, + const axios = useAxiosInstance(); + console.debug('upload file'); + return new Promise<UploadResponseDto>((resolve, reject) => { + const form = new FormData(); + form.append('file', data); + axios.post<UploadResponseDto>('/api/upload', form, { headers: { - 'Authorization': `Bearer ${accessToken}` - }, - retryDelays: [0, 3000, 5000, 10000, 20000], - onError (error) { - console.error('Failed to upload:', error) - reject(error) - }, - onProgress (bytesUploaded, bytesTotal) { - const percentage = ((bytesUploaded / bytesTotal) * 100).toFixed(2) - console.debug(bytesUploaded, bytesTotal, percentage + '%') - const cacheStore = useCacheStore() - cacheStore.setUploadProgress(percentage) - }, - onSuccess () { - if (uploadClient.file) { - const file: File = uploadClient.file as File - console.info('Download %s from %s', file.name, uploadClient.url) - } - if (uploadClient.url) { - const matches = uploadClient.url.match(/files\/([a-z0-9]+)/gi) - if (!matches || matches.length !== 1) { - console.error('Failed to match file name', matches) - reject(new Error('Failed to match file name')) - } else { - const filename = matches[0].replace('files/', '') - console.debug('Filename cropped as', filename) - resolve(filename) - } - } - } - }) - uploadClient.findPreviousUploads().then(function (previousUploads) { - /* Found previous uploads so we select the first one */ - if (previousUploads.length) { - uploadClient.resumeFromPreviousUpload(previousUploads[0]) + 'content-type': 'multipart/form-data' } - uploadClient.start() }) - }) + .then((response) => { + console.info(`Uploaded file: ${response.data.s3_key}`); + resolve(response.data); + }) + .catch((error) => { + console.error('Failed to upload file', error); + reject(axiosErrorToApiError(error)); + }); + }); } return { create } diff --git a/dbrepo-ui/dto/index.ts b/dbrepo-ui/dto/index.ts index 2f20f17429..3079fc05c0 100644 --- a/dbrepo-ui/dto/index.ts +++ b/dbrepo-ui/dto/index.ts @@ -20,6 +20,10 @@ interface DatabaseDto { exchange_type: string | null; } +interface UploadResponseDto { + s3_key: string; +} + interface DatabaseCreateDto { name: string; container_id: string; diff --git a/dbrepo-ui/nuxt.config.ts b/dbrepo-ui/nuxt.config.ts index b3da7bd98c..54718d4640 100644 --- a/dbrepo-ui/nuxt.config.ts +++ b/dbrepo-ui/nuxt.config.ts @@ -85,10 +85,6 @@ export default defineNuxtConfig({ client: 'http://localhost', server: 'http://gateway-service', }, - upload: { - client: 'http://localhost/api/upload/files', - prefix: '/' - }, database: { unsupported: 'AVG,BIT_AND,BIT_OR,BIT_XOR,COUNT,COUNTDISTINCT,GROUP_CONCAT,JSON_ARRAYAGG,JSON_OBJECTAGG,MAX,MIN,STD,STDDEV,STDDEV_POP,STDDEV_SAMP,SUM,VARIANCE,VAR_POP,VAR_SAMP,--', image: { diff --git a/dbrepo-ui/package-lock.json b/dbrepo-ui/package-lock.json new file mode 100644 index 0000000000..52dbae9ae9 --- /dev/null +++ b/dbrepo-ui/package-lock.json @@ -0,0 +1,12446 @@ +{ + "name": "dbrepo-ui", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "dbrepo-ui", + "hasInstallScript": true, + "dependencies": { + "@artmizu/nuxt-prometheus": "^2.4.0", + "@date-fns/utc": "^2.1.0", + "@fontsource/open-sans": "^5.0.24", + "@mdi/font": "^7.4.47", + "@nuxtjs/robots": "^3.0.0", + "@nuxtjs/sitemap": "^5.2.0", + "@pinia/nuxt": "^0.5.1", + "ace-builds": "^1.32.6", + "axios": "^1.6.7", + "buffer": "^6.0.3", + "chart.js": "^4.4.1", + "date-fns": "^3.3.1", + "http-status-codes": "^2.3.0", + "jwt-decode": "^4.0.0", + "merkle-json": "^2.6.0", + "moment": "^2.30.1", + "nuxt": "^3.10.3", + "nuxt-oidc-auth": "^1.0.0-beta.5", + "parse-md": "^3.0.3", + "pinia": "^2.1.7", + "qs": "^6.11.2", + "sql-formatter": "^15.2.0", + "tus-js-client": "^4.0.1", + "vue": "^3.4.21", + "vue-axios": "^3.5.2", + "vue-chartjs": "^5.3.0", + "vue-meta": "^2.4.0", + "vue-toast-notification": "^3.1.2", + "vue3-ace-editor": "^2.2.4", + "vuetify": "^3.7.2" + }, + "devDependencies": { + "@nuxtjs/i18n": "^8.1.1", + "@pinia-plugin-persistedstate/nuxt": "^1.2.0", + "@types/qs": "^6.9.12", + "sass": "^1.71.0", + "vite-plugin-vuetify": "^2.0.4" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@antfu/install-pkg": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@antfu/install-pkg/-/install-pkg-1.0.0.tgz", + "integrity": "sha512-xvX6P/lo1B3ej0OsaErAjqgFYzYVcJpamjLAFLYh9vRJngBrMoUG7aVnrGTeqM7yxbyTD5p3F2+0/QUEh8Vzhw==", + "dependencies": { + "package-manager-detector": "^0.2.8", + "tinyexec": "^0.3.2" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@antfu/utils": { + "version": "0.7.10", + "resolved": "https://registry.npmjs.org/@antfu/utils/-/utils-0.7.10.tgz", + "integrity": "sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@artmizu/nuxt-prometheus": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@artmizu/nuxt-prometheus/-/nuxt-prometheus-2.4.0.tgz", + "integrity": "sha512-scLoSmOXN2SAGOkO/eFFN1MvfLUcj/FLN7cXCda5xQnHfHTKL3ac2BHgeyv4ylleirnOwYfWzco/KQXx2WixHQ==", + "dependencies": { + "@mswjs/interceptors": "^0.28.4", + "@nuxt/kit": "^3.11.2", + "consola": "^3.2.3", + "defu": "^6.1.2", + "h3": "^1.7.1", + "prom-client": "^14.2.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.26.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", + "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.25.9", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.26.8", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.8.tgz", + "integrity": "sha512-oH5UPLMWR3L2wEFLnFJ1TZXqHufiTKAiLfqw5zkhS4dKXLJ10yVztfil/twG8EDTA4F/tvVNw9nOl4ZMslB8rQ==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.9.tgz", + "integrity": "sha512-lWBYIrF7qK5+GjY5Uy+/hEgp8OJWOD/rpy74GplYRhEauvbHDeFB8t5hPOZxCZ0Oxf4Cc36tK51/l3ymJysrKw==", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.26.9", + "@babel/helper-compilation-targets": "^7.26.5", + "@babel/helper-module-transforms": "^7.26.0", + "@babel/helpers": "^7.26.9", + "@babel/parser": "^7.26.9", + "@babel/template": "^7.26.9", + "@babel/traverse": "^7.26.9", + "@babel/types": "^7.26.9", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.9.tgz", + "integrity": "sha512-kEWdzjOAUMW4hAyrzJ0ZaTOu9OmpyDIQicIh0zg0EEcEkYXZb2TjtBhnHi2ViX7PKwZqF4xwqfAm299/QMP3lg==", + "dependencies": { + "@babel/parser": "^7.26.9", + "@babel/types": "^7.26.9", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz", + "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==", + "dependencies": { + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.26.5.tgz", + "integrity": "sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA==", + "dependencies": { + "@babel/compat-data": "^7.26.5", + "@babel/helper-validator-option": "^7.25.9", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.26.9.tgz", + "integrity": "sha512-ubbUqCofvxPRurw5L8WTsCLSkQiVpov4Qx0WMA+jUN+nXBK8ADPlJO1grkFw5CWKC5+sZSOfuGMdX1aI1iT9Sg==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.25.9", + "@babel/helper-member-expression-to-functions": "^7.25.9", + "@babel/helper-optimise-call-expression": "^7.25.9", + "@babel/helper-replace-supers": "^7.26.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9", + "@babel/traverse": "^7.26.9", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.9.tgz", + "integrity": "sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ==", + "dependencies": { + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz", + "integrity": "sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==", + "dependencies": { + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz", + "integrity": "sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==", + "dependencies": { + "@babel/helper-module-imports": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9", + "@babel/traverse": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.9.tgz", + "integrity": "sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ==", + "dependencies": { + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.26.5.tgz", + "integrity": "sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.26.5.tgz", + "integrity": "sha512-bJ6iIVdYX1YooY2X7w1q6VITt+LnUILtNk7zT78ykuwStx8BauCzxvFqFaHjOpW1bVnSUM1PN1f0p5P21wHxvg==", + "dependencies": { + "@babel/helper-member-expression-to-functions": "^7.25.9", + "@babel/helper-optimise-call-expression": "^7.25.9", + "@babel/traverse": "^7.26.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.9.tgz", + "integrity": "sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==", + "dependencies": { + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", + "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", + "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz", + "integrity": "sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.26.9.tgz", + "integrity": "sha512-Mz/4+y8udxBKdmzt/UjPACs4G3j5SshJJEFFKxlCGPydG4JAHXxjWjAwjd09tf6oINvl1VfMJo+nB7H2YKQ0dA==", + "dependencies": { + "@babel/template": "^7.26.9", + "@babel/types": "^7.26.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.9.tgz", + "integrity": "sha512-81NWa1njQblgZbQHxWHpxxCzNsa3ZwvFqpUg7P+NNUU6f3UU2jBEg4OlF/J6rl8+PQGh1q6/zWScd001YwcA5A==", + "dependencies": { + "@babel/types": "^7.26.9" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-proposal-decorators": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.25.9.tgz", + "integrity": "sha512-smkNLL/O1ezy9Nhy4CNosc4Va+1wo5w4gzSZeLe6y6dM4mmHfYOCPolXQPHQxonZCF+ZyebxN9vqOolkYrSn5g==", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/plugin-syntax-decorators": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-decorators": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.25.9.tgz", + "integrity": "sha512-ryzI0McXUPJnRCvMo4lumIKZUzhYUO/ScI+Mz4YVaTLt04DHNSjEUjKVvbzQjZFLuod/cYEc07mJWhzl6v4DPg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.26.0.tgz", + "integrity": "sha512-e2dttdsJ1ZTpi3B9UYGLw41hifAubg19AtCu/2I/F1QNVclOBr1dYpTdmdyZ84Xiz43BS/tCUkMAZNLv12Pi+A==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.9.tgz", + "integrity": "sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.9.tgz", + "integrity": "sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typescript": { + "version": "7.26.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.26.8.tgz", + "integrity": "sha512-bME5J9AC8ChwA7aEPJ6zym3w7aObZULHhbNLU0bKUhKsAkylkzUdq+0kdymh9rzi8nlNFl2bmldFBCKNJBUpuw==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.25.9", + "@babel/helper-create-class-features-plugin": "^7.25.9", + "@babel/helper-plugin-utils": "^7.26.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9", + "@babel/plugin-syntax-typescript": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/standalone": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/standalone/-/standalone-7.26.9.tgz", + "integrity": "sha512-UTeQKy0kzJwWRe55kT1uK4G9H6D0lS6G4207hCU/bDaOhA5t2aC0qHN6GmID0Axv3OFLNXm27NdqcWp+BXcGtA==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.26.9.tgz", + "integrity": "sha512-qyRplbeIpNZhmzOysF/wFMuP9sctmh2cFzRAZOn1YapxBsE1i9bJIY586R/WBLfLcmcBlM8ROBiQURnnNy+zfA==", + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/parser": "^7.26.9", + "@babel/types": "^7.26.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.9.tgz", + "integrity": "sha512-ZYW7L+pL8ahU5fXmNbPF+iZFHCv5scFak7MZ9bwaRPLUhHh7QQEMjZUg0HevihoqCM5iSYHN61EyCoZvqC+bxg==", + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.26.9", + "@babel/parser": "^7.26.9", + "@babel/template": "^7.26.9", + "@babel/types": "^7.26.9", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.9.tgz", + "integrity": "sha512-Y3IR1cRnOxOCDvMmNiym7XpXQ93iGDDPHx+Zj+NM+rg0fBaShfQLkg+hKPaZCEvg5N/LeCo4+Rj/i3FuJsIQaw==", + "dependencies": { + "@babel/helper-string-parser": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@cloudflare/kv-asset-handler": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/@cloudflare/kv-asset-handler/-/kv-asset-handler-0.3.4.tgz", + "integrity": "sha512-YLPHc8yASwjNkmcDMQMY35yiWjoKAKnhUbPRszBRS0YgH+IXtsMp61j+yTcnCE3oO2DgP0U3iejLC8FTtKDC8Q==", + "dependencies": { + "mime": "^3.0.0" + }, + "engines": { + "node": ">=16.13" + } + }, + "node_modules/@cloudflare/kv-asset-handler/node_modules/mime": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", + "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@date-fns/utc": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@date-fns/utc/-/utc-2.1.0.tgz", + "integrity": "sha512-176grgAgU2U303rD2/vcOmNg0kGPbhzckuH1TEP2al7n0AQipZIy9P15usd2TKQCG1g+E1jX/ZVQSzs4sUDwgA==" + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.24.2.tgz", + "integrity": "sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==", + "cpu": [ + "ppc64" + ], + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.24.2.tgz", + "integrity": "sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.24.2.tgz", + "integrity": "sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.24.2.tgz", + "integrity": "sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.24.2.tgz", + "integrity": "sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.24.2.tgz", + "integrity": "sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.24.2.tgz", + "integrity": "sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.24.2.tgz", + "integrity": "sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.24.2.tgz", + "integrity": "sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.24.2.tgz", + "integrity": "sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.24.2.tgz", + "integrity": "sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.24.2.tgz", + "integrity": "sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==", + "cpu": [ + "loong64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.24.2.tgz", + "integrity": "sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==", + "cpu": [ + "mips64el" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.24.2.tgz", + "integrity": "sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==", + "cpu": [ + "ppc64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.24.2.tgz", + "integrity": "sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==", + "cpu": [ + "riscv64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.24.2.tgz", + "integrity": "sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==", + "cpu": [ + "s390x" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.24.2.tgz", + "integrity": "sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-arm64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.24.2.tgz", + "integrity": "sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.24.2.tgz", + "integrity": "sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.24.2.tgz", + "integrity": "sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.24.2.tgz", + "integrity": "sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.24.2.tgz", + "integrity": "sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.24.2.tgz", + "integrity": "sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.24.2.tgz", + "integrity": "sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.24.2.tgz", + "integrity": "sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@fontsource/open-sans": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@fontsource/open-sans/-/open-sans-5.1.1.tgz", + "integrity": "sha512-Wfio5om0XH24ZUu6FfW4r50e4xLdoLzvd8midtqUFT2unniyWQj6GJ05RW1YQsHp4Sug3i+agFBIxEmYQzUHSg==" + }, + "node_modules/@iconify-json/carbon": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@iconify-json/carbon/-/carbon-1.2.7.tgz", + "integrity": "sha512-nqEjicnNdb3CnY21MsTr9DfU8JBkP9C8hup1bCe4zvpLKjcU9YRmYChUbqZYBP4P+BL5NdrprTSN+B7qJg3H3Q==", + "dependencies": { + "@iconify/types": "*" + } + }, + "node_modules/@iconify-json/logos": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@iconify-json/logos/-/logos-1.2.4.tgz", + "integrity": "sha512-XC4If5D/hbaZvUkTV8iaZuGlQCyG6CNOlaAaJaGa13V5QMYwYjgtKk3vPP8wz3wtTVNVEVk3LRx1fOJz+YnSMw==", + "dependencies": { + "@iconify/types": "*" + } + }, + "node_modules/@iconify-json/ri": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/@iconify-json/ri/-/ri-1.2.5.tgz", + "integrity": "sha512-kWGimOXMZrlYusjBKKXYOWcKhbOHusFsmrmRGmjS7rH0BpML5A9/fy8KHZqFOwZfC4M6amObQYbh8BqO5cMC3w==", + "dependencies": { + "@iconify/types": "*" + } + }, + "node_modules/@iconify-json/tabler": { + "version": "1.2.16", + "resolved": "https://registry.npmjs.org/@iconify-json/tabler/-/tabler-1.2.16.tgz", + "integrity": "sha512-gjvKz38+aOxfZtRvycYrASYipCsHRbCZ/Df49T0tfPntT0ur+qsgJ7PxCM4JF/Xs6+n3JkaFdiUz/N4ZZxDKdQ==", + "dependencies": { + "@iconify/types": "*" + } + }, + "node_modules/@iconify/types": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@iconify/types/-/types-2.0.0.tgz", + "integrity": "sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==" + }, + "node_modules/@iconify/utils": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@iconify/utils/-/utils-2.3.0.tgz", + "integrity": "sha512-GmQ78prtwYW6EtzXRU1rY+KwOKfz32PD7iJh6Iyqw68GiKuoZ2A6pRtzWONz5VQJbp50mEjXh/7NkumtrAgRKA==", + "dependencies": { + "@antfu/install-pkg": "^1.0.0", + "@antfu/utils": "^8.1.0", + "@iconify/types": "^2.0.0", + "debug": "^4.4.0", + "globals": "^15.14.0", + "kolorist": "^1.8.0", + "local-pkg": "^1.0.0", + "mlly": "^1.7.4" + } + }, + "node_modules/@iconify/utils/node_modules/@antfu/utils": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/@antfu/utils/-/utils-8.1.1.tgz", + "integrity": "sha512-Mex9nXf9vR6AhcXmMrlz/HVgYYZpVGJ6YlPgwl7UnaFpnshXs6EK/oa5Gpf3CzENMjkvEx2tQtntGnb7UtSTOQ==", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@iconify/utils/node_modules/globals": { + "version": "15.15.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.15.0.tgz", + "integrity": "sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@iconify/utils/node_modules/local-pkg": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-1.0.0.tgz", + "integrity": "sha512-bbgPw/wmroJsil/GgL4qjDzs5YLTBMQ99weRsok1XCDccQeehbHA/I1oRvk2NPtr7KGZgT/Y5tPRnAtMqeG2Kg==", + "dependencies": { + "mlly": "^1.7.3", + "pkg-types": "^1.3.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@intlify/bundle-utils": { + "version": "7.5.1", + "resolved": "https://registry.npmjs.org/@intlify/bundle-utils/-/bundle-utils-7.5.1.tgz", + "integrity": "sha512-UovJl10oBIlmYEcWw+VIHdKY5Uv5sdPG0b/b6bOYxGLln3UwB75+2dlc0F3Fsa0RhoznQ5Rp589/BZpABpE4Xw==", + "dev": true, + "dependencies": { + "@intlify/message-compiler": "^9.4.0", + "@intlify/shared": "^9.4.0", + "acorn": "^8.8.2", + "escodegen": "^2.1.0", + "estree-walker": "^2.0.2", + "jsonc-eslint-parser": "^2.3.0", + "magic-string": "^0.30.0", + "mlly": "^1.2.0", + "source-map-js": "^1.0.1", + "yaml-eslint-parser": "^1.2.2" + }, + "engines": { + "node": ">= 14.16" + }, + "peerDependenciesMeta": { + "petite-vue-i18n": { + "optional": true + }, + "vue-i18n": { + "optional": true + } + } + }, + "node_modules/@intlify/bundle-utils/node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true + }, + "node_modules/@intlify/core": { + "version": "9.14.2", + "resolved": "https://registry.npmjs.org/@intlify/core/-/core-9.14.2.tgz", + "integrity": "sha512-/YsYOtRdKn2RbIz9FjYdb4ZntcB7hJmlfHjMRrRXOH2rJE9T5kdYCTS+LS75xQkRCeHFdAmjGMADuoy4HYpHfA==", + "dev": true, + "dependencies": { + "@intlify/core-base": "9.14.2", + "@intlify/shared": "9.14.2" + }, + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://github.com/sponsors/kazupon" + } + }, + "node_modules/@intlify/core-base": { + "version": "9.14.2", + "resolved": "https://registry.npmjs.org/@intlify/core-base/-/core-base-9.14.2.tgz", + "integrity": "sha512-DZyQ4Hk22sC81MP4qiCDuU+LdaYW91A6lCjq8AWPvY3+mGMzhGDfOCzvyR6YBQxtlPjFqMoFk9ylnNYRAQwXtQ==", + "dev": true, + "dependencies": { + "@intlify/message-compiler": "9.14.2", + "@intlify/shared": "9.14.2" + }, + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://github.com/sponsors/kazupon" + } + }, + "node_modules/@intlify/h3": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@intlify/h3/-/h3-0.5.0.tgz", + "integrity": "sha512-cgfrtD3qu3BPJ47gfZ35J2LJpI64Riic0K8NGgid5ilyPXRQTNY7mXlT/B+HZYQg1hmBxKa5G5HJXyAZ4R2H5A==", + "dev": true, + "dependencies": { + "@intlify/core": "^9.8.0", + "@intlify/utils": "^0.12.0" + }, + "engines": { + "node": ">= 18" + }, + "funding": { + "url": "https://github.com/sponsors/kazupon" + } + }, + "node_modules/@intlify/message-compiler": { + "version": "9.14.2", + "resolved": "https://registry.npmjs.org/@intlify/message-compiler/-/message-compiler-9.14.2.tgz", + "integrity": "sha512-YsKKuV4Qv4wrLNsvgWbTf0E40uRv+Qiw1BeLQ0LAxifQuhiMe+hfTIzOMdWj/ZpnTDj4RSZtkXjJM7JDiiB5LQ==", + "dev": true, + "dependencies": { + "@intlify/shared": "9.14.2", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://github.com/sponsors/kazupon" + } + }, + "node_modules/@intlify/shared": { + "version": "9.14.2", + "resolved": "https://registry.npmjs.org/@intlify/shared/-/shared-9.14.2.tgz", + "integrity": "sha512-uRAHAxYPeF+G5DBIboKpPgC/Waecd4Jz8ihtkpJQD5ycb5PwXp0k/+hBGl5dAjwF7w+l74kz/PKA8r8OK//RUw==", + "dev": true, + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://github.com/sponsors/kazupon" + } + }, + "node_modules/@intlify/unplugin-vue-i18n": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@intlify/unplugin-vue-i18n/-/unplugin-vue-i18n-3.0.1.tgz", + "integrity": "sha512-q1zJhA/WpoLBzAAuKA5/AEp0e+bMOM10ll/HxT4g1VAw/9JhC4TTobP9KobKH90JMZ4U2daLFlYQfKNd29lpqw==", + "dev": true, + "dependencies": { + "@intlify/bundle-utils": "^7.4.0", + "@intlify/shared": "^9.4.0", + "@rollup/pluginutils": "^5.1.0", + "@vue/compiler-sfc": "^3.2.47", + "debug": "^4.3.3", + "fast-glob": "^3.2.12", + "js-yaml": "^4.1.0", + "json5": "^2.2.3", + "pathe": "^1.0.0", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2", + "unplugin": "^1.1.0" + }, + "engines": { + "node": ">= 14.16" + }, + "peerDependencies": { + "petite-vue-i18n": "*", + "vue-i18n": "*", + "vue-i18n-bridge": "*" + }, + "peerDependenciesMeta": { + "petite-vue-i18n": { + "optional": true + }, + "vue-i18n": { + "optional": true + }, + "vue-i18n-bridge": { + "optional": true + } + } + }, + "node_modules/@intlify/unplugin-vue-i18n/node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", + "dev": true + }, + "node_modules/@intlify/utils": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@intlify/utils/-/utils-0.12.0.tgz", + "integrity": "sha512-yCBNcuZQ49iInqmWC2xfW0rgEQyNtCM8C8KcWKTXxyscgUE1+48gjLgZZqP75MjhlApxwph7ZMWLqyABkSgxQA==", + "dev": true, + "engines": { + "node": ">= 18" + }, + "funding": { + "url": "https://github.com/sponsors/kazupon" + } + }, + "node_modules/@ioredis/commands": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ioredis/commands/-/commands-1.2.0.tgz", + "integrity": "sha512-Sx1pU8EM64o2BrqNpEO1CNLtKQwyhuXuqyfH7oGKCk+1a33d2r5saW8zNwm3j6BTExtjrv2BxTgzzkMwts6vGg==" + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" + }, + "node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/@isaacs/fs-minipass": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz", + "integrity": "sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==", + "dependencies": { + "minipass": "^7.0.4" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@isaacs/fs-minipass/node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", + "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@kurkle/color": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/@kurkle/color/-/color-0.3.4.tgz", + "integrity": "sha512-M5UknZPHRu3DEDWoipU6sE8PdkZ6Z/S+v4dD+Ke8IaNlpdSQah50lz1KtcFBa2vsdOnwbbnxJwVM4wty6udA5w==" + }, + "node_modules/@kwsites/file-exists": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@kwsites/file-exists/-/file-exists-1.1.1.tgz", + "integrity": "sha512-m9/5YGR18lIwxSFDwfE3oA7bWuq9kdau6ugN4H2rJeyhFQZcG9AgSHkQtSD15a8WvTgfz9aikZMrKPHvbpqFiw==", + "dependencies": { + "debug": "^4.1.1" + } + }, + "node_modules/@kwsites/promise-deferred": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@kwsites/promise-deferred/-/promise-deferred-1.1.1.tgz", + "integrity": "sha512-GaHYm+c0O9MjZRu0ongGBRbinu8gVAMd2UZjji6jVmqKtZluZnptXGWhz1E8j8D2HJ3f/yMxKAUC0b+57wncIw==" + }, + "node_modules/@mapbox/node-pre-gyp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-2.0.0.tgz", + "integrity": "sha512-llMXd39jtP0HpQLVI37Bf1m2ADlEb35GYSh1SDSLsBhR+5iCxiNGlT31yqbNtVHygHAtMy6dWFERpU2JgufhPg==", + "dependencies": { + "consola": "^3.2.3", + "detect-libc": "^2.0.0", + "https-proxy-agent": "^7.0.5", + "node-fetch": "^2.6.7", + "nopt": "^8.0.0", + "semver": "^7.5.3", + "tar": "^7.4.0" + }, + "bin": { + "node-pre-gyp": "bin/node-pre-gyp" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@mapbox/node-pre-gyp/node_modules/chownr": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz", + "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==", + "engines": { + "node": ">=18" + } + }, + "node_modules/@mapbox/node-pre-gyp/node_modules/detect-libc": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", + "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@mapbox/node-pre-gyp/node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/@mapbox/node-pre-gyp/node_modules/minizlib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.0.1.tgz", + "integrity": "sha512-umcy022ILvb5/3Djuu8LWeqUa8D68JaBzlttKeMWen48SjabqS3iY5w/vzeMzMUNhLDifyhbOwKDSznB1vvrwg==", + "dependencies": { + "minipass": "^7.0.4", + "rimraf": "^5.0.5" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@mapbox/node-pre-gyp/node_modules/mkdirp": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-3.0.1.tgz", + "integrity": "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==", + "bin": { + "mkdirp": "dist/cjs/src/bin.js" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@mapbox/node-pre-gyp/node_modules/tar": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/tar/-/tar-7.4.3.tgz", + "integrity": "sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw==", + "dependencies": { + "@isaacs/fs-minipass": "^4.0.0", + "chownr": "^3.0.0", + "minipass": "^7.1.2", + "minizlib": "^3.0.1", + "mkdirp": "^3.0.1", + "yallist": "^5.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@mapbox/node-pre-gyp/node_modules/yallist": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", + "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==", + "engines": { + "node": ">=18" + } + }, + "node_modules/@mdi/font": { + "version": "7.4.47", + "resolved": "https://registry.npmjs.org/@mdi/font/-/font-7.4.47.tgz", + "integrity": "sha512-43MtGpd585SNzHZPcYowu/84Vz2a2g31TvPMTm9uTiCSWzaheQySUcSyUH/46fPnuPQWof2yd0pGBtzee/IQWw==" + }, + "node_modules/@miyaneee/rollup-plugin-json5": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@miyaneee/rollup-plugin-json5/-/rollup-plugin-json5-1.2.0.tgz", + "integrity": "sha512-JjTIaXZp9WzhUHpElrqPnl1AzBi/rvRs065F71+aTmlqvTMVkdbjZ8vfFl4nRlgJy+TPBw69ZK4pwFdmOAt4aA==", + "dev": true, + "dependencies": { + "@rollup/pluginutils": "^5.1.0", + "json5": "^2.2.3" + }, + "peerDependencies": { + "rollup": "^1.20.0 || ^2.0.0 || ^3.0.0 || ^4.0.0" + } + }, + "node_modules/@mswjs/interceptors": { + "version": "0.28.4", + "resolved": "https://registry.npmjs.org/@mswjs/interceptors/-/interceptors-0.28.4.tgz", + "integrity": "sha512-xQpXZswUUG+V+7bD/L2hZUC5mvxW1BPba2yI5yhRq+IpEXFPEGYzUuJUuvJBELyG7RLCxgrOjmqzeE5hgqa0aQ==", + "dependencies": { + "@open-draft/deferred-promise": "^2.2.0", + "@open-draft/logger": "^0.3.0", + "@open-draft/until": "^2.0.0", + "is-node-process": "^1.2.0", + "outvariant": "^1.2.1", + "strict-event-emitter": "^0.5.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@netlify/functions": { + "version": "2.8.2", + "resolved": "https://registry.npmjs.org/@netlify/functions/-/functions-2.8.2.tgz", + "integrity": "sha512-DeoAQh8LuNPvBE4qsKlezjKj0PyXDryOFJfJKo3Z1qZLKzQ21sT314KQKPVjfvw6knqijj+IO+0kHXy/TJiqNA==", + "dependencies": { + "@netlify/serverless-functions-api": "1.26.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@netlify/node-cookies": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@netlify/node-cookies/-/node-cookies-0.1.0.tgz", + "integrity": "sha512-OAs1xG+FfLX0LoRASpqzVntVV/RpYkgpI0VrUnw2u0Q1qiZUzcPffxRK8HF3gc4GjuhG5ahOEMJ9bswBiZPq0g==", + "engines": { + "node": "^14.16.0 || >=16.0.0" + } + }, + "node_modules/@netlify/serverless-functions-api": { + "version": "1.26.1", + "resolved": "https://registry.npmjs.org/@netlify/serverless-functions-api/-/serverless-functions-api-1.26.1.tgz", + "integrity": "sha512-q3L9i3HoNfz0SGpTIS4zTcKBbRkxzCRpd169eyiTuk3IwcPC3/85mzLHranlKo2b+HYT0gu37YxGB45aD8A3Tw==", + "dependencies": { + "@netlify/node-cookies": "^0.1.0", + "urlpattern-polyfill": "8.0.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nuxt/cli": { + "version": "3.22.2", + "resolved": "https://registry.npmjs.org/@nuxt/cli/-/cli-3.22.2.tgz", + "integrity": "sha512-Xtu3Loe3fVLvOE1/NC/SrE6Buu7Aj6qrnu3hewAfamUyZ7mVUBOsJ5ScUhofSK2L6muGPvS3R1PisuJMFbdexg==", + "dependencies": { + "c12": "^2.0.2", + "chokidar": "^4.0.3", + "citty": "^0.1.6", + "clipboardy": "^4.0.0", + "consola": "^3.4.0", + "defu": "^6.1.4", + "fuse.js": "^7.1.0", + "giget": "^1.2.4", + "h3": "^1.15.0", + "httpxy": "^0.1.7", + "jiti": "^2.4.2", + "listhen": "^1.9.0", + "nypm": "^0.5.2", + "ofetch": "^1.4.1", + "ohash": "^2.0.2", + "pathe": "^2.0.3", + "perfect-debounce": "^1.0.0", + "pkg-types": "^1.3.1", + "scule": "^1.3.0", + "semver": "^7.7.1", + "std-env": "^3.8.0", + "tinyexec": "^0.3.2", + "ufo": "^1.5.4" + }, + "bin": { + "nuxi": "bin/nuxi.mjs", + "nuxi-ng": "bin/nuxi.mjs", + "nuxt": "bin/nuxi.mjs", + "nuxt-cli": "bin/nuxi.mjs" + }, + "engines": { + "node": "^16.10.0 || >=18.0.0" + } + }, + "node_modules/@nuxt/cli/node_modules/ohash": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/ohash/-/ohash-2.0.4.tgz", + "integrity": "sha512-ac+SFwzhdHb0hp48/dbR7Jta39qfbuj7t3hApd9uyHS8bisHTfVzSEvjOVgV0L3zG7VR2/7JjkSGimP75D+hOQ==" + }, + "node_modules/@nuxt/devalue": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@nuxt/devalue/-/devalue-2.0.2.tgz", + "integrity": "sha512-GBzP8zOc7CGWyFQS6dv1lQz8VVpz5C2yRszbXufwG/9zhStTIH50EtD87NmWbTMwXDvZLNg8GIpb1UFdH93JCA==" + }, + "node_modules/@nuxt/devtools": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@nuxt/devtools/-/devtools-1.7.0.tgz", + "integrity": "sha512-uvnjt5Zowkz7tZmnks2cGreg1XZIiSyVzQ2MYiRXACodlXcwJ0dpUS3WTxu8BR562K+772oRdvKie9AQlyZUgg==", + "dependencies": { + "@antfu/utils": "^0.7.10", + "@nuxt/devtools-kit": "1.7.0", + "@nuxt/devtools-wizard": "1.7.0", + "@nuxt/kit": "^3.15.0", + "@vue/devtools-core": "7.6.8", + "@vue/devtools-kit": "7.6.8", + "birpc": "^0.2.19", + "consola": "^3.3.1", + "cronstrue": "^2.52.0", + "destr": "^2.0.3", + "error-stack-parser-es": "^0.1.5", + "execa": "^7.2.0", + "fast-npm-meta": "^0.2.2", + "flatted": "^3.3.2", + "get-port-please": "^3.1.2", + "hookable": "^5.5.3", + "image-meta": "^0.2.1", + "is-installed-globally": "^1.0.0", + "launch-editor": "^2.9.1", + "local-pkg": "^0.5.1", + "magicast": "^0.3.5", + "nypm": "^0.4.1", + "ohash": "^1.1.4", + "pathe": "^1.1.2", + "perfect-debounce": "^1.0.0", + "pkg-types": "^1.2.1", + "rc9": "^2.1.2", + "scule": "^1.3.0", + "semver": "^7.6.3", + "simple-git": "^3.27.0", + "sirv": "^3.0.0", + "tinyglobby": "^0.2.10", + "unimport": "^3.14.5", + "vite-plugin-inspect": "~0.8.9", + "vite-plugin-vue-inspector": "^5.3.1", + "which": "^3.0.1", + "ws": "^8.18.0" + }, + "bin": { + "devtools": "cli.mjs" + }, + "peerDependencies": { + "vite": "*" + } + }, + "node_modules/@nuxt/devtools-kit": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@nuxt/devtools-kit/-/devtools-kit-1.7.0.tgz", + "integrity": "sha512-+NgZ2uP5BuneqvQbe7EdOEaFEDy8762c99pLABtn7/Ur0ExEsQJMP7pYjjoTfKubhBqecr5Vo9yHkPBj1eHulQ==", + "dependencies": { + "@nuxt/kit": "^3.15.0", + "@nuxt/schema": "^3.15.0", + "execa": "^7.2.0" + }, + "peerDependencies": { + "vite": "*" + } + }, + "node_modules/@nuxt/devtools-ui-kit": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@nuxt/devtools-ui-kit/-/devtools-ui-kit-1.7.0.tgz", + "integrity": "sha512-pYjwCP3FHz/rrEoJpb8plMinnPHRh+fFc90O+MncMC0aIGydtu4SGwAE3fZsg//JXqkvlY+JyozxqtF9IRA7rA==", + "dependencies": { + "@iconify-json/carbon": "^1.2.5", + "@iconify-json/logos": "^1.2.4", + "@iconify-json/ri": "^1.2.5", + "@iconify-json/tabler": "^1.2.13", + "@nuxt/devtools-kit": "1.7.0", + "@nuxt/kit": "^3.15.0", + "@unocss/core": "^0.65.3", + "@unocss/nuxt": "^0.65.3", + "@unocss/preset-attributify": "^0.65.3", + "@unocss/preset-icons": "^0.65.3", + "@unocss/preset-mini": "^0.65.3", + "@unocss/reset": "^0.65.3", + "@vueuse/core": "^12.2.0", + "@vueuse/integrations": "^12.2.0", + "@vueuse/nuxt": "^12.2.0", + "defu": "^6.1.4", + "focus-trap": "^7.6.2", + "splitpanes": "^3.1.5", + "unocss": "^0.65.3", + "v-lazy-show": "^0.3.0" + }, + "peerDependencies": { + "@nuxt/devtools": "1.7.0" + } + }, + "node_modules/@nuxt/devtools-wizard": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@nuxt/devtools-wizard/-/devtools-wizard-1.7.0.tgz", + "integrity": "sha512-86Gd92uEw0Dh2ErIYT9TMIrMOISE96fCRN4rxeryTvyiowQOsyrbkCeMNYrEehoRL+lohoyK6iDmFajadPNwWQ==", + "dependencies": { + "consola": "^3.3.1", + "diff": "^7.0.0", + "execa": "^7.2.0", + "global-directory": "^4.0.1", + "magicast": "^0.3.5", + "pathe": "^1.1.2", + "pkg-types": "^1.2.1", + "prompts": "^2.4.2", + "rc9": "^2.1.2", + "semver": "^7.6.3" + }, + "bin": { + "devtools-wizard": "cli.mjs" + } + }, + "node_modules/@nuxt/devtools-wizard/node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==" + }, + "node_modules/@nuxt/devtools/node_modules/js-tokens": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-9.0.1.tgz", + "integrity": "sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==" + }, + "node_modules/@nuxt/devtools/node_modules/nypm": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/nypm/-/nypm-0.4.1.tgz", + "integrity": "sha512-1b9mihliBh8UCcKtcGRu//G50iHpjxIQVUqkdhPT/SDVE7KdJKoHXLS0heuYTQCx95dFqiyUbXZB9r8ikn+93g==", + "dependencies": { + "citty": "^0.1.6", + "consola": "^3.2.3", + "pathe": "^1.1.2", + "pkg-types": "^1.2.1", + "tinyexec": "^0.3.1", + "ufo": "^1.5.4" + }, + "bin": { + "nypm": "dist/cli.mjs" + }, + "engines": { + "node": "^14.16.0 || >=16.10.0" + } + }, + "node_modules/@nuxt/devtools/node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==" + }, + "node_modules/@nuxt/devtools/node_modules/sirv": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/sirv/-/sirv-3.0.1.tgz", + "integrity": "sha512-FoqMu0NCGBLCcAkS1qA+XJIQTR6/JHfQXl+uGteNCQ76T91DMUjPa9xfmeqMY3z80nLSg9yQmNjK0Px6RWsH/A==", + "dependencies": { + "@polka/url": "^1.0.0-next.24", + "mrmime": "^2.0.0", + "totalist": "^3.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@nuxt/devtools/node_modules/strip-literal": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-2.1.1.tgz", + "integrity": "sha512-631UJ6O00eNGfMiWG78ck80dfBab8X6IVFB51jZK5Icd7XAs60Z5y7QdSd/wGIklnWvRbUNloVzhOKKmutxQ6Q==", + "dependencies": { + "js-tokens": "^9.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@nuxt/devtools/node_modules/unimport": { + "version": "3.14.6", + "resolved": "https://registry.npmjs.org/unimport/-/unimport-3.14.6.tgz", + "integrity": "sha512-CYvbDaTT04Rh8bmD8jz3WPmHYZRG/NnvYVzwD6V1YAlvvKROlAeNDUBhkBGzNav2RKaeuXvlWYaa1V4Lfi/O0g==", + "dependencies": { + "@rollup/pluginutils": "^5.1.4", + "acorn": "^8.14.0", + "escape-string-regexp": "^5.0.0", + "estree-walker": "^3.0.3", + "fast-glob": "^3.3.3", + "local-pkg": "^1.0.0", + "magic-string": "^0.30.17", + "mlly": "^1.7.4", + "pathe": "^2.0.1", + "picomatch": "^4.0.2", + "pkg-types": "^1.3.0", + "scule": "^1.3.0", + "strip-literal": "^2.1.1", + "unplugin": "^1.16.1" + } + }, + "node_modules/@nuxt/devtools/node_modules/unimport/node_modules/local-pkg": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-1.0.0.tgz", + "integrity": "sha512-bbgPw/wmroJsil/GgL4qjDzs5YLTBMQ99weRsok1XCDccQeehbHA/I1oRvk2NPtr7KGZgT/Y5tPRnAtMqeG2Kg==", + "dependencies": { + "mlly": "^1.7.3", + "pkg-types": "^1.3.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@nuxt/devtools/node_modules/unimport/node_modules/pathe": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", + "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==" + }, + "node_modules/@nuxt/devtools/node_modules/which": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", + "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@nuxt/kit": { + "version": "3.15.4", + "resolved": "https://registry.npmjs.org/@nuxt/kit/-/kit-3.15.4.tgz", + "integrity": "sha512-dr7I7eZOoRLl4uxdxeL2dQsH0OrbEiVPIyBHnBpA4co24CBnoJoF+JINuP9l3PAM3IhUzc5JIVq3/YY3lEc3Hw==", + "dependencies": { + "c12": "^2.0.1", + "consola": "^3.4.0", + "defu": "^6.1.4", + "destr": "^2.0.3", + "globby": "^14.0.2", + "ignore": "^7.0.3", + "jiti": "^2.4.2", + "klona": "^2.0.6", + "knitwork": "^1.2.0", + "mlly": "^1.7.4", + "ohash": "^1.1.4", + "pathe": "^2.0.2", + "pkg-types": "^1.3.1", + "scule": "^1.3.0", + "semver": "^7.6.3", + "std-env": "^3.8.0", + "ufo": "^1.5.4", + "unctx": "^2.4.1", + "unimport": "^4.0.0", + "untyped": "^1.5.2" + }, + "engines": { + "node": ">=18.12.0" + } + }, + "node_modules/@nuxt/schema": { + "version": "3.15.4", + "resolved": "https://registry.npmjs.org/@nuxt/schema/-/schema-3.15.4.tgz", + "integrity": "sha512-pAYZb/3ocSC/db1EFd5y+otmgHqUkvfxfhd9EknDB5DygnJuOIQNuGJ7LMJM6S2c0DYgBIHOdEelLxKHOjwbgQ==", + "dependencies": { + "consola": "^3.4.0", + "defu": "^6.1.4", + "pathe": "^2.0.2", + "std-env": "^3.8.0" + }, + "engines": { + "node": "^14.18.0 || >=16.10.0" + } + }, + "node_modules/@nuxt/telemetry": { + "version": "2.6.5", + "resolved": "https://registry.npmjs.org/@nuxt/telemetry/-/telemetry-2.6.5.tgz", + "integrity": "sha512-lwMp9OHML/m0mjh7P5iz9PxINnk5smGkGebh88Wh8PjvnRooY1TBsbyq7mlSrNibpwD1BkwqhV5IAZOXWHLxMQ==", + "dependencies": { + "@nuxt/kit": "^3.15.4", + "citty": "^0.1.6", + "consola": "^3.4.0", + "destr": "^2.0.3", + "dotenv": "^16.4.7", + "git-url-parse": "^16.0.0", + "is-docker": "^3.0.0", + "ofetch": "^1.4.1", + "package-manager-detector": "^0.2.9", + "parse-git-config": "^3.0.0", + "pathe": "^2.0.2", + "rc9": "^2.1.2", + "std-env": "^3.8.0" + }, + "bin": { + "nuxt-telemetry": "bin/nuxt-telemetry.mjs" + }, + "engines": { + "node": ">=18.12.0" + } + }, + "node_modules/@nuxt/vite-builder": { + "version": "3.15.4", + "resolved": "https://registry.npmjs.org/@nuxt/vite-builder/-/vite-builder-3.15.4.tgz", + "integrity": "sha512-yBK6tWT973+ExKC3ciTWymZpjJ+enToOtYz574kXCyGO0PbSnuXdoJKTvrwXw1lK97PajCKxExlmwI/3oLOmMQ==", + "dependencies": { + "@nuxt/kit": "3.15.4", + "@rollup/plugin-replace": "^6.0.2", + "@vitejs/plugin-vue": "^5.2.1", + "@vitejs/plugin-vue-jsx": "^4.1.1", + "autoprefixer": "^10.4.20", + "consola": "^3.4.0", + "cssnano": "^7.0.6", + "defu": "^6.1.4", + "esbuild": "^0.24.2", + "escape-string-regexp": "^5.0.0", + "externality": "^1.0.2", + "get-port-please": "^3.1.2", + "h3": "^1.14.0", + "jiti": "^2.4.2", + "knitwork": "^1.2.0", + "magic-string": "^0.30.17", + "mlly": "^1.7.4", + "ohash": "^1.1.4", + "pathe": "^2.0.2", + "perfect-debounce": "^1.0.0", + "pkg-types": "^1.3.1", + "postcss": "^8.5.1", + "rollup-plugin-visualizer": "^5.13.1", + "std-env": "^3.8.0", + "ufo": "^1.5.4", + "unenv": "^1.10.0", + "unplugin": "^2.1.2", + "vite": "^6.0.11", + "vite-node": "^3.0.4", + "vite-plugin-checker": "^0.8.0", + "vue-bundle-renderer": "^2.1.1" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0.0" + }, + "peerDependencies": { + "vue": "^3.3.4" + } + }, + "node_modules/@nuxt/vite-builder/node_modules/unplugin": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-2.2.0.tgz", + "integrity": "sha512-m1ekpSwuOT5hxkJeZGRxO7gXbXT3gF26NjQ7GdVHoLoF8/nopLcd/QfPigpCy7i51oFHiRJg/CyHhj4vs2+KGw==", + "dependencies": { + "acorn": "^8.14.0", + "webpack-virtual-modules": "^0.6.2" + }, + "engines": { + "node": ">=18.12.0" + } + }, + "node_modules/@nuxtjs/i18n": { + "version": "8.5.6", + "resolved": "https://registry.npmjs.org/@nuxtjs/i18n/-/i18n-8.5.6.tgz", + "integrity": "sha512-L+g+LygKNoaS/AXExk7tzS9wSNn9QdP1T9VdTjjEGYftpeFgv2U8AQsY0dQAhgPIbXXhIAkNYxTk4YcINj9CfA==", + "dev": true, + "dependencies": { + "@intlify/h3": "^0.5.0", + "@intlify/shared": "^9.14.1", + "@intlify/unplugin-vue-i18n": "^3.0.1", + "@intlify/utils": "^0.12.0", + "@miyaneee/rollup-plugin-json5": "^1.2.0", + "@nuxt/kit": "^3.13.1", + "@rollup/plugin-yaml": "^4.1.2", + "@vue/compiler-sfc": "^3.5.4", + "debug": "^4.3.5", + "defu": "^6.1.2", + "estree-walker": "^3.0.3", + "is-https": "^4.0.0", + "knitwork": "^1.1.0", + "magic-string": "^0.30.10", + "mlly": "^1.7.1", + "pathe": "^1.1.1", + "scule": "^1.1.1", + "sucrase": "^3.35.0", + "ufo": "^1.3.1", + "unplugin": "^1.10.1", + "vue-i18n": "^9.14.1", + "vue-router": "^4.4.4" + }, + "engines": { + "node": "^14.16.0 || >=16.11.0" + } + }, + "node_modules/@nuxtjs/i18n/node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", + "dev": true + }, + "node_modules/@nuxtjs/robots": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@nuxtjs/robots/-/robots-3.0.0.tgz", + "integrity": "sha512-qsHGW1KXBvV5Kq7u3huPnFCUTbHS4Fk8Za2mNPgmUXcwLgp3exvhPtdZfIdjrCF/aZk3A8OZONNmGghs6CecBA==", + "dependencies": { + "@nuxt/kit": "^3.0.0", + "h3": "^1.0.1" + } + }, + "node_modules/@nuxtjs/sitemap": { + "version": "5.3.5", + "resolved": "https://registry.npmjs.org/@nuxtjs/sitemap/-/sitemap-5.3.5.tgz", + "integrity": "sha512-TfhEImgVHEZaI/vphZdoCaWM2TRBJqprHZPhIQwWYJz+dpQWkfY6z8UpjhmUh6npvbj5kNY9ncLenkw0cDJp9g==", + "dependencies": { + "@nuxt/devtools-kit": "^1.3.9", + "@nuxt/kit": "^3.12.3", + "chalk": "^5.3.0", + "defu": "^6.1.4", + "h3-compression": "^0.3.2", + "nuxt-site-config": "^2.2.15", + "nuxt-site-config-kit": "^2.2.15", + "ofetch": "^1.3.4", + "pathe": "^1.1.2", + "pkg-types": "^1.1.3", + "radix3": "^1.1.2", + "semver": "^7.6.2", + "sirv": "^2.0.4", + "site-config-stack": "^2.2.15", + "ufo": "^1.5.3" + }, + "engines": { + "node": ">=18.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/harlan-zw" + } + }, + "node_modules/@nuxtjs/sitemap/node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==" + }, + "node_modules/@open-draft/deferred-promise": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@open-draft/deferred-promise/-/deferred-promise-2.2.0.tgz", + "integrity": "sha512-CecwLWx3rhxVQF6V4bAgPS5t+So2sTbPgAzafKkVizyi7tlwpcFpdFqq+wqF2OwNBmqFuu6tOyouTuxgpMfzmA==" + }, + "node_modules/@open-draft/logger": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@open-draft/logger/-/logger-0.3.0.tgz", + "integrity": "sha512-X2g45fzhxH238HKO4xbSr7+wBS8Fvw6ixhTDuvLd5mqh6bJJCFAPwU9mPDxbcrRtfxv4u5IHCEH77BmxvXmmxQ==", + "dependencies": { + "is-node-process": "^1.2.0", + "outvariant": "^1.4.0" + } + }, + "node_modules/@open-draft/until": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@open-draft/until/-/until-2.1.0.tgz", + "integrity": "sha512-U69T3ItWHvLwGg5eJ0n3I62nWuE6ilHlmz7zM0npLBRvPRd7e6NYmg54vvRtP5mZG7kZqZCFVdsTWo7BPtBujg==" + }, + "node_modules/@parcel/watcher": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.5.1.tgz", + "integrity": "sha512-dfUnCxiN9H4ap84DvD2ubjw+3vUNpstxa0TneY/Paat8a3R4uQZDLSvWjmznAY/DoahqTHl9V46HF/Zs3F29pg==", + "hasInstallScript": true, + "dependencies": { + "detect-libc": "^1.0.3", + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "node-addon-api": "^7.0.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "@parcel/watcher-android-arm64": "2.5.1", + "@parcel/watcher-darwin-arm64": "2.5.1", + "@parcel/watcher-darwin-x64": "2.5.1", + "@parcel/watcher-freebsd-x64": "2.5.1", + "@parcel/watcher-linux-arm-glibc": "2.5.1", + "@parcel/watcher-linux-arm-musl": "2.5.1", + "@parcel/watcher-linux-arm64-glibc": "2.5.1", + "@parcel/watcher-linux-arm64-musl": "2.5.1", + "@parcel/watcher-linux-x64-glibc": "2.5.1", + "@parcel/watcher-linux-x64-musl": "2.5.1", + "@parcel/watcher-win32-arm64": "2.5.1", + "@parcel/watcher-win32-ia32": "2.5.1", + "@parcel/watcher-win32-x64": "2.5.1" + } + }, + "node_modules/@parcel/watcher-android-arm64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.1.tgz", + "integrity": "sha512-KF8+j9nNbUN8vzOFDpRMsaKBHZ/mcjEjMToVMJOhTozkDonQFFrRcfdLWn6yWKCmJKmdVxSgHiYvTCef4/qcBA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-arm64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.1.tgz", + "integrity": "sha512-eAzPv5osDmZyBhou8PoF4i6RQXAfeKL9tjb3QzYuccXFMQU0ruIc/POh30ePnaOyD1UXdlKguHBmsTs53tVoPw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-x64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.1.tgz", + "integrity": "sha512-1ZXDthrnNmwv10A0/3AJNZ9JGlzrF82i3gNQcWOzd7nJ8aj+ILyW1MTxVk35Db0u91oD5Nlk9MBiujMlwmeXZg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-freebsd-x64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.1.tgz", + "integrity": "sha512-SI4eljM7Flp9yPuKi8W0ird8TI/JK6CSxju3NojVI6BjHsTyK7zxA9urjVjEKJ5MBYC+bLmMcbAWlZ+rFkLpJQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-glibc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.1.tgz", + "integrity": "sha512-RCdZlEyTs8geyBkkcnPWvtXLY44BCeZKmGYRtSgtwwnHR4dxfHRG3gR99XdMEdQ7KeiDdasJwwvNSF5jKtDwdA==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-musl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.1.tgz", + "integrity": "sha512-6E+m/Mm1t1yhB8X412stiKFG3XykmgdIOqhjWj+VL8oHkKABfu/gjFj8DvLrYVHSBNC+/u5PeNrujiSQ1zwd1Q==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-glibc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.1.tgz", + "integrity": "sha512-LrGp+f02yU3BN9A+DGuY3v3bmnFUggAITBGriZHUREfNEzZh/GO06FF5u2kx8x+GBEUYfyTGamol4j3m9ANe8w==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-musl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.1.tgz", + "integrity": "sha512-cFOjABi92pMYRXS7AcQv9/M1YuKRw8SZniCDw0ssQb/noPkRzA+HBDkwmyOJYp5wXcsTrhxO0zq1U11cK9jsFg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-glibc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.1.tgz", + "integrity": "sha512-GcESn8NZySmfwlTsIur+49yDqSny2IhPeZfXunQi48DMugKeZ7uy1FX83pO0X22sHntJ4Ub+9k34XQCX+oHt2A==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-musl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.1.tgz", + "integrity": "sha512-n0E2EQbatQ3bXhcH2D1XIAANAcTZkQICBPVaxMeaCVBtOpBZpWJuf7LwyWPSBDITb7In8mqQgJ7gH8CILCURXg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-wasm": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-wasm/-/watcher-wasm-2.5.1.tgz", + "integrity": "sha512-RJxlQQLkaMMIuWRozy+z2vEqbaQlCuaCgVZIUCzQLYggY22LZbP5Y1+ia+FD724Ids9e+XIyOLXLrLgQSHIthw==", + "bundleDependencies": [ + "napi-wasm" + ], + "dependencies": { + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "napi-wasm": "^1.1.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-wasm/node_modules/napi-wasm": { + "version": "1.1.0", + "inBundle": true, + "license": "MIT" + }, + "node_modules/@parcel/watcher-win32-arm64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.1.tgz", + "integrity": "sha512-RFzklRvmc3PkjKjry3hLF9wD7ppR4AKcWNzH7kXR7GUe0Igb3Nz8fyPwtZCSquGrhU5HhUNDr/mKBqj7tqA2Vw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-ia32": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.1.tgz", + "integrity": "sha512-c2KkcVN+NJmuA7CGlaGD1qJh1cLfDnQsHjE89E60vUEMlqduHGCdCLJCID5geFVM0dOtA3ZiIO8BoEQmzQVfpQ==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-x64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.1.tgz", + "integrity": "sha512-9lHBdJITeNR++EvSQVUcaZoWupyHfXe1jZvGZ06O/5MflPcuPLtEphScIBL+AiCWBO46tDSHzWyD0uDmmZqsgA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@pinia-plugin-persistedstate/nuxt": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@pinia-plugin-persistedstate/nuxt/-/nuxt-1.2.1.tgz", + "integrity": "sha512-q8s+4aQW/AjBMyeqLL48/qzBR5lcgnvvf1525ovNuKf6Wl9CsoLjPKh/5X8vNoKGwSow4gP7lVmdYPQRypgjgg==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "dev": true, + "dependencies": { + "@nuxt/kit": "^3.12.2", + "defu": "^6.1.4", + "pinia-plugin-persistedstate": ">=3.2.1" + }, + "peerDependencies": { + "@pinia/nuxt": "^0.5.0" + } + }, + "node_modules/@pinia/nuxt": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/@pinia/nuxt/-/nuxt-0.5.5.tgz", + "integrity": "sha512-wjxS7YqIesh4OLK+qE3ZjhdOJ5pYZQ+VlEmZNtTwzQn1Kavei/khovx7mzXVXNA/mvSPXVhb9xBzhyS3XMURtw==", + "dependencies": { + "@nuxt/kit": "^3.9.0", + "pinia": "^2.2.3" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@polka/url": { + "version": "1.0.0-next.28", + "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.28.tgz", + "integrity": "sha512-8LduaNlMZGwdZ6qWrKlfa+2M4gahzFkprZiAt2TF8uS0qQgBizKXpXURqvTJ4WtmupWxaLqjRb2UCTe72mu+Aw==" + }, + "node_modules/@redocly/ajv": { + "version": "8.11.2", + "resolved": "https://registry.npmjs.org/@redocly/ajv/-/ajv-8.11.2.tgz", + "integrity": "sha512-io1JpnwtIcvojV7QKDUSIuMN/ikdOUd1ReEnUnMKGfDVridQZ31J0MmIuqwuRjWDZfmvr+Q0MqCcfHM2gTivOg==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js-replace": "^1.0.1" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/@redocly/config": { + "version": "0.20.3", + "resolved": "https://registry.npmjs.org/@redocly/config/-/config-0.20.3.tgz", + "integrity": "sha512-Nyyv1Bj7GgYwj/l46O0nkH1GTKWbO3Ixe7KFcn021aZipkZd+z8Vlu1BwkhqtVgivcKaClaExtWU/lDHkjBzag==" + }, + "node_modules/@redocly/openapi-core": { + "version": "1.30.0", + "resolved": "https://registry.npmjs.org/@redocly/openapi-core/-/openapi-core-1.30.0.tgz", + "integrity": "sha512-ZZc+FXKoQXJ9cOR7qRKHxOfKOsGCj2wSodklKdtM2FofzyjzvIwn1rksD5+9iJxvHuORPOPv3ppAHcM+iMr/Ag==", + "dependencies": { + "@redocly/ajv": "^8.11.2", + "@redocly/config": "^0.20.1", + "colorette": "^1.2.0", + "https-proxy-agent": "^7.0.5", + "js-levenshtein": "^1.1.6", + "js-yaml": "^4.1.0", + "minimatch": "^5.0.1", + "pluralize": "^8.0.0", + "yaml-ast-parser": "0.0.43" + }, + "engines": { + "node": ">=18.17.0", + "npm": ">=9.5.0" + } + }, + "node_modules/@redocly/openapi-core/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@redocly/openapi-core/node_modules/colorette": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", + "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==" + }, + "node_modules/@redocly/openapi-core/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@rollup/plugin-alias": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-alias/-/plugin-alias-5.1.1.tgz", + "integrity": "sha512-PR9zDb+rOzkRb2VD+EuKB7UC41vU5DIwZ5qqCpk0KJudcWAyi8rvYOhS7+L5aZCspw1stTViLgN5v6FF1p5cgQ==", + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-commonjs": { + "version": "28.0.2", + "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-28.0.2.tgz", + "integrity": "sha512-BEFI2EDqzl+vA1rl97IDRZ61AIwGH093d9nz8+dThxJNH8oSoB7MjWvPCX3dkaK1/RCJ/1v/R1XB15FuSs0fQw==", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "commondir": "^1.0.1", + "estree-walker": "^2.0.2", + "fdir": "^6.2.0", + "is-reference": "1.2.1", + "magic-string": "^0.30.3", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=16.0.0 || 14 >= 14.17" + }, + "peerDependencies": { + "rollup": "^2.68.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-commonjs/node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" + }, + "node_modules/@rollup/plugin-inject": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/@rollup/plugin-inject/-/plugin-inject-5.0.5.tgz", + "integrity": "sha512-2+DEJbNBoPROPkgTDNe8/1YXWcqxbN5DTjASVIOx8HS+pITXushyNiBV56RB08zuptzz8gT3YfkqriTBVycepg==", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.3" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-inject/node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" + }, + "node_modules/@rollup/plugin-json": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-6.1.0.tgz", + "integrity": "sha512-EGI2te5ENk1coGeADSIwZ7G2Q8CJS2sF120T7jLw4xFw9n7wIOXHo+kIYRAoVpJAN+kmqZSoO3Fp4JtoNF4ReA==", + "dependencies": { + "@rollup/pluginutils": "^5.1.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-node-resolve": { + "version": "15.3.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.3.1.tgz", + "integrity": "sha512-tgg6b91pAybXHJQMAAwW9VuWBO6Thi+q7BCNARLwSqlmsHz0XYURtGvh/AuwSADXSI4h/2uHbs7s4FzlZDGSGA==", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "@types/resolve": "1.20.2", + "deepmerge": "^4.2.2", + "is-module": "^1.0.0", + "resolve": "^1.22.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.78.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-replace": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-6.0.2.tgz", + "integrity": "sha512-7QaYCf8bqF04dOy7w/eHmJeNExxTYwvKAmlSAH/EaWWUzbT0h5sbF6bktFoX/0F/0qwng5/dWFMyf3gzaM8DsQ==", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "magic-string": "^0.30.3" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-terser": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/@rollup/plugin-terser/-/plugin-terser-0.4.4.tgz", + "integrity": "sha512-XHeJC5Bgvs8LfukDwWZp7yeqin6ns8RTl2B9avbejt6tZqsqvVoWI7ZTQrcNsfKEDWBTnTxM8nMDkO2IFFbd0A==", + "dependencies": { + "serialize-javascript": "^6.0.1", + "smob": "^1.0.0", + "terser": "^5.17.4" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-yaml": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@rollup/plugin-yaml/-/plugin-yaml-4.1.2.tgz", + "integrity": "sha512-RpupciIeZMUqhgFE97ba0s98mOFS7CWzN3EJNhJkqSv9XLlWYtwVdtE6cDw6ASOF/sZVFS7kRJXftaqM2Vakdw==", + "dev": true, + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "js-yaml": "^4.1.0", + "tosource": "^2.0.0-alpha.3" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/pluginutils": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.4.tgz", + "integrity": "sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/pluginutils/node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.34.8.tgz", + "integrity": "sha512-q217OSE8DTp8AFHuNHXo0Y86e1wtlfVrXiAlwkIvGRQv9zbc6mE3sjIVfwI8sYUyNxwOg0j/Vm1RKM04JcWLJw==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.34.8.tgz", + "integrity": "sha512-Gigjz7mNWaOL9wCggvoK3jEIUUbGul656opstjaUSGC3eT0BM7PofdAJaBfPFWWkXNVAXbaQtC99OCg4sJv70Q==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.34.8.tgz", + "integrity": "sha512-02rVdZ5tgdUNRxIUrFdcMBZQoaPMrxtwSb+/hOfBdqkatYHR3lZ2A2EGyHq2sGOd0Owk80oV3snlDASC24He3Q==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.34.8.tgz", + "integrity": "sha512-qIP/elwR/tq/dYRx3lgwK31jkZvMiD6qUtOycLhTzCvrjbZ3LjQnEM9rNhSGpbLXVJYQ3rq39A6Re0h9tU2ynw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.34.8.tgz", + "integrity": "sha512-IQNVXL9iY6NniYbTaOKdrlVP3XIqazBgJOVkddzJlqnCpRi/yAeSOa8PLcECFSQochzqApIOE1GHNu3pCz+BDA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.34.8.tgz", + "integrity": "sha512-TYXcHghgnCqYFiE3FT5QwXtOZqDj5GmaFNTNt3jNC+vh22dc/ukG2cG+pi75QO4kACohZzidsq7yKTKwq/Jq7Q==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.34.8.tgz", + "integrity": "sha512-A4iphFGNkWRd+5m3VIGuqHnG3MVnqKe7Al57u9mwgbyZ2/xF9Jio72MaY7xxh+Y87VAHmGQr73qoKL9HPbXj1g==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.34.8.tgz", + "integrity": "sha512-S0lqKLfTm5u+QTxlFiAnb2J/2dgQqRy/XvziPtDd1rKZFXHTyYLoVL58M/XFwDI01AQCDIevGLbQrMAtdyanpA==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.34.8.tgz", + "integrity": "sha512-jpz9YOuPiSkL4G4pqKrus0pn9aYwpImGkosRKwNi+sJSkz+WU3anZe6hi73StLOQdfXYXC7hUfsQlTnjMd3s1A==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.34.8.tgz", + "integrity": "sha512-KdSfaROOUJXgTVxJNAZ3KwkRc5nggDk+06P6lgi1HLv1hskgvxHUKZ4xtwHkVYJ1Rep4GNo+uEfycCRRxht7+Q==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loongarch64-gnu": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.34.8.tgz", + "integrity": "sha512-NyF4gcxwkMFRjgXBM6g2lkT58OWztZvw5KkV2K0qqSnUEqCVcqdh2jN4gQrTn/YUpAcNKyFHfoOZEer9nwo6uQ==", + "cpu": [ + "loong64" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.34.8.tgz", + "integrity": "sha512-LMJc999GkhGvktHU85zNTDImZVUCJ1z/MbAJTnviiWmmjyckP5aQsHtcujMjpNdMZPT2rQEDBlJfubhs3jsMfw==", + "cpu": [ + "ppc64" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.34.8.tgz", + "integrity": "sha512-xAQCAHPj8nJq1PI3z8CIZzXuXCstquz7cIOL73HHdXiRcKk8Ywwqtx2wrIy23EcTn4aZ2fLJNBB8d0tQENPCmw==", + "cpu": [ + "riscv64" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.34.8.tgz", + "integrity": "sha512-DdePVk1NDEuc3fOe3dPPTb+rjMtuFw89gw6gVWxQFAuEqqSdDKnrwzZHrUYdac7A7dXl9Q2Vflxpme15gUWQFA==", + "cpu": [ + "s390x" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.34.8.tgz", + "integrity": "sha512-8y7ED8gjxITUltTUEJLQdgpbPh1sUQ0kMTmufRF/Ns5tI9TNMNlhWtmPKKHCU0SilX+3MJkZ0zERYYGIVBYHIA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.34.8.tgz", + "integrity": "sha512-SCXcP0ZpGFIe7Ge+McxY5zKxiEI5ra+GT3QRxL0pMMtxPfpyLAKleZODi1zdRHkz5/BhueUrYtYVgubqe9JBNQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.34.8.tgz", + "integrity": "sha512-YHYsgzZgFJzTRbth4h7Or0m5O74Yda+hLin0irAIobkLQFRQd1qWmnoVfwmKm9TXIZVAD0nZ+GEb2ICicLyCnQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.34.8.tgz", + "integrity": "sha512-r3NRQrXkHr4uWy5TOjTpTYojR9XmF0j/RYgKCef+Ag46FWUTltm5ziticv8LdNsDMehjJ543x/+TJAek/xBA2w==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.34.8.tgz", + "integrity": "sha512-U0FaE5O1BCpZSeE6gBl3c5ObhePQSfk9vDRToMmTkbhCOgW4jqvtS5LGyQ76L1fH8sM0keRp4uDTsbjiUyjk0g==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@sindresorhus/merge-streams": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-2.3.0.tgz", + "integrity": "sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@trysound/sax": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", + "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/@types/eslint": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.1.tgz", + "integrity": "sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==", + "peer": true, + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.7", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", + "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", + "peer": true, + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==" + }, + "node_modules/@types/http-proxy": { + "version": "1.17.16", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.16.tgz", + "integrity": "sha512-sdWoUajOB1cd0A8cRRQ1cfyWNbmFKLAqBB89Y8x5iYyG/mkJHc0YUH8pdWBy2omi9qtCpiIgGjuwO0dQST2l5w==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "peer": true + }, + "node_modules/@types/node": { + "version": "22.13.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.13.5.tgz", + "integrity": "sha512-+lTU0PxZXn0Dr1NBtC7Y8cR21AJr87dLLU953CWA6pMxxv/UDc7jYAY90upcrie1nRcD6XNG5HOYEDtgW5TxAg==", + "dependencies": { + "undici-types": "~6.20.0" + } + }, + "node_modules/@types/parse-path": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@types/parse-path/-/parse-path-7.0.3.tgz", + "integrity": "sha512-LriObC2+KYZD3FzCrgWGv/qufdUy4eXrxcLgQMfYXgPbLIecKIsVBaQgUPmxSSLcjmYbDTQbMgr6qr6l/eb7Bg==" + }, + "node_modules/@types/qs": { + "version": "6.9.18", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.18.tgz", + "integrity": "sha512-kK7dgTYDyGqS+e2Q4aK9X3D7q234CIZ1Bv0q/7Z5IwRDoADNU81xXJK/YVyLbLTZCoIwUoDoffFeF+p/eIklAA==", + "dev": true + }, + "node_modules/@types/resolve": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz", + "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==" + }, + "node_modules/@types/web-bluetooth": { + "version": "0.0.20", + "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.20.tgz", + "integrity": "sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow==" + }, + "node_modules/@unhead/dom": { + "version": "1.11.19", + "resolved": "https://registry.npmjs.org/@unhead/dom/-/dom-1.11.19.tgz", + "integrity": "sha512-udkgITdIblEWH3hsoFQMKW+6QXNO2qFZlZ2FI37bVAplQSnK/PytTPt/5oA1GWkoVwT0DsQNGHbU6kOg/3SlNg==", + "dependencies": { + "@unhead/schema": "1.11.19", + "@unhead/shared": "1.11.19" + }, + "funding": { + "url": "https://github.com/sponsors/harlan-zw" + } + }, + "node_modules/@unhead/schema": { + "version": "1.11.19", + "resolved": "https://registry.npmjs.org/@unhead/schema/-/schema-1.11.19.tgz", + "integrity": "sha512-7VhYHWK7xHgljdv+C01MepCSYZO2v6OhgsfKWPxRQBDDGfUKCUaChox0XMq3tFvXP6u4zSp6yzcDw2yxCfVMwg==", + "dependencies": { + "hookable": "^5.5.3", + "zhead": "^2.2.4" + }, + "funding": { + "url": "https://github.com/sponsors/harlan-zw" + } + }, + "node_modules/@unhead/shared": { + "version": "1.11.19", + "resolved": "https://registry.npmjs.org/@unhead/shared/-/shared-1.11.19.tgz", + "integrity": "sha512-UYE9EIeQLJOhx8vC71bWGkAGY4Zzq/H8qYlihowUg4NiFOfL+KKMnj96datb74PRxSDvHac9V3OLktNcsX2NuA==", + "dependencies": { + "@unhead/schema": "1.11.19", + "packrup": "^0.1.2" + }, + "funding": { + "url": "https://github.com/sponsors/harlan-zw" + } + }, + "node_modules/@unhead/ssr": { + "version": "1.11.19", + "resolved": "https://registry.npmjs.org/@unhead/ssr/-/ssr-1.11.19.tgz", + "integrity": "sha512-OH+rj6xBTdYyLsSntk4lEQyR+z57aEUZIiR2UpPl1zWGtBZPIr5zs3GY5+EyJ8t8e0zLemPR/Pu7VembTJ8o1w==", + "dependencies": { + "@unhead/schema": "1.11.19", + "@unhead/shared": "1.11.19" + }, + "funding": { + "url": "https://github.com/sponsors/harlan-zw" + } + }, + "node_modules/@unhead/vue": { + "version": "1.11.19", + "resolved": "https://registry.npmjs.org/@unhead/vue/-/vue-1.11.19.tgz", + "integrity": "sha512-/XATTP8wVLs3+2Pkj2crvr/Z55nybVQyOwISh+sAlr/48/9n3jGNiCZHKpHgL4MpOnGT4krwzWzbfhBO/G2BSQ==", + "dependencies": { + "@unhead/schema": "1.11.19", + "@unhead/shared": "1.11.19", + "hookable": "^5.5.3", + "unhead": "1.11.19" + }, + "funding": { + "url": "https://github.com/sponsors/harlan-zw" + }, + "peerDependencies": { + "vue": ">=2.7 || >=3" + } + }, + "node_modules/@unocss/astro": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/@unocss/astro/-/astro-0.65.4.tgz", + "integrity": "sha512-ex1CJOQ6yeftBEPcbA9/W47/YoV+mhQnrAoc8MA1VVrvvFKDitICFU62+nSt3NWRe53XL/fXnQbcbCb8AAgKlA==", + "dependencies": { + "@unocss/core": "0.65.4", + "@unocss/reset": "0.65.4", + "@unocss/vite": "0.65.4" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "vite": "^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0" + }, + "peerDependenciesMeta": { + "vite": { + "optional": true + } + } + }, + "node_modules/@unocss/cli": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/@unocss/cli/-/cli-0.65.4.tgz", + "integrity": "sha512-D/4hY5Hezh3QETscl4i+ojb+q8YU9Cl9AYJ8v3gsjc/GjTmEuIOD5V4x+/aN25vY5wjqgoApOgaIDGCV3b+2Ig==", + "dependencies": { + "@ampproject/remapping": "^2.3.0", + "@rollup/pluginutils": "^5.1.4", + "@unocss/config": "0.65.4", + "@unocss/core": "0.65.4", + "@unocss/preset-uno": "0.65.4", + "cac": "^6.7.14", + "chokidar": "^3.6.0", + "colorette": "^2.0.20", + "consola": "^3.3.1", + "magic-string": "^0.30.17", + "pathe": "^1.1.2", + "perfect-debounce": "^1.0.0", + "tinyglobby": "^0.2.10" + }, + "bin": { + "unocss": "bin/unocss.mjs" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/cli/node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/@unocss/cli/node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==" + }, + "node_modules/@unocss/cli/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@unocss/cli/node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/@unocss/config": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/@unocss/config/-/config-0.65.4.tgz", + "integrity": "sha512-/vCt4AXnJ4p4Ow6xqsYwdrelF9533yhZjzkg3SQmL3rKeSkicPayKpeq8nkYECdhDI03VTCVD+6oh5Y/26Hg7A==", + "dependencies": { + "@unocss/core": "0.65.4", + "unconfig": "~0.6.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/core": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/@unocss/core/-/core-0.65.4.tgz", + "integrity": "sha512-a2JOoFutrhqd5RgPhIR5FIXrDoHDU3gwCbPrpT6KYTjsqlSc/fv02yZ+JGOZFN3MCFhCmaPTs+idDFtwb3xU8g==", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/extractor-arbitrary-variants": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/@unocss/extractor-arbitrary-variants/-/extractor-arbitrary-variants-0.65.4.tgz", + "integrity": "sha512-GbvTgsDaHplfWfsQtOY8RrvEZvptmvR9k9NwQ5NsZBNIG1JepYVel93CVQvsxT5KioKcoWngXxTYLNOGyxLs0g==", + "dependencies": { + "@unocss/core": "0.65.4" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/inspector": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/@unocss/inspector/-/inspector-0.65.4.tgz", + "integrity": "sha512-byg9x549Ul17U4Ety7ufDwC0UOygypoq4QnLEPzhlZ0KJG1f7WmXKYanOhupeg3h4qCj6Nc/xdZYMGbHl9QRIg==", + "dependencies": { + "@unocss/core": "0.65.4", + "@unocss/rule-utils": "0.65.4", + "colorette": "^2.0.20", + "gzip-size": "^6.0.0", + "sirv": "^3.0.0", + "vue-flow-layout": "^0.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/inspector/node_modules/gzip-size": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz", + "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==", + "dependencies": { + "duplexer": "^0.1.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@unocss/inspector/node_modules/sirv": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/sirv/-/sirv-3.0.1.tgz", + "integrity": "sha512-FoqMu0NCGBLCcAkS1qA+XJIQTR6/JHfQXl+uGteNCQ76T91DMUjPa9xfmeqMY3z80nLSg9yQmNjK0Px6RWsH/A==", + "dependencies": { + "@polka/url": "^1.0.0-next.24", + "mrmime": "^2.0.0", + "totalist": "^3.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@unocss/nuxt": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/@unocss/nuxt/-/nuxt-0.65.4.tgz", + "integrity": "sha512-dEJdqgvrukgZJk1szxRW6MiIozUZDLeFyyxmnO+iW3loPlji9hu95j2KBVHaQWIzi39XqVSORi4lH5flvAz3Pg==", + "dependencies": { + "@nuxt/kit": "^3.15.0", + "@unocss/config": "0.65.4", + "@unocss/core": "0.65.4", + "@unocss/preset-attributify": "0.65.4", + "@unocss/preset-icons": "0.65.4", + "@unocss/preset-tagify": "0.65.4", + "@unocss/preset-typography": "0.65.4", + "@unocss/preset-uno": "0.65.4", + "@unocss/preset-web-fonts": "0.65.4", + "@unocss/preset-wind": "0.65.4", + "@unocss/reset": "0.65.4", + "@unocss/vite": "0.65.4", + "@unocss/webpack": "0.65.4", + "unocss": "0.65.4" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/postcss": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/@unocss/postcss/-/postcss-0.65.4.tgz", + "integrity": "sha512-8peDRo0+rNQsnKh/H2uZEVy67sV2cC16rAeSLpgbVJUMNfZlmF0rC2DNGsOV17uconUXSwz7+mGcHKNiv+8YlQ==", + "dependencies": { + "@unocss/config": "0.65.4", + "@unocss/core": "0.65.4", + "@unocss/rule-utils": "0.65.4", + "css-tree": "^3.1.0", + "postcss": "^8.4.49", + "tinyglobby": "^0.2.10" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "postcss": "^8.4.21" + } + }, + "node_modules/@unocss/postcss/node_modules/css-tree": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-3.1.0.tgz", + "integrity": "sha512-0eW44TGN5SQXU1mWSkKwFstI/22X2bG1nYzZTYMAWjylYURhse752YgbE4Cx46AC+bAvI+/dYTPRk1LqSUnu6w==", + "dependencies": { + "mdn-data": "2.12.2", + "source-map-js": "^1.0.1" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" + } + }, + "node_modules/@unocss/postcss/node_modules/mdn-data": { + "version": "2.12.2", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.12.2.tgz", + "integrity": "sha512-IEn+pegP1aManZuckezWCO+XZQDplx1366JoVhTpMpBB1sPey/SbveZQUosKiKiGYjg1wH4pMlNgXbCiYgihQA==" + }, + "node_modules/@unocss/preset-attributify": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/@unocss/preset-attributify/-/preset-attributify-0.65.4.tgz", + "integrity": "sha512-zxE9hJJ5b37phjdzDdZsxX559ZlmH9rFlY5LVEcQySTnsfY0znviHxPbD2iRpCBCRd+YC5HfFd2jb3XlnTKMJQ==", + "dependencies": { + "@unocss/core": "0.65.4" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-icons": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/@unocss/preset-icons/-/preset-icons-0.65.4.tgz", + "integrity": "sha512-5sSzTN72X2Ag3VH48xY1pYudeWnql9jqdMiwgZuLJcmvETBNGelXy2wGxm7tsUUEx/l40Yr04Ck8XRPGT9jLBw==", + "dependencies": { + "@iconify/utils": "^2.2.1", + "@unocss/core": "0.65.4", + "ofetch": "^1.4.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-mini": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/@unocss/preset-mini/-/preset-mini-0.65.4.tgz", + "integrity": "sha512-dcO2PzSl87qN1KdQWcfZDIKEhpdFeImWbYfiXtE7k6pi1393FJkdHEopgI/1ZciIQN1CkTvQJ5c7EpEVWftYRA==", + "dependencies": { + "@unocss/core": "0.65.4", + "@unocss/extractor-arbitrary-variants": "0.65.4", + "@unocss/rule-utils": "0.65.4" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-tagify": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/@unocss/preset-tagify/-/preset-tagify-0.65.4.tgz", + "integrity": "sha512-qll6koqdFEkvmz594vKnxj9+3nfM3ugkJxYHrTkqtwx7DAnTgtM8fInFFGZelvjwUzR3o3+Zw6uMhFkLTVTfvg==", + "dependencies": { + "@unocss/core": "0.65.4" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-typography": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/@unocss/preset-typography/-/preset-typography-0.65.4.tgz", + "integrity": "sha512-Dl940ATrviWD9Vh+4fcN0QZXb6wA7al+c7QkdVAzW7I+NtdN2ELvLcN0cY22KnLRpwztzmg52Qp2J/1QnqrLTw==", + "dependencies": { + "@unocss/core": "0.65.4", + "@unocss/preset-mini": "0.65.4" + } + }, + "node_modules/@unocss/preset-uno": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/@unocss/preset-uno/-/preset-uno-0.65.4.tgz", + "integrity": "sha512-56bdBtf476i+soQCQmT36uGzcF2z+7DGCnG1hwWiw6XAbL6gmRMQsubwi1c8z8TcTQNBsOFUnOziFil0gbWufw==", + "dependencies": { + "@unocss/core": "0.65.4", + "@unocss/preset-mini": "0.65.4", + "@unocss/preset-wind": "0.65.4", + "@unocss/rule-utils": "0.65.4" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-web-fonts": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/@unocss/preset-web-fonts/-/preset-web-fonts-0.65.4.tgz", + "integrity": "sha512-UB/MvXHUTqMNVH1bbiKZ/ZtZUI5tsYlTYAvBrnXPO1Cztuwr8hJKSi4RCfI9g+YYtKHX4uYuxUbW5bcN85gmBQ==", + "dependencies": { + "@unocss/core": "0.65.4", + "ofetch": "^1.4.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-wind": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/@unocss/preset-wind/-/preset-wind-0.65.4.tgz", + "integrity": "sha512-0rbNbw5E8Lvh2yf4R1Mq+lxI/wL5Tm6+r+crE0uAAhCPe9kxPHW4k+x1cWKDIwq6Vudlm3cNX85N49wN5tYgdA==", + "dependencies": { + "@unocss/core": "0.65.4", + "@unocss/preset-mini": "0.65.4", + "@unocss/rule-utils": "0.65.4" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/reset": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/@unocss/reset/-/reset-0.65.4.tgz", + "integrity": "sha512-m685H0KFvVMz6R2i5GDIFv4RS9Z7y2G8hJK7xg2OWli+7w8l2ZMihYvXKofPsst4q/ms8EgKXpWc/qqUOTucvA==", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/rule-utils": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/@unocss/rule-utils/-/rule-utils-0.65.4.tgz", + "integrity": "sha512-+EzdJEWcqGcO6HwbBTe7vEdBRpuKkBiz4MycQeLD6GEio04T45y6VHHO7/WTqxltbO4YwwW9/s2TKRMxKtoG8g==", + "dependencies": { + "@unocss/core": "^0.65.4", + "magic-string": "^0.30.17" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/transformer-attributify-jsx": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/@unocss/transformer-attributify-jsx/-/transformer-attributify-jsx-0.65.4.tgz", + "integrity": "sha512-n438EzWdTKlLCOlAUSpFjmH6FflctqzIReMzMZSJDkmkorymc+C5GpjN3Nty2cKRJXIl6Vwq0oxPuB59RT+FIw==", + "dependencies": { + "@unocss/core": "0.65.4" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/transformer-compile-class": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/@unocss/transformer-compile-class/-/transformer-compile-class-0.65.4.tgz", + "integrity": "sha512-n1yHDC/iIbcj/9fBUTXkSoASKfLBuRoCN7P1a0ecPc8Gu+uOGfoxafOhrlqC+tpD3hlQGoL+0h74BHSKh+L23Q==", + "dependencies": { + "@unocss/core": "0.65.4" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/transformer-directives": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/@unocss/transformer-directives/-/transformer-directives-0.65.4.tgz", + "integrity": "sha512-zkoDEwzPkgXi6ohW7P11gbArwfTRMZ9knYSUYoPEltQz+UZYzeRQ85exiAmdz5MsbCAuhQEr577Kd/CWfhjEuA==", + "dependencies": { + "@unocss/core": "0.65.4", + "@unocss/rule-utils": "0.65.4", + "css-tree": "^3.1.0" + } + }, + "node_modules/@unocss/transformer-directives/node_modules/css-tree": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-3.1.0.tgz", + "integrity": "sha512-0eW44TGN5SQXU1mWSkKwFstI/22X2bG1nYzZTYMAWjylYURhse752YgbE4Cx46AC+bAvI+/dYTPRk1LqSUnu6w==", + "dependencies": { + "mdn-data": "2.12.2", + "source-map-js": "^1.0.1" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" + } + }, + "node_modules/@unocss/transformer-directives/node_modules/mdn-data": { + "version": "2.12.2", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.12.2.tgz", + "integrity": "sha512-IEn+pegP1aManZuckezWCO+XZQDplx1366JoVhTpMpBB1sPey/SbveZQUosKiKiGYjg1wH4pMlNgXbCiYgihQA==" + }, + "node_modules/@unocss/transformer-variant-group": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/@unocss/transformer-variant-group/-/transformer-variant-group-0.65.4.tgz", + "integrity": "sha512-ggO6xMGeOeoD5GHS2xXBJrYFuzqyiZ25tM0zHAMJn9QU9GIu1NwWvcXluvLCF/MRIygBJGPpAE98aEICI6ifEA==", + "dependencies": { + "@unocss/core": "0.65.4" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/vite": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/@unocss/vite/-/vite-0.65.4.tgz", + "integrity": "sha512-02pRcVLfb5UUxMJwudnjS/0ZQdSlskjuXVHdpZpLBZCA8hhoru2uEOsPbUOBRNNMjDj6ld00pmgk/+im07M35Q==", + "dependencies": { + "@ampproject/remapping": "^2.3.0", + "@rollup/pluginutils": "^5.1.4", + "@unocss/config": "0.65.4", + "@unocss/core": "0.65.4", + "@unocss/inspector": "0.65.4", + "chokidar": "^3.6.0", + "magic-string": "^0.30.17", + "tinyglobby": "^0.2.10" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "vite": "^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0" + } + }, + "node_modules/@unocss/vite/node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/@unocss/vite/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@unocss/vite/node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/@unocss/webpack": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/@unocss/webpack/-/webpack-0.65.4.tgz", + "integrity": "sha512-cnd0qnJdSxYlQ+zuF0Qad3xZk2X0/p70XLzlA4TaBZuKa2OPJOyulfJwJSqcrSc4PXYOd9B/B8nXJk8WQ1yBHQ==", + "dependencies": { + "@ampproject/remapping": "^2.3.0", + "@rollup/pluginutils": "^5.1.4", + "@unocss/config": "0.65.4", + "@unocss/core": "0.65.4", + "chokidar": "^3.6.0", + "magic-string": "^0.30.17", + "tinyglobby": "^0.2.10", + "unplugin": "^2.1.0", + "webpack-sources": "^3.2.3" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "webpack": "^4 || ^5" + } + }, + "node_modules/@unocss/webpack/node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/@unocss/webpack/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@unocss/webpack/node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/@unocss/webpack/node_modules/unplugin": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-2.2.0.tgz", + "integrity": "sha512-m1ekpSwuOT5hxkJeZGRxO7gXbXT3gF26NjQ7GdVHoLoF8/nopLcd/QfPigpCy7i51oFHiRJg/CyHhj4vs2+KGw==", + "dependencies": { + "acorn": "^8.14.0", + "webpack-virtual-modules": "^0.6.2" + }, + "engines": { + "node": ">=18.12.0" + } + }, + "node_modules/@vercel/nft": { + "version": "0.27.10", + "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.27.10.tgz", + "integrity": "sha512-zbaF9Wp/NsZtKLE4uVmL3FyfFwlpDyuymQM1kPbeT0mVOHKDQQNjnnfslB3REg3oZprmNFJuh3pkHBk2qAaizg==", + "dependencies": { + "@mapbox/node-pre-gyp": "^2.0.0-rc.0", + "@rollup/pluginutils": "^5.1.3", + "acorn": "^8.6.0", + "acorn-import-attributes": "^1.9.5", + "async-sema": "^3.1.1", + "bindings": "^1.4.0", + "estree-walker": "2.0.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "node-gyp-build": "^4.2.2", + "picomatch": "^4.0.2", + "resolve-from": "^5.0.0" + }, + "bin": { + "nft": "out/cli.js" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/@vercel/nft/node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" + }, + "node_modules/@vitejs/plugin-vue": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.2.1.tgz", + "integrity": "sha512-cxh314tzaWwOLqVes2gnnCtvBDcM1UMdn+iFR+UjAn411dPT3tOmqrJjbMd7koZpMAmBM/GqeV4n9ge7JSiJJQ==", + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "vite": "^5.0.0 || ^6.0.0", + "vue": "^3.2.25" + } + }, + "node_modules/@vitejs/plugin-vue-jsx": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue-jsx/-/plugin-vue-jsx-4.1.1.tgz", + "integrity": "sha512-uMJqv/7u1zz/9NbWAD3XdjaY20tKTf17XVfQ9zq4wY1BjsB/PjpJPMe2xiG39QpP4ZdhYNhm4Hvo66uJrykNLA==", + "dependencies": { + "@babel/core": "^7.26.0", + "@babel/plugin-transform-typescript": "^7.25.9", + "@vue/babel-plugin-jsx": "^1.2.5" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "vite": "^5.0.0 || ^6.0.0", + "vue": "^3.0.0" + } + }, + "node_modules/@vue-macros/common": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/@vue-macros/common/-/common-1.16.1.tgz", + "integrity": "sha512-Pn/AWMTjoMYuquepLZP813BIcq8DTZiNCoaceuNlvaYuOTd8DqBZWc5u0uOMQZMInwME1mdSmmBAcTluiV9Jtg==", + "dependencies": { + "@vue/compiler-sfc": "^3.5.13", + "ast-kit": "^1.4.0", + "local-pkg": "^1.0.0", + "magic-string-ast": "^0.7.0", + "pathe": "^2.0.2", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=16.14.0" + }, + "peerDependencies": { + "vue": "^2.7.0 || ^3.2.25" + }, + "peerDependenciesMeta": { + "vue": { + "optional": true + } + } + }, + "node_modules/@vue-macros/common/node_modules/local-pkg": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-1.0.0.tgz", + "integrity": "sha512-bbgPw/wmroJsil/GgL4qjDzs5YLTBMQ99weRsok1XCDccQeehbHA/I1oRvk2NPtr7KGZgT/Y5tPRnAtMqeG2Kg==", + "dependencies": { + "mlly": "^1.7.3", + "pkg-types": "^1.3.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vue/babel-helper-vue-transform-on": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/@vue/babel-helper-vue-transform-on/-/babel-helper-vue-transform-on-1.2.5.tgz", + "integrity": "sha512-lOz4t39ZdmU4DJAa2hwPYmKc8EsuGa2U0L9KaZaOJUt0UwQNjNA3AZTq6uEivhOKhhG1Wvy96SvYBoFmCg3uuw==" + }, + "node_modules/@vue/babel-plugin-jsx": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/@vue/babel-plugin-jsx/-/babel-plugin-jsx-1.2.5.tgz", + "integrity": "sha512-zTrNmOd4939H9KsRIGmmzn3q2zvv1mjxkYZHgqHZgDrXz5B1Q3WyGEjO2f+JrmKghvl1JIRcvo63LgM1kH5zFg==", + "dependencies": { + "@babel/helper-module-imports": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/plugin-syntax-jsx": "^7.24.7", + "@babel/template": "^7.25.0", + "@babel/traverse": "^7.25.6", + "@babel/types": "^7.25.6", + "@vue/babel-helper-vue-transform-on": "1.2.5", + "@vue/babel-plugin-resolve-type": "1.2.5", + "html-tags": "^3.3.1", + "svg-tags": "^1.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + } + } + }, + "node_modules/@vue/babel-plugin-resolve-type": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/@vue/babel-plugin-resolve-type/-/babel-plugin-resolve-type-1.2.5.tgz", + "integrity": "sha512-U/ibkQrf5sx0XXRnUZD1mo5F7PkpKyTbfXM3a3rC4YnUz6crHEz9Jg09jzzL6QYlXNto/9CePdOg/c87O4Nlfg==", + "dependencies": { + "@babel/code-frame": "^7.24.7", + "@babel/helper-module-imports": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/parser": "^7.25.6", + "@vue/compiler-sfc": "^3.5.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@vue/compiler-core": { + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.13.tgz", + "integrity": "sha512-oOdAkwqUfW1WqpwSYJce06wvt6HljgY3fGeM9NcVA1HaYOij3mZG9Rkysn0OHuyUAGMbEbARIpsG+LPVlBJ5/Q==", + "dependencies": { + "@babel/parser": "^7.25.3", + "@vue/shared": "3.5.13", + "entities": "^4.5.0", + "estree-walker": "^2.0.2", + "source-map-js": "^1.2.0" + } + }, + "node_modules/@vue/compiler-core/node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" + }, + "node_modules/@vue/compiler-dom": { + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.13.tgz", + "integrity": "sha512-ZOJ46sMOKUjO3e94wPdCzQ6P1Lx/vhp2RSvfaab88Ajexs0AHeV0uasYhi99WPaogmBlRHNRuly8xV75cNTMDA==", + "dependencies": { + "@vue/compiler-core": "3.5.13", + "@vue/shared": "3.5.13" + } + }, + "node_modules/@vue/compiler-sfc": { + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.13.tgz", + "integrity": "sha512-6VdaljMpD82w6c2749Zhf5T9u5uLBWKnVue6XWxprDobftnletJ8+oel7sexFfM3qIxNmVE7LSFGTpv6obNyaQ==", + "dependencies": { + "@babel/parser": "^7.25.3", + "@vue/compiler-core": "3.5.13", + "@vue/compiler-dom": "3.5.13", + "@vue/compiler-ssr": "3.5.13", + "@vue/shared": "3.5.13", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.11", + "postcss": "^8.4.48", + "source-map-js": "^1.2.0" + } + }, + "node_modules/@vue/compiler-sfc/node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" + }, + "node_modules/@vue/compiler-ssr": { + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.13.tgz", + "integrity": "sha512-wMH6vrYHxQl/IybKJagqbquvxpWCuVYpoUJfCqFZwa/JY1GdATAQ+TgVtgrwwMZ0D07QhA99rs/EAAWfvG6KpA==", + "dependencies": { + "@vue/compiler-dom": "3.5.13", + "@vue/shared": "3.5.13" + } + }, + "node_modules/@vue/devtools-api": { + "version": "6.6.4", + "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.6.4.tgz", + "integrity": "sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==" + }, + "node_modules/@vue/devtools-core": { + "version": "7.6.8", + "resolved": "https://registry.npmjs.org/@vue/devtools-core/-/devtools-core-7.6.8.tgz", + "integrity": "sha512-8X4roysTwzQ94o7IobjVcOd1aZF5iunikrMrHPI2uUdigZCi2kFTQc7ffYiFiTNaLElCpjOhCnM7bo7aK1yU7A==", + "dependencies": { + "@vue/devtools-kit": "^7.6.8", + "@vue/devtools-shared": "^7.6.8", + "mitt": "^3.0.1", + "nanoid": "^5.0.9", + "pathe": "^1.1.2", + "vite-hot-client": "^0.2.4" + }, + "peerDependencies": { + "vue": "^3.0.0" + } + }, + "node_modules/@vue/devtools-core/node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==" + }, + "node_modules/@vue/devtools-kit": { + "version": "7.6.8", + "resolved": "https://registry.npmjs.org/@vue/devtools-kit/-/devtools-kit-7.6.8.tgz", + "integrity": "sha512-JhJ8M3sPU+v0P2iZBF2DkdmR9L0dnT5RXJabJqX6o8KtFs3tebdvfoXV2Dm3BFuqeECuMJIfF1aCzSt+WQ4wrw==", + "dependencies": { + "@vue/devtools-shared": "^7.6.8", + "birpc": "^0.2.19", + "hookable": "^5.5.3", + "mitt": "^3.0.1", + "perfect-debounce": "^1.0.0", + "speakingurl": "^14.0.1", + "superjson": "^2.2.1" + } + }, + "node_modules/@vue/devtools-shared": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/@vue/devtools-shared/-/devtools-shared-7.7.2.tgz", + "integrity": "sha512-uBFxnp8gwW2vD6FrJB8JZLUzVb6PNRG0B0jBnHsOH8uKyva2qINY8PTF5Te4QlTbMDqU5K6qtJDr6cNsKWhbOA==", + "dependencies": { + "rfdc": "^1.4.1" + } + }, + "node_modules/@vue/reactivity": { + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.13.tgz", + "integrity": "sha512-NaCwtw8o48B9I6L1zl2p41OHo/2Z4wqYGGIK1Khu5T7yxrn+ATOixn/Udn2m+6kZKB/J7cuT9DbWWhRxqixACg==", + "dependencies": { + "@vue/shared": "3.5.13" + } + }, + "node_modules/@vue/runtime-core": { + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.13.tgz", + "integrity": "sha512-Fj4YRQ3Az0WTZw1sFe+QDb0aXCerigEpw418pw1HBUKFtnQHWzwojaukAs2X/c9DQz4MQ4bsXTGlcpGxU/RCIw==", + "dependencies": { + "@vue/reactivity": "3.5.13", + "@vue/shared": "3.5.13" + } + }, + "node_modules/@vue/runtime-dom": { + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.13.tgz", + "integrity": "sha512-dLaj94s93NYLqjLiyFzVs9X6dWhTdAlEAciC3Moq7gzAc13VJUdCnjjRurNM6uTLFATRHexHCTu/Xp3eW6yoog==", + "dependencies": { + "@vue/reactivity": "3.5.13", + "@vue/runtime-core": "3.5.13", + "@vue/shared": "3.5.13", + "csstype": "^3.1.3" + } + }, + "node_modules/@vue/server-renderer": { + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.13.tgz", + "integrity": "sha512-wAi4IRJV/2SAW3htkTlB+dHeRmpTiVIK1OGLWV1yeStVSebSQQOwGwIq0D3ZIoBj2C2qpgz5+vX9iEBkTdk5YA==", + "dependencies": { + "@vue/compiler-ssr": "3.5.13", + "@vue/shared": "3.5.13" + }, + "peerDependencies": { + "vue": "3.5.13" + } + }, + "node_modules/@vue/shared": { + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.13.tgz", + "integrity": "sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ==" + }, + "node_modules/@vuetify/loader-shared": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@vuetify/loader-shared/-/loader-shared-2.1.0.tgz", + "integrity": "sha512-dNE6Ceym9ijFsmJKB7YGW0cxs7xbYV8+1LjU6jd4P14xOt/ji4Igtgzt0rJFbxu+ZhAzqz853lhB0z8V9Dy9cQ==", + "devOptional": true, + "dependencies": { + "upath": "^2.0.1" + }, + "peerDependencies": { + "vue": "^3.0.0", + "vuetify": "^3.0.0" + } + }, + "node_modules/@vueuse/core": { + "version": "12.7.0", + "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-12.7.0.tgz", + "integrity": "sha512-jtK5B7YjZXmkGNHjviyGO4s3ZtEhbzSgrbX+s5o+Lr8i2nYqNyHuPVOeTdM1/hZ5Tkxg/KktAuAVDDiHMraMVA==", + "dependencies": { + "@types/web-bluetooth": "^0.0.20", + "@vueuse/metadata": "12.7.0", + "@vueuse/shared": "12.7.0", + "vue": "^3.5.13" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/integrations": { + "version": "12.7.0", + "resolved": "https://registry.npmjs.org/@vueuse/integrations/-/integrations-12.7.0.tgz", + "integrity": "sha512-IEq7K4bCl7mn3uKJaWtNXnd1CAPaHLUMuyj5K1/k/pVcItt0VONZW8xiGxdIovJcQjkzOHjImhX5t6gija+0/g==", + "dependencies": { + "@vueuse/core": "12.7.0", + "@vueuse/shared": "12.7.0", + "vue": "^3.5.13" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "async-validator": "^4", + "axios": "^1", + "change-case": "^5", + "drauu": "^0.4", + "focus-trap": "^7", + "fuse.js": "^7", + "idb-keyval": "^6", + "jwt-decode": "^4", + "nprogress": "^0.2", + "qrcode": "^1.5", + "sortablejs": "^1", + "universal-cookie": "^7" + }, + "peerDependenciesMeta": { + "async-validator": { + "optional": true + }, + "axios": { + "optional": true + }, + "change-case": { + "optional": true + }, + "drauu": { + "optional": true + }, + "focus-trap": { + "optional": true + }, + "fuse.js": { + "optional": true + }, + "idb-keyval": { + "optional": true + }, + "jwt-decode": { + "optional": true + }, + "nprogress": { + "optional": true + }, + "qrcode": { + "optional": true + }, + "sortablejs": { + "optional": true + }, + "universal-cookie": { + "optional": true + } + } + }, + "node_modules/@vueuse/metadata": { + "version": "12.7.0", + "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-12.7.0.tgz", + "integrity": "sha512-4VvTH9mrjXqFN5LYa5YfqHVRI6j7R00Vy4995Rw7PQxyCL3z0Lli86iN4UemWqixxEvYfRjG+hF9wL8oLOn+3g==", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/nuxt": { + "version": "12.7.0", + "resolved": "https://registry.npmjs.org/@vueuse/nuxt/-/nuxt-12.7.0.tgz", + "integrity": "sha512-JG1yjJifcIZkFr+X1VmfNsdNZyHia/wXcpUHqVI2gwax5+bgmUlybqh9nStNGbX9NLUuPvPNNq043es5DlSJKg==", + "dependencies": { + "@nuxt/kit": "^3.15.4", + "@vueuse/core": "12.7.0", + "@vueuse/metadata": "12.7.0", + "local-pkg": "^1.0.0", + "vue": "^3.5.13" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "nuxt": "^3.0.0" + } + }, + "node_modules/@vueuse/nuxt/node_modules/local-pkg": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-1.0.0.tgz", + "integrity": "sha512-bbgPw/wmroJsil/GgL4qjDzs5YLTBMQ99weRsok1XCDccQeehbHA/I1oRvk2NPtr7KGZgT/Y5tPRnAtMqeG2Kg==", + "dependencies": { + "mlly": "^1.7.3", + "pkg-types": "^1.3.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/shared": { + "version": "12.7.0", + "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-12.7.0.tgz", + "integrity": "sha512-coLlUw2HHKsm7rPN6WqHJQr18WymN4wkA/3ThFaJ4v4gWGWAQQGK+MJxLuJTBs4mojQiazlVWAKNJNpUWGRkNw==", + "dependencies": { + "vue": "^3.5.13" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.14.1.tgz", + "integrity": "sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==", + "peer": true, + "dependencies": { + "@webassemblyjs/helper-numbers": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.13.2.tgz", + "integrity": "sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==", + "peer": true + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.13.2.tgz", + "integrity": "sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==", + "peer": true + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.14.1.tgz", + "integrity": "sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==", + "peer": true + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.13.2.tgz", + "integrity": "sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==", + "peer": true, + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.13.2", + "@webassemblyjs/helper-api-error": "1.13.2", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.13.2.tgz", + "integrity": "sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==", + "peer": true + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.14.1.tgz", + "integrity": "sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==", + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/wasm-gen": "1.14.1" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.13.2.tgz", + "integrity": "sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==", + "peer": true, + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.13.2.tgz", + "integrity": "sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==", + "peer": true, + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.13.2.tgz", + "integrity": "sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==", + "peer": true + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.14.1.tgz", + "integrity": "sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==", + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/helper-wasm-section": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-opt": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1", + "@webassemblyjs/wast-printer": "1.14.1" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.14.1.tgz", + "integrity": "sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==", + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.14.1.tgz", + "integrity": "sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==", + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.14.1.tgz", + "integrity": "sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==", + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-api-error": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.14.1.tgz", + "integrity": "sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==", + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "peer": true + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "peer": true + }, + "node_modules/abbrev": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-3.0.0.tgz", + "integrity": "sha512-+/kfrslGQ7TNV2ecmQwMJj/B65g5KVq1/L3SGVZ3tCYGqlzFuFCGBZJtMP99wH3NpEUyAjn0zPdPUg0D+DwrOA==", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/abort-controller": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", + "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "dependencies": { + "event-target-shim": "^5.0.0" + }, + "engines": { + "node": ">=6.5" + } + }, + "node_modules/ace-builds": { + "version": "1.39.0", + "resolved": "https://registry.npmjs.org/ace-builds/-/ace-builds-1.39.0.tgz", + "integrity": "sha512-MqoZojv4gpc5QyTMor/dS6kmruDV9db9LVZbCiT4qYz6WsDiv4qyG5f7ZPc+wjUl6oLMqgCAsBjo1whdSVyMlQ==" + }, + "node_modules/acorn": { + "version": "8.14.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", + "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-import-attributes": { + "version": "1.9.5", + "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", + "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", + "peerDependencies": { + "acorn": "^8" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/agent-base": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", + "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", + "engines": { + "node": ">= 14" + } + }, + "node_modules/ajv": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", + "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "peer": true, + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-escapes/node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", + "dev": true + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/anymatch/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/archiver": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-7.0.1.tgz", + "integrity": "sha512-ZcbTaIqJOfCc03QwD468Unz/5Ir8ATtvAHsK+FdXbDIbGfihqh9mrvdcYunQzqn4HrvWWaFyaxJhGZagaJJpPQ==", + "dependencies": { + "archiver-utils": "^5.0.2", + "async": "^3.2.4", + "buffer-crc32": "^1.0.0", + "readable-stream": "^4.0.0", + "readdir-glob": "^1.1.2", + "tar-stream": "^3.0.0", + "zip-stream": "^6.0.1" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/archiver-utils": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-5.0.2.tgz", + "integrity": "sha512-wuLJMmIBQYCsGZgYLTy5FIB2pF6Lfb6cXMSF8Qywwk3t20zWnAi7zLcQFdKQmIB8wyZpY5ER38x08GbwtR2cLA==", + "dependencies": { + "glob": "^10.0.0", + "graceful-fs": "^4.2.0", + "is-stream": "^2.0.1", + "lazystream": "^1.0.0", + "lodash": "^4.17.15", + "normalize-path": "^3.0.0", + "readable-stream": "^4.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/archiver-utils/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/archiver-utils/node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/archiver-utils/node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/archiver-utils/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/archiver-utils/node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + }, + "node_modules/ast-kit": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ast-kit/-/ast-kit-1.4.0.tgz", + "integrity": "sha512-BlGeOw73FDsX7z0eZE/wuuafxYoek2yzNJ6l6A1nsb4+z/p87TOPbHaWuN53kFKNuUXiCQa2M+xLF71IqQmRSw==", + "dependencies": { + "@babel/parser": "^7.26.5", + "pathe": "^2.0.2" + }, + "engines": { + "node": ">=16.14.0" + } + }, + "node_modules/ast-walker-scope": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/ast-walker-scope/-/ast-walker-scope-0.6.2.tgz", + "integrity": "sha512-1UWOyC50xI3QZkRuDj6PqDtpm1oHWtYs+NQGwqL/2R11eN3Q81PHAHPM0SWW3BNQm53UDwS//Jv8L4CCVLM1bQ==", + "dependencies": { + "@babel/parser": "^7.25.3", + "ast-kit": "^1.0.1" + }, + "engines": { + "node": ">=16.14.0" + } + }, + "node_modules/async": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==" + }, + "node_modules/async-sema": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/async-sema/-/async-sema-3.1.1.tgz", + "integrity": "sha512-tLRNUXati5MFePdAk8dw7Qt7DpxPB60ofAgn8WRhW6a2rcimZnYBP9oxHiv0OHy+Wz7kPMG+t4LGdt31+4EmGg==" + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "node_modules/autoprefixer": { + "version": "10.4.20", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.20.tgz", + "integrity": "sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "browserslist": "^4.23.3", + "caniuse-lite": "^1.0.30001646", + "fraction.js": "^4.3.7", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.1", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/axios": { + "version": "1.7.9", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.9.tgz", + "integrity": "sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw==", + "dependencies": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/b4a": { + "version": "1.6.7", + "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.7.tgz", + "integrity": "sha512-OnAYlL5b7LEkALw87fUVafQw5rVR9RjwGd4KUwNQ6DrrNmaVaUCgLipfVlzrPQ4tWOR9P0IXGNOx50jYCCdSJg==" + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/bare-events": { + "version": "2.5.4", + "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.5.4.tgz", + "integrity": "sha512-+gFfDkR8pj4/TrWCGUGWmJIkBwuxPS5F+a5yWjOHQt2hHvNZd5YLzadjmDUtFmMM4y429bnKLa8bYBMHcYdnQA==", + "optional": true + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "dependencies": { + "file-uri-to-path": "1.0.0" + } + }, + "node_modules/bintrees": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bintrees/-/bintrees-1.0.2.tgz", + "integrity": "sha512-VOMgTMwjAaUG580SXn3LacVgjurrbMme7ZZNYGSSV7mmtY6QQRh0Eg3pwIcntQ77DErK1L0NxkbetjcoXzVwKw==" + }, + "node_modules/birpc": { + "version": "0.2.19", + "resolved": "https://registry.npmjs.org/birpc/-/birpc-0.2.19.tgz", + "integrity": "sha512-5WeXXAvTmitV1RqJFppT5QtUiz2p1mRSYU000Jkft5ZUCLJIk4uQriYNO50HknxKwM6jd8utNc66K1qGIwwWBQ==", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.24.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.4.tgz", + "integrity": "sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001688", + "electron-to-chromium": "^1.5.73", + "node-releases": "^2.0.19", + "update-browserslist-db": "^1.1.1" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/buffer-crc32": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-1.0.0.tgz", + "integrity": "sha512-Db1SbgBS/fg/392AblrMJk97KggmvYhr4pB5ZIMTWtaivCPMWLkmb7m21cJvpvgK+J3nsU2CmmixNBZx4vFj/w==", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "node_modules/bundle-name": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-4.1.0.tgz", + "integrity": "sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q==", + "dependencies": { + "run-applescript": "^7.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bundle-require": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/bundle-require/-/bundle-require-5.1.0.tgz", + "integrity": "sha512-3WrrOuZiyaaZPWiEt4G3+IffISVC9HYlWueJEBWED4ZH4aIAC2PnkdnuRrR94M+w6yGWn4AglWtJtBI8YqvgoA==", + "dependencies": { + "load-tsconfig": "^0.2.3" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "peerDependencies": { + "esbuild": ">=0.18" + } + }, + "node_modules/c12": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/c12/-/c12-2.0.4.tgz", + "integrity": "sha512-3DbbhnFt0fKJHxU4tEUPmD1ahWE4PWPMomqfYsTJdrhpmEnRKJi3qSC4rO5U6E6zN1+pjBY7+z8fUmNRMaVKLw==", + "dependencies": { + "chokidar": "^4.0.3", + "confbox": "^0.1.8", + "defu": "^6.1.4", + "dotenv": "^16.4.7", + "giget": "^1.2.4", + "jiti": "^2.4.2", + "mlly": "^1.7.4", + "ohash": "^2.0.4", + "pathe": "^2.0.3", + "perfect-debounce": "^1.0.0", + "pkg-types": "^1.3.1", + "rc9": "^2.1.2" + }, + "peerDependencies": { + "magicast": "^0.3.5" + }, + "peerDependenciesMeta": { + "magicast": { + "optional": true + } + } + }, + "node_modules/c12/node_modules/ohash": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/ohash/-/ohash-2.0.4.tgz", + "integrity": "sha512-ac+SFwzhdHb0hp48/dbR7Jta39qfbuj7t3hApd9uyHS8bisHTfVzSEvjOVgV0L3zG7VR2/7JjkSGimP75D+hOQ==" + }, + "node_modules/cac": { + "version": "6.7.14", + "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", + "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.3.tgz", + "integrity": "sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/caniuse-api": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", + "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", + "dependencies": { + "browserslist": "^4.0.0", + "caniuse-lite": "^1.0.0", + "lodash.memoize": "^4.1.2", + "lodash.uniq": "^4.5.0" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001700", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001700.tgz", + "integrity": "sha512-2S6XIXwaE7K7erT8dY+kLQcpa5ms63XlRkMkReXjle+kf6c5g38vyMl+Z5y8dSxOFDhcFe+nxnn261PLxBSQsQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/chalk": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.4.1.tgz", + "integrity": "sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==", + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/change-case": { + "version": "5.4.4", + "resolved": "https://registry.npmjs.org/change-case/-/change-case-5.4.4.tgz", + "integrity": "sha512-HRQyTk2/YPEkt9TnUPbOpr64Uw3KOicFWPVBb+xiHvd6eBx/qPr9xqfBFDT8P2vWsvvz4jbEkfDe71W3VyNu2w==" + }, + "node_modules/chart.js": { + "version": "4.4.8", + "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.4.8.tgz", + "integrity": "sha512-IkGZlVpXP+83QpMm4uxEiGqSI7jFizwVtF3+n5Pc3k7sMO+tkd0qxh2OzLhenM0K80xtmAONWGBn082EiBQSDA==", + "dependencies": { + "@kurkle/color": "^0.3.0" + }, + "engines": { + "pnpm": ">=8" + } + }, + "node_modules/chokidar": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", + "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", + "dependencies": { + "readdirp": "^4.0.1" + }, + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "engines": { + "node": ">=10" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz", + "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==", + "peer": true, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/citty": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/citty/-/citty-0.1.6.tgz", + "integrity": "sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ==", + "dependencies": { + "consola": "^3.2.3" + } + }, + "node_modules/clipboardy": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-4.0.0.tgz", + "integrity": "sha512-5mOlNS0mhX0707P2I0aZ2V/cmHUEO/fL7VFLqszkhUsxt7RwnmrInf/eEQKlf5GzvYeHIjT+Ov1HRfNmymlG0w==", + "dependencies": { + "execa": "^8.0.1", + "is-wsl": "^3.1.0", + "is64bit": "^2.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clipboardy/node_modules/execa": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", + "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^8.0.1", + "human-signals": "^5.0.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^4.1.0", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": ">=16.17" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/clipboardy/node_modules/get-stream": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", + "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clipboardy/node_modules/human-signals": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", + "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", + "engines": { + "node": ">=16.17.0" + } + }, + "node_modules/clipboardy/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/cluster-key-slot": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/cluster-key-slot/-/cluster-key-slot-1.1.2.tgz", + "integrity": "sha512-RMr0FhtfXemyinomL4hrWcYJxmX6deFdCxpJzhDttxgO1+bcCnkk+9drydLVDmAMG7NE6aN/fl4F7ucU/90gAA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/colord": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", + "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==" + }, + "node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==" + }, + "node_modules/combine-errors": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/combine-errors/-/combine-errors-3.0.3.tgz", + "integrity": "sha512-C8ikRNRMygCwaTx+Ek3Yr+OuZzgZjduCOfSQBjbM8V3MfgcjSTeto/GXP6PAwKvJz/v15b7GHZvx5rOlczFw/Q==", + "dependencies": { + "custom-error-instance": "2.1.1", + "lodash.uniqby": "4.5.0" + } + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==" + }, + "node_modules/compatx": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/compatx/-/compatx-0.1.8.tgz", + "integrity": "sha512-jcbsEAR81Bt5s1qOFymBufmCbXCXbk0Ql+K5ouj6gCyx2yHlu6AgmGIi9HxfKixpUDO5bCFJUHQ5uM6ecbTebw==" + }, + "node_modules/compress-commons": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-6.0.2.tgz", + "integrity": "sha512-6FqVXeETqWPoGcfzrXb37E50NP0LXT8kAMu5ooZayhWWdgEY4lBEEcbQNXtkuKQsGduxiIcI4gOTsxTmuq/bSg==", + "dependencies": { + "crc-32": "^1.2.0", + "crc32-stream": "^6.0.0", + "is-stream": "^2.0.1", + "normalize-path": "^3.0.0", + "readable-stream": "^4.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/compress-commons/node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "node_modules/confbox": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.8.tgz", + "integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==" + }, + "node_modules/consola": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/consola/-/consola-3.4.0.tgz", + "integrity": "sha512-EiPU8G6dQG0GFHNR8ljnZFki/8a+cQwEQ+7wpxdChl02Q8HXlwEZWD5lqAF8vC2sEC3Tehr8hy7vErz88LHyUA==", + "engines": { + "node": "^14.18.0 || >=16.10.0" + } + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==" + }, + "node_modules/cookie-es": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/cookie-es/-/cookie-es-1.2.2.tgz", + "integrity": "sha512-+W7VmiVINB+ywl1HGXJXmrqkOhpKrIiVZV6tQuV54ZyQC7MMuBt81Vc336GMLoHBq5hV/F9eXgt5Mnx0Rha5Fg==" + }, + "node_modules/copy-anything": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-3.0.5.tgz", + "integrity": "sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==", + "dependencies": { + "is-what": "^4.1.8" + }, + "engines": { + "node": ">=12.13" + }, + "funding": { + "url": "https://github.com/sponsors/mesqueeb" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + }, + "node_modules/crc-32": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", + "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", + "bin": { + "crc32": "bin/crc32.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/crc32-stream": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-6.0.0.tgz", + "integrity": "sha512-piICUB6ei4IlTv1+653yq5+KoqfBYmj9bw6LqXoOneTMDXk5nM1qt12mFW1caG3LlJXEKW1Bp0WggEmIfQB34g==", + "dependencies": { + "crc-32": "^1.2.0", + "readable-stream": "^4.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/croner": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/croner/-/croner-9.0.0.tgz", + "integrity": "sha512-onMB0OkDjkXunhdW9htFjEhqrD54+M94i6ackoUkjHKbRnXdyEyKRelp4nJ1kAz32+s27jP1FsebpJCVl0BsvA==", + "engines": { + "node": ">=18.0" + } + }, + "node_modules/cronstrue": { + "version": "2.55.0", + "resolved": "https://registry.npmjs.org/cronstrue/-/cronstrue-2.55.0.tgz", + "integrity": "sha512-ZsBZNtQWb0Rk6CNGJlzpPBYqNE7t93Aez5ZCExLihGwmIpE5qThSTDQzDV8Z1Nw6ksmLkwI98nPKyciZ5sH7dw==", + "bin": { + "cronstrue": "bin/cli.js" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/crossws": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/crossws/-/crossws-0.3.4.tgz", + "integrity": "sha512-uj0O1ETYX1Bh6uSgktfPvwDiPYGQ3aI4qVsaC/LWpkIzGj1nUYm5FK3K+t11oOlpN01lGbprFCH4wBlKdJjVgw==", + "dependencies": { + "uncrypto": "^0.1.3" + } + }, + "node_modules/css-declaration-sorter": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-7.2.0.tgz", + "integrity": "sha512-h70rUM+3PNFuaBDTLe8wF/cdWu+dOZmb7pJt8Z2sedYbAcQVQV/tEchueg3GWxwqS0cxtbxmaHEdkNACqcvsow==", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.0.9" + } + }, + "node_modules/css-select": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", + "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-tree": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz", + "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==", + "dependencies": { + "mdn-data": "2.0.30", + "source-map-js": "^1.0.1" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" + } + }, + "node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssnano": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-7.0.6.tgz", + "integrity": "sha512-54woqx8SCbp8HwvNZYn68ZFAepuouZW4lTwiMVnBErM3VkO7/Sd4oTOt3Zz3bPx3kxQ36aISppyXj2Md4lg8bw==", + "dependencies": { + "cssnano-preset-default": "^7.0.6", + "lilconfig": "^3.1.2" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/cssnano" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/cssnano-preset-default": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-7.0.6.tgz", + "integrity": "sha512-ZzrgYupYxEvdGGuqL+JKOY70s7+saoNlHSCK/OGn1vB2pQK8KSET8jvenzItcY+kA7NoWvfbb/YhlzuzNKjOhQ==", + "dependencies": { + "browserslist": "^4.23.3", + "css-declaration-sorter": "^7.2.0", + "cssnano-utils": "^5.0.0", + "postcss-calc": "^10.0.2", + "postcss-colormin": "^7.0.2", + "postcss-convert-values": "^7.0.4", + "postcss-discard-comments": "^7.0.3", + "postcss-discard-duplicates": "^7.0.1", + "postcss-discard-empty": "^7.0.0", + "postcss-discard-overridden": "^7.0.0", + "postcss-merge-longhand": "^7.0.4", + "postcss-merge-rules": "^7.0.4", + "postcss-minify-font-values": "^7.0.0", + "postcss-minify-gradients": "^7.0.0", + "postcss-minify-params": "^7.0.2", + "postcss-minify-selectors": "^7.0.4", + "postcss-normalize-charset": "^7.0.0", + "postcss-normalize-display-values": "^7.0.0", + "postcss-normalize-positions": "^7.0.0", + "postcss-normalize-repeat-style": "^7.0.0", + "postcss-normalize-string": "^7.0.0", + "postcss-normalize-timing-functions": "^7.0.0", + "postcss-normalize-unicode": "^7.0.2", + "postcss-normalize-url": "^7.0.0", + "postcss-normalize-whitespace": "^7.0.0", + "postcss-ordered-values": "^7.0.1", + "postcss-reduce-initial": "^7.0.2", + "postcss-reduce-transforms": "^7.0.0", + "postcss-svgo": "^7.0.1", + "postcss-unique-selectors": "^7.0.3" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/cssnano-utils": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-5.0.0.tgz", + "integrity": "sha512-Uij0Xdxc24L6SirFr25MlwC2rCFX6scyUmuKpzI+JQ7cyqDEwD42fJ0xfB3yLfOnRDU5LKGgjQ9FA6LYh76GWQ==", + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/csso": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/csso/-/csso-5.0.5.tgz", + "integrity": "sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==", + "dependencies": { + "css-tree": "~2.2.0" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/csso/node_modules/css-tree": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.2.1.tgz", + "integrity": "sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==", + "dependencies": { + "mdn-data": "2.0.28", + "source-map-js": "^1.0.1" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/csso/node_modules/mdn-data": { + "version": "2.0.28", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.28.tgz", + "integrity": "sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==" + }, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" + }, + "node_modules/custom-error-instance": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/custom-error-instance/-/custom-error-instance-2.1.1.tgz", + "integrity": "sha512-p6JFxJc3M4OTD2li2qaHkDCw9SfMw82Ldr6OC9Je1aXiGfhx2W8p3GaoeaGrPJTUN9NirTM/KTxHWMUdR1rsUg==" + }, + "node_modules/date-fns": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-3.6.0.tgz", + "integrity": "sha512-fRHTG8g/Gif+kSh50gaGEdToemgfj74aRX3swtiouboip5JDLAyDE9F11nHMIcvOaXeOC6D7SpNhi7uFyB7Uww==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/kossnocorp" + } + }, + "node_modules/db0": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/db0/-/db0-0.2.4.tgz", + "integrity": "sha512-hIzftLH1nMsF95zSLjDLYLbE9huOXnLYUTAQ5yKF5amp0FpeD+B15XJa8BvGYSOeSCH4gl2WahB/y1FcUByQSg==", + "peerDependencies": { + "@electric-sql/pglite": "*", + "@libsql/client": "*", + "better-sqlite3": "*", + "drizzle-orm": "*", + "mysql2": "*", + "sqlite3": "*" + }, + "peerDependenciesMeta": { + "@electric-sql/pglite": { + "optional": true + }, + "@libsql/client": { + "optional": true + }, + "better-sqlite3": { + "optional": true + }, + "drizzle-orm": { + "optional": true + }, + "mysql2": { + "optional": true + }, + "sqlite3": { + "optional": true + } + } + }, + "node_modules/debug": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/deep-pick-omit": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/deep-pick-omit/-/deep-pick-omit-1.2.1.tgz", + "integrity": "sha512-2J6Kc/m3irCeqVG42T+SaUMesaK7oGWaedGnQQK/+O0gYc+2SP5bKh/KKTE7d7SJ+GCA9UUE1GRzh6oDe0EnGw==", + "dev": true + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/default-browser": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-5.2.1.tgz", + "integrity": "sha512-WY/3TUME0x3KPYdRRxEJJvXRHV4PyPoUsxtZa78lwItwRQRHhd2U9xOscaT/YTf8uCXIAjeJOFBVEh/7FtD8Xg==", + "dependencies": { + "bundle-name": "^4.1.0", + "default-browser-id": "^5.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/default-browser-id": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-5.0.0.tgz", + "integrity": "sha512-A6p/pu/6fyBcA1TRz/GqWYPViplrftcW2gZC9q79ngNCKAeR/X3gcEdXQHl4KNXV+3wgIJ1CPkJQ3IHM6lcsyA==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "engines": { + "node": ">=8" + } + }, + "node_modules/defu": { + "version": "6.1.4", + "resolved": "https://registry.npmjs.org/defu/-/defu-6.1.4.tgz", + "integrity": "sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==" + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/denque": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/denque/-/denque-2.1.0.tgz", + "integrity": "sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw==", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/destr": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/destr/-/destr-2.0.3.tgz", + "integrity": "sha512-2N3BOUU4gYMpTP24s5rF5iP7BDr7uNTCs4ozw3kf/eKfvWSIu93GEBi5m427YoyJoeOzQ5smuu4nNAPGb8idSQ==" + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "bin": { + "detect-libc": "bin/detect-libc.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/devalue": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/devalue/-/devalue-5.1.1.tgz", + "integrity": "sha512-maua5KUiapvEwiEAe+XnlZ3Rh0GD+qI1J/nb9vrJc3muPXvcF/8gXYTWF76+5DAqHyDUtOIImEuo0YKE9mshVw==" + }, + "node_modules/diff": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-7.0.0.tgz", + "integrity": "sha512-PJWHUb1RFevKCwaFA9RlG5tCd+FO5iRh9A8HEtkmBH2Li03iJriB6m6JIN4rGz3K3JLawI7/veA1xzRKP6ISBw==", + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/discontinuous-range": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/discontinuous-range/-/discontinuous-range-1.0.0.tgz", + "integrity": "sha512-c68LpLbO+7kP/b1Hr1qs8/BJ09F5khZGTxqxZuhzxpmwJKOgRFHJWIb9/KmqnqHhLdO55aOxFH/EGBvUQbL/RQ==" + }, + "node_modules/dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz", + "integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==", + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/dot-prop": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-9.0.0.tgz", + "integrity": "sha512-1gxPBJpI/pcjQhKgIU91II6Wkay+dLcN3M6rf2uwP8hRur3HtQXjVrdAK3sjC0piaEuxzMwjXChcETiJl47lAQ==", + "dependencies": { + "type-fest": "^4.18.2" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/dotenv": { + "version": "16.4.7", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.7.tgz", + "integrity": "sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==" + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" + }, + "node_modules/electron-to-chromium": { + "version": "1.5.103", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.103.tgz", + "integrity": "sha512-P6+XzIkfndgsrjROJWfSvVEgNHtPgbhVyTkwLjUM2HU/h7pZRORgaTlHqfAikqxKmdJMLW8fftrdGWbd/Ds0FA==" + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.18.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.1.tgz", + "integrity": "sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==", + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/error-stack-parser-es": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/error-stack-parser-es/-/error-stack-parser-es-0.1.5.tgz", + "integrity": "sha512-xHku1X40RO+fO8yJ8Wh2f2rZWVjqyhb1zgq1yZ8aZRQkv6OOKhKWRUaht3eSCUbAOBaKIgM+ykwFLE+QUxgGeg==", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/errx": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/errx/-/errx-0.1.0.tgz", + "integrity": "sha512-fZmsRiDNv07K6s2KkKFTiD2aIvECa7++PKyD5NC32tpRw46qZA3sOz+aM+/V9V0GDHxVTKLziveV4JhzBHDp9Q==" + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-module-lexer": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.6.0.tgz", + "integrity": "sha512-qqnD1yMU6tk/jnaMosogGySTZP8YtUgAffA9nMN+E/rjxcfRQ6IEk7IiozUjgxKoFHBGjTLnrHB/YC45r/59EQ==" + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/esbuild": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.24.2.tgz", + "integrity": "sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==", + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.24.2", + "@esbuild/android-arm": "0.24.2", + "@esbuild/android-arm64": "0.24.2", + "@esbuild/android-x64": "0.24.2", + "@esbuild/darwin-arm64": "0.24.2", + "@esbuild/darwin-x64": "0.24.2", + "@esbuild/freebsd-arm64": "0.24.2", + "@esbuild/freebsd-x64": "0.24.2", + "@esbuild/linux-arm": "0.24.2", + "@esbuild/linux-arm64": "0.24.2", + "@esbuild/linux-ia32": "0.24.2", + "@esbuild/linux-loong64": "0.24.2", + "@esbuild/linux-mips64el": "0.24.2", + "@esbuild/linux-ppc64": "0.24.2", + "@esbuild/linux-riscv64": "0.24.2", + "@esbuild/linux-s390x": "0.24.2", + "@esbuild/linux-x64": "0.24.2", + "@esbuild/netbsd-arm64": "0.24.2", + "@esbuild/netbsd-x64": "0.24.2", + "@esbuild/openbsd-arm64": "0.24.2", + "@esbuild/openbsd-x64": "0.24.2", + "@esbuild/sunos-x64": "0.24.2", + "@esbuild/win32-arm64": "0.24.2", + "@esbuild/win32-ia32": "0.24.2", + "@esbuild/win32-x64": "0.24.2" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/escodegen": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", + "dev": true, + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "peer": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-scope/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "peer": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dev": true, + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "peer": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "dependencies": { + "@types/estree": "^1.0.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/event-target-shim": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", + "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/execa": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz", + "integrity": "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.1", + "human-signals": "^4.3.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^3.0.7", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": "^14.18.0 || ^16.14.0 || >=18.0.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/externality": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/externality/-/externality-1.0.2.tgz", + "integrity": "sha512-LyExtJWKxtgVzmgtEHyQtLFpw1KFhQphF9nTG8TpAIVkiI/xQ3FJh75tRFLYl4hkn7BNIIdLJInuDAavX35pMw==", + "dependencies": { + "enhanced-resolve": "^5.14.1", + "mlly": "^1.3.0", + "pathe": "^1.1.1", + "ufo": "^1.1.2" + } + }, + "node_modules/externality/node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==" + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "node_modules/fast-fifo": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz", + "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==" + }, + "node_modules/fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.8" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-npm-meta": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/fast-npm-meta/-/fast-npm-meta-0.2.2.tgz", + "integrity": "sha512-E+fdxeaOQGo/CMWc9f4uHFfgUPJRAu7N3uB8GBvB3SDPAIWJK4GKyYhkAGFq+GYrcbKNfQIz5VVQyJnDuPPCrg==", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/fast-uri": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.6.tgz", + "integrity": "sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ], + "peer": true + }, + "node_modules/fastq": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.0.tgz", + "integrity": "sha512-7SFSRCNjBQIZH/xZR3iy5iQYR8aGBE0h3VG6/cwlbrpdciNYBMotQav8c1XI3HjHH+NikUpP53nPdlZSdWmFzA==", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fdir": { + "version": "6.4.3", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.3.tgz", + "integrity": "sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==", + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==" + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/flatted": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==" + }, + "node_modules/focus-trap": { + "version": "7.6.4", + "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.6.4.tgz", + "integrity": "sha512-xx560wGBk7seZ6y933idtjJQc1l+ck+pI3sKvhKozdBV1dRZoKhkW5xoCaFv9tQiX5RH1xfSxjuNu6g+lmN/gw==", + "dependencies": { + "tabbable": "^6.2.0" + } + }, + "node_modules/follow-redirects": { + "version": "1.15.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", + "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/foreground-child": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", + "dependencies": { + "cross-spawn": "^7.0.6", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/foreground-child/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/form-data": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.2.tgz", + "integrity": "sha512-hGfm/slu0ZabnNt4oaRZ6uREyfCj6P4fT/n6A1rGV+Z0VdGXjfOhVUpkn6qVQONHGIFwmveGXyDs75+nr6FM8w==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fraction.js": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs-extra": { + "version": "11.3.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.0.tgz", + "integrity": "sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fs-minipass/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/fuse.js": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/fuse.js/-/fuse.js-7.1.0.tgz", + "integrity": "sha512-trLf4SzuuUxfusZADLINj+dE8clK1frKdmqiJNb1Es75fmI5oY6X2mxLVUciLLjxqw/xr72Dhy+lER6dGd02FQ==", + "engines": { + "node": ">=10" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-port-please": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/get-port-please/-/get-port-please-3.1.2.tgz", + "integrity": "sha512-Gxc29eLs1fbn6LQ4jSU4vXjlwyZhF5HsGuMAa7gqBP4Rw4yxxltyDUuF5MBclFzDTXO+ACchGQoeela4DSfzdQ==" + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-stdin": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", + "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-tsconfig": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.10.0.tgz", + "integrity": "sha512-kGzZ3LWWQcGIAmg6iWvXn0ei6WDtV26wzHRMwDSzmAbcXrTEXxHy6IehI6/4eT6VRKyMP1eF1VqwrVUmE/LR7A==", + "dependencies": { + "resolve-pkg-maps": "^1.0.0" + }, + "funding": { + "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" + } + }, + "node_modules/giget": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/giget/-/giget-1.2.5.tgz", + "integrity": "sha512-r1ekGw/Bgpi3HLV3h1MRBIlSAdHoIMklpaQ3OQLFcRw9PwAj2rqigvIbg+dBUI51OxVI2jsEtDywDBjSiuf7Ug==", + "dependencies": { + "citty": "^0.1.6", + "consola": "^3.4.0", + "defu": "^6.1.4", + "node-fetch-native": "^1.6.6", + "nypm": "^0.5.4", + "pathe": "^2.0.3", + "tar": "^6.2.1" + }, + "bin": { + "giget": "dist/cli.mjs" + } + }, + "node_modules/git-config-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/git-config-path/-/git-config-path-2.0.0.tgz", + "integrity": "sha512-qc8h1KIQbJpp+241id3GuAtkdyJ+IK+LIVtkiFTRKRrmddDzs3SI9CvP1QYmWBFvm1I/PWRwj//of8bgAc0ltA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/git-up": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/git-up/-/git-up-8.0.1.tgz", + "integrity": "sha512-2XFu1uNZMSjkyetaF+8rqn6P0XqpMq/C+2ycjI6YwrIKcszZ5/WR4UubxjN0lILOKqLkLaHDaCr2B6fP1cke6g==", + "dependencies": { + "is-ssh": "^1.4.0", + "parse-url": "^9.2.0" + } + }, + "node_modules/git-url-parse": { + "version": "16.0.1", + "resolved": "https://registry.npmjs.org/git-url-parse/-/git-url-parse-16.0.1.tgz", + "integrity": "sha512-mcD36GrhAzX5JVOsIO52qNpgRyFzYWRbU1VSRFCvJt1IJvqfvH427wWw/CFqkWvjVPtdG5VTx4MKUeC5GeFPDQ==", + "dependencies": { + "git-up": "^8.0.0" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "peer": true + }, + "node_modules/global-directory": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/global-directory/-/global-directory-4.0.1.tgz", + "integrity": "sha512-wHTUcDUoZ1H5/0iVqEudYW4/kAlN5cZ3j/bXn0Dpbizl9iaUVeWSHqiOjsgk6OW2bkLclbBjzewBz6weQ1zA2Q==", + "dependencies": { + "ini": "4.1.1" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/globby": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-14.1.0.tgz", + "integrity": "sha512-0Ia46fDOaT7k4og1PDW4YbodWWr3scS2vAr2lTbsplOt2WkKp0vQbkI9wKis/T5LV/dqPjO3bpS/z6GTJB82LA==", + "dependencies": { + "@sindresorhus/merge-streams": "^2.1.0", + "fast-glob": "^3.3.3", + "ignore": "^7.0.3", + "path-type": "^6.0.0", + "slash": "^5.1.0", + "unicorn-magic": "^0.3.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + }, + "node_modules/gzip-size": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-7.0.0.tgz", + "integrity": "sha512-O1Ld7Dr+nqPnmGpdhzLmMTQ4vAsD+rHwMm1NLUmoUFFymBOMKxCCrtDxqdBRYXdeEPEi3SyoR4TizJLQrnKBNA==", + "dependencies": { + "duplexer": "^0.1.2" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/h3": { + "version": "1.15.1", + "resolved": "https://registry.npmjs.org/h3/-/h3-1.15.1.tgz", + "integrity": "sha512-+ORaOBttdUm1E2Uu/obAyCguiI7MbBvsLTndc3gyK3zU+SYLoZXlyCP9Xgy0gikkGufFLTZXCXD6+4BsufnmHA==", + "dependencies": { + "cookie-es": "^1.2.2", + "crossws": "^0.3.3", + "defu": "^6.1.4", + "destr": "^2.0.3", + "iron-webcrypto": "^1.2.1", + "node-mock-http": "^1.0.0", + "radix3": "^1.1.2", + "ufo": "^1.5.4", + "uncrypto": "^0.1.3" + } + }, + "node_modules/h3-compression": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/h3-compression/-/h3-compression-0.3.2.tgz", + "integrity": "sha512-B+yCKyDRnO0BXSfjAP4tCXJgJwmnKp3GyH5Yh66mY9KuOCrrGQSPk/gBFG2TgH7OyB/6mvqNZ1X0XNVuy0qRsw==", + "funding": { + "url": "https://github.com/sponsors/codedredd" + }, + "peerDependencies": { + "h3": "^1.6.0" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hookable": { + "version": "5.5.3", + "resolved": "https://registry.npmjs.org/hookable/-/hookable-5.5.3.tgz", + "integrity": "sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==" + }, + "node_modules/html-tags": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.3.1.tgz", + "integrity": "sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-shutdown": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/http-shutdown/-/http-shutdown-1.2.2.tgz", + "integrity": "sha512-S9wWkJ/VSY9/k4qcjG318bqJNruzE4HySUhFYknwmu6LBP97KLLfwNf+n4V1BHurvFNkSKLFnK/RsuUnRTf9Vw==", + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/http-status-codes": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/http-status-codes/-/http-status-codes-2.3.0.tgz", + "integrity": "sha512-RJ8XvFvpPM/Dmc5SV+dC4y5PCeOhT3x1Hq0NU3rjGeg5a/CqlhZ7uudknPwZFz4aeAXDcbAyaeP7GAo9lvngtA==" + }, + "node_modules/https-proxy-agent": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/httpxy": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/httpxy/-/httpxy-0.1.7.tgz", + "integrity": "sha512-pXNx8gnANKAndgga5ahefxc++tJvNL87CXoRwxn1cJE2ZkWEojF3tNfQIEhZX/vfpt+wzeAzpUI4qkediX1MLQ==" + }, + "node_modules/human-signals": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz", + "integrity": "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==", + "engines": { + "node": ">=14.18.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.3.tgz", + "integrity": "sha512-bAH5jbK/F3T3Jls4I0SO1hmPR0dKU0a7+SY6n1yzRtG54FLO8d6w/nxLFX2Nb7dBu6cCWXPaAME6cYqFUMmuCA==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/image-meta": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/image-meta/-/image-meta-0.2.1.tgz", + "integrity": "sha512-K6acvFaelNxx8wc2VjbIzXKDVB0Khs0QT35U6NkGfTdCmjLNcO2945m7RFNR9/RPVFm48hq7QPzK8uGH18HCGw==" + }, + "node_modules/immutable": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.0.3.tgz", + "integrity": "sha512-P8IdPQHq3lA1xVeBRi5VPqUm5HDgKnx0Ru51wZz5mjxHr5n3RWhjIpOFU7ybkUxfB+5IToy+OLaHYDBIWsv+uw==", + "devOptional": true + }, + "node_modules/importx": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/importx/-/importx-0.5.2.tgz", + "integrity": "sha512-YEwlK86Ml5WiTxN/ECUYC5U7jd1CisAVw7ya4i9ZppBoHfFkT2+hChhr3PE2fYxUKLkNyivxEQpa5Ruil1LJBQ==", + "dependencies": { + "bundle-require": "^5.1.0", + "debug": "^4.4.0", + "esbuild": "^0.20.2 || ^0.21.0 || ^0.22.0 || ^0.23.0 || ^0.24.0 || ^0.25.0", + "jiti": "^2.4.2", + "pathe": "^2.0.3", + "tsx": "^4.19.2" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/impound": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/impound/-/impound-0.2.0.tgz", + "integrity": "sha512-gXgeSyp9Hf7qG2/PLKmywHXyQf2xFrw+mJGpoj9DsAB9L7/MIKn+DeEx98UryWXdmbv8wUUPdcQof6qXnZoCGg==", + "dependencies": { + "@rollup/pluginutils": "^5.1.2", + "mlly": "^1.7.2", + "pathe": "^1.1.2", + "unenv": "^1.10.0", + "unplugin": "^1.14.1" + } + }, + "node_modules/impound/node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==" + }, + "node_modules/index-to-position": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/index-to-position/-/index-to-position-0.1.2.tgz", + "integrity": "sha512-MWDKS3AS1bGCHLBA2VLImJz42f7bJh8wQsTGCzI3j519/CASStoDONUBVz2I/VID0MpiX3SGSnbOD2xUalbE5g==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ini": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.1.tgz", + "integrity": "sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/ioredis": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/ioredis/-/ioredis-5.5.0.tgz", + "integrity": "sha512-7CutT89g23FfSa8MDoIFs2GYYa0PaNiW/OrT+nRyjRXHDZd17HmIgy+reOQ/yhh72NznNjGuS8kbCAcA4Ro4mw==", + "dependencies": { + "@ioredis/commands": "^1.1.1", + "cluster-key-slot": "^1.1.0", + "debug": "^4.3.4", + "denque": "^2.1.0", + "lodash.defaults": "^4.2.0", + "lodash.isarguments": "^3.1.0", + "redis-errors": "^1.2.0", + "redis-parser": "^3.0.0", + "standard-as-callback": "^2.1.0" + }, + "engines": { + "node": ">=12.22.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/ioredis" + } + }, + "node_modules/iron-webcrypto": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/iron-webcrypto/-/iron-webcrypto-1.2.1.tgz", + "integrity": "sha512-feOM6FaSr6rEABp/eDfVseKyTMDt+KGpeB35SkVn9Tyn0CqvVsY3EwI0v5i8nMHyJnzCIQf7nsy3p41TPkJZhg==", + "funding": { + "url": "https://github.com/sponsors/brc-dd" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-docker": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz", + "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-https": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-https/-/is-https-4.0.0.tgz", + "integrity": "sha512-FeMLiqf8E5g6SdiVJsPcNZX8k4h2fBs1wp5Bb6uaNxn58ufK1axBqQZdmAQsqh0t9BuwFObybrdVJh6MKyPlyg==", + "dev": true + }, + "node_modules/is-inside-container": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz", + "integrity": "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==", + "dependencies": { + "is-docker": "^3.0.0" + }, + "bin": { + "is-inside-container": "cli.js" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-installed-globally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-1.0.0.tgz", + "integrity": "sha512-K55T22lfpQ63N4KEN57jZUAaAYqYHEe8veb/TycJRk9DdSCLLcovXz/mL6mOnhQaZsQGwPhuFopdQIlqGSEjiQ==", + "dependencies": { + "global-directory": "^4.0.1", + "is-path-inside": "^4.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==" + }, + "node_modules/is-node-process": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-node-process/-/is-node-process-1.2.0.tgz", + "integrity": "sha512-Vg4o6/fqPxIjtxgUH5QLJhwZ7gW5diGCVlXpuUfELC62CuxM1iHcRe51f2W1FDy04Ai4KJkagKjx3XaqyfRKXw==" + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-path-inside": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz", + "integrity": "sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-reference": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz", + "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==", + "dependencies": { + "@types/estree": "*" + } + }, + "node_modules/is-ssh": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/is-ssh/-/is-ssh-1.4.1.tgz", + "integrity": "sha512-JNeu1wQsHjyHgn9NcWTaXq6zWSR6hqE0++zhfZlkFBbScNkyvxCdeV8sRkSBaeLKxmbpR21brail63ACNxJ0Tg==", + "dependencies": { + "protocols": "^2.0.1" + } + }, + "node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-what": { + "version": "4.1.16", + "resolved": "https://registry.npmjs.org/is-what/-/is-what-4.1.16.tgz", + "integrity": "sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A==", + "engines": { + "node": ">=12.13" + }, + "funding": { + "url": "https://github.com/sponsors/mesqueeb" + } + }, + "node_modules/is-wsl": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-3.1.0.tgz", + "integrity": "sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==", + "dependencies": { + "is-inside-container": "^1.0.0" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is64bit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is64bit/-/is64bit-2.0.0.tgz", + "integrity": "sha512-jv+8jaWCl0g2lSBkNSVXdzfBA0npK1HGC2KtWM9FumFRoGS94g3NbCCLVnCYHLjp4GrW2KZeeSTMo5ddtznmGw==", + "dependencies": { + "system-architecture": "^0.1.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "node_modules/jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "peer": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/jiti": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.4.2.tgz", + "integrity": "sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==", + "bin": { + "jiti": "lib/jiti-cli.mjs" + } + }, + "node_modules/jose": { + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/jose/-/jose-5.10.0.tgz", + "integrity": "sha512-s+3Al/p9g32Iq+oqXxkW//7jk2Vig6FF1CFqzVXoTUXt2qz89YWbL+OwS17NFYEvxC35n0FKeGO2LGYSxeM2Gg==", + "funding": { + "url": "https://github.com/sponsors/panva" + } + }, + "node_modules/js-base64": { + "version": "3.7.7", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-3.7.7.tgz", + "integrity": "sha512-7rCnleh0z2CkXhH67J8K1Ytz0b2Y+yxTPL+/KOJoa20hfnVQ/3/T6W/KflYI4bRHRagNeXeU2bkNGI3v1oS/lw==" + }, + "node_modules/js-levenshtein": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz", + "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "peer": true + }, + "node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonc-eslint-parser": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/jsonc-eslint-parser/-/jsonc-eslint-parser-2.4.0.tgz", + "integrity": "sha512-WYDyuc/uFcGp6YtM2H0uKmUwieOuzeE/5YocFJLnLfclZ4inf3mRn8ZVy1s7Hxji7Jxm6Ss8gqpexD/GlKoGgg==", + "dev": true, + "dependencies": { + "acorn": "^8.5.0", + "eslint-visitor-keys": "^3.0.0", + "espree": "^9.0.0", + "semver": "^7.3.5" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ota-meshi" + } + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jwt-decode": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jwt-decode/-/jwt-decode-4.0.0.tgz", + "integrity": "sha512-+KJGIyHgkGuIq3IEBNftfhW/LfWhXUIY6OmyVWjliu5KH1y0fw7VQ8YndE2O4qZdMSd9SqbnC8GOcZEy0Om7sA==", + "engines": { + "node": ">=18" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "engines": { + "node": ">=6" + } + }, + "node_modules/klona": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/knitwork": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/knitwork/-/knitwork-1.2.0.tgz", + "integrity": "sha512-xYSH7AvuQ6nXkq42x0v5S8/Iry+cfulBz/DJQzhIyESdLD7425jXsPy4vn5cCXU+HhRN2kVw51Vd1K6/By4BQg==" + }, + "node_modules/kolorist": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/kolorist/-/kolorist-1.8.0.tgz", + "integrity": "sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==" + }, + "node_modules/launch-editor": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.10.0.tgz", + "integrity": "sha512-D7dBRJo/qcGX9xlvt/6wUYzQxjh5G1RvZPgPv8vi4KRU99DVQL/oW7tnVOCCTm2HGeo3C5HvGE5Yrh6UBoZ0vA==", + "dependencies": { + "picocolors": "^1.0.0", + "shell-quote": "^1.8.1" + } + }, + "node_modules/lazystream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", + "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", + "dependencies": { + "readable-stream": "^2.0.5" + }, + "engines": { + "node": ">= 0.6.3" + } + }, + "node_modules/lazystream/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/lazystream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/lazystream/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/lilconfig": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.3.tgz", + "integrity": "sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "node_modules/listhen": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/listhen/-/listhen-1.9.0.tgz", + "integrity": "sha512-I8oW2+QL5KJo8zXNWX046M134WchxsXC7SawLPvRQpogCbkyQIaFxPE89A2HiwR7vAK2Dm2ERBAmyjTYGYEpBg==", + "dependencies": { + "@parcel/watcher": "^2.4.1", + "@parcel/watcher-wasm": "^2.4.1", + "citty": "^0.1.6", + "clipboardy": "^4.0.0", + "consola": "^3.2.3", + "crossws": ">=0.2.0 <0.4.0", + "defu": "^6.1.4", + "get-port-please": "^3.1.2", + "h3": "^1.12.0", + "http-shutdown": "^1.2.2", + "jiti": "^2.1.2", + "mlly": "^1.7.1", + "node-forge": "^1.3.1", + "pathe": "^1.1.2", + "std-env": "^3.7.0", + "ufo": "^1.5.4", + "untun": "^0.1.3", + "uqr": "^0.1.2" + }, + "bin": { + "listen": "bin/listhen.mjs", + "listhen": "bin/listhen.mjs" + } + }, + "node_modules/listhen/node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==" + }, + "node_modules/load-tsconfig": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/load-tsconfig/-/load-tsconfig-0.2.5.tgz", + "integrity": "sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "peer": true, + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/local-pkg": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.5.1.tgz", + "integrity": "sha512-9rrA30MRRP3gBD3HTGnC6cDFpaE1kVDWxWgqWJUN0RvDNAo+Nz/9GxB+nHOH0ifbVFy0hSA1V6vFDvnx54lTEQ==", + "dependencies": { + "mlly": "^1.7.3", + "pkg-types": "^1.2.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lodash._baseiteratee": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash._baseiteratee/-/lodash._baseiteratee-4.7.0.tgz", + "integrity": "sha512-nqB9M+wITz0BX/Q2xg6fQ8mLkyfF7MU7eE+MNBNjTHFKeKaZAPEzEg+E8LWxKWf1DQVflNEn9N49yAuqKh2mWQ==", + "dependencies": { + "lodash._stringtopath": "~4.8.0" + } + }, + "node_modules/lodash._basetostring": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-4.12.0.tgz", + "integrity": "sha512-SwcRIbyxnN6CFEEK4K1y+zuApvWdpQdBHM/swxP962s8HIxPO3alBH5t3m/dl+f4CMUug6sJb7Pww8d13/9WSw==" + }, + "node_modules/lodash._baseuniq": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash._baseuniq/-/lodash._baseuniq-4.6.0.tgz", + "integrity": "sha512-Ja1YevpHZctlI5beLA7oc5KNDhGcPixFhcqSiORHNsp/1QTv7amAXzw+gu4YOvErqVlMVyIJGgtzeepCnnur0A==", + "dependencies": { + "lodash._createset": "~4.0.0", + "lodash._root": "~3.0.0" + } + }, + "node_modules/lodash._createset": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/lodash._createset/-/lodash._createset-4.0.3.tgz", + "integrity": "sha512-GTkC6YMprrJZCYU3zcqZj+jkXkrXzq3IPBcF/fIPpNEAB4hZEtXU8zp/RwKOvZl43NUmwDbyRk3+ZTbeRdEBXA==" + }, + "node_modules/lodash._root": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/lodash._root/-/lodash._root-3.0.1.tgz", + "integrity": "sha512-O0pWuFSK6x4EXhM1dhZ8gchNtG7JMqBtrHdoUFUWXD7dJnNSUze1GuyQr5sOs0aCvgGeI3o/OJW8f4ca7FDxmQ==" + }, + "node_modules/lodash._stringtopath": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/lodash._stringtopath/-/lodash._stringtopath-4.8.0.tgz", + "integrity": "sha512-SXL66C731p0xPDC5LZg4wI5H+dJo/EO4KTqOMwLYCH3+FmmfAKJEZCm6ohGpI+T1xwsDsJCfL4OnhorllvlTPQ==", + "dependencies": { + "lodash._basetostring": "~4.12.0" + } + }, + "node_modules/lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==" + }, + "node_modules/lodash.isarguments": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz", + "integrity": "sha512-chi4NHZlZqZD18a0imDHnZPrDeBbTtVN7GXMwuGdRH9qotxAjYs3aVLKc7zNOG9eddR5Ksd8rvFEBc9SsggPpg==" + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==" + }, + "node_modules/lodash.throttle": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", + "integrity": "sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==" + }, + "node_modules/lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==" + }, + "node_modules/lodash.uniqby": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniqby/-/lodash.uniqby-4.5.0.tgz", + "integrity": "sha512-IRt7cfTtHy6f1aRVA5n7kT8rgN3N1nH6MOWLcHfpWG2SH19E3JksLK38MktLxZDhlAjCP9jpIXkOnRXlu6oByQ==", + "dependencies": { + "lodash._baseiteratee": "~4.7.0", + "lodash._baseuniq": "~4.6.0" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/magic-string": { + "version": "0.30.17", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz", + "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0" + } + }, + "node_modules/magic-string-ast": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/magic-string-ast/-/magic-string-ast-0.7.0.tgz", + "integrity": "sha512-686fgAHaJY7wLTFEq7nnKqeQrhqmXB19d1HnqT35Ci7BN6hbAYLZUezTQ062uUHM7ggZEQlqJ94Ftls+KDXU8Q==", + "dependencies": { + "magic-string": "^0.30.17" + }, + "engines": { + "node": ">=16.14.0" + } + }, + "node_modules/magicast": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/magicast/-/magicast-0.3.5.tgz", + "integrity": "sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ==", + "dependencies": { + "@babel/parser": "^7.25.4", + "@babel/types": "^7.25.4", + "source-map-js": "^1.2.0" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/mdn-data": { + "version": "2.0.30", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz", + "integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==" + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/merkle-json": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/merkle-json/-/merkle-json-2.7.0.tgz", + "integrity": "sha512-yzOZPrvIydATWQMk0lLxKjudKQV7Deu4hh/EJT7+q6c4aYs7J02WVGG5Mv6B5QbLJGy78h+u2nE5f8eUpDFGEg==", + "dependencies": { + "merkle-json": "^2.1.0" + }, + "engines": { + "node": ">=6.11.0" + } + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/micromatch/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/mime": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/mime/-/mime-4.0.6.tgz", + "integrity": "sha512-4rGt7rvQHBbaSOF9POGkk1ocRP16Md1x36Xma8sz8h8/vfCUI2OtEIeCqe4Ofes853x4xDoPiFLIT47J5fI/7A==", + "funding": [ + "https://github.com/sponsors/broofa" + ], + "bin": { + "mime": "bin/cli.js" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/mitt": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", + "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==" + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/mlly": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.4.tgz", + "integrity": "sha512-qmdSIPC4bDJXgZTCR7XosJiNKySV7O215tsPtDN9iEO/7q/76b/ijtgRu/+epFXSJhijtTCCGp3DWS549P3xKw==", + "dependencies": { + "acorn": "^8.14.0", + "pathe": "^2.0.1", + "pkg-types": "^1.3.0", + "ufo": "^1.5.4" + } + }, + "node_modules/moment": { + "version": "2.30.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.30.1.tgz", + "integrity": "sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==", + "engines": { + "node": "*" + } + }, + "node_modules/moo": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/moo/-/moo-0.5.2.tgz", + "integrity": "sha512-iSAJLHYKnX41mKcJKjqvnAN9sf0LMDTXDEvFv+ffuRR9a1MIuXLjMNL6EsnDHSkKLTWNqQQ5uo61P4EbU4NU+Q==" + }, + "node_modules/mrmime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-2.0.1.tgz", + "integrity": "sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==", + "engines": { + "node": ">=10" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dev": true, + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, + "node_modules/nanoid": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.1.2.tgz", + "integrity": "sha512-b+CiXQCNMUGe0Ri64S9SXFcP9hogjAJ2Rd6GdVxhPLRm7mhGaM7VgOvCAJ1ZshfHbqVDI3uqTI5C8/GaKuLI7g==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.js" + }, + "engines": { + "node": "^18 || >=20" + } + }, + "node_modules/nanotar": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/nanotar/-/nanotar-0.2.0.tgz", + "integrity": "sha512-9ca1h0Xjvo9bEkE4UOxgAzLV0jHKe6LMaxo37ND2DAhhAtd0j8pR1Wxz+/goMrZO8AEZTWCmyaOsFI/W5AdpCQ==" + }, + "node_modules/nearley": { + "version": "2.20.1", + "resolved": "https://registry.npmjs.org/nearley/-/nearley-2.20.1.tgz", + "integrity": "sha512-+Mc8UaAebFzgV+KpI5n7DasuuQCHA89dmwm7JXw3TV43ukfNQ9DnBH3Mdb2g/I4Fdxc26pwimBWvjIw0UAILSQ==", + "dependencies": { + "commander": "^2.19.0", + "moo": "^0.5.0", + "railroad-diagrams": "^1.0.0", + "randexp": "0.4.6" + }, + "bin": { + "nearley-railroad": "bin/nearley-railroad.js", + "nearley-test": "bin/nearley-test.js", + "nearley-unparse": "bin/nearley-unparse.js", + "nearleyc": "bin/nearleyc.js" + }, + "funding": { + "type": "individual", + "url": "https://nearley.js.org/#give-to-nearley" + } + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "peer": true + }, + "node_modules/nitropack": { + "version": "2.10.4", + "resolved": "https://registry.npmjs.org/nitropack/-/nitropack-2.10.4.tgz", + "integrity": "sha512-sJiG/MIQlZCVSw2cQrFG1H6mLeSqHlYfFerRjLKz69vUfdu0EL2l0WdOxlQbzJr3mMv/l4cOlCCLzVRzjzzF/g==", + "dependencies": { + "@cloudflare/kv-asset-handler": "^0.3.4", + "@netlify/functions": "^2.8.2", + "@rollup/plugin-alias": "^5.1.1", + "@rollup/plugin-commonjs": "^28.0.1", + "@rollup/plugin-inject": "^5.0.5", + "@rollup/plugin-json": "^6.1.0", + "@rollup/plugin-node-resolve": "^15.3.0", + "@rollup/plugin-replace": "^6.0.1", + "@rollup/plugin-terser": "^0.4.4", + "@rollup/pluginutils": "^5.1.3", + "@types/http-proxy": "^1.17.15", + "@vercel/nft": "^0.27.5", + "archiver": "^7.0.1", + "c12": "2.0.1", + "chokidar": "^3.6.0", + "citty": "^0.1.6", + "compatx": "^0.1.8", + "confbox": "^0.1.8", + "consola": "^3.2.3", + "cookie-es": "^1.2.2", + "croner": "^9.0.0", + "crossws": "^0.3.1", + "db0": "^0.2.1", + "defu": "^6.1.4", + "destr": "^2.0.3", + "dot-prop": "^9.0.0", + "esbuild": "^0.24.0", + "escape-string-regexp": "^5.0.0", + "etag": "^1.8.1", + "fs-extra": "^11.2.0", + "globby": "^14.0.2", + "gzip-size": "^7.0.0", + "h3": "^1.13.0", + "hookable": "^5.5.3", + "httpxy": "^0.1.5", + "ioredis": "^5.4.1", + "jiti": "^2.4.0", + "klona": "^2.0.6", + "knitwork": "^1.1.0", + "listhen": "^1.9.0", + "magic-string": "^0.30.12", + "magicast": "^0.3.5", + "mime": "^4.0.4", + "mlly": "^1.7.2", + "node-fetch-native": "^1.6.4", + "ofetch": "^1.4.1", + "ohash": "^1.1.4", + "openapi-typescript": "^7.4.2", + "pathe": "^1.1.2", + "perfect-debounce": "^1.0.0", + "pkg-types": "^1.2.1", + "pretty-bytes": "^6.1.1", + "radix3": "^1.1.2", + "rollup": "^4.24.3", + "rollup-plugin-visualizer": "^5.12.0", + "scule": "^1.3.0", + "semver": "^7.6.3", + "serve-placeholder": "^2.0.2", + "serve-static": "^1.16.2", + "std-env": "^3.7.0", + "ufo": "^1.5.4", + "uncrypto": "^0.1.3", + "unctx": "^2.3.1", + "unenv": "^1.10.0", + "unimport": "^3.13.1", + "unstorage": "^1.13.1", + "untyped": "^1.5.1", + "unwasm": "^0.3.9" + }, + "bin": { + "nitro": "dist/cli/index.mjs", + "nitropack": "dist/cli/index.mjs" + }, + "engines": { + "node": "^16.11.0 || >=17.0.0" + }, + "peerDependencies": { + "xml2js": "^0.6.2" + }, + "peerDependenciesMeta": { + "xml2js": { + "optional": true + } + } + }, + "node_modules/nitropack/node_modules/c12": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/c12/-/c12-2.0.1.tgz", + "integrity": "sha512-Z4JgsKXHG37C6PYUtIxCfLJZvo6FyhHJoClwwb9ftUkLpPSkuYqn6Tr+vnaN8hymm0kIbcg6Ey3kv/Q71k5w/A==", + "dependencies": { + "chokidar": "^4.0.1", + "confbox": "^0.1.7", + "defu": "^6.1.4", + "dotenv": "^16.4.5", + "giget": "^1.2.3", + "jiti": "^2.3.0", + "mlly": "^1.7.1", + "ohash": "^1.1.4", + "pathe": "^1.1.2", + "perfect-debounce": "^1.0.0", + "pkg-types": "^1.2.0", + "rc9": "^2.1.2" + }, + "peerDependencies": { + "magicast": "^0.3.5" + }, + "peerDependenciesMeta": { + "magicast": { + "optional": true + } + } + }, + "node_modules/nitropack/node_modules/c12/node_modules/chokidar": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", + "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", + "dependencies": { + "readdirp": "^4.0.1" + }, + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/nitropack/node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/nitropack/node_modules/chokidar/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/nitropack/node_modules/chokidar/node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/nitropack/node_modules/js-tokens": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-9.0.1.tgz", + "integrity": "sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==" + }, + "node_modules/nitropack/node_modules/local-pkg": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-1.0.0.tgz", + "integrity": "sha512-bbgPw/wmroJsil/GgL4qjDzs5YLTBMQ99weRsok1XCDccQeehbHA/I1oRvk2NPtr7KGZgT/Y5tPRnAtMqeG2Kg==", + "dependencies": { + "mlly": "^1.7.3", + "pkg-types": "^1.3.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/nitropack/node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==" + }, + "node_modules/nitropack/node_modules/strip-literal": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-2.1.1.tgz", + "integrity": "sha512-631UJ6O00eNGfMiWG78ck80dfBab8X6IVFB51jZK5Icd7XAs60Z5y7QdSd/wGIklnWvRbUNloVzhOKKmutxQ6Q==", + "dependencies": { + "js-tokens": "^9.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/nitropack/node_modules/unimport": { + "version": "3.14.6", + "resolved": "https://registry.npmjs.org/unimport/-/unimport-3.14.6.tgz", + "integrity": "sha512-CYvbDaTT04Rh8bmD8jz3WPmHYZRG/NnvYVzwD6V1YAlvvKROlAeNDUBhkBGzNav2RKaeuXvlWYaa1V4Lfi/O0g==", + "dependencies": { + "@rollup/pluginutils": "^5.1.4", + "acorn": "^8.14.0", + "escape-string-regexp": "^5.0.0", + "estree-walker": "^3.0.3", + "fast-glob": "^3.3.3", + "local-pkg": "^1.0.0", + "magic-string": "^0.30.17", + "mlly": "^1.7.4", + "pathe": "^2.0.1", + "picomatch": "^4.0.2", + "pkg-types": "^1.3.0", + "scule": "^1.3.0", + "strip-literal": "^2.1.1", + "unplugin": "^1.16.1" + } + }, + "node_modules/nitropack/node_modules/unimport/node_modules/pathe": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", + "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==" + }, + "node_modules/node-addon-api": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==" + }, + "node_modules/node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/node-fetch-native": { + "version": "1.6.6", + "resolved": "https://registry.npmjs.org/node-fetch-native/-/node-fetch-native-1.6.6.tgz", + "integrity": "sha512-8Mc2HhqPdlIfedsuZoc3yioPuzp6b+L5jRCRY1QzuWZh2EGJVQrGppC6V6cF0bLdbW0+O2YpqCA25aF/1lvipQ==" + }, + "node_modules/node-forge": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", + "engines": { + "node": ">= 6.13.0" + } + }, + "node_modules/node-gyp-build": { + "version": "4.8.4", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.4.tgz", + "integrity": "sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==", + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" + } + }, + "node_modules/node-mock-http": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-mock-http/-/node-mock-http-1.0.0.tgz", + "integrity": "sha512-0uGYQ1WQL1M5kKvGRXWQ3uZCHtLTO8hln3oBjIusM75WoesZ909uQJs/Hb946i2SS+Gsrhkaa6iAO17jRIv6DQ==" + }, + "node_modules/node-releases": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", + "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==" + }, + "node_modules/nopt": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-8.1.0.tgz", + "integrity": "sha512-ieGu42u/Qsa4TFktmaKEwM6MQH0pOWnaB3htzh0JRtx84+Mebc0cbZYN5bC+6WTZ4+77xrL9Pn5m7CV6VIkV7A==", + "dependencies": { + "abbrev": "^3.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-path": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz", + "integrity": "sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==", + "dependencies": { + "path-key": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/npm-run-path/node_modules/path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/nuxt": { + "version": "3.15.4", + "resolved": "https://registry.npmjs.org/nuxt/-/nuxt-3.15.4.tgz", + "integrity": "sha512-hSbZO4mR0uAMJtZPNTnCfiAtgleoOu28gvJcBNU7KQHgWnNXPjlWgwMczko2O4Tmnv9zIe/CQged+2HsPwl2ZA==", + "dependencies": { + "@nuxt/cli": "^3.21.1", + "@nuxt/devalue": "^2.0.2", + "@nuxt/devtools": "^1.7.0", + "@nuxt/kit": "3.15.4", + "@nuxt/schema": "3.15.4", + "@nuxt/telemetry": "^2.6.4", + "@nuxt/vite-builder": "3.15.4", + "@unhead/dom": "^1.11.18", + "@unhead/shared": "^1.11.18", + "@unhead/ssr": "^1.11.18", + "@unhead/vue": "^1.11.18", + "@vue/shared": "^3.5.13", + "acorn": "8.14.0", + "c12": "^2.0.1", + "chokidar": "^4.0.3", + "compatx": "^0.1.8", + "consola": "^3.4.0", + "cookie-es": "^1.2.2", + "defu": "^6.1.4", + "destr": "^2.0.3", + "devalue": "^5.1.1", + "errx": "^0.1.0", + "esbuild": "^0.24.2", + "escape-string-regexp": "^5.0.0", + "estree-walker": "^3.0.3", + "globby": "^14.0.2", + "h3": "^1.14.0", + "hookable": "^5.5.3", + "ignore": "^7.0.3", + "impound": "^0.2.0", + "jiti": "^2.4.2", + "klona": "^2.0.6", + "knitwork": "^1.2.0", + "magic-string": "^0.30.17", + "mlly": "^1.7.4", + "nanotar": "^0.2.0", + "nitropack": "^2.10.4", + "nypm": "^0.5.2", + "ofetch": "^1.4.1", + "ohash": "^1.1.4", + "pathe": "^2.0.2", + "perfect-debounce": "^1.0.0", + "pkg-types": "^1.3.1", + "radix3": "^1.1.2", + "scule": "^1.3.0", + "semver": "^7.6.3", + "std-env": "^3.8.0", + "strip-literal": "^3.0.0", + "tinyglobby": "0.2.10", + "ufo": "^1.5.4", + "ultrahtml": "^1.5.3", + "uncrypto": "^0.1.3", + "unctx": "^2.4.1", + "unenv": "^1.10.0", + "unhead": "^1.11.18", + "unimport": "^4.0.0", + "unplugin": "^2.1.2", + "unplugin-vue-router": "^0.11.2", + "unstorage": "^1.14.4", + "untyped": "^1.5.2", + "vue": "^3.5.13", + "vue-bundle-renderer": "^2.1.1", + "vue-devtools-stub": "^0.1.0", + "vue-router": "^4.5.0" + }, + "bin": { + "nuxi": "bin/nuxt.mjs", + "nuxt": "bin/nuxt.mjs" + }, + "engines": { + "node": "^18.20.5 || ^20.9.0 || >=22.0.0" + }, + "peerDependencies": { + "@parcel/watcher": "^2.1.0", + "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0" + }, + "peerDependenciesMeta": { + "@parcel/watcher": { + "optional": true + }, + "@types/node": { + "optional": true + } + } + }, + "node_modules/nuxt-oidc-auth": { + "version": "1.0.0-beta.5", + "resolved": "https://registry.npmjs.org/nuxt-oidc-auth/-/nuxt-oidc-auth-1.0.0-beta.5.tgz", + "integrity": "sha512-/bZ3yBfKmT40Kk66RZ9757SGMvqcZqLYRX6HK3l2o4N1dPvz1gW50t6cZ6UFJ63G7FWdHUuoRyo2INEpvbXe4g==", + "dependencies": { + "@nuxt/devtools-kit": "^1.7.0", + "@nuxt/devtools-ui-kit": "^1.7.0", + "consola": "^3.4.0", + "defu": "^6.1.4", + "h3": "^1.13.1", + "jose": "^5.9.6", + "ofetch": "^1.4.1", + "scule": "^1.3.0", + "sirv": "^3.0.0", + "ufo": "^1.5.4", + "uncrypto": "^0.1.3", + "undici": "^7.2.3", + "undio": "^0.2.0" + }, + "peerDependencies": { + "undici": "^7.2.1" + }, + "peerDependenciesMeta": { + "undici": { + "optional": true + } + } + }, + "node_modules/nuxt-oidc-auth/node_modules/sirv": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/sirv/-/sirv-3.0.1.tgz", + "integrity": "sha512-FoqMu0NCGBLCcAkS1qA+XJIQTR6/JHfQXl+uGteNCQ76T91DMUjPa9xfmeqMY3z80nLSg9yQmNjK0Px6RWsH/A==", + "dependencies": { + "@polka/url": "^1.0.0-next.24", + "mrmime": "^2.0.0", + "totalist": "^3.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/nuxt-site-config": { + "version": "2.2.21", + "resolved": "https://registry.npmjs.org/nuxt-site-config/-/nuxt-site-config-2.2.21.tgz", + "integrity": "sha512-VsHpR4socGrlRPjyg2F8JqbirBqH4yCkTQa60fj7saqKMPW1VcRROn21OJzfTHDpjeD+KayRdR3FB0Jxk9WFNA==", + "dependencies": { + "@nuxt/devtools-kit": "^1.6.0", + "@nuxt/kit": "^3.13.2", + "@nuxt/schema": "^3.13.2", + "nuxt-site-config-kit": "2.2.21", + "pathe": "^1.1.2", + "pkg-types": "^1.2.1", + "sirv": "^3.0.0", + "site-config-stack": "2.2.21", + "ufo": "^1.5.4" + }, + "funding": { + "url": "https://github.com/sponsors/harlan-zw" + } + }, + "node_modules/nuxt-site-config-kit": { + "version": "2.2.21", + "resolved": "https://registry.npmjs.org/nuxt-site-config-kit/-/nuxt-site-config-kit-2.2.21.tgz", + "integrity": "sha512-xO41Zf6bXlA9Zvj+fX7ftD+ITee4LfrkzHj85Gt4FpgwonFxzGO5pMBtAqIxXKJwuyT1z2wVAixHI+ov66wV0w==", + "dependencies": { + "@nuxt/kit": "^3.13.2", + "@nuxt/schema": "^3.13.2", + "pkg-types": "^1.2.1", + "site-config-stack": "2.2.21", + "std-env": "^3.7.0", + "ufo": "^1.5.4" + }, + "funding": { + "url": "https://github.com/sponsors/harlan-zw" + } + }, + "node_modules/nuxt-site-config/node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==" + }, + "node_modules/nuxt-site-config/node_modules/sirv": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/sirv/-/sirv-3.0.1.tgz", + "integrity": "sha512-FoqMu0NCGBLCcAkS1qA+XJIQTR6/JHfQXl+uGteNCQ76T91DMUjPa9xfmeqMY3z80nLSg9yQmNjK0Px6RWsH/A==", + "dependencies": { + "@polka/url": "^1.0.0-next.24", + "mrmime": "^2.0.0", + "totalist": "^3.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/nuxt/node_modules/unplugin": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-2.2.0.tgz", + "integrity": "sha512-m1ekpSwuOT5hxkJeZGRxO7gXbXT3gF26NjQ7GdVHoLoF8/nopLcd/QfPigpCy7i51oFHiRJg/CyHhj4vs2+KGw==", + "dependencies": { + "acorn": "^8.14.0", + "webpack-virtual-modules": "^0.6.2" + }, + "engines": { + "node": ">=18.12.0" + } + }, + "node_modules/nypm": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/nypm/-/nypm-0.5.4.tgz", + "integrity": "sha512-X0SNNrZiGU8/e/zAB7sCTtdxWTMSIO73q+xuKgglm2Yvzwlo8UoC5FNySQFCvl84uPaeADkqHUZUkWy4aH4xOA==", + "dependencies": { + "citty": "^0.1.6", + "consola": "^3.4.0", + "pathe": "^2.0.3", + "pkg-types": "^1.3.1", + "tinyexec": "^0.3.2", + "ufo": "^1.5.4" + }, + "bin": { + "nypm": "dist/cli.mjs" + }, + "engines": { + "node": "^14.16.0 || >=16.10.0" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ofetch": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/ofetch/-/ofetch-1.4.1.tgz", + "integrity": "sha512-QZj2DfGplQAr2oj9KzceK9Hwz6Whxazmn85yYeVuS3u9XTMOGMRx0kO95MQ+vLsj/S/NwBDMMLU5hpxvI6Tklw==", + "dependencies": { + "destr": "^2.0.3", + "node-fetch-native": "^1.6.4", + "ufo": "^1.5.4" + } + }, + "node_modules/ohash": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/ohash/-/ohash-1.1.4.tgz", + "integrity": "sha512-FlDryZAahJmEF3VR3w1KogSEdWX3WhA5GPakFx4J81kEAiHyLMpdLLElS8n8dfNadMgAne/MywcvmogzscVt4g==" + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "dependencies": { + "mimic-fn": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/open": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/open/node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/open/node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/openapi-typescript": { + "version": "7.6.1", + "resolved": "https://registry.npmjs.org/openapi-typescript/-/openapi-typescript-7.6.1.tgz", + "integrity": "sha512-F7RXEeo/heF3O9lOXo2bNjCOtfp7u+D6W3a3VNEH2xE6v+fxLtn5nq0uvUcA1F5aT+CMhNeC5Uqtg5tlXFX/ag==", + "dependencies": { + "@redocly/openapi-core": "^1.28.0", + "ansi-colors": "^4.1.3", + "change-case": "^5.4.4", + "parse-json": "^8.1.0", + "supports-color": "^9.4.0", + "yargs-parser": "^21.1.1" + }, + "bin": { + "openapi-typescript": "bin/cli.js" + }, + "peerDependencies": { + "typescript": "^5.x" + } + }, + "node_modules/outvariant": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/outvariant/-/outvariant-1.4.3.tgz", + "integrity": "sha512-+Sl2UErvtsoajRDKCE5/dBz4DIvHXQQnAxtQTF04OJxY0+DyZXSo5P5Bb7XYWOh81syohlYL24hbDwxedPUJCA==" + }, + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==" + }, + "node_modules/package-manager-detector": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/package-manager-detector/-/package-manager-detector-0.2.9.tgz", + "integrity": "sha512-+vYvA/Y31l8Zk8dwxHhL3JfTuHPm6tlxM2A3GeQyl7ovYnSp1+mzAxClxaOr0qO1TtPxbQxetI7v5XqKLJZk7Q==" + }, + "node_modules/packrup": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/packrup/-/packrup-0.1.2.tgz", + "integrity": "sha512-ZcKU7zrr5GlonoS9cxxrb5HVswGnyj6jQvwFBa6p5VFw7G71VAHcUKL5wyZSU/ECtPM/9gacWxy2KFQKt1gMNA==", + "funding": { + "url": "https://github.com/sponsors/harlan-zw" + } + }, + "node_modules/parse-git-config": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/parse-git-config/-/parse-git-config-3.0.0.tgz", + "integrity": "sha512-wXoQGL1D+2COYWCD35/xbiKma1Z15xvZL8cI25wvxzled58V51SJM04Urt/uznS900iQor7QO04SgdfT/XlbuA==", + "dependencies": { + "git-config-path": "^2.0.0", + "ini": "^1.3.5" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/parse-git-config/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "node_modules/parse-json": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-8.1.0.tgz", + "integrity": "sha512-rum1bPifK5SSar35Z6EKZuYPJx85pkNaFrxBK3mwdfSJ1/WKbYrjoW/zTPSjRRamfmVX1ACBIdFAO0VRErW/EA==", + "dependencies": { + "@babel/code-frame": "^7.22.13", + "index-to-position": "^0.1.2", + "type-fest": "^4.7.1" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse-md": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/parse-md/-/parse-md-3.0.3.tgz", + "integrity": "sha512-2kpNrrW1GBgli5VT9X9/Y6n4PVsIFVdG49tguq1PHwzsRSK0Cu0yJPTUFOwWouFT85atYNWQ1T/rmqfj7kLd8g==", + "dependencies": { + "js-yaml": "^4.1.0" + } + }, + "node_modules/parse-path": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/parse-path/-/parse-path-7.0.1.tgz", + "integrity": "sha512-6ReLMptznuuOEzLoGEa+I1oWRSj2Zna5jLWC+l6zlfAI4dbbSaIES29ThzuPkbhNahT65dWzfoZEO6cfJw2Ksg==", + "dependencies": { + "protocols": "^2.0.0" + } + }, + "node_modules/parse-url": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/parse-url/-/parse-url-9.2.0.tgz", + "integrity": "sha512-bCgsFI+GeGWPAvAiUv63ZorMeif3/U0zaXABGJbOWt5OH2KCaPHF6S+0ok4aqM9RuIPGyZdx9tR9l13PsW4AYQ==", + "dependencies": { + "@types/parse-path": "^7.0.0", + "parse-path": "^7.0.0" + }, + "engines": { + "node": ">=14.13.0" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, + "node_modules/path-type": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-6.0.0.tgz", + "integrity": "sha512-Vj7sf++t5pBD637NSfkxpHSMfWaeig5+DKWLhcqIYx6mWQz5hdJTGDVMQiJcw1ZYkhs7AazKDGpRVji1LJCZUQ==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pathe": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", + "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==" + }, + "node_modules/perfect-debounce": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/perfect-debounce/-/perfect-debounce-1.0.0.tgz", + "integrity": "sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" + }, + "node_modules/picomatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", + "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pinia": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/pinia/-/pinia-2.3.1.tgz", + "integrity": "sha512-khUlZSwt9xXCaTbbxFYBKDc/bWAGWJjOgvxETwkTN7KRm66EeT1ZdZj6i2ceh9sP2Pzqsbc704r2yngBrxBVug==", + "dependencies": { + "@vue/devtools-api": "^6.6.3", + "vue-demi": "^0.14.10" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "typescript": ">=4.4.4", + "vue": "^2.7.0 || ^3.5.11" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/pinia-plugin-persistedstate": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pinia-plugin-persistedstate/-/pinia-plugin-persistedstate-4.2.0.tgz", + "integrity": "sha512-3buhA7ac+ssbOIx3VRCC8oHkoFwhDM9oHRCjo7nj+O8WUqnW+jRqh7eYT5eS/DNa3H28zp3dYf/nd/Vc8zj8eQ==", + "dev": true, + "dependencies": { + "@nuxt/kit": "^3.14.1592", + "deep-pick-omit": "^1.2.1", + "defu": "^6.1.4", + "destr": "^2.0.3" + }, + "peerDependencies": { + "@pinia/nuxt": ">=0.9.0", + "pinia": ">=2.3.0" + }, + "peerDependenciesMeta": { + "@pinia/nuxt": { + "optional": true + }, + "pinia": { + "optional": true + } + } + }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/pkg-types": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.3.1.tgz", + "integrity": "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==", + "dependencies": { + "confbox": "^0.1.8", + "mlly": "^1.7.4", + "pathe": "^2.0.1" + } + }, + "node_modules/pluralize": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", + "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss": { + "version": "8.5.3", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.3.tgz", + "integrity": "sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.8", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-calc": { + "version": "10.1.1", + "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-10.1.1.tgz", + "integrity": "sha512-NYEsLHh8DgG/PRH2+G9BTuUdtf9ViS+vdoQ0YA5OQdGsfN4ztiwtDWNtBl9EKeqNMFnIu8IKZ0cLxEQ5r5KVMw==", + "dependencies": { + "postcss-selector-parser": "^7.0.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^18.12 || ^20.9 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.38" + } + }, + "node_modules/postcss-colormin": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-7.0.2.tgz", + "integrity": "sha512-YntRXNngcvEvDbEjTdRWGU606eZvB5prmHG4BF0yLmVpamXbpsRJzevyy6MZVyuecgzI2AWAlvFi8DAeCqwpvA==", + "dependencies": { + "browserslist": "^4.23.3", + "caniuse-api": "^3.0.0", + "colord": "^2.9.3", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-convert-values": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-7.0.4.tgz", + "integrity": "sha512-e2LSXPqEHVW6aoGbjV9RsSSNDO3A0rZLCBxN24zvxF25WknMPpX8Dm9UxxThyEbaytzggRuZxaGXqaOhxQ514Q==", + "dependencies": { + "browserslist": "^4.23.3", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-discard-comments": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-7.0.3.tgz", + "integrity": "sha512-q6fjd4WU4afNhWOA2WltHgCbkRhZPgQe7cXF74fuVB/ge4QbM9HEaOIzGSiMvM+g/cOsNAUGdf2JDzqA2F8iLA==", + "dependencies": { + "postcss-selector-parser": "^6.1.2" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-discard-comments/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-discard-duplicates": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-7.0.1.tgz", + "integrity": "sha512-oZA+v8Jkpu1ct/xbbrntHRsfLGuzoP+cpt0nJe5ED2FQF8n8bJtn7Bo28jSmBYwqgqnqkuSXJfSUEE7if4nClQ==", + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-discard-empty": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-7.0.0.tgz", + "integrity": "sha512-e+QzoReTZ8IAwhnSdp/++7gBZ/F+nBq9y6PomfwORfP7q9nBpK5AMP64kOt0bA+lShBFbBDcgpJ3X4etHg4lzA==", + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-discard-overridden": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-7.0.0.tgz", + "integrity": "sha512-GmNAzx88u3k2+sBTZrJSDauR0ccpE24omTQCVmaTTZFz1du6AasspjaUPMJ2ud4RslZpoFKyf+6MSPETLojc6w==", + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-merge-longhand": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-7.0.4.tgz", + "integrity": "sha512-zer1KoZA54Q8RVHKOY5vMke0cCdNxMP3KBfDerjH/BYHh4nCIh+1Yy0t1pAEQF18ac/4z3OFclO+ZVH8azjR4A==", + "dependencies": { + "postcss-value-parser": "^4.2.0", + "stylehacks": "^7.0.4" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-merge-rules": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-7.0.4.tgz", + "integrity": "sha512-ZsaamiMVu7uBYsIdGtKJ64PkcQt6Pcpep/uO90EpLS3dxJi6OXamIobTYcImyXGoW0Wpugh7DSD3XzxZS9JCPg==", + "dependencies": { + "browserslist": "^4.23.3", + "caniuse-api": "^3.0.0", + "cssnano-utils": "^5.0.0", + "postcss-selector-parser": "^6.1.2" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-merge-rules/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-minify-font-values": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-7.0.0.tgz", + "integrity": "sha512-2ckkZtgT0zG8SMc5aoNwtm5234eUx1GGFJKf2b1bSp8UflqaeFzR50lid4PfqVI9NtGqJ2J4Y7fwvnP/u1cQog==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-minify-gradients": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-7.0.0.tgz", + "integrity": "sha512-pdUIIdj/C93ryCHew0UgBnL2DtUS3hfFa5XtERrs4x+hmpMYGhbzo6l/Ir5de41O0GaKVpK1ZbDNXSY6GkXvtg==", + "dependencies": { + "colord": "^2.9.3", + "cssnano-utils": "^5.0.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-minify-params": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-7.0.2.tgz", + "integrity": "sha512-nyqVLu4MFl9df32zTsdcLqCFfE/z2+f8GE1KHPxWOAmegSo6lpV2GNy5XQvrzwbLmiU7d+fYay4cwto1oNdAaQ==", + "dependencies": { + "browserslist": "^4.23.3", + "cssnano-utils": "^5.0.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-minify-selectors": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-7.0.4.tgz", + "integrity": "sha512-JG55VADcNb4xFCf75hXkzc1rNeURhlo7ugf6JjiiKRfMsKlDzN9CXHZDyiG6x/zGchpjQS+UAgb1d4nqXqOpmA==", + "dependencies": { + "cssesc": "^3.0.0", + "postcss-selector-parser": "^6.1.2" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-minify-selectors/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-normalize-charset": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-7.0.0.tgz", + "integrity": "sha512-ABisNUXMeZeDNzCQxPxBCkXexvBrUHV+p7/BXOY+ulxkcjUZO0cp8ekGBwvIh2LbCwnWbyMPNJVtBSdyhM2zYQ==", + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-display-values": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-7.0.0.tgz", + "integrity": "sha512-lnFZzNPeDf5uGMPYgGOw7v0BfB45+irSRz9gHQStdkkhiM0gTfvWkWB5BMxpn0OqgOQuZG/mRlZyJxp0EImr2Q==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-positions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-7.0.0.tgz", + "integrity": "sha512-I0yt8wX529UKIGs2y/9Ybs2CelSvItfmvg/DBIjTnoUSrPxSV7Z0yZ8ShSVtKNaV/wAY+m7bgtyVQLhB00A1NQ==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-repeat-style": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-7.0.0.tgz", + "integrity": "sha512-o3uSGYH+2q30ieM3ppu9GTjSXIzOrRdCUn8UOMGNw7Af61bmurHTWI87hRybrP6xDHvOe5WlAj3XzN6vEO8jLw==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-string": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-7.0.0.tgz", + "integrity": "sha512-w/qzL212DFVOpMy3UGyxrND+Kb0fvCiBBujiaONIihq7VvtC7bswjWgKQU/w4VcRyDD8gpfqUiBQ4DUOwEJ6Qg==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-timing-functions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-7.0.0.tgz", + "integrity": "sha512-tNgw3YV0LYoRwg43N3lTe3AEWZ66W7Dh7lVEpJbHoKOuHc1sLrzMLMFjP8SNULHaykzsonUEDbKedv8C+7ej6g==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-unicode": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-7.0.2.tgz", + "integrity": "sha512-ztisabK5C/+ZWBdYC+Y9JCkp3M9qBv/XFvDtSw0d/XwfT3UaKeW/YTm/MD/QrPNxuecia46vkfEhewjwcYFjkg==", + "dependencies": { + "browserslist": "^4.23.3", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-url": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-7.0.0.tgz", + "integrity": "sha512-+d7+PpE+jyPX1hDQZYG+NaFD+Nd2ris6r8fPTBAjE8z/U41n/bib3vze8x7rKs5H1uEw5ppe9IojewouHk0klQ==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-whitespace": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-7.0.0.tgz", + "integrity": "sha512-37/toN4wwZErqohedXYqWgvcHUGlT8O/m2jVkAfAe9Bd4MzRqlBmXrJRePH0e9Wgnz2X7KymTgTOaaFizQe3AQ==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-ordered-values": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-7.0.1.tgz", + "integrity": "sha512-irWScWRL6nRzYmBOXReIKch75RRhNS86UPUAxXdmW/l0FcAsg0lvAXQCby/1lymxn/o0gVa6Rv/0f03eJOwHxw==", + "dependencies": { + "cssnano-utils": "^5.0.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-reduce-initial": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-7.0.2.tgz", + "integrity": "sha512-pOnu9zqQww7dEKf62Nuju6JgsW2V0KRNBHxeKohU+JkHd/GAH5uvoObqFLqkeB2n20mr6yrlWDvo5UBU5GnkfA==", + "dependencies": { + "browserslist": "^4.23.3", + "caniuse-api": "^3.0.0" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-reduce-transforms": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-7.0.0.tgz", + "integrity": "sha512-pnt1HKKZ07/idH8cpATX/ujMbtOGhUfE+m8gbqwJE05aTaNw8gbo34a2e3if0xc0dlu75sUOiqvwCGY3fzOHew==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-svgo": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-7.0.1.tgz", + "integrity": "sha512-0WBUlSL4lhD9rA5k1e5D8EN5wCEyZD6HJk0jIvRxl+FDVOMlJ7DePHYWGGVc5QRqrJ3/06FTXM0bxjmJpmTPSA==", + "dependencies": { + "postcss-value-parser": "^4.2.0", + "svgo": "^3.3.2" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >= 18" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-unique-selectors": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-7.0.3.tgz", + "integrity": "sha512-J+58u5Ic5T1QjP/LDV9g3Cx4CNOgB5vz+kM6+OxHHhFACdcDeKhBXjQmB7fnIZM12YSTvsL0Opwco83DmacW2g==", + "dependencies": { + "postcss-selector-parser": "^6.1.2" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-unique-selectors/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" + }, + "node_modules/postcss/node_modules/nanoid": { + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz", + "integrity": "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/pretty-bytes": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-6.1.1.tgz", + "integrity": "sha512-mQUvGU6aUFQ+rNvTIAcZuWGRT9a6f6Yrg9bHs4ImKF+HZCEK+plBvnAZYSIQztknZF2qnzNtr6F8s0+IuptdlQ==", + "engines": { + "node": "^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "node_modules/prom-client": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/prom-client/-/prom-client-14.2.0.tgz", + "integrity": "sha512-sF308EhTenb/pDRPakm+WgiN+VdM/T1RaHj1x+MvAuT8UiQP8JmOEbxVqtkbfR4LrvOg5n7ic01kRBDGXjYikA==", + "dependencies": { + "tdigest": "^0.1.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/proper-lockfile": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/proper-lockfile/-/proper-lockfile-4.1.2.tgz", + "integrity": "sha512-TjNPblN4BwAWMXU8s9AEz4JmQxnD1NNL7bNOY/AKUzyamc379FWASUhc/K1pL2noVb+XmZKLL68cjzLsiOAMaA==", + "dependencies": { + "graceful-fs": "^4.2.4", + "retry": "^0.12.0", + "signal-exit": "^3.0.2" + } + }, + "node_modules/protocols": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/protocols/-/protocols-2.0.2.tgz", + "integrity": "sha512-hHVTzba3wboROl0/aWRRG9dMytgH6ow//STBZh43l/wQgmMhYhOFi0EHWAPtoCz9IAUymsyP0TSBHkhgMEGNnQ==" + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, + "node_modules/qs": { + "version": "6.14.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.0.tgz", + "integrity": "sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==", + "dependencies": { + "side-channel": "^1.1.0" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/radix3": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/radix3/-/radix3-1.1.2.tgz", + "integrity": "sha512-b484I/7b8rDEdSDKckSSBA8knMpcdsXudlE/LNL639wFoHKwLbEkQFZHWEYwDC0wa0FKUcCY+GAF73Z7wxNVFA==" + }, + "node_modules/railroad-diagrams": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz", + "integrity": "sha512-cz93DjNeLY0idrCNOH6PviZGRN9GJhsdm9hpn1YCS879fj4W+x5IFJhhkRZcwVgMmFF7R82UA/7Oh+R8lLZg6A==" + }, + "node_modules/randexp": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/randexp/-/randexp-0.4.6.tgz", + "integrity": "sha512-80WNmd9DA0tmZrw9qQa62GPPWfuXJknrmVmLcxvq4uZBdYqb1wYoKTmnlGUchvVWe0XiLupYkBoXVOxz3C8DYQ==", + "dependencies": { + "discontinuous-range": "1.0.0", + "ret": "~0.1.10" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/rc9": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/rc9/-/rc9-2.1.2.tgz", + "integrity": "sha512-btXCnMmRIBINM2LDZoEmOogIZU7Qe7zn4BpomSKZ/ykbLObuBdvG+mFq11DL6fjH1DRwHhrlgtYWG96bJiC7Cg==", + "dependencies": { + "defu": "^6.1.4", + "destr": "^2.0.3" + } + }, + "node_modules/readable-stream": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.7.0.tgz", + "integrity": "sha512-oIGGmcpTLwPga8Bn6/Z75SVaH1z5dUut2ibSyAMVhmUggWpmDn2dapB0n7f8nwaSiRtepAsfJyfXIO5DCVAODg==", + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/readdir-glob": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/readdir-glob/-/readdir-glob-1.1.3.tgz", + "integrity": "sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==", + "dependencies": { + "minimatch": "^5.1.0" + } + }, + "node_modules/readdir-glob/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/readdir-glob/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/readdirp": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", + "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", + "engines": { + "node": ">= 14.18.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/redis-errors": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/redis-errors/-/redis-errors-1.2.0.tgz", + "integrity": "sha512-1qny3OExCf0UvUV/5wpYKf2YwPcOqXzkwKKSmKHiE6ZMQs5heeE/c8eXK+PNllPvmjgAbfnsbpkGZWy8cBpn9w==", + "engines": { + "node": ">=4" + } + }, + "node_modules/redis-parser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redis-parser/-/redis-parser-3.0.0.tgz", + "integrity": "sha512-DJnGAeenTdpMEH6uAJRK/uiyEIH9WVsUmoLwzudwGJUwZPp80PDBWPHXSAGNPwNvIXAbe7MSUB1zQFugFml66A==", + "dependencies": { + "redis-errors": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" + }, + "node_modules/resize-observer-polyfill": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz", + "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==" + }, + "node_modules/resolve": { + "version": "1.22.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", + "dependencies": { + "is-core-module": "^2.16.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-pkg-maps": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", + "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", + "funding": { + "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" + } + }, + "node_modules/ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "engines": { + "node": ">=0.12" + } + }, + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rfdc": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", + "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==" + }, + "node_modules/rimraf": { + "version": "5.0.10", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.10.tgz", + "integrity": "sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==", + "dependencies": { + "glob": "^10.3.7" + }, + "bin": { + "rimraf": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/rimraf/node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/rollup": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.34.8.tgz", + "integrity": "sha512-489gTVMzAYdiZHFVA/ig/iYFllCcWFHMvUHI1rpFmkoUtRlQxqh6/yiNqnYibjMZ2b/+FUQwldG+aLsEt6bglQ==", + "dependencies": { + "@types/estree": "1.0.6" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.34.8", + "@rollup/rollup-android-arm64": "4.34.8", + "@rollup/rollup-darwin-arm64": "4.34.8", + "@rollup/rollup-darwin-x64": "4.34.8", + "@rollup/rollup-freebsd-arm64": "4.34.8", + "@rollup/rollup-freebsd-x64": "4.34.8", + "@rollup/rollup-linux-arm-gnueabihf": "4.34.8", + "@rollup/rollup-linux-arm-musleabihf": "4.34.8", + "@rollup/rollup-linux-arm64-gnu": "4.34.8", + "@rollup/rollup-linux-arm64-musl": "4.34.8", + "@rollup/rollup-linux-loongarch64-gnu": "4.34.8", + "@rollup/rollup-linux-powerpc64le-gnu": "4.34.8", + "@rollup/rollup-linux-riscv64-gnu": "4.34.8", + "@rollup/rollup-linux-s390x-gnu": "4.34.8", + "@rollup/rollup-linux-x64-gnu": "4.34.8", + "@rollup/rollup-linux-x64-musl": "4.34.8", + "@rollup/rollup-win32-arm64-msvc": "4.34.8", + "@rollup/rollup-win32-ia32-msvc": "4.34.8", + "@rollup/rollup-win32-x64-msvc": "4.34.8", + "fsevents": "~2.3.2" + } + }, + "node_modules/rollup-plugin-visualizer": { + "version": "5.14.0", + "resolved": "https://registry.npmjs.org/rollup-plugin-visualizer/-/rollup-plugin-visualizer-5.14.0.tgz", + "integrity": "sha512-VlDXneTDaKsHIw8yzJAFWtrzguoJ/LnQ+lMpoVfYJ3jJF4Ihe5oYLAqLklIK/35lgUY+1yEzCkHyZ1j4A5w5fA==", + "dependencies": { + "open": "^8.4.0", + "picomatch": "^4.0.2", + "source-map": "^0.7.4", + "yargs": "^17.5.1" + }, + "bin": { + "rollup-plugin-visualizer": "dist/bin/cli.js" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "rolldown": "1.x", + "rollup": "2.x || 3.x || 4.x" + }, + "peerDependenciesMeta": { + "rolldown": { + "optional": true + }, + "rollup": { + "optional": true + } + } + }, + "node_modules/rollup-plugin-visualizer/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/run-applescript": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-7.0.0.tgz", + "integrity": "sha512-9by4Ij99JUr/MCFBUkDKLWK3G9HVXmabKz9U5MlIAIuvuzkiOicRYs8XJLxX+xahD+mLiiCYDqF9dKAgtzKP1A==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/sass": { + "version": "1.85.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.85.0.tgz", + "integrity": "sha512-3ToiC1xZ1Y8aU7+CkgCI/tqyuPXEmYGJXO7H4uqp0xkLXUqp88rQQ4j1HmP37xSJLbCJPaIiv+cT1y+grssrww==", + "devOptional": true, + "dependencies": { + "chokidar": "^4.0.0", + "immutable": "^5.0.2", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + }, + "optionalDependencies": { + "@parcel/watcher": "^2.4.1" + } + }, + "node_modules/schema-utils": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.0.tgz", + "integrity": "sha512-Gf9qqc58SpCA/xdziiHz35F4GNIWYWZrEshUc/G/r5BnLph6xpKuLeoJoQuj5WfBIx/eQLf+hmVPYHaxJu7V2g==", + "peer": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/scule": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/scule/-/scule-1.3.0.tgz", + "integrity": "sha512-6FtHJEvt+pVMIB9IBY+IcCJ6Z5f1iQnytgyfKMhDKgmzYG+TeH/wx1y3l27rshSbLiSanrR9ffZDrEsmjlQF2g==" + }, + "node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/send": { + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/send/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/serve-placeholder": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/serve-placeholder/-/serve-placeholder-2.0.2.tgz", + "integrity": "sha512-/TMG8SboeiQbZJWRlfTCqMs2DD3SZgWp0kDQePz9yUuCnDfDh/92gf7/PxGhzXTKBIPASIHxFcZndoNbp6QOLQ==", + "dependencies": { + "defu": "^6.1.4" + } + }, + "node_modules/serve-static": { + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", + "dependencies": { + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.19.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "engines": { + "node": ">=8" + } + }, + "node_modules/shell-quote": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.2.tgz", + "integrity": "sha512-AzqKpGKjrj7EM6rKVQEPpB288oCfnrEIuyoT9cyF4nmGa7V8Zk6f7RRqYisX8X9m+Q7bd632aZW4ky7EhbQztA==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, + "node_modules/simple-git": { + "version": "3.27.0", + "resolved": "https://registry.npmjs.org/simple-git/-/simple-git-3.27.0.tgz", + "integrity": "sha512-ivHoFS9Yi9GY49ogc6/YAi3Fl9ROnF4VyubNylgCkA+RVqLaKWnDSzXOVzya8csELIaWaYNutsEuAhZrtOjozA==", + "dependencies": { + "@kwsites/file-exists": "^1.1.1", + "@kwsites/promise-deferred": "^1.1.1", + "debug": "^4.3.5" + }, + "funding": { + "type": "github", + "url": "https://github.com/steveukx/git-js?sponsor=1" + } + }, + "node_modules/sirv": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/sirv/-/sirv-2.0.4.tgz", + "integrity": "sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==", + "dependencies": { + "@polka/url": "^1.0.0-next.24", + "mrmime": "^2.0.0", + "totalist": "^3.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==" + }, + "node_modules/site-config-stack": { + "version": "2.2.21", + "resolved": "https://registry.npmjs.org/site-config-stack/-/site-config-stack-2.2.21.tgz", + "integrity": "sha512-HRIgIgZAEK8XFYYepL/KtygJgmcUPdgxBJl0ueSrA12lNo2tk5aMkSuA2Oz/k6chnTbEwd6ESMYCs6opgYKNHw==", + "dependencies": { + "ufo": "^1.5.4" + }, + "funding": { + "url": "https://github.com/sponsors/harlan-zw" + }, + "peerDependencies": { + "vue": "^3" + } + }, + "node_modules/slash": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz", + "integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==", + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/smob": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/smob/-/smob-1.5.0.tgz", + "integrity": "sha512-g6T+p7QO8npa+/hNx9ohv1E5pVCmWrVCUzUXJyLdMmftX6ER0oiWY/w9knEonLpnOp6b6FenKnMfR8gqwWdwig==" + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/speakingurl": { + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/speakingurl/-/speakingurl-14.0.1.tgz", + "integrity": "sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/splitpanes": { + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/splitpanes/-/splitpanes-3.1.8.tgz", + "integrity": "sha512-iYir0doakV9gYBfCuflGCxCD5Yhh09OGgT+epjfc6LZfTvGDdMXuD0Q4w6jI3hlkdRR1Ta3DlARcV3MOkybymg==", + "funding": { + "url": "https://github.com/sponsors/antoniandre" + }, + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/sql-formatter": { + "version": "15.4.11", + "resolved": "https://registry.npmjs.org/sql-formatter/-/sql-formatter-15.4.11.tgz", + "integrity": "sha512-AfIjH0mYxv0NVzs4mbcGIAcos2Si20LeF9GMk0VmVA4A3gs1PFIixVu3rtcz34ls7ghPAjrDb+XbRly/aF6HAg==", + "dependencies": { + "argparse": "^2.0.1", + "get-stdin": "=8.0.0", + "nearley": "^2.20.1" + }, + "bin": { + "sql-formatter": "bin/sql-formatter-cli.cjs" + } + }, + "node_modules/standard-as-callback": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/standard-as-callback/-/standard-as-callback-2.1.0.tgz", + "integrity": "sha512-qoRRSyROncaz1z0mvYqIE4lCd9p2R90i6GxW3uZv5ucSu8tU7B5HXUP1gG8pVZsYNVaXjk8ClXHPttLyxAL48A==" + }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/std-env": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.8.0.tgz", + "integrity": "sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==" + }, + "node_modules/streamx": { + "version": "2.22.0", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.22.0.tgz", + "integrity": "sha512-sLh1evHOzBy/iWRiR6d1zRcLao4gGZr3C1kzNz4fopCOKJb6xD9ub8Mpi9Mr1R6id5o43S+d93fI48UC5uM9aw==", + "dependencies": { + "fast-fifo": "^1.3.2", + "text-decoder": "^1.1.0" + }, + "optionalDependencies": { + "bare-events": "^2.2.0" + } + }, + "node_modules/strict-event-emitter": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/strict-event-emitter/-/strict-event-emitter-0.5.1.tgz", + "integrity": "sha512-vMgjE/GGEPEFnhFub6pa4FmJBRBVOLpIII2hvCZ8Kzb7K0hlHo7mQv6xYrBvCL2LtAIBwFUK8wvuJgTVSQ5MFQ==" + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/strip-literal": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-3.0.0.tgz", + "integrity": "sha512-TcccoMhJOM3OebGhSBEmp3UZ2SfDMZUEBdRA/9ynfLi8yYajyWX3JiXArcJt4Umh4vISpspkQIY8ZZoCqjbviA==", + "dependencies": { + "js-tokens": "^9.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/strip-literal/node_modules/js-tokens": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-9.0.1.tgz", + "integrity": "sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==" + }, + "node_modules/stylehacks": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-7.0.4.tgz", + "integrity": "sha512-i4zfNrGMt9SB4xRK9L83rlsFCgdGANfeDAYacO1pkqcE7cRHPdWHwnKZVz7WY17Veq/FvyYsRAU++Ga+qDFIww==", + "dependencies": { + "browserslist": "^4.23.3", + "postcss-selector-parser": "^6.1.2" + }, + "engines": { + "node": "^18.12.0 || ^20.9.0 || >=22.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/stylehacks/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/sucrase": { + "version": "3.35.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", + "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.2", + "commander": "^4.0.0", + "glob": "^10.3.10", + "lines-and-columns": "^1.1.6", + "mz": "^2.7.0", + "pirates": "^4.0.1", + "ts-interface-checker": "^0.1.9" + }, + "bin": { + "sucrase": "bin/sucrase", + "sucrase-node": "bin/sucrase-node" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/sucrase/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/sucrase/node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/sucrase/node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/sucrase/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/sucrase/node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/superjson": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/superjson/-/superjson-2.2.2.tgz", + "integrity": "sha512-5JRxVqC8I8NuOUjzBbvVJAKNM8qoVuH0O77h4WInc/qC2q5IreqKxYwgkga3PfA22OayK2ikceb/B26dztPl+Q==", + "dependencies": { + "copy-anything": "^3.0.2" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/supports-color": { + "version": "9.4.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-9.4.0.tgz", + "integrity": "sha512-VL+lNrEoIXww1coLPOmiEmK/0sGigko5COxI09KzHc2VJXJsQ37UaQ+8quuxjDeA7+KnLGTWRyOXSLLR2Wb4jw==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/svg-tags": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz", + "integrity": "sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==" + }, + "node_modules/svgo": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-3.3.2.tgz", + "integrity": "sha512-OoohrmuUlBs8B8o6MB2Aevn+pRIH9zDALSR+6hhqVfa6fRwG/Qw9VUMSMW9VNg2CFc/MTIfabtdOVl9ODIJjpw==", + "dependencies": { + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", + "css-select": "^5.1.0", + "css-tree": "^2.3.1", + "css-what": "^6.1.0", + "csso": "^5.0.5", + "picocolors": "^1.0.0" + }, + "bin": { + "svgo": "bin/svgo" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/svgo" + } + }, + "node_modules/svgo/node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/system-architecture": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/system-architecture/-/system-architecture-0.1.0.tgz", + "integrity": "sha512-ulAk51I9UVUyJgxlv9M6lFot2WP3e7t8Kz9+IS6D4rVba1tR9kON+Ey69f+1R4Q8cd45Lod6a4IcJIxnzGc/zA==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tabbable": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz", + "integrity": "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==" + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/tar": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar-stream": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.7.tgz", + "integrity": "sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==", + "dependencies": { + "b4a": "^1.6.4", + "fast-fifo": "^1.2.0", + "streamx": "^2.15.0" + } + }, + "node_modules/tar/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/tdigest": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/tdigest/-/tdigest-0.1.2.tgz", + "integrity": "sha512-+G0LLgjjo9BZX2MfdvPfH+MKLCrxlXSYec5DaPYP1fe6Iyhf0/fSmJ0bFiZ1F8BT6cGXl2LpltQptzjXKWEkKA==", + "dependencies": { + "bintrees": "1.0.2" + } + }, + "node_modules/terser": { + "version": "5.39.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.39.0.tgz", + "integrity": "sha512-LBAhFyLho16harJoWMg/nZsQYgTrg5jXOn2nCYjRUcZZEdE3qa2zb8QEDRUGVZBW4rlazf2fxkg8tztybTaqWw==", + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.3.11", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.11.tgz", + "integrity": "sha512-RVCsMfuD0+cTt3EwX8hSl2Ks56EbFHWmhluwcqoPKtBnfjiT6olaq7PRIRfhyU8nnC2MrnDrBLfrD/RGE+cVXQ==", + "peer": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.25", + "jest-worker": "^27.4.5", + "schema-utils": "^4.3.0", + "serialize-javascript": "^6.0.2", + "terser": "^5.31.1" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/text-decoder": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.2.3.tgz", + "integrity": "sha512-3/o9z3X0X0fTupwsYvR03pJ/DjWuqqrfwBgTQzdWDiQSm9KitAyz/9WqsT2JQW7KV2m+bC2ol/zqpW37NHxLaA==", + "dependencies": { + "b4a": "^1.6.4" + } + }, + "node_modules/thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dev": true, + "dependencies": { + "any-promise": "^1.0.0" + } + }, + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "dev": true, + "dependencies": { + "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/tiny-invariant": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.3.tgz", + "integrity": "sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==" + }, + "node_modules/tinyexec": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.2.tgz", + "integrity": "sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==" + }, + "node_modules/tinyglobby": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.10.tgz", + "integrity": "sha512-Zc+8eJlFMvgatPZTl6A9L/yht8QqdmUNtURHaKZLmKBE12hNPSrqNkUp2cs3M/UKmNVVAMFQYSjYIVHDjW5zew==", + "dependencies": { + "fdir": "^6.4.2", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/tosource": { + "version": "2.0.0-alpha.3", + "resolved": "https://registry.npmjs.org/tosource/-/tosource-2.0.0-alpha.3.tgz", + "integrity": "sha512-KAB2lrSS48y91MzFPFuDg4hLbvDiyTjOVgaK7Erw+5AmZXNq4sFRVn8r6yxSLuNs15PaokrDRpS61ERY9uZOug==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/totalist": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/totalist/-/totalist-3.0.1.tgz", + "integrity": "sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "node_modules/ts-interface-checker": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", + "dev": true + }, + "node_modules/tsx": { + "version": "4.19.3", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.19.3.tgz", + "integrity": "sha512-4H8vUNGNjQ4V2EOoGw005+c+dGuPSnhpPBPHBtsZdGZBk/iJb4kguGlPWaZTZ3q5nMtFOEsY0nRDlh9PJyd6SQ==", + "dependencies": { + "esbuild": "~0.25.0", + "get-tsconfig": "^4.7.5" + }, + "bin": { + "tsx": "dist/cli.mjs" + }, + "engines": { + "node": ">=18.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + } + }, + "node_modules/tsx/node_modules/@esbuild/aix-ppc64": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.0.tgz", + "integrity": "sha512-O7vun9Sf8DFjH2UtqK8Ku3LkquL9SZL8OLY1T5NZkA34+wG3OQF7cl4Ql8vdNzM6fzBbYfLaiRLIOZ+2FOCgBQ==", + "cpu": [ + "ppc64" + ], + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/android-arm": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.0.tgz", + "integrity": "sha512-PTyWCYYiU0+1eJKmw21lWtC+d08JDZPQ5g+kFyxP0V+es6VPPSUhM6zk8iImp2jbV6GwjX4pap0JFbUQN65X1g==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/android-arm64": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.0.tgz", + "integrity": "sha512-grvv8WncGjDSyUBjN9yHXNt+cq0snxXbDxy5pJtzMKGmmpPxeAmAhWxXI+01lU5rwZomDgD3kJwulEnhTRUd6g==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/android-x64": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.0.tgz", + "integrity": "sha512-m/ix7SfKG5buCnxasr52+LI78SQ+wgdENi9CqyCXwjVR2X4Jkz+BpC3le3AoBPYTC9NHklwngVXvbJ9/Akhrfg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/darwin-arm64": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.0.tgz", + "integrity": "sha512-mVwdUb5SRkPayVadIOI78K7aAnPamoeFR2bT5nszFUZ9P8UpK4ratOdYbZZXYSqPKMHfS1wdHCJk1P1EZpRdvw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/darwin-x64": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.0.tgz", + "integrity": "sha512-DgDaYsPWFTS4S3nWpFcMn/33ZZwAAeAFKNHNa1QN0rI4pUjgqf0f7ONmXf6d22tqTY+H9FNdgeaAa+YIFUn2Rg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/freebsd-arm64": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.0.tgz", + "integrity": "sha512-VN4ocxy6dxefN1MepBx/iD1dH5K8qNtNe227I0mnTRjry8tj5MRk4zprLEdG8WPyAPb93/e4pSgi1SoHdgOa4w==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/freebsd-x64": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.0.tgz", + "integrity": "sha512-mrSgt7lCh07FY+hDD1TxiTyIHyttn6vnjesnPoVDNmDfOmggTLXRv8Id5fNZey1gl/V2dyVK1VXXqVsQIiAk+A==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-arm": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.0.tgz", + "integrity": "sha512-vkB3IYj2IDo3g9xX7HqhPYxVkNQe8qTK55fraQyTzTX/fxaDtXiEnavv9geOsonh2Fd2RMB+i5cbhu2zMNWJwg==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-arm64": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.0.tgz", + "integrity": "sha512-9QAQjTWNDM/Vk2bgBl17yWuZxZNQIF0OUUuPZRKoDtqF2k4EtYbpyiG5/Dk7nqeK6kIJWPYldkOcBqjXjrUlmg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-ia32": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.0.tgz", + "integrity": "sha512-43ET5bHbphBegyeqLb7I1eYn2P/JYGNmzzdidq/w0T8E2SsYL1U6un2NFROFRg1JZLTzdCoRomg8Rvf9M6W6Gg==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-loong64": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.0.tgz", + "integrity": "sha512-fC95c/xyNFueMhClxJmeRIj2yrSMdDfmqJnyOY4ZqsALkDrrKJfIg5NTMSzVBr5YW1jf+l7/cndBfP3MSDpoHw==", + "cpu": [ + "loong64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-mips64el": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.0.tgz", + "integrity": "sha512-nkAMFju7KDW73T1DdH7glcyIptm95a7Le8irTQNO/qtkoyypZAnjchQgooFUDQhNAy4iu08N79W4T4pMBwhPwQ==", + "cpu": [ + "mips64el" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-ppc64": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.0.tgz", + "integrity": "sha512-NhyOejdhRGS8Iwv+KKR2zTq2PpysF9XqY+Zk77vQHqNbo/PwZCzB5/h7VGuREZm1fixhs4Q/qWRSi5zmAiO4Fw==", + "cpu": [ + "ppc64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-riscv64": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.0.tgz", + "integrity": "sha512-5S/rbP5OY+GHLC5qXp1y/Mx//e92L1YDqkiBbO9TQOvuFXM+iDqUNG5XopAnXoRH3FjIUDkeGcY1cgNvnXp/kA==", + "cpu": [ + "riscv64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-s390x": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.0.tgz", + "integrity": "sha512-XM2BFsEBz0Fw37V0zU4CXfcfuACMrppsMFKdYY2WuTS3yi8O1nFOhil/xhKTmE1nPmVyvQJjJivgDT+xh8pXJA==", + "cpu": [ + "s390x" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-x64": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.0.tgz", + "integrity": "sha512-9yl91rHw/cpwMCNytUDxwj2XjFpxML0y9HAOH9pNVQDpQrBxHy01Dx+vaMu0N1CKa/RzBD2hB4u//nfc+Sd3Cw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/netbsd-arm64": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.0.tgz", + "integrity": "sha512-RuG4PSMPFfrkH6UwCAqBzauBWTygTvb1nxWasEJooGSJ/NwRw7b2HOwyRTQIU97Hq37l3npXoZGYMy3b3xYvPw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/netbsd-x64": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.0.tgz", + "integrity": "sha512-jl+qisSB5jk01N5f7sPCsBENCOlPiS/xptD5yxOx2oqQfyourJwIKLRA2yqWdifj3owQZCL2sn6o08dBzZGQzA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/openbsd-arm64": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.0.tgz", + "integrity": "sha512-21sUNbq2r84YE+SJDfaQRvdgznTD8Xc0oc3p3iW/a1EVWeNj/SdUCbm5U0itZPQYRuRTW20fPMWMpcrciH2EJw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/openbsd-x64": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.0.tgz", + "integrity": "sha512-2gwwriSMPcCFRlPlKx3zLQhfN/2WjJ2NSlg5TKLQOJdV0mSxIcYNTMhk3H3ulL/cak+Xj0lY1Ym9ysDV1igceg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/sunos-x64": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.0.tgz", + "integrity": "sha512-bxI7ThgLzPrPz484/S9jLlvUAHYMzy6I0XiU1ZMeAEOBcS0VePBFxh1JjTQt3Xiat5b6Oh4x7UC7IwKQKIJRIg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/win32-arm64": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.0.tgz", + "integrity": "sha512-ZUAc2YK6JW89xTbXvftxdnYy3m4iHIkDtK3CLce8wg8M2L+YZhIvO1DKpxrd0Yr59AeNNkTiic9YLf6FTtXWMw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/win32-ia32": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.0.tgz", + "integrity": "sha512-eSNxISBu8XweVEWG31/JzjkIGbGIJN/TrRoiSVZwZ6pkC6VX4Im/WV2cz559/TXLcYbcrDN8JtKgd9DJVIo8GA==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/win32-x64": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.0.tgz", + "integrity": "sha512-ZENoHJBxA20C2zFzh6AI4fT6RraMzjYw4xKWemRTRmRVtN9c5DcH9r/f2ihEkMjOW5eGgrwCslG/+Y/3bL+DHQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/esbuild": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.0.tgz", + "integrity": "sha512-BXq5mqc8ltbaN34cDqWuYKyNhX8D/Z0J1xdtdQ8UcIIIyJyz+ZMKUt58tF3SrZ85jcfN/PZYhjR5uDQAYNVbuw==", + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.25.0", + "@esbuild/android-arm": "0.25.0", + "@esbuild/android-arm64": "0.25.0", + "@esbuild/android-x64": "0.25.0", + "@esbuild/darwin-arm64": "0.25.0", + "@esbuild/darwin-x64": "0.25.0", + "@esbuild/freebsd-arm64": "0.25.0", + "@esbuild/freebsd-x64": "0.25.0", + "@esbuild/linux-arm": "0.25.0", + "@esbuild/linux-arm64": "0.25.0", + "@esbuild/linux-ia32": "0.25.0", + "@esbuild/linux-loong64": "0.25.0", + "@esbuild/linux-mips64el": "0.25.0", + "@esbuild/linux-ppc64": "0.25.0", + "@esbuild/linux-riscv64": "0.25.0", + "@esbuild/linux-s390x": "0.25.0", + "@esbuild/linux-x64": "0.25.0", + "@esbuild/netbsd-arm64": "0.25.0", + "@esbuild/netbsd-x64": "0.25.0", + "@esbuild/openbsd-arm64": "0.25.0", + "@esbuild/openbsd-x64": "0.25.0", + "@esbuild/sunos-x64": "0.25.0", + "@esbuild/win32-arm64": "0.25.0", + "@esbuild/win32-ia32": "0.25.0", + "@esbuild/win32-x64": "0.25.0" + } + }, + "node_modules/tus-js-client": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/tus-js-client/-/tus-js-client-4.3.1.tgz", + "integrity": "sha512-ZLeYmjrkaU1fUsKbIi8JML52uAocjEZtBx4DKjRrqzrZa0O4MYwT6db+oqePlspV+FxXJAyFBc/L5gwUi2OFsg==", + "dependencies": { + "buffer-from": "^1.1.2", + "combine-errors": "^3.0.3", + "is-stream": "^2.0.0", + "js-base64": "^3.7.2", + "lodash.throttle": "^4.1.1", + "proper-lockfile": "^4.1.2", + "url-parse": "^1.5.7" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/tus-js-client/node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/type-fest": { + "version": "4.35.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.35.0.tgz", + "integrity": "sha512-2/AwEFQDFEy30iOLjrvHDIH7e4HEWH+f1Yl1bI5XMqzuoCUqwYCdxachgsgv0og/JdVZUhbfjcJAoHj5L1753A==", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "5.7.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.3.tgz", + "integrity": "sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==", + "peer": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/ufo": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.5.4.tgz", + "integrity": "sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==" + }, + "node_modules/ultrahtml": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/ultrahtml/-/ultrahtml-1.5.3.tgz", + "integrity": "sha512-GykOvZwgDWZlTQMtp5jrD4BVL+gNn2NVlVafjcFUJ7taY20tqYdwdoWBFy6GBJsNTZe1GkGPkSl5knQAjtgceg==" + }, + "node_modules/unconfig": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/unconfig/-/unconfig-0.6.1.tgz", + "integrity": "sha512-cVU+/sPloZqOyJEAfNwnQSFCzFrZm85vcVkryH7lnlB/PiTycUkAjt5Ds79cfIshGOZ+M5v3PBDnKgpmlE5DtA==", + "dependencies": { + "@antfu/utils": "^8.1.0", + "defu": "^6.1.4", + "importx": "^0.5.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/unconfig/node_modules/@antfu/utils": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/@antfu/utils/-/utils-8.1.1.tgz", + "integrity": "sha512-Mex9nXf9vR6AhcXmMrlz/HVgYYZpVGJ6YlPgwl7UnaFpnshXs6EK/oa5Gpf3CzENMjkvEx2tQtntGnb7UtSTOQ==", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/uncrypto": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/uncrypto/-/uncrypto-0.1.3.tgz", + "integrity": "sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==" + }, + "node_modules/unctx": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/unctx/-/unctx-2.4.1.tgz", + "integrity": "sha512-AbaYw0Nm4mK4qjhns67C+kgxR2YWiwlDBPzxrN8h8C6VtAdCgditAY5Dezu3IJy4XVqAnbrXt9oQJvsn3fyozg==", + "dependencies": { + "acorn": "^8.14.0", + "estree-walker": "^3.0.3", + "magic-string": "^0.30.17", + "unplugin": "^2.1.0" + } + }, + "node_modules/unctx/node_modules/unplugin": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-2.2.0.tgz", + "integrity": "sha512-m1ekpSwuOT5hxkJeZGRxO7gXbXT3gF26NjQ7GdVHoLoF8/nopLcd/QfPigpCy7i51oFHiRJg/CyHhj4vs2+KGw==", + "dependencies": { + "acorn": "^8.14.0", + "webpack-virtual-modules": "^0.6.2" + }, + "engines": { + "node": ">=18.12.0" + } + }, + "node_modules/undici": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-7.3.0.tgz", + "integrity": "sha512-Qy96NND4Dou5jKoSJ2gm8ax8AJM/Ey9o9mz7KN1bb9GP+G0l20Zw8afxTnY2f4b7hmhn/z8aC2kfArVQlAhFBw==", + "engines": { + "node": ">=20.18.1" + } + }, + "node_modules/undici-types": { + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz", + "integrity": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==" + }, + "node_modules/undio": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/undio/-/undio-0.2.0.tgz", + "integrity": "sha512-1LH824ipsUNqX1qsO6qpcusv0oGPlfFWVykwWq5jJB0Mq6x4kEHO/izSq2KLjGZvOosEd91+HXoxYUSoVI0zPg==" + }, + "node_modules/unenv": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/unenv/-/unenv-1.10.0.tgz", + "integrity": "sha512-wY5bskBQFL9n3Eca5XnhH6KbUo/tfvkwm9OpcdCvLaeA7piBNbavbOKJySEwQ1V0RH6HvNlSAFRTpvTqgKRQXQ==", + "dependencies": { + "consola": "^3.2.3", + "defu": "^6.1.4", + "mime": "^3.0.0", + "node-fetch-native": "^1.6.4", + "pathe": "^1.1.2" + } + }, + "node_modules/unenv/node_modules/mime": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", + "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/unenv/node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==" + }, + "node_modules/unhead": { + "version": "1.11.19", + "resolved": "https://registry.npmjs.org/unhead/-/unhead-1.11.19.tgz", + "integrity": "sha512-O5AYb3+xUOzBlwDmPfC/DgGp9rDMoGkB4gFkhoaz8IonQqP8W8qqetxYf5ZyEdntvXnFsMWS8lZF//5176xo6Q==", + "dependencies": { + "@unhead/dom": "1.11.19", + "@unhead/schema": "1.11.19", + "@unhead/shared": "1.11.19", + "hookable": "^5.5.3" + }, + "funding": { + "url": "https://github.com/sponsors/harlan-zw" + } + }, + "node_modules/unicorn-magic": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.3.0.tgz", + "integrity": "sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/unimport": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unimport/-/unimport-4.1.2.tgz", + "integrity": "sha512-oVUL7PSlyVV3QRhsdcyYEMaDX8HJyS/CnUonEJTYA3//bWO+o/4gG8F7auGWWWkrrxBQBYOO8DKe+C53ktpRXw==", + "dependencies": { + "acorn": "^8.14.0", + "escape-string-regexp": "^5.0.0", + "estree-walker": "^3.0.3", + "local-pkg": "^1.0.0", + "magic-string": "^0.30.17", + "mlly": "^1.7.4", + "pathe": "^2.0.3", + "picomatch": "^4.0.2", + "pkg-types": "^1.3.1", + "scule": "^1.3.0", + "strip-literal": "^3.0.0", + "tinyglobby": "^0.2.11", + "unplugin": "^2.2.0", + "unplugin-utils": "^0.2.4" + }, + "engines": { + "node": ">=18.12.0" + } + }, + "node_modules/unimport/node_modules/local-pkg": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-1.0.0.tgz", + "integrity": "sha512-bbgPw/wmroJsil/GgL4qjDzs5YLTBMQ99weRsok1XCDccQeehbHA/I1oRvk2NPtr7KGZgT/Y5tPRnAtMqeG2Kg==", + "dependencies": { + "mlly": "^1.7.3", + "pkg-types": "^1.3.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/unimport/node_modules/tinyglobby": { + "version": "0.2.12", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.12.tgz", + "integrity": "sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==", + "dependencies": { + "fdir": "^6.4.3", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/unimport/node_modules/unplugin": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-2.2.0.tgz", + "integrity": "sha512-m1ekpSwuOT5hxkJeZGRxO7gXbXT3gF26NjQ7GdVHoLoF8/nopLcd/QfPigpCy7i51oFHiRJg/CyHhj4vs2+KGw==", + "dependencies": { + "acorn": "^8.14.0", + "webpack-virtual-modules": "^0.6.2" + }, + "engines": { + "node": ">=18.12.0" + } + }, + "node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/unocss": { + "version": "0.65.4", + "resolved": "https://registry.npmjs.org/unocss/-/unocss-0.65.4.tgz", + "integrity": "sha512-KUCW5OzI20Ik6j1zXkkrpWhxZ59TwSKl6+DvmYHEzMfaEcrHlBZaFSApAoSt2CYSvo6SluGiKyr+Im1UTkd4KA==", + "dependencies": { + "@unocss/astro": "0.65.4", + "@unocss/cli": "0.65.4", + "@unocss/core": "0.65.4", + "@unocss/postcss": "0.65.4", + "@unocss/preset-attributify": "0.65.4", + "@unocss/preset-icons": "0.65.4", + "@unocss/preset-mini": "0.65.4", + "@unocss/preset-tagify": "0.65.4", + "@unocss/preset-typography": "0.65.4", + "@unocss/preset-uno": "0.65.4", + "@unocss/preset-web-fonts": "0.65.4", + "@unocss/preset-wind": "0.65.4", + "@unocss/transformer-attributify-jsx": "0.65.4", + "@unocss/transformer-compile-class": "0.65.4", + "@unocss/transformer-directives": "0.65.4", + "@unocss/transformer-variant-group": "0.65.4", + "@unocss/vite": "0.65.4" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@unocss/webpack": "0.65.4", + "vite": "^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0" + }, + "peerDependenciesMeta": { + "@unocss/webpack": { + "optional": true + }, + "vite": { + "optional": true + } + } + }, + "node_modules/unplugin": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-1.16.1.tgz", + "integrity": "sha512-4/u/j4FrCKdi17jaxuJA0jClGxB1AvU2hw/IuayPc4ay1XGaJs/rbb4v5WKwAjNifjmXK9PIFyuPiaK8azyR9w==", + "dependencies": { + "acorn": "^8.14.0", + "webpack-virtual-modules": "^0.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/unplugin-utils": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/unplugin-utils/-/unplugin-utils-0.2.4.tgz", + "integrity": "sha512-8U/MtpkPkkk3Atewj1+RcKIjb5WBimZ/WSLhhR3w6SsIj8XJuKTacSP8g+2JhfSGw0Cb125Y+2zA/IzJZDVbhA==", + "dependencies": { + "pathe": "^2.0.2", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=18.12.0" + }, + "funding": { + "url": "https://github.com/sponsors/sxzz" + } + }, + "node_modules/unplugin-vue-router": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/unplugin-vue-router/-/unplugin-vue-router-0.11.2.tgz", + "integrity": "sha512-X8BbQ3BNnMqaCYeMj80jtz5jC4AB0jcpdmECIYey9qKm6jy/upaPZ/WzfuT+iTGRiQAY4WemHueXxuzH127oOg==", + "dependencies": { + "@babel/types": "^7.26.5", + "@rollup/pluginutils": "^5.1.4", + "@vue-macros/common": "^1.16.1", + "ast-walker-scope": "^0.6.2", + "chokidar": "^3.6.0", + "fast-glob": "^3.3.3", + "json5": "^2.2.3", + "local-pkg": "^1.0.0", + "magic-string": "^0.30.17", + "mlly": "^1.7.4", + "pathe": "^2.0.2", + "scule": "^1.3.0", + "unplugin": "2.1.2", + "yaml": "^2.7.0" + }, + "peerDependencies": { + "vue-router": "^4.4.0" + }, + "peerDependenciesMeta": { + "vue-router": { + "optional": true + } + } + }, + "node_modules/unplugin-vue-router/node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/unplugin-vue-router/node_modules/local-pkg": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-1.0.0.tgz", + "integrity": "sha512-bbgPw/wmroJsil/GgL4qjDzs5YLTBMQ99weRsok1XCDccQeehbHA/I1oRvk2NPtr7KGZgT/Y5tPRnAtMqeG2Kg==", + "dependencies": { + "mlly": "^1.7.3", + "pkg-types": "^1.3.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/unplugin-vue-router/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/unplugin-vue-router/node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/unplugin-vue-router/node_modules/unplugin": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-2.1.2.tgz", + "integrity": "sha512-Q3LU0e4zxKfRko1wMV2HmP8lB9KWislY7hxXpxd+lGx0PRInE4vhMBVEZwpdVYHvtqzhSrzuIfErsob6bQfCzw==", + "dependencies": { + "acorn": "^8.14.0", + "webpack-virtual-modules": "^0.6.2" + }, + "engines": { + "node": ">=18.12.0" + } + }, + "node_modules/unstorage": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/unstorage/-/unstorage-1.15.0.tgz", + "integrity": "sha512-m40eHdGY/gA6xAPqo8eaxqXgBuzQTlAKfmB1iF7oCKXE1HfwHwzDJBywK+qQGn52dta+bPlZluPF7++yR3p/bg==", + "dependencies": { + "anymatch": "^3.1.3", + "chokidar": "^4.0.3", + "destr": "^2.0.3", + "h3": "^1.15.0", + "lru-cache": "^10.4.3", + "node-fetch-native": "^1.6.6", + "ofetch": "^1.4.1", + "ufo": "^1.5.4" + }, + "peerDependencies": { + "@azure/app-configuration": "^1.8.0", + "@azure/cosmos": "^4.2.0", + "@azure/data-tables": "^13.3.0", + "@azure/identity": "^4.6.0", + "@azure/keyvault-secrets": "^4.9.0", + "@azure/storage-blob": "^12.26.0", + "@capacitor/preferences": "^6.0.3", + "@deno/kv": ">=0.9.0", + "@netlify/blobs": "^6.5.0 || ^7.0.0 || ^8.1.0", + "@planetscale/database": "^1.19.0", + "@upstash/redis": "^1.34.3", + "@vercel/blob": ">=0.27.1", + "@vercel/kv": "^1.0.1", + "aws4fetch": "^1.0.20", + "db0": ">=0.2.1", + "idb-keyval": "^6.2.1", + "ioredis": "^5.4.2", + "uploadthing": "^7.4.4" + }, + "peerDependenciesMeta": { + "@azure/app-configuration": { + "optional": true + }, + "@azure/cosmos": { + "optional": true + }, + "@azure/data-tables": { + "optional": true + }, + "@azure/identity": { + "optional": true + }, + "@azure/keyvault-secrets": { + "optional": true + }, + "@azure/storage-blob": { + "optional": true + }, + "@capacitor/preferences": { + "optional": true + }, + "@deno/kv": { + "optional": true + }, + "@netlify/blobs": { + "optional": true + }, + "@planetscale/database": { + "optional": true + }, + "@upstash/redis": { + "optional": true + }, + "@vercel/blob": { + "optional": true + }, + "@vercel/kv": { + "optional": true + }, + "aws4fetch": { + "optional": true + }, + "db0": { + "optional": true + }, + "idb-keyval": { + "optional": true + }, + "ioredis": { + "optional": true + }, + "uploadthing": { + "optional": true + } + } + }, + "node_modules/unstorage/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, + "node_modules/untun": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/untun/-/untun-0.1.3.tgz", + "integrity": "sha512-4luGP9LMYszMRZwsvyUd9MrxgEGZdZuZgpVQHEEX0lCYFESasVRvZd0EYpCkOIbJKHMuv0LskpXc/8Un+MJzEQ==", + "dependencies": { + "citty": "^0.1.5", + "consola": "^3.2.3", + "pathe": "^1.1.1" + }, + "bin": { + "untun": "bin/untun.mjs" + } + }, + "node_modules/untun/node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==" + }, + "node_modules/untyped": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/untyped/-/untyped-1.5.2.tgz", + "integrity": "sha512-eL/8PlhLcMmlMDtNPKhyyz9kEBDS3Uk4yMu/ewlkT2WFbtzScjHWPJLdQLmaGPUKjXzwe9MumOtOgc4Fro96Kg==", + "dependencies": { + "@babel/core": "^7.26.0", + "@babel/standalone": "^7.26.4", + "@babel/types": "^7.26.3", + "citty": "^0.1.6", + "defu": "^6.1.4", + "jiti": "^2.4.1", + "knitwork": "^1.2.0", + "scule": "^1.3.0" + }, + "bin": { + "untyped": "dist/cli.mjs" + } + }, + "node_modules/unwasm": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/unwasm/-/unwasm-0.3.9.tgz", + "integrity": "sha512-LDxTx/2DkFURUd+BU1vUsF/moj0JsoTvl+2tcg2AUOiEzVturhGGx17/IMgGvKUYdZwr33EJHtChCJuhu9Ouvg==", + "dependencies": { + "knitwork": "^1.0.0", + "magic-string": "^0.30.8", + "mlly": "^1.6.1", + "pathe": "^1.1.2", + "pkg-types": "^1.0.3", + "unplugin": "^1.10.0" + } + }, + "node_modules/unwasm/node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==" + }, + "node_modules/upath": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/upath/-/upath-2.0.1.tgz", + "integrity": "sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w==", + "devOptional": true, + "engines": { + "node": ">=4", + "yarn": "*" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.2.tgz", + "integrity": "sha512-PPypAm5qvlD7XMZC3BujecnaOxwhrtoFR+Dqkk5Aa/6DssiH0ibKoketaj9w8LP7Bont1rYeoV5plxD7RTEPRg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uqr": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/uqr/-/uqr-0.1.2.tgz", + "integrity": "sha512-MJu7ypHq6QasgF5YRTjqscSzQp/W11zoUk6kvmlH+fmWEs63Y0Eib13hYFwAzagRJcVY8WVnlV+eBDUGMJ5IbA==" + }, + "node_modules/uri-js-replace": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/uri-js-replace/-/uri-js-replace-1.0.1.tgz", + "integrity": "sha512-W+C9NWNLFOoBI2QWDp4UT9pv65r2w5Cx+3sTYFvtMdDBxkKt1syCqsUdSFAChbEe1uK5TfS04wt/nGwmaeIQ0g==" + }, + "node_modules/url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "node_modules/urlpattern-polyfill": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/urlpattern-polyfill/-/urlpattern-polyfill-8.0.2.tgz", + "integrity": "sha512-Qp95D4TPJl1kC9SKigDcqgyM2VDVO4RiJc2d4qe5GrYm+zbIQCWWKAFaJNQ4BhdFeDGwBmAxqJBwWSJDb9T3BQ==" + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "node_modules/v-lazy-show": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/v-lazy-show/-/v-lazy-show-0.3.0.tgz", + "integrity": "sha512-xpVALnvzB+RoDkI/5gqzVC2bL/Mh0Mw5/cPpSWJTTS6K4yDwFE2hZr5OsgFS74c6IHV6/k0jzSkAFXJttnhufg==", + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/compiler-core": "^3.5" + } + }, + "node_modules/vite": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/vite/-/vite-6.1.1.tgz", + "integrity": "sha512-4GgM54XrwRfrOp297aIYspIti66k56v16ZnqHvrIM7mG+HjDlAwS7p+Srr7J6fGvEdOJ5JcQ/D9T7HhtdXDTzA==", + "dependencies": { + "esbuild": "^0.24.2", + "postcss": "^8.5.2", + "rollup": "^4.30.1" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || ^20.0.0 || >=22.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", + "jiti": ">=1.21.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.16.0", + "tsx": "^4.8.1", + "yaml": "^2.4.2" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "jiti": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true + } + } + }, + "node_modules/vite-hot-client": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/vite-hot-client/-/vite-hot-client-0.2.4.tgz", + "integrity": "sha512-a1nzURqO7DDmnXqabFOliz908FRmIppkBKsJthS8rbe8hBEXwEwe4C3Pp33Z1JoFCYfVL4kTOMLKk0ZZxREIeA==", + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "vite": "^2.6.0 || ^3.0.0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0" + } + }, + "node_modules/vite-node": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-3.0.7.tgz", + "integrity": "sha512-2fX0QwX4GkkkpULXdT1Pf4q0tC1i1lFOyseKoonavXUNlQ77KpW2XqBGGNIm/J4Ows4KxgGJzDguYVPKwG/n5A==", + "dependencies": { + "cac": "^6.7.14", + "debug": "^4.4.0", + "es-module-lexer": "^1.6.0", + "pathe": "^2.0.3", + "vite": "^5.0.0 || ^6.0.0" + }, + "bin": { + "vite-node": "vite-node.mjs" + }, + "engines": { + "node": "^18.0.0 || ^20.0.0 || >=22.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/vite-plugin-checker": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/vite-plugin-checker/-/vite-plugin-checker-0.8.0.tgz", + "integrity": "sha512-UA5uzOGm97UvZRTdZHiQVYFnd86AVn8EVaD4L3PoVzxH+IZSfaAw14WGFwX9QS23UW3lV/5bVKZn6l0w+q9P0g==", + "dependencies": { + "@babel/code-frame": "^7.12.13", + "ansi-escapes": "^4.3.0", + "chalk": "^4.1.1", + "chokidar": "^3.5.1", + "commander": "^8.0.0", + "fast-glob": "^3.2.7", + "fs-extra": "^11.1.0", + "npm-run-path": "^4.0.1", + "strip-ansi": "^6.0.0", + "tiny-invariant": "^1.1.0", + "vscode-languageclient": "^7.0.0", + "vscode-languageserver": "^7.0.0", + "vscode-languageserver-textdocument": "^1.0.1", + "vscode-uri": "^3.0.2" + }, + "engines": { + "node": ">=14.16" + }, + "peerDependencies": { + "@biomejs/biome": ">=1.7", + "eslint": ">=7", + "meow": "^9.0.0", + "optionator": "^0.9.1", + "stylelint": ">=13", + "typescript": "*", + "vite": ">=2.0.0", + "vls": "*", + "vti": "*", + "vue-tsc": "~2.1.6" + }, + "peerDependenciesMeta": { + "@biomejs/biome": { + "optional": true + }, + "eslint": { + "optional": true + }, + "meow": { + "optional": true + }, + "optionator": { + "optional": true + }, + "stylelint": { + "optional": true + }, + "typescript": { + "optional": true + }, + "vls": { + "optional": true + }, + "vti": { + "optional": true + }, + "vue-tsc": { + "optional": true + } + } + }, + "node_modules/vite-plugin-checker/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/vite-plugin-checker/node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/vite-plugin-checker/node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "engines": { + "node": ">= 12" + } + }, + "node_modules/vite-plugin-checker/node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/vite-plugin-checker/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/vite-plugin-checker/node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/vite-plugin-checker/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/vite-plugin-inspect": { + "version": "0.8.9", + "resolved": "https://registry.npmjs.org/vite-plugin-inspect/-/vite-plugin-inspect-0.8.9.tgz", + "integrity": "sha512-22/8qn+LYonzibb1VeFZmISdVao5kC22jmEKm24vfFE8siEn47EpVcCLYMv6iKOYMJfjSvSJfueOwcFCkUnV3A==", + "dependencies": { + "@antfu/utils": "^0.7.10", + "@rollup/pluginutils": "^5.1.3", + "debug": "^4.3.7", + "error-stack-parser-es": "^0.1.5", + "fs-extra": "^11.2.0", + "open": "^10.1.0", + "perfect-debounce": "^1.0.0", + "picocolors": "^1.1.1", + "sirv": "^3.0.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "vite": "^3.1.0 || ^4.0.0 || ^5.0.0-0 || ^6.0.1" + }, + "peerDependenciesMeta": { + "@nuxt/kit": { + "optional": true + } + } + }, + "node_modules/vite-plugin-inspect/node_modules/define-lazy-prop": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz", + "integrity": "sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/vite-plugin-inspect/node_modules/open": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/open/-/open-10.1.0.tgz", + "integrity": "sha512-mnkeQ1qP5Ue2wd+aivTD3NHd/lZ96Lu0jgf0pwktLPtx6cTZiH7tyeGRRHs0zX0rbrahXPnXlUnbeXyaBBuIaw==", + "dependencies": { + "default-browser": "^5.2.1", + "define-lazy-prop": "^3.0.0", + "is-inside-container": "^1.0.0", + "is-wsl": "^3.1.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/vite-plugin-inspect/node_modules/sirv": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/sirv/-/sirv-3.0.1.tgz", + "integrity": "sha512-FoqMu0NCGBLCcAkS1qA+XJIQTR6/JHfQXl+uGteNCQ76T91DMUjPa9xfmeqMY3z80nLSg9yQmNjK0Px6RWsH/A==", + "dependencies": { + "@polka/url": "^1.0.0-next.24", + "mrmime": "^2.0.0", + "totalist": "^3.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/vite-plugin-vue-inspector": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/vite-plugin-vue-inspector/-/vite-plugin-vue-inspector-5.3.1.tgz", + "integrity": "sha512-cBk172kZKTdvGpJuzCCLg8lJ909wopwsu3Ve9FsL1XsnLBiRT9U3MePcqrgGHgCX2ZgkqZmAGR8taxw+TV6s7A==", + "dependencies": { + "@babel/core": "^7.23.0", + "@babel/plugin-proposal-decorators": "^7.23.0", + "@babel/plugin-syntax-import-attributes": "^7.22.5", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-transform-typescript": "^7.22.15", + "@vue/babel-plugin-jsx": "^1.1.5", + "@vue/compiler-dom": "^3.3.4", + "kolorist": "^1.8.0", + "magic-string": "^0.30.4" + }, + "peerDependencies": { + "vite": "^3.0.0-0 || ^4.0.0-0 || ^5.0.0-0 || ^6.0.0-0" + } + }, + "node_modules/vite-plugin-vuetify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/vite-plugin-vuetify/-/vite-plugin-vuetify-2.1.0.tgz", + "integrity": "sha512-4wEAQtZaigPpwbFcZbrKpYwutOsWwWdeXn22B9XHzDPQNxVsKT+K9lKcXZnI5JESO1Iaql48S9rOk8RZZEt+Mw==", + "devOptional": true, + "dependencies": { + "@vuetify/loader-shared": "^2.1.0", + "debug": "^4.3.3", + "upath": "^2.0.1" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "vite": ">=5", + "vue": "^3.0.0", + "vuetify": "^3.0.0" + } + }, + "node_modules/vscode-jsonrpc": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-6.0.0.tgz", + "integrity": "sha512-wnJA4BnEjOSyFMvjZdpiOwhSq9uDoK8e/kpRJDTaMYzwlkrhG1fwDIZI94CLsLzlCK5cIbMMtFlJlfR57Lavmg==", + "engines": { + "node": ">=8.0.0 || >=10.0.0" + } + }, + "node_modules/vscode-languageclient": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/vscode-languageclient/-/vscode-languageclient-7.0.0.tgz", + "integrity": "sha512-P9AXdAPlsCgslpP9pRxYPqkNYV7Xq8300/aZDpO35j1fJm/ncize8iGswzYlcvFw5DQUx4eVk+KvfXdL0rehNg==", + "dependencies": { + "minimatch": "^3.0.4", + "semver": "^7.3.4", + "vscode-languageserver-protocol": "3.16.0" + }, + "engines": { + "vscode": "^1.52.0" + } + }, + "node_modules/vscode-languageserver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-7.0.0.tgz", + "integrity": "sha512-60HTx5ID+fLRcgdHfmz0LDZAXYEV68fzwG0JWwEPBode9NuMYTIxuYXPg4ngO8i8+Ou0lM7y6GzaYWbiDL0drw==", + "dependencies": { + "vscode-languageserver-protocol": "3.16.0" + }, + "bin": { + "installServerIntoExtension": "bin/installServerIntoExtension" + } + }, + "node_modules/vscode-languageserver-protocol": { + "version": "3.16.0", + "resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.16.0.tgz", + "integrity": "sha512-sdeUoAawceQdgIfTI+sdcwkiK2KU+2cbEYA0agzM2uqaUy2UpnnGHtWTHVEtS0ES4zHU0eMFRGN+oQgDxlD66A==", + "dependencies": { + "vscode-jsonrpc": "6.0.0", + "vscode-languageserver-types": "3.16.0" + } + }, + "node_modules/vscode-languageserver-textdocument": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.12.tgz", + "integrity": "sha512-cxWNPesCnQCcMPeenjKKsOCKQZ/L6Tv19DTRIGuLWe32lyzWhihGVJ/rcckZXJxfdKCFvRLS3fpBIsV/ZGX4zA==" + }, + "node_modules/vscode-languageserver-types": { + "version": "3.16.0", + "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.16.0.tgz", + "integrity": "sha512-k8luDIWJWyenLc5ToFQQMaSrqCHiLwyKPHKPQZ5zz21vM+vIVUSvsRpcbiECH4WR88K2XZqc4ScRcZ7nk/jbeA==" + }, + "node_modules/vscode-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.1.0.tgz", + "integrity": "sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ==" + }, + "node_modules/vue": { + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.13.tgz", + "integrity": "sha512-wmeiSMxkZCSc+PM2w2VRsOYAZC8GdipNFRTsLSfodVqI9mbejKeXEGr8SckuLnrQPGe3oJN5c3K0vpoU9q/wCQ==", + "dependencies": { + "@vue/compiler-dom": "3.5.13", + "@vue/compiler-sfc": "3.5.13", + "@vue/runtime-dom": "3.5.13", + "@vue/server-renderer": "3.5.13", + "@vue/shared": "3.5.13" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/vue-axios": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/vue-axios/-/vue-axios-3.5.2.tgz", + "integrity": "sha512-GP+dct7UlAWkl1qoP3ppw0z6jcSua5/IrMpjB5O8bh089iIiJ+hdxPYH2NPEpajlYgkW5EVMP95ttXWdas1O0g==", + "peerDependencies": { + "axios": "*", + "vue": "^3.0.0 || ^2.0.0" + } + }, + "node_modules/vue-bundle-renderer": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/vue-bundle-renderer/-/vue-bundle-renderer-2.1.1.tgz", + "integrity": "sha512-+qALLI5cQncuetYOXp4yScwYvqh8c6SMXee3B+M7oTZxOgtESP0l4j/fXdEJoZ+EdMxkGWIj+aSEyjXkOdmd7g==", + "dependencies": { + "ufo": "^1.5.4" + } + }, + "node_modules/vue-chartjs": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/vue-chartjs/-/vue-chartjs-5.3.2.tgz", + "integrity": "sha512-NrkbRRoYshbXbWqJkTN6InoDVwVb90C0R7eAVgMWcB9dPikbruaOoTFjFYHE/+tNPdIe6qdLCDjfjPHQ0fw4jw==", + "peerDependencies": { + "chart.js": "^4.1.1", + "vue": "^3.0.0-0 || ^2.7.0" + } + }, + "node_modules/vue-demi": { + "version": "0.14.10", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, + "node_modules/vue-devtools-stub": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/vue-devtools-stub/-/vue-devtools-stub-0.1.0.tgz", + "integrity": "sha512-RutnB7X8c5hjq39NceArgXg28WZtZpGc3+J16ljMiYnFhKvd8hITxSWQSQ5bvldxMDU6gG5mkxl1MTQLXckVSQ==" + }, + "node_modules/vue-flow-layout": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/vue-flow-layout/-/vue-flow-layout-0.1.1.tgz", + "integrity": "sha512-JdgRRUVrN0Y2GosA0M68DEbKlXMqJ7FQgsK8CjQD2vxvNSqAU6PZEpi4cfcTVtfM2GVOMjHo7GKKLbXxOBqDqA==", + "peerDependencies": { + "vue": "^3.4.37" + } + }, + "node_modules/vue-i18n": { + "version": "9.14.2", + "resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-9.14.2.tgz", + "integrity": "sha512-JK9Pm80OqssGJU2Y6F7DcM8RFHqVG4WkuCqOZTVsXkEzZME7ABejAUqUdA931zEBedc4thBgSUWxeQh4uocJAQ==", + "dev": true, + "dependencies": { + "@intlify/core-base": "9.14.2", + "@intlify/shared": "9.14.2", + "@vue/devtools-api": "^6.5.0" + }, + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://github.com/sponsors/kazupon" + }, + "peerDependencies": { + "vue": "^3.0.0" + } + }, + "node_modules/vue-meta": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/vue-meta/-/vue-meta-2.4.0.tgz", + "integrity": "sha512-XEeZUmlVeODclAjCNpWDnjgw+t3WA6gdzs6ENoIAgwO1J1d5p1tezDhtteLUFwcaQaTtayRrsx7GL6oXp/m2Jw==", + "dependencies": { + "deepmerge": "^4.2.2" + } + }, + "node_modules/vue-router": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.5.0.tgz", + "integrity": "sha512-HDuk+PuH5monfNuY+ct49mNmkCRK4xJAV9Ts4z9UFc4rzdDnxQLyCMGGc8pKhZhHTVzfanpNwB/lwqevcBwI4w==", + "dependencies": { + "@vue/devtools-api": "^6.6.4" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/vue-toast-notification": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/vue-toast-notification/-/vue-toast-notification-3.1.3.tgz", + "integrity": "sha512-XNyWqwLIGBFfX5G9sK+clq3N3IPlhDjzNdbZaXkEElcotPlWs0wWZailk1vqhdtLYT/93Y4FHAVuzyatLmPZRA==", + "engines": { + "node": ">=12.15.0" + }, + "peerDependencies": { + "vue": "^3.0" + } + }, + "node_modules/vue3-ace-editor": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/vue3-ace-editor/-/vue3-ace-editor-2.2.4.tgz", + "integrity": "sha512-FZkEyfpbH068BwjhMyNROxfEI8135Sc+x8ouxkMdCNkuj/Tuw83VP/gStFQqZHqljyX9/VfMTCdTqtOnJZGN8g==", + "dependencies": { + "resize-observer-polyfill": "^1.5.1" + }, + "peerDependencies": { + "ace-builds": "*", + "vue": "^3" + } + }, + "node_modules/vuetify": { + "version": "3.7.13", + "resolved": "https://registry.npmjs.org/vuetify/-/vuetify-3.7.13.tgz", + "integrity": "sha512-4+RuQU+zLtXhlN2eZUpKXums9ftzUzhMeiNEJvvJY4XdOzVwUCth2dTnEZkSF6EKdLHk3WhtRk0cIWXZxpBvcw==", + "engines": { + "node": "^12.20 || >=14.13" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/johnleider" + }, + "peerDependencies": { + "typescript": ">=4.7", + "vite-plugin-vuetify": ">=1.0.0", + "vue": "^3.3.0", + "webpack-plugin-vuetify": ">=2.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + }, + "vite-plugin-vuetify": { + "optional": true + }, + "webpack-plugin-vuetify": { + "optional": true + } + } + }, + "node_modules/watchpack": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz", + "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==", + "peer": true, + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "node_modules/webpack": { + "version": "5.98.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.98.0.tgz", + "integrity": "sha512-UFynvx+gM44Gv9qFgj0acCQK2VE1CtdfwFdimkapco3hlPCJ/zeq73n2yVKimVbtm+TnApIugGhLJnkU6gjYXA==", + "peer": true, + "dependencies": { + "@types/eslint-scope": "^3.7.7", + "@types/estree": "^1.0.6", + "@webassemblyjs/ast": "^1.14.1", + "@webassemblyjs/wasm-edit": "^1.14.1", + "@webassemblyjs/wasm-parser": "^1.14.1", + "acorn": "^8.14.0", + "browserslist": "^4.24.0", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.17.1", + "es-module-lexer": "^1.2.1", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.11", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^4.3.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.3.11", + "watchpack": "^2.4.1", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack-virtual-modules": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.6.2.tgz", + "integrity": "sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==" + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "node_modules/ws": { + "version": "8.18.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.1.tgz", + "integrity": "sha512-RKW2aJZMXeMxVpnZ6bck+RswznaxmzdULiBr6KY7XkTnW8uvt0iT9H5DkHUChXrc+uurzwa0rVI16n/Xzjdz1w==", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + }, + "node_modules/yaml": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.0.tgz", + "integrity": "sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA==", + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/yaml-ast-parser": { + "version": "0.0.43", + "resolved": "https://registry.npmjs.org/yaml-ast-parser/-/yaml-ast-parser-0.0.43.tgz", + "integrity": "sha512-2PTINUwsRqSd+s8XxKaJWQlUuEMHJQyEuh2edBbW8KNJz0SJPwUSD2zRWqezFEdN7IzAgeuYHFUCF7o8zRdZ0A==" + }, + "node_modules/yaml-eslint-parser": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/yaml-eslint-parser/-/yaml-eslint-parser-1.2.3.tgz", + "integrity": "sha512-4wZWvE398hCP7O8n3nXKu/vdq1HcH01ixYlCREaJL5NUMwQ0g3MaGFUBNSlmBtKmhbtVG/Cm6lyYmSVTEVil8A==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^3.0.0", + "lodash": "^4.17.21", + "yaml": "^2.0.0" + }, + "engines": { + "node": "^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ota-meshi" + } + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "engines": { + "node": ">=12" + } + }, + "node_modules/zhead": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/zhead/-/zhead-2.2.4.tgz", + "integrity": "sha512-8F0OI5dpWIA5IGG5NHUg9staDwz/ZPxZtvGVf01j7vHqSyZ0raHY+78atOVxRqb73AotX22uV1pXt3gYSstGag==", + "funding": { + "url": "https://github.com/sponsors/harlan-zw" + } + }, + "node_modules/zip-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-6.0.1.tgz", + "integrity": "sha512-zK7YHHz4ZXpW89AHXUPbQVGKI7uvkd3hzusTdotCg1UxyaVtg0zFJSTfW/Dq5f7OBBVnq6cZIaC8Ti4hb6dtCA==", + "dependencies": { + "archiver-utils": "^5.0.0", + "compress-commons": "^6.0.2", + "readable-stream": "^4.0.0" + }, + "engines": { + "node": ">= 14" + } + } + } +} diff --git a/dbrepo-ui/pages/database/[database_id]/settings.vue b/dbrepo-ui/pages/database/[database_id]/settings.vue index 3d82b13bda..f20ce2be68 100644 --- a/dbrepo-ui/pages/database/[database_id]/settings.vue +++ b/dbrepo-ui/pages/database/[database_id]/settings.vue @@ -484,13 +484,13 @@ export default { this.loadingUpload = true const uploadService = useUploadService() uploadService.create(this.file) - .then((s3key) => { - console.debug('uploaded image', s3key) + .then(({s3_key}) => { + console.debug('uploaded image', s3_key) const cacheStore = useCacheStore() cacheStore.setUploadProgress(null) const toast = useToastInstance() toast.success(this.$t('success.database.upload')) - this.modifyImage.key = s3key + this.modifyImage.key = s3_key this.loadingUpload = false }) .catch((error) => { diff --git a/dbrepo-upload-service/.gitignore b/dbrepo-upload-service/.gitignore deleted file mode 100644 index a5aee567d4..0000000000 --- a/dbrepo-upload-service/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -# environment -venv/ \ No newline at end of file diff --git a/dbrepo-upload-service/mvnw b/dbrepo-upload-service/mvnw deleted file mode 100755 index a16b5431b4..0000000000 --- a/dbrepo-upload-service/mvnw +++ /dev/null @@ -1,310 +0,0 @@ -#!/bin/sh -# ---------------------------------------------------------------------------- -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# ---------------------------------------------------------------------------- - -# ---------------------------------------------------------------------------- -# Maven Start Up Batch script -# -# Required ENV vars: -# ------------------ -# JAVA_HOME - location of a JDK home dir -# -# Optional ENV vars -# ----------------- -# M2_HOME - location of maven2's installed home dir -# MAVEN_OPTS - parameters passed to the Java VM when running Maven -# e.g. to debug Maven itself, use -# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -# MAVEN_SKIP_RC - flag to disable loading of mavenrc files -# ---------------------------------------------------------------------------- - -if [ -z "$MAVEN_SKIP_RC" ] ; then - - if [ -f /etc/mavenrc ] ; then - . /etc/mavenrc - fi - - if [ -f "$HOME/.mavenrc" ] ; then - . "$HOME/.mavenrc" - fi - -fi - -# OS specific support. $var _must_ be set to either true or false. -cygwin=false; -darwin=false; -mingw=false -case "`uname`" in - CYGWIN*) cygwin=true ;; - MINGW*) mingw=true;; - Darwin*) darwin=true - # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home - # See https://developer.apple.com/library/mac/qa/qa1170/_index.html - if [ -z "$JAVA_HOME" ]; then - if [ -x "/usr/libexec/java_home" ]; then - export JAVA_HOME="`/usr/libexec/java_home`" - else - export JAVA_HOME="/Library/Java/Home" - fi - fi - ;; -esac - -if [ -z "$JAVA_HOME" ] ; then - if [ -r /etc/gentoo-release ] ; then - JAVA_HOME=`java-config --jre-home` - fi -fi - -if [ -z "$M2_HOME" ] ; then - ## resolve links - $0 may be a link to maven's home - PRG="$0" - - # need this for relative symlinks - while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG="`dirname "$PRG"`/$link" - fi - done - - saveddir=`pwd` - - M2_HOME=`dirname "$PRG"`/.. - - # make it fully qualified - M2_HOME=`cd "$M2_HOME" && pwd` - - cd "$saveddir" - # echo Using m2 at $M2_HOME -fi - -# For Cygwin, ensure paths are in UNIX format before anything is touched -if $cygwin ; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --unix "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --unix "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --unix "$CLASSPATH"` -fi - -# For Mingw, ensure paths are in UNIX format before anything is touched -if $mingw ; then - [ -n "$M2_HOME" ] && - M2_HOME="`(cd "$M2_HOME"; pwd)`" - [ -n "$JAVA_HOME" ] && - JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`" -fi - -if [ -z "$JAVA_HOME" ]; then - javaExecutable="`which javac`" - if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then - # readlink(1) is not available as standard on Solaris 10. - readLink=`which readlink` - if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then - if $darwin ; then - javaHome="`dirname \"$javaExecutable\"`" - javaExecutable="`cd \"$javaHome\" && pwd -P`/javac" - else - javaExecutable="`readlink -f \"$javaExecutable\"`" - fi - javaHome="`dirname \"$javaExecutable\"`" - javaHome=`expr "$javaHome" : '\(.*\)/bin'` - JAVA_HOME="$javaHome" - export JAVA_HOME - fi - fi -fi - -if [ -z "$JAVACMD" ] ; then - if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" - else - JAVACMD="$JAVA_HOME/bin/java" - fi - else - JAVACMD="`which java`" - fi -fi - -if [ ! -x "$JAVACMD" ] ; then - echo "Error: JAVA_HOME is not defined correctly." >&2 - echo " We cannot execute $JAVACMD" >&2 - exit 1 -fi - -if [ -z "$JAVA_HOME" ] ; then - echo "Warning: JAVA_HOME environment variable is not set." -fi - -CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher - -# traverses directory structure from process work directory to filesystem root -# first directory with .mvn subdirectory is considered project base directory -find_maven_basedir() { - - if [ -z "$1" ] - then - echo "Path not specified to find_maven_basedir" - return 1 - fi - - basedir="$1" - wdir="$1" - while [ "$wdir" != '/' ] ; do - if [ -d "$wdir"/.mvn ] ; then - basedir=$wdir - break - fi - # workaround for JBEAP-8937 (on Solaris 10/Sparc) - if [ -d "${wdir}" ]; then - wdir=`cd "$wdir/.."; pwd` - fi - # end of workaround - done - echo "${basedir}" -} - -# concatenates all lines of a file -concat_lines() { - if [ -f "$1" ]; then - echo "$(tr -s '\n' ' ' < "$1")" - fi -} - -BASE_DIR=`find_maven_basedir "$(pwd)"` -if [ -z "$BASE_DIR" ]; then - exit 1; -fi - -########################################################################################## -# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -# This allows using the maven wrapper in projects that prohibit checking in binary data. -########################################################################################## -if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found .mvn/wrapper/maven-wrapper.jar" - fi -else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..." - fi - if [ -n "$MVNW_REPOURL" ]; then - jarUrl="$MVNW_REPOURL/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" - else - jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" - fi - while IFS="=" read key value; do - case "$key" in (wrapperUrl) jarUrl="$value"; break ;; - esac - done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties" - if [ "$MVNW_VERBOSE" = true ]; then - echo "Downloading from: $jarUrl" - fi - wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" - if $cygwin; then - wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"` - fi - - if command -v wget > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found wget ... using wget" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - wget "$jarUrl" -O "$wrapperJarPath" - else - wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" - fi - elif command -v curl > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found curl ... using curl" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - curl -o "$wrapperJarPath" "$jarUrl" -f - else - curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f - fi - - else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Falling back to using Java to download" - fi - javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java" - # For Cygwin, switch paths to Windows format before running javac - if $cygwin; then - javaClass=`cygpath --path --windows "$javaClass"` - fi - if [ -e "$javaClass" ]; then - if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Compiling MavenWrapperDownloader.java ..." - fi - # Compiling the Java class - ("$JAVA_HOME/bin/javac" "$javaClass") - fi - if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - # Running the downloader - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Running MavenWrapperDownloader.java ..." - fi - ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR") - fi - fi - fi -fi -########################################################################################## -# End of extension -########################################################################################## - -export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"} -if [ "$MVNW_VERBOSE" = true ]; then - echo $MAVEN_PROJECTBASEDIR -fi -MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" - -# For Cygwin, switch paths to Windows format before running java -if $cygwin; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --path --windows "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --windows "$CLASSPATH"` - [ -n "$MAVEN_PROJECTBASEDIR" ] && - MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"` -fi - -# Provide a "standardized" way to retrieve the CLI args that will -# work with both Windows and non-Windows executions. -MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@" -export MAVEN_CMD_LINE_ARGS - -WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -exec "$JAVACMD" \ - $MAVEN_OPTS \ - -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ - "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ - ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" diff --git a/dbrepo-upload-service/mvnw.cmd b/dbrepo-upload-service/mvnw.cmd deleted file mode 100644 index c8d43372c9..0000000000 --- a/dbrepo-upload-service/mvnw.cmd +++ /dev/null @@ -1,182 +0,0 @@ -@REM ---------------------------------------------------------------------------- -@REM Licensed to the Apache Software Foundation (ASF) under one -@REM or more contributor license agreements. See the NOTICE file -@REM distributed with this work for additional information -@REM regarding copyright ownership. The ASF licenses this file -@REM to you under the Apache License, Version 2.0 (the -@REM "License"); you may not use this file except in compliance -@REM with the License. You may obtain a copy of the License at -@REM -@REM https://www.apache.org/licenses/LICENSE-2.0 -@REM -@REM Unless required by applicable law or agreed to in writing, -@REM software distributed under the License is distributed on an -@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -@REM KIND, either express or implied. See the License for the -@REM specific language governing permissions and limitations -@REM under the License. -@REM ---------------------------------------------------------------------------- - -@REM ---------------------------------------------------------------------------- -@REM Maven Start Up Batch script -@REM -@REM Required ENV vars: -@REM JAVA_HOME - location of a JDK home dir -@REM -@REM Optional ENV vars -@REM M2_HOME - location of maven2's installed home dir -@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands -@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending -@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven -@REM e.g. to debug Maven itself, use -@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files -@REM ---------------------------------------------------------------------------- - -@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' -@echo off -@REM set title of command window -title %0 -@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on' -@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% - -@REM set %HOME% to equivalent of $HOME -if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") - -@REM Execute a user defined script before this one -if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre -@REM check for pre script, once with legacy .bat ending and once with .cmd ending -if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat" -if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd" -:skipRcPre - -@setlocal - -set ERROR_CODE=0 - -@REM To isolate internal variables from possible post scripts, we use another setlocal -@setlocal - -@REM ==== START VALIDATION ==== -if not "%JAVA_HOME%" == "" goto OkJHome - -echo. -echo Error: JAVA_HOME not found in your environment. >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -:OkJHome -if exist "%JAVA_HOME%\bin\java.exe" goto init - -echo. -echo Error: JAVA_HOME is set to an invalid directory. >&2 -echo JAVA_HOME = "%JAVA_HOME%" >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -@REM ==== END VALIDATION ==== - -:init - -@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". -@REM Fallback to current working directory if not found. - -set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% -IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir - -set EXEC_DIR=%CD% -set WDIR=%EXEC_DIR% -:findBaseDir -IF EXIST "%WDIR%"\.mvn goto baseDirFound -cd .. -IF "%WDIR%"=="%CD%" goto baseDirNotFound -set WDIR=%CD% -goto findBaseDir - -:baseDirFound -set MAVEN_PROJECTBASEDIR=%WDIR% -cd "%EXEC_DIR%" -goto endDetectBaseDir - -:baseDirNotFound -set MAVEN_PROJECTBASEDIR=%EXEC_DIR% -cd "%EXEC_DIR%" - -:endDetectBaseDir - -IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig - -@setlocal EnableExtensions EnableDelayedExpansion -for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a -@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% - -:endReadAdditionalConfig - -SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" -set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" -set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" - -FOR /F "tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( - IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B -) - -@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -@REM This allows using the maven wrapper in projects that prohibit checking in binary data. -if exist %WRAPPER_JAR% ( - if "%MVNW_VERBOSE%" == "true" ( - echo Found %WRAPPER_JAR% - ) -) else ( - if not "%MVNW_REPOURL%" == "" ( - SET DOWNLOAD_URL="%MVNW_REPOURL%/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" - ) - if "%MVNW_VERBOSE%" == "true" ( - echo Couldn't find %WRAPPER_JAR%, downloading it ... - echo Downloading from: %DOWNLOAD_URL% - ) - - powershell -Command "&{"^ - "$webclient = new-object System.Net.WebClient;"^ - "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^ - "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^ - "}"^ - "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^ - "}" - if "%MVNW_VERBOSE%" == "true" ( - echo Finished downloading %WRAPPER_JAR% - ) -) -@REM End of extension - -@REM Provide a "standardized" way to retrieve the CLI args that will -@REM work with both Windows and non-Windows executions. -set MAVEN_CMD_LINE_ARGS=%* - -%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* -if ERRORLEVEL 1 goto error -goto end - -:error -set ERROR_CODE=1 - -:end -@endlocal & set ERROR_CODE=%ERROR_CODE% - -if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost -@REM check for post script, once with legacy .bat ending and once with .cmd ending -if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat" -if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd" -:skipRcPost - -@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' -if "%MAVEN_BATCH_PAUSE%" == "on" pause - -if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE% - -exit /B %ERROR_CODE% diff --git a/dbrepo-upload-service/pom.xml b/dbrepo-upload-service/pom.xml deleted file mode 100644 index e7784d3459..0000000000 --- a/dbrepo-upload-service/pom.xml +++ /dev/null @@ -1,168 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> - <modelVersion>4.0.0</modelVersion> - <parent> - <groupId>org.springframework.boot</groupId> - <artifactId>spring-boot-starter-parent</artifactId> - <version>3.3.5</version> - </parent> - - <groupId>at.tuwien</groupId> - <artifactId>dbrepo-upload-service</artifactId> - <name>dbrepo-upload-service</name> - <version>1.7.0</version> - - <url>https://www.ifs.tuwien.ac.at/infrastructures/dbrepo/1.7/</url> - <developers> - <developer> - <name>Martin Weise</name> - <email>martin.weise@tuwien.ac.at</email> - <organization>TU Wien</organization> - </developer> - </developers> - - <properties> - <java.version>17</java.version> - <spring-cloud.version>4.1.4</spring-cloud.version> - <mapstruct.version>1.5.5.Final</mapstruct.version> - <rabbitmq.version>5.20.0</rabbitmq.version> - <jackson-datatype.version>2.15.0</jackson-datatype.version> - <commons-io.version>2.17.0</commons-io.version> - <commons-validator.version>1.8.0</commons-validator.version> - <guava.version>33.0.0-jre</guava.version> - <jacoco.version>0.8.12</jacoco.version> - <jwt.version>4.3.0</jwt.version> - <c3p0.version>0.9.5.5</c3p0.version> - <c3p0-hibernate.version>6.2.2.Final</c3p0-hibernate.version> - <apache-jena.version>4.10.0</apache-jena.version> - <opencsv.version>5.7.1</opencsv.version> - <super-csv.version>2.4.0</super-csv.version> - <keycloak.version>21.0.2</keycloak.version> - <springdoc-openapi.version>2.3.0</springdoc-openapi.version> - <testcontainers.version>1.19.1</testcontainers.version> - <keycloak-testcontainer.version>3.2.0</keycloak-testcontainer.version> - <aws-s3.version>2.25.23</aws-s3.version> - <jackson.version>2.15.2</jackson.version> - <minio.version>8.5.7</minio.version> - </properties> - - <dependencies> - <dependency> - <groupId>at.tuwien</groupId> - <artifactId>dbrepo-metadata-service-api</artifactId> - <version>${version}</version> - </dependency> - <dependency> - <groupId>at.tuwien</groupId> - <artifactId>dbrepo-metadata-service-repositories</artifactId> - <version>${version}</version> - </dependency> - <dependency> - <groupId>org.springframework.boot</groupId> - <artifactId>spring-boot-starter-validation</artifactId> - </dependency> - <dependency> - <groupId>org.springframework.boot</groupId> - <artifactId>spring-boot-starter-web</artifactId> - </dependency> - <dependency> - <groupId>org.springframework.boot</groupId> - <artifactId>spring-boot-starter-security</artifactId> - </dependency> - <dependency> - <groupId>org.springframework.security</groupId> - <artifactId>spring-security-test</artifactId> - <scope>test</scope> - </dependency> - <!-- IDE --> - <dependency> - <groupId>org.projectlombok</groupId> - <artifactId>lombok</artifactId> - <scope>compile</scope> - </dependency> - <!-- Mapping --> - <dependency> - <groupId>org.mapstruct</groupId> - <artifactId>mapstruct-processor</artifactId> - <version>${mapstruct.version}</version> - <optional>true</optional> - </dependency> - <dependency> - <groupId>org.mapstruct</groupId> - <artifactId>mapstruct</artifactId> - <version>${mapstruct.version}</version> - </dependency> - <dependency> - <groupId>com.fasterxml.jackson.datatype</groupId> - <artifactId>jackson-datatype-jsr310</artifactId> - <version>${jackson-datatype.version}</version> - </dependency> - <dependency> - <groupId>commons-io</groupId> - <artifactId>commons-io</artifactId> - <version>${commons-io.version}</version> - </dependency> - <dependency> - <groupId>commons-validator</groupId> - <artifactId>commons-validator</artifactId> - <version>${commons-validator.version}</version> - </dependency> - <dependency> - <groupId>com.fasterxml.jackson.datatype</groupId> - <artifactId>jackson-datatype-hibernate6</artifactId> - <version>${jackson-datatype.version}</version> - </dependency> - <!-- Authentication --> - <dependency> - <groupId>org.keycloak</groupId> - <artifactId>keycloak-common</artifactId> - <version>${keycloak.version}</version> - </dependency> - <!-- Testing --> - <dependency> - <groupId>org.springframework</groupId> - <artifactId>spring-test</artifactId> - </dependency> - <dependency> - <groupId>org.springframework.boot</groupId> - <artifactId>spring-boot-starter-test</artifactId> - <scope>test</scope> - </dependency> - <dependency> - <groupId>com.h2database</groupId> - <artifactId>h2</artifactId> - </dependency> - <dependency> - <groupId>org.testcontainers</groupId> - <artifactId>junit-jupiter</artifactId> - <version>${testcontainers.version}</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.testcontainers</groupId> - <artifactId>minio</artifactId> - <version>${testcontainers.version}</version> - </dependency> - <dependency> - <groupId>com.github.dasniko</groupId> - <artifactId>testcontainers-keycloak</artifactId> - <version>${keycloak-testcontainer.version}</version> - <scope>test</scope> - </dependency> - </dependencies> - - <build> - <resources> - <resource> - <directory>${basedir}/src/main/resources</directory> - <filtering>true</filtering> - <includes> - <include>**/application*.yml</include> - <include>**/init/dbrepo-realm.json</include> - </includes> - </resource> - </resources> - </build> - -</project> diff --git a/dbrepo-upload-service/pre-create.sh b/dbrepo-upload-service/pre-create.sh deleted file mode 100755 index 2d6eb4f861..0000000000 --- a/dbrepo-upload-service/pre-create.sh +++ /dev/null @@ -1,45 +0,0 @@ -#!/bin/bash -REQUEST_RAW=$(cat /dev/stdin) -METADATA_SERVICE_ENDPOINT="${METADATA_SERVICE_ENDPOINT:-http://metadata-service:8080}" - -echo "[DEBUG] [pre-create hook] request started" >&2 -if [ "$(echo "$REQUEST_RAW" | jq '.Event.HTTPRequest.Header | has("Authorization")')" == "false" ]; then - echo "[ERROR] [pre-create hook] Missing header 'Authorization'" >&2 - echo "[DEBUG] [pre-create hook] raw request: ${REQUEST_RAW}" >&2 - cat <<END - { - "RejectUpload": true, - "HTTPResponse": { - "StatusCode": 400, - "Header": { - "Content-Type": "application/json" - }, - "Body": "{\"code\":\"error.upload.malformed\",\"message\":\"Missing header 'Authorization'\",\"status\":\"BAD_REQUEST\"}" - } - } -END - exit 0 -fi - -echo "[DEBUG] [pre-create hook] request has 'Authorization' header p resent" >&2 - -BEARER="$(echo "$REQUEST_RAW" | jq -r '.Event.HTTPRequest.Header.Authorization[0]')" - -if [ ! "$(wget -O- --quiet --header='Authorization: ${BEARER}' ${METADATA_SERVICE_ENDPOINT}/api/license)" ]; then - echo "[ERROR] [pre-create hook] Unauthorized" >&2 - cat <<END - { - "RejectUpload": true, - "HTTPResponse": { - "StatusCode": 401, - "Header": { - "Content-Type": "application/json" - }, - "Body": "{\"code\":\"error.upload.unauthorized\",\"message\":\"Authentication required\",\"status\":\"UNAUTHORIZED\"}" - } - } -END - exit 0 -fi - -echo "[INFO] [pre-create hook] Authorized" >&2 \ No newline at end of file diff --git a/dbrepo-upload-service/src/main/java/at/tuwien/Application.java b/dbrepo-upload-service/src/main/java/at/tuwien/Application.java deleted file mode 100644 index 08ff7e84e7..0000000000 --- a/dbrepo-upload-service/src/main/java/at/tuwien/Application.java +++ /dev/null @@ -1,13 +0,0 @@ -package at.tuwien; - -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; - -@SpringBootApplication -public class Application { - - public static void main(String[] args) { - SpringApplication.run(Application.class, args); - } - -} diff --git a/dbrepo-upload-service/src/main/resources/application-local.yml b/dbrepo-upload-service/src/main/resources/application-local.yml deleted file mode 100644 index 34573c21f4..0000000000 --- a/dbrepo-upload-service/src/main/resources/application-local.yml +++ /dev/null @@ -1,82 +0,0 @@ -spring: - datasource: - url: jdbc:h2:mem:fda;DB_CLOSE_ON_EXIT=FALSE;INIT=CREATE SCHEMA IF NOT EXISTS FDA;NON_KEYWORDS=value - driver-class-name: org.h2.Driver - username: sa - password: password - jpa: - show-sql: false - open-in-view: false - properties: - hibernate: - default_schema: dbrepo - jdbc: - time_zone: UTC - format_sql: false - application: - name: metadata-service - rabbitmq: - host: localhost - virtual-host: dbrepo - username: admin - password: admin - port: 5672 -management: - endpoints: - web: - exposure: - include: health,info,prometheus - endpoint: - health: - probes: - enabled: true - health: - readinessState: - enabled: true - livenessState: - enabled: true -server: - port: 19099 -logging: - pattern.console: "%d %highlight(%-5level) %msg%n" - level: - root: warn - at.tuwien.: trace - org.springframework.security.web.FilterChainProxy: debug -# org.hibernate.resource.jdbc: trace - org.springframework.web.servlet.mvc.method.annotation.ExceptionHandlerExceptionResolver: debug -dbrepo: - repository-name: Database Repository - base-url: http://localhost - admin-email: noreply@example.com - deleted-record: persistent - granularity: YYYY-MM-DDThh:mm:ssZ - exchangeName: dbrepo - queueName: dbrepo - connectionTimeout: 10000 - s3: - accessKeyId: seaweedfsadmin - secretAccessKey: seaweedfsadmin - bucket: dbrepo - system: - username: admin - password: admin - endpoints: - searchService: http://localhost - analyseService: http://localhost - dataService: http://localhost:9093 - brokerService: http://localhost:15672 - authService: http://localhost/api/auth - storageService: http://localhost/api/storage - rorService: https://api.ror.org - crossRefService: http://data.crossref.org - pid: - base: http://localhost/pid/ - jwt: - public_key: MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqqnHQ2BWWW9vDNLRCcxD++xZg/16oqMo/c1l+lcFEjjAIJjJp/HqrPYU/U9GvquGE6PbVFtTzW1KcKawOW+FJNOA3CGo8Q1TFEfz43B8rZpKsFbJKvQGVv1Z4HaKPvLUm7iMm8Hv91cLduuoWx6Q3DPe2vg13GKKEZe7UFghF+0T9u8EKzA/XqQ0OiICmsmYPbwvf9N3bCKsB/Y10EYmZRb8IhCoV9mmO5TxgWgiuNeCTtNCv2ePYqL/U0WvyGFW0reasIK8eg3KrAUj8DpyOgPOVBn3lBGf+3KFSYi+0bwZbJZWqbC/Xlk20Go1YfeJPRIt7ImxD27R/lNjgDO/MwIDAQAB - keycloak: - username: admin - password: admin - client: dbrepo-client - clientSecret: MUwRc7yfXSJwX8AdRMWaQC3Nep1VjwgG - website: http://localhost diff --git a/dbrepo-upload-service/src/main/resources/application.yml b/dbrepo-upload-service/src/main/resources/application.yml deleted file mode 100644 index e0285aa736..0000000000 --- a/dbrepo-upload-service/src/main/resources/application.yml +++ /dev/null @@ -1,38 +0,0 @@ -application: - title: DBRepo - version: '@project.version@' -spring: - jpa: - show-sql: false - open-in-view: false - properties: - hibernate: - default_schema: "${METADATA_DB:dbrepo}" - jdbc: - time_zone: UTC - application: - name: upload-service - main: - banner-mode: off -management: - endpoints: - web: - exposure: - include: health,info,prometheus - endpoint: - health: - probes: - enabled: true - health: - readinessState: - enabled: true - livenessState: - enabled: true -server: - port: 8080 -logging: - pattern.console: "%d %highlight(%-5level) %msg%n" - level: - root: warn - at.tuwien.: "${LOG_LEVEL:info}" - org.springframework.web.servlet.mvc.method.annotation.ExceptionHandlerExceptionResolver: debug diff --git a/dbrepo-upload-service/src/test/java/at/tuwien/config/GatewayConfig.java b/dbrepo-upload-service/src/test/java/at/tuwien/config/GatewayConfig.java deleted file mode 100644 index 601229b5e5..0000000000 --- a/dbrepo-upload-service/src/test/java/at/tuwien/config/GatewayConfig.java +++ /dev/null @@ -1,29 +0,0 @@ -package at.tuwien.config; - -import lombok.Getter; -import lombok.extern.log4j.Log4j2; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.web.client.RestTemplate; - -@Log4j2 -@Getter -@Configuration -public class GatewayConfig { - - @Value("${dbrepo.endpoints.keycloak}") - private String keycloakEndpoint; - - @Value("${dbrepo.keycloak.username}") - private String keycloakUsername; - - @Value("${dbrepo.keycloak.password}") - private String keycloakPassword; - - @Bean - public RestTemplate restTemplate() { - return new RestTemplate(); - } - -} diff --git a/dbrepo-upload-service/src/test/java/at/tuwien/config/KeycloakConfig.java b/dbrepo-upload-service/src/test/java/at/tuwien/config/KeycloakConfig.java deleted file mode 100644 index 6243cb3ab5..0000000000 --- a/dbrepo-upload-service/src/test/java/at/tuwien/config/KeycloakConfig.java +++ /dev/null @@ -1,23 +0,0 @@ -package at.tuwien.config; - -import lombok.Getter; -import lombok.extern.log4j.Log4j2; -import org.keycloak.admin.client.Keycloak; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; - -@Log4j2 -@Getter -@Configuration -public class KeycloakConfig { - - @Value("${dbrepo.endpoints.keycloak}") - private String keycloakEndpoint; - - @Bean - public Keycloak keycloak() { - return Keycloak.getInstance(keycloakEndpoint, "master", "admin", "admin", "admin-cli"); - } - -} diff --git a/dbrepo-upload-service/src/test/java/at/tuwien/config/TusdConfig.java b/dbrepo-upload-service/src/test/java/at/tuwien/config/TusdConfig.java deleted file mode 100644 index af678238de..0000000000 --- a/dbrepo-upload-service/src/test/java/at/tuwien/config/TusdConfig.java +++ /dev/null @@ -1,16 +0,0 @@ -package at.tuwien.config; - -import lombok.Getter; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.web.client.RestTemplate; - -@Getter -@Configuration -public class TusdConfig { - - @Value("${dbrepo.endpoints.tusd}") - private String tusdEndpoint; - -} diff --git a/dbrepo-upload-service/src/test/java/at/tuwien/config/TusdContainerConfig.java b/dbrepo-upload-service/src/test/java/at/tuwien/config/TusdContainerConfig.java deleted file mode 100644 index e08cea4a66..0000000000 --- a/dbrepo-upload-service/src/test/java/at/tuwien/config/TusdContainerConfig.java +++ /dev/null @@ -1,70 +0,0 @@ -package at.tuwien.config; - -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.testcontainers.containers.BindMode; -import org.testcontainers.containers.GenericContainer; -import org.testcontainers.images.PullPolicy; - -import java.io.File; - -@Configuration -public class TusdContainerConfig { - - public static TusdContainer getContainer() { - return TusdContainer.getInstance(); - } - - @Bean - public TusdContainer tusdContainer() { - return getContainer(); - } - - /** - * This class represents the customized MariaDB container. It is a singleton to avoid the recreation of containers - * which can be very time-consuming. - */ - public static class TusdContainer extends GenericContainer<TusdContainer> { - - private static TusdContainer instance; - - private boolean started = false; - - public static synchronized TusdContainer getInstance() { - final File filePath = new File("pre-create.sh"); - if (instance == null) { - instance = new TusdContainer("tusproject/tusd:v2.4.0"); - instance.withFileSystemBind(filePath.getAbsolutePath(), "/srv/tusd-hooks/pre-create", BindMode.READ_ONLY); - instance.withExposedPorts(8080); - instance.withCommand("-max-size=2000000000", - "-base-path=/api/upload/files/", - "-hooks-dir=/srv/tusd-hooks/"); - instance.withImagePullPolicy(PullPolicy.alwaysPull()); - } - return instance; - } - - private TusdContainer(String dockerImageName) { - super(dockerImageName); - } - - @Override - protected void configure() { - super.configure(); - } - - @Override - public synchronized void start() { - if (!started) { - super.stop(); - super.start(); - started = true; - } - } - - @Override - public void stop() { - // do nothing, JVM handles shut down - } - } -} diff --git a/dbrepo-upload-service/src/test/java/at/tuwien/interceptor/KeycloakInterceptor.java b/dbrepo-upload-service/src/test/java/at/tuwien/interceptor/KeycloakInterceptor.java deleted file mode 100644 index 569653a104..0000000000 --- a/dbrepo-upload-service/src/test/java/at/tuwien/interceptor/KeycloakInterceptor.java +++ /dev/null @@ -1,61 +0,0 @@ -package at.tuwien.interceptor; - -import at.tuwien.api.keycloak.TokenDto; -import lombok.extern.log4j.Log4j2; -import org.springframework.http.*; -import org.springframework.http.client.ClientHttpRequestExecution; -import org.springframework.http.client.ClientHttpRequestInterceptor; -import org.springframework.http.client.ClientHttpResponse; -import org.springframework.util.LinkedMultiValueMap; -import org.springframework.util.MultiValueMap; -import org.springframework.web.client.HttpServerErrorException; -import org.springframework.web.client.ResourceAccessException; -import org.springframework.web.client.RestTemplate; -import org.springframework.web.util.DefaultUriBuilderFactory; - -import java.io.IOException; - -@Log4j2 -public class KeycloakInterceptor implements ClientHttpRequestInterceptor { - - private final String adminUsername; - private final String adminPassword; - private final String keycloakEndpoint; - private final RestTemplate restTemplate; - - public KeycloakInterceptor(RestTemplate restTemplate, String adminUsername, String adminPassword, - String keycloakEndpoint) { - this.adminUsername = adminUsername; - this.adminPassword = adminPassword; - this.keycloakEndpoint = keycloakEndpoint; - this.restTemplate = restTemplate; - } - - @Override - public ClientHttpResponse intercept(HttpRequest request, byte[] body, ClientHttpRequestExecution execution) - throws IOException { - restTemplate.setUriTemplateHandler(new DefaultUriBuilderFactory(keycloakEndpoint)); - final HttpHeaders headers = new HttpHeaders(); - headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED); - final MultiValueMap<String, String> payload = new LinkedMultiValueMap<>(); - payload.add("username", adminUsername); - payload.add("password", adminPassword); - payload.add("grant_type", "password"); - payload.add("client_id", "admin-cli"); - final String path = "/realms/master/protocol/openid-connect/token"; - log.trace("obtain admin token at endpoint {} with path {}", keycloakEndpoint, path); - final ResponseEntity<TokenDto> response; - try { - response = restTemplate.exchange(path, HttpMethod.POST, new HttpEntity<>(payload, headers), TokenDto.class); - } catch (ResourceAccessException | HttpServerErrorException.ServiceUnavailable e) { - log.error("Failed to obtain admin token: {}", e.getMessage()); - return execution.execute(request, body); - } - if (response.getBody() == null) { - return execution.execute(request, body); - } - request.getHeaders().set("Authorization", "Bearer " + response.getBody().getAccessToken()); - log.trace("set header: Authorization {} (shortened)", response.getBody().getAccessToken().substring(0, 5)); - return execution.execute(request, body); - } -} diff --git a/dbrepo-upload-service/src/test/java/at/tuwien/mapper/MetadataMapper.java b/dbrepo-upload-service/src/test/java/at/tuwien/mapper/MetadataMapper.java deleted file mode 100644 index c6b5d429e7..0000000000 --- a/dbrepo-upload-service/src/test/java/at/tuwien/mapper/MetadataMapper.java +++ /dev/null @@ -1,22 +0,0 @@ -package at.tuwien.mapper; - - -import at.tuwien.api.keycloak.UserCreateDto; -import at.tuwien.api.user.external.ExternalResultType; -import org.keycloak.representations.idm.UserRepresentation; -import org.mapstruct.Mapper; -import org.mapstruct.Mapping; -import org.mapstruct.Mappings; - -import java.util.LinkedList; - -@Mapper(componentModel = "spring", imports = {LinkedList.class, ExternalResultType.class}) -public interface MetadataMapper { - - org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger(MetadataMapper.class); - - @Mappings({ - @Mapping(target = "attributes", ignore = true) - }) - UserRepresentation userCreateDtoToUserRepresentation(UserCreateDto data); -} diff --git a/dbrepo-upload-service/src/test/java/at/tuwien/service/UploadServiceIntegrationTest.java b/dbrepo-upload-service/src/test/java/at/tuwien/service/UploadServiceIntegrationTest.java deleted file mode 100644 index 052d028d39..0000000000 --- a/dbrepo-upload-service/src/test/java/at/tuwien/service/UploadServiceIntegrationTest.java +++ /dev/null @@ -1,140 +0,0 @@ -package at.tuwien.service; - -import at.tuwien.api.error.ApiErrorDto; -import at.tuwien.api.keycloak.CredentialDto; -import at.tuwien.api.keycloak.CredentialTypeDto; -import at.tuwien.api.keycloak.UserCreateDto; -import at.tuwien.config.KeycloakConfig; -import at.tuwien.config.TusdConfig; -import at.tuwien.config.TusdContainerConfig; -import at.tuwien.exception.AuthServiceException; -import at.tuwien.interceptor.KeycloakInterceptor; -import at.tuwien.util.KeycloakUtil; -import com.github.dockerjava.api.model.ExposedPort; -import dasniko.testcontainers.keycloak.KeycloakContainer; -import lombok.extern.log4j.Log4j2; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; -import org.junit.jupiter.api.extension.ExtendWith; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.context.SpringBootTest; -import org.springframework.http.HttpEntity; -import org.springframework.http.HttpHeaders; -import org.springframework.http.HttpMethod; -import org.springframework.http.ResponseEntity; -import org.springframework.test.context.DynamicPropertyRegistry; -import org.springframework.test.context.DynamicPropertySource; -import org.springframework.test.context.junit.jupiter.SpringExtension; -import org.springframework.web.client.HttpClientErrorException; -import org.springframework.web.client.RestTemplate; -import org.springframework.web.util.DefaultUriBuilderFactory; -import org.testcontainers.images.PullPolicy; -import org.testcontainers.junit.jupiter.Container; -import org.testcontainers.junit.jupiter.Testcontainers; - -import java.util.List; - -import static org.junit.jupiter.api.Assertions.assertThrows; - -@Log4j2 -@Testcontainers -@SpringBootTest -@ExtendWith(SpringExtension.class) -public class UploadServiceIntegrationTest { - - @Autowired - private RestTemplate restTemplate; - - @Autowired - private TusdConfig tusdConfig; - - @Autowired - private KeycloakUtil keycloakUtil; - - @Autowired - private KeycloakConfig keycloakConfig; - - @Container - private static TusdContainerConfig.TusdContainer tusdContainer = TusdContainerConfig.TusdContainer.getInstance(); - - @Container - private static KeycloakContainer keycloakContainer = new KeycloakContainer("quay.io/keycloak/keycloak:26.0") - .withImagePullPolicy(PullPolicy.alwaysPull()) - .withRealmImportFile("init/dbrepo-realm.json") - .withEnv("KC_HOSTNAME_STRICT_HTTPS", "false") - .withCreateContainerCmdModifier(it -> it.withName("auth-service") - .withExposedPorts(ExposedPort.tcp(8080))); - - @DynamicPropertySource - static void dynamicProperties(DynamicPropertyRegistry registry) { - registry.add("dbrepo.endpoints.tusd", () -> "http://localhost:" + tusdContainer.getMappedPort(8080) + "/api/upload/files"); - registry.add("dbrepo.endpoints.keycloak", () -> keycloakContainer.getAuthServerUrl()); - } - - @BeforeEach - public void beforeEach() throws AuthServiceException { - if (keycloakUtil.existsByUsername(keycloakContainer.getAdminUsername())) { - return; - } - final UserCreateDto payload = UserCreateDto.builder() - .username(keycloakContainer.getAdminUsername()) - .credentials(List.of(CredentialDto.builder() - .temporary(false) - .type(CredentialTypeDto.PASSWORD) - .value(keycloakContainer.getAdminPassword()) - .build())) - .build(); - keycloakUtil.createUser(payload); - } - - @Test - public void upload_missingAuthentication_fails() { - final HttpHeaders requestHeaders = new HttpHeaders(); - requestHeaders.set("Tus-Resumable", "1.0.0"); - requestHeaders.set("Upload-Length", "100"); - requestHeaders.set("Content-Type", "application/offset+octet-stream"); - - /* test */ - assertThrows(HttpClientErrorException.BadRequest.class, () -> { - restTemplate.exchange(tusdConfig.getTusdEndpoint(), HttpMethod.POST, new HttpEntity<>("Hello this is a test aaa", requestHeaders), ApiErrorDto.class); - }); - } - - @Test - public void upload_invalidAuthentication_fails() { - final HttpHeaders requestHeaders = new HttpHeaders(); - requestHeaders.set("Tus-Resumable", "1.0.0"); - requestHeaders.set("Upload-Length", "100"); - requestHeaders.set("Content-Type", "application/offset+octet-stream"); - requestHeaders.set("Authorization", "ey12345"); - - /* test */ - assertThrows(HttpClientErrorException.Unauthorized.class, () -> { - restTemplate.exchange(tusdConfig.getTusdEndpoint(), HttpMethod.POST, new HttpEntity<>("Hello this is a test aaa", requestHeaders), ApiErrorDto.class); - }); - } - - @Test - public void upload_succeeds() { - final RestTemplate uploadRestTemplate = new RestTemplate(); - uploadRestTemplate.setUriTemplateHandler(new DefaultUriBuilderFactory(tusdConfig.getTusdEndpoint())); - uploadRestTemplate.getInterceptors() - .add(new KeycloakInterceptor(restTemplate, keycloakContainer.getAdminUsername(), - keycloakContainer.getAdminPassword(), keycloakConfig.getKeycloakEndpoint())); - - /* test */ - final HttpHeaders requestHeaders = new HttpHeaders(); - requestHeaders.set("Tus-Resumable", "1.0.0"); - requestHeaders.set("Upload-Length", "100"); - requestHeaders.set("Content-Type", "application/offset+octet-stream"); - try { - final ResponseEntity<Void> response = uploadRestTemplate.exchange("", HttpMethod.POST, new HttpEntity<>( - "Hello this is a test aaa", requestHeaders), Void.class); - } catch (Exception e) { - /* ignore */ - } - System.out.println(""); -// assertEquals(HttpStatus.OK, response.getStatusCode()); - } - -} diff --git a/dbrepo-upload-service/src/test/java/at/tuwien/util/KeycloakUtil.java b/dbrepo-upload-service/src/test/java/at/tuwien/util/KeycloakUtil.java deleted file mode 100644 index b7c24cab9d..0000000000 --- a/dbrepo-upload-service/src/test/java/at/tuwien/util/KeycloakUtil.java +++ /dev/null @@ -1,46 +0,0 @@ -package at.tuwien.util; - -import at.tuwien.api.keycloak.UserCreateDto; -import at.tuwien.exception.AuthServiceException; -import at.tuwien.mapper.MetadataMapper; -import jakarta.ws.rs.core.Response; -import lombok.extern.log4j.Log4j2; -import org.keycloak.admin.client.Keycloak; -import org.keycloak.representations.idm.UserRepresentation; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Component -@Log4j2 -public class KeycloakUtil { - - - private final MetadataMapper metadataMapper; - private final Keycloak keycloak; - - @Autowired - public KeycloakUtil(MetadataMapper metadataMapper, Keycloak keycloak) { - this.metadataMapper = metadataMapper; - this.keycloak = keycloak; - } - - public void createUser(UserCreateDto data) throws AuthServiceException { - final UserRepresentation user = metadataMapper.userCreateDtoToUserRepresentation(data); - try (Response response = keycloak.realm("dbrepo") - .users() - .create(user)) { - if (response.getStatus() != 200) { - log.error("Failed to delete user: unexpected response status: {}", response.getStatus()); - throw new AuthServiceException("Unexpected response status: " + response.getStatus()); - } - } - log.info("Created user at auth service"); - } - - public boolean existsByUsername(String username) { - return keycloak.realm("dbrepo") - .users() - .search(username) - .isEmpty(); - } -} diff --git a/dbrepo-upload-service/src/test/resources/application.properties b/dbrepo-upload-service/src/test/resources/application.properties deleted file mode 100644 index cb41084578..0000000000 --- a/dbrepo-upload-service/src/test/resources/application.properties +++ /dev/null @@ -1,16 +0,0 @@ -# enable local spring profile -spring.profiles.active=local,junit - -# disable discovery -spring.cloud.discovery.enabled=false - -# disable datasource -spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration,org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration - -# logging -logging.level.root=error -logging.level.at.tuwien.=trace -logging.level.org.testcontainers.=info -logging.level.tc.=info -logging.level.com.github.dockerjava.=warn -logging.level.com.github.dockerjava.zerodep.shaded.org.apache.hc.client5.http.wire.=off diff --git a/dbrepo-upload-service/src/test/resources/init/dbrepo-realm.json b/dbrepo-upload-service/src/test/resources/init/dbrepo-realm.json deleted file mode 100644 index 588053e15f..0000000000 --- a/dbrepo-upload-service/src/test/resources/init/dbrepo-realm.json +++ /dev/null @@ -1,2822 +0,0 @@ -{ - "id" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "realm" : "dbrepo", - "notBefore" : 0, - "defaultSignatureAlgorithm" : "RS256", - "revokeRefreshToken" : false, - "refreshTokenMaxReuse" : 1, - "accessTokenLifespan" : 900, - "accessTokenLifespanForImplicitFlow" : 900, - "ssoSessionIdleTimeout" : 864000, - "ssoSessionMaxLifespan" : 2592000, - "ssoSessionIdleTimeoutRememberMe" : 0, - "ssoSessionMaxLifespanRememberMe" : 0, - "offlineSessionIdleTimeout" : 2592000, - "offlineSessionMaxLifespanEnabled" : false, - "offlineSessionMaxLifespan" : 5184000, - "clientSessionIdleTimeout" : 0, - "clientSessionMaxLifespan" : 0, - "clientOfflineSessionIdleTimeout" : 0, - "clientOfflineSessionMaxLifespan" : 0, - "accessCodeLifespan" : 60, - "accessCodeLifespanUserAction" : 300, - "accessCodeLifespanLogin" : 1800, - "actionTokenGeneratedByAdminLifespan" : 43200, - "actionTokenGeneratedByUserLifespan" : 1800, - "oauth2DeviceCodeLifespan" : 600, - "oauth2DevicePollingInterval" : 5, - "enabled" : true, - "sslRequired" : "none", - "registrationAllowed" : false, - "registrationEmailAsUsername" : false, - "rememberMe" : false, - "verifyEmail" : true, - "loginWithEmailAllowed" : false, - "duplicateEmailsAllowed" : false, - "resetPasswordAllowed" : false, - "editUsernameAllowed" : false, - "bruteForceProtected" : false, - "permanentLockout" : false, - "maxFailureWaitSeconds" : 900, - "minimumQuickLoginWaitSeconds" : 60, - "waitIncrementSeconds" : 60, - "quickLoginCheckMilliSeconds" : 1000, - "maxDeltaTimeSeconds" : 43200, - "failureFactor" : 30, - "roles" : { - "realm" : [ { - "id" : "48f38342-1e3f-427a-995d-c436eaee65cb", - "name" : "default-user-handling", - "description" : "${default-user-handling}", - "composite" : true, - "composites" : { - "realm" : [ "modify-user-theme", "modify-user-information" ] - }, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "9bb4a8dc-28e0-4645-b62f-cc94425f0cb0", - "name" : "default-maintenance-handling", - "description" : "${default-maintenance-handling}", - "composite" : true, - "composites" : { - "realm" : [ "create-maintenance-message", "find-maintenance-message", "update-maintenance-message", "delete-maintenance-message", "list-maintenance-messages" ] - }, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "7ee1c424-11b0-46a9-b0ed-725e9b7fc40c", - "name" : "default-system-roles", - "description" : "${default-system-roles}", - "composite" : true, - "composites" : { - "realm" : [ "delete-database-view", "update-semantic-unit", "export-query-data", "default-data-steward-roles", "execute-query", "default-user-handling", "delete-table-data", "find-query", "list-database-views", "persist-query", "update-search-index", "delete-database-access", "view-table-history", "create-ontology", "update-ontology", "modify-user-theme", "default-system-roles", "create-semantic-concept", "default-container-handling", "create-container", "create-table", "default-broker-handling", "default-maintenance-handling", "execute-semantic-query", "uma_authorization", "table-semantic-analyse", "list-containers", "check-database-access", "escalated-query-handling", "delete-identifier", "modify-database-owner", "list-tables", "export-table-data", "create-database-access", "delete-container", "re-execute-query", "create-semantic-unit", "escalated-identifier-handling", "system", "update-table-statistic", "escalated-semantics-handling", "default-database-handling", "delete-ontology", "find-database", "find-database-view", "update-semantic-concept", "find-user", "import-database-data", "publish-identifier", "default-roles-dbrepo", "find-foreign-user", "create-database", "create-maintenance-message", "find-maintenance-message", "escalated-container-handling", "default-researcher-roles", "default-identifier-handling", "escalated-user-handling", "modify-user-information", "create-database-view", "update-maintenance-message", "delete-foreign-table", "offline_access", "modify-foreign-table-column-semantics", "delete-maintenance-message", "find-container", "insert-table-data", "modify-identifier-metadata", "modify-database-image", "escalated-broker-handling", "modify-table-column-semantics", "escalated-database-handling", "default-semantics-handling", "update-database-access", "default-query-handling", "find-table", "list-queries", "default-developer-roles", "create-identifier", "escalated-table-handling", "find-identifier", "view-database-view-data", "view-table-data", "list-licenses", "default-table-handling", "list-identifiers", "create-foreign-identifier", "list-databases", "list-ontologies", "modify-database-visibility", "list-maintenance-messages", "delete-table" ] - }, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "143ba359-5fa2-451e-8296-43ecf20bb251", - "name" : "update-semantic-concept", - "description" : "${update-semantic-concept}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "5136d7a3-e3f0-4585-bacd-15cb8a56095c", - "name" : "escalated-container-handling", - "description" : "${escalated-container-handling}", - "composite" : true, - "composites" : { - "realm" : [ "create-container", "delete-container" ] - }, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "b0bc8649-7d84-4dd3-84f0-7f174425babe", - "name" : "list-tables", - "description" : "${list-tables}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "bfd85d9c-2772-4660-a8f0-cdc0cd8252b3", - "name" : "default-database-handling", - "description" : "${default-database-handling}", - "composite" : true, - "composites" : { - "realm" : [ "modify-database-image", "modify-database-owner", "update-database-access", "create-database", "list-databases", "create-database-access", "find-database", "modify-database-visibility", "import-database-data", "delete-database-access", "check-database-access" ] - }, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "74648f9a-777e-4ef9-b97b-4c5d749d862f", - "name" : "update-search-index", - "description" : "${update-search-index}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "22492b64-c633-48a0-9678-b28669f2885b", - "name" : "execute-semantic-query", - "description" : "${execute-semantic-query}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "4ed919fa-edc5-44e5-9411-607786e4a86d", - "name" : "view-table-history", - "description" : "${view-table-history}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "d89a2881-b642-4abb-b990-196e71372f6b", - "name" : "default-table-handling", - "description" : "${default-table-handling}", - "composite" : true, - "composites" : { - "realm" : [ "modify-table-column-semantics", "list-tables", "update-table-statistic", "find-table", "create-table", "delete-table" ] - }, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "b0d66d3d-59b4-4aae-aa66-e3d5a49f28e3", - "name" : "view-database-view-data", - "description" : "${view-database-view-data}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "f5ea431a-9b2c-4195-bcb4-9511f38e4b44", - "name" : "create-database-view", - "description" : "${create-database-view}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "a5ffc20e-8b11-498c-9f3b-b5740aec24c7", - "name" : "default-semantics-handling", - "description" : "${default-semantics-handling}", - "composite" : true, - "composites" : { - "realm" : [ "create-semantic-unit", "create-semantic-concept", "execute-semantic-query", "table-semantic-analyse" ] - }, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "fe4a01f3-6590-4df6-9ade-5a9c1fae4736", - "name" : "create-semantic-unit", - "description" : "${create-semantic-unit}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "0e12eedf-545d-4d32-ac4d-2821dcb118b8", - "name" : "update-table-statistic", - "description" : "${update-table-statistic}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "e63e61a2-d852-4ad3-bfb5-92d9ceafef6a", - "name" : "escalated-user-handling", - "description" : "${escalated-user-handling}", - "composite" : true, - "composites" : { - "realm" : [ "find-user" ] - }, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "be4e1aba-e276-4241-b6ea-01dce6c52f8b", - "name" : "find-container", - "description" : "${find-container}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "3a801b48-f3c2-4bc6-aa25-c7a91d5b32a7", - "name" : "default-researcher-roles", - "description" : "${default-researcher-roles}", - "composite" : true, - "composites" : { - "realm" : [ "default-table-handling", "default-semantics-handling", "default-container-handling", "default-query-handling", "default-user-handling", "default-database-handling", "default-broker-handling", "default-identifier-handling" ] - }, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "3d8104fb-8307-40f0-b4b2-c3e518957110", - "name" : "view-table-data", - "description" : "${view-table-data}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "fe71b907-7020-44ab-9964-da2b87264582", - "name" : "create-database", - "description" : "${create-database}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "e51b63c2-48dd-4bd6-95fb-d257d21b26ba", - "name" : "import-database-data", - "description" : "${import-database-data}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "1f0a9b13-c2b8-474c-bc08-59dbd71835a6", - "name" : "modify-database-image", - "description" : "${modify-database-image}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "a7ad038c-5c06-42fc-951c-15ac09d4df66", - "name" : "modify-database-owner", - "description" : "${modify-database-owner}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "c12c1f4e-186f-4153-a795-26e79fb623d6", - "name" : "create-ontology", - "description" : "${create-ontology}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "b60a5694-4099-4f7d-a7e9-4c433e0eb9c9", - "name" : "update-semantic-unit", - "description" : "${update-semantic-unit}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "e9854bbb-4580-4757-b1ae-305934173249", - "name" : "create-database-access", - "description" : "${create-database-access}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "50c604c1-7c6e-43f3-9c43-2398f5eff66e", - "name" : "list-databases", - "description" : "${list-databases}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "535f1484-4514-4d24-8d97-e3f6c11a426b", - "name" : "create-container", - "description" : "${create-container}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "f4116230-8642-4bb7-bbc8-db9c5c07b558", - "name" : "create-maintenance-message", - "description" : "${create-maintenance-message}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "973f0999-cc70-4b28-9f43-979c470bea8e", - "name" : "default-data-steward-roles", - "description" : "${default-data-steward-roles}", - "composite" : true, - "composites" : { - "realm" : [ "escalated-identifier-handling", "default-semantics-handling", "escalated-semantics-handling", "default-user-handling" ] - }, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "e1383fb7-d54c-4732-9146-93030eb2ca50", - "name" : "escalated-query-handling", - "description" : "${escalated-query-handling}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "993b5c69-9eb2-42af-ac28-b4a46c6b61f2", - "name" : "find-user", - "description" : "${find-user}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "e4cfdc4d-2373-477b-a8df-161db99aba00", - "name" : "create-foreign-identifier", - "description" : "${create-foreign-identifier}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "6a5872a5-2b51-415d-ae2d-25a6db4a35df", - "name" : "escalated-semantics-handling", - "description" : "${escalated-semantics-handling}", - "composite" : true, - "composites" : { - "realm" : [ "update-semantic-unit", "create-ontology", "update-ontology", "list-ontologies", "delete-ontology", "modify-foreign-table-column-semantics", "update-semantic-concept" ] - }, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "09147c48-273b-450b-8b11-7ef9b9245244", - "name" : "export-table-data", - "description" : "${export-table-data}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "d14af590-60a8-4d75-b864-40ee0165bd7f", - "name" : "delete-database-access", - "description" : "${delete-database-access}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "be051d45-cd74-4b13-8a45-f2d3351bd995", - "name" : "table-semantic-analyse", - "description" : "${table-semantic-analyse}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "272a79a7-e282-4261-8f7d-5d5d1364243a", - "name" : "update-maintenance-message", - "description" : "${update-maintenance-message}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "64c16bfb-2015-48ad-a23f-637ff24419cb", - "name" : "default-query-handling", - "description" : "${default-query-handling}", - "composite" : true, - "composites" : { - "realm" : [ "delete-database-view", "export-query-data", "execute-query", "delete-table-data", "export-table-data", "list-queries", "find-query", "list-database-views", "persist-query", "view-database-view-data", "view-table-data", "re-execute-query", "view-table-history", "create-database-view", "find-database-view", "insert-table-data" ] - }, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "c047d521-cec3-4444-86c4-aef098489b7b", - "name" : "delete-maintenance-message", - "description" : "${delete-maintenance-message}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "88f82262-be80-4d18-9fb4-5529da031f33", - "name" : "system", - "description" : "${system}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "e14ab76b-1c24-484d-ae2d-478b8457edea", - "name" : "list-licenses", - "description" : "${list-licenses}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "d4f29937-3ca0-41e9-9786-2b7b921b6cdd", - "name" : "modify-foreign-table-column-semantics", - "description" : "${modify-foreign-table-column-semantics}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "8eda9f5c-938c-4915-bed5-6a81a1de15a8", - "name" : "list-database-views", - "description" : "${list-database-views}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "b372f8f7-d203-4293-b991-ad93fb505917", - "name" : "escalated-database-handling", - "description" : "${escalated-database-handling}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "abd2d9ee-ebc4-4d0a-839e-6b588a6d442a", - "name" : "default-roles-dbrepo", - "description" : "${role_default-roles}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "3293799a-82b9-4f47-8f25-1aad2e0222fd", - "name" : "find-identifier", - "description" : "${find-identifier}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "aaa3f804-38a0-4474-b8e9-f1020c4b3f62", - "name" : "list-queries", - "description" : "${list-queries}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "76e38f7b-99bf-4d12-8d74-1c7d8812f443", - "name" : "update-ontology", - "description" : "${update-ontology}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "11f7973e-d1eb-42cb-a35d-c59dfc122775", - "name" : "modify-user-theme", - "description" : "${modify-user-theme}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "f392bfcb-0be5-4fad-9ce4-8ac6396f176d", - "name" : "export-query-data", - "description" : "${export-query-data}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "da493b7e-fb9b-43ca-82a5-e274ad2e6b39", - "name" : "find-query", - "description" : "${find-query}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "a4d4a788-ebcf-4d32-baed-4a85616ca037", - "name" : "escalated-identifier-handling", - "description" : "${escalated-identifier-handling}", - "composite" : true, - "composites" : { - "realm" : [ "create-foreign-identifier", "modify-identifier-metadata" ] - }, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "ea38d69d-17b8-4c65-95e8-1c3501b83618", - "name" : "default-container-handling", - "description" : "${default-container-handling}", - "composite" : true, - "composites" : { - "realm" : [ "find-container", "list-containers" ] - }, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "8b8813e0-af07-4d04-a8c1-e3f37192bace", - "name" : "publish-identifier", - "description" : "${publish-identifier}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "47f5eee7-9821-4bf8-b434-0da1f81c3e5a", - "name" : "default-broker-handling", - "description" : "${default-broker-handling}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "71874bde-64a5-4a69-8685-d8998303a80c", - "name" : "delete-table-data", - "description" : "${delete-table-data}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "7c0306fc-3b03-4c64-87d1-9a34f2073977", - "name" : "modify-table-column-semantics", - "description" : "${modify-table-column-semantics}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "cd0ee04c-4a5e-4035-a11b-f6a1165f7829", - "name" : "delete-container", - "description" : "${delete-container}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "67ee39c0-d601-4a67-a0fe-c4f0021d557e", - "name" : "list-containers", - "description" : "${list-containers}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "795c7bb8-3502-414a-a97b-2ba1cfd6a79c", - "name" : "persist-query", - "description" : "${persist-query}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "d05e7698-ddf5-4f20-9027-771afb2cc3c7", - "name" : "list-identifiers", - "description" : "${list-identifiers}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "e4bfaf36-9a5d-43e0-9fa3-0f4ea7bad8d0", - "name" : "default-developer-roles", - "description" : "${default-developer-roles}", - "composite" : true, - "composites" : { - "realm" : [ "escalated-query-handling", "escalated-broker-handling", "default-table-handling", "escalated-database-handling", "default-container-handling", "default-query-handling", "default-user-handling", "default-database-handling", "default-maintenance-handling", "escalated-container-handling", "escalated-table-handling", "default-identifier-handling" ] - }, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "e2cb054e-ea41-4ab0-881b-e6f576f7424e", - "name" : "create-semantic-concept", - "description" : "${create-semantic-concept}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "feb612cc-96a6-4ed2-aaa5-01f39b25beb5", - "name" : "insert-table-data", - "description" : "${insert-table-data}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "a0942e33-441b-4343-9f02-4353d03f7bbb", - "name" : "find-database", - "description" : "${find-database}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "6a0bb740-4448-49be-aee8-6dd183325be5", - "name" : "delete-foreign-table", - "description" : "${delete-foreign-table}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "7f3652c7-3073-4566-ab63-25385495ebc3", - "name" : "modify-database-visibility", - "description" : "${modify-database-visibility}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "4a5df51d-f14d-41a2-ad70-6521df5a5b4f", - "name" : "offline_access", - "description" : "${role_offline-access}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "fd41c4c3-d2f8-4f49-84c7-dba84e9a5575", - "name" : "execute-query", - "description" : "${execute-query}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "2963c2bb-b129-4224-b98f-c8eeab8e72d1", - "name" : "create-table", - "description" : "${create-table}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "0c487c93-448f-4a82-8b9f-ebd8a0904bf8", - "name" : "find-foreign-user", - "description" : "${find-foreign-user}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "cf9735a9-fb70-4cc5-b5f4-75afc4e5654b", - "name" : "modify-identifier-metadata", - "description" : "${modify-identifier-metadata}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "64c2b8f2-1527-4928-81ea-b2651512d028", - "name" : "delete-ontology", - "description" : "${delete-ontology}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "d6e38368-b40f-423b-82e4-e8aa595237c9", - "name" : "find-maintenance-message", - "description" : "${find-maintenance-message}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "fd1cc463-3e67-49d9-81b8-2cd90c1daa9c", - "name" : "check-database-access", - "description" : "${check-database-access}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "74013867-e426-46cc-ab98-2f4a9225ad1e", - "name" : "find-table", - "description" : "${find-table}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "a2cc60df-d280-46c5-a539-92e2aa249b4a", - "name" : "modify-user-information", - "description" : "${modify-user-information}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "c367241f-b5b5-491f-84d5-07fe1bef3877", - "name" : "default-identifier-handling", - "description" : "${default-identifier-handling}", - "composite" : true, - "composites" : { - "realm" : [ "delete-identifier", "list-identifiers", "create-identifier", "find-identifier", "publish-identifier" ] - }, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "ba1ad8f2-39aa-487d-987f-645e8a459559", - "name" : "delete-table", - "description" : "${delete-table}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "09f7bdb0-296f-46c8-a3a3-8f9254fb17e4", - "name" : "list-maintenance-messages", - "description" : "${list-maintenance-messages}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "fe3bc45c-61c2-4ece-bcaf-d410dc7de501", - "name" : "update-database-access", - "description" : "${update-database-access}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "f43e86ed-76de-4ca8-9b5e-c292c9359bfe", - "name" : "escalated-broker-handling", - "description" : "${escalated-broker-handling}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "916b1e65-f60c-42cd-96e4-5c98ffc1ba3c", - "name" : "uma_authorization", - "description" : "${role_uma_authorization}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "d1afa3ed-bf4f-469a-a061-ad7325fb8d9e", - "name" : "delete-database-view", - "description" : "${delete-database-view}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "6f044bad-6651-4408-bffa-20c2d8f92eee", - "name" : "create-identifier", - "description" : "${create-identifier}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "be91195a-e30a-4d15-a8da-0aca0a68782f", - "name" : "escalated-table-handling", - "description" : "${escalated-table-handling}", - "composite" : true, - "composites" : { - "realm" : [ "delete-foreign-table" ] - }, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "98bee7d6-d78c-4e7f-b6a3-3705968b248c", - "name" : "list-ontologies", - "description" : "${list-ontologies}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "15720c6b-027d-4d53-a0ff-0124bfab7c4c", - "name" : "re-execute-query", - "description" : "${re-execute-query}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "a9b5181a-8135-41d3-9862-ef80af42211d", - "name" : "delete-identifier", - "description" : "${delete-identifier}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - }, { - "id" : "469c2e63-cda6-48d4-ab8f-eb59a2c69798", - "name" : "find-database-view", - "description" : "${find-database-view}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0", - "attributes" : { } - } ], - "client" : { - "realm-management" : [ { - "id" : "4628f654-f8f3-483b-8f92-2a7fc5930b14", - "name" : "query-realms", - "description" : "${role_query-realms}", - "composite" : false, - "clientRole" : true, - "containerId" : "cfffd5d0-aa19-4057-8ca0-f2c51ca0e930", - "attributes" : { } - }, { - "id" : "95c2cc47-12f5-4d73-8b74-67e270c45ade", - "name" : "manage-authorization", - "description" : "${role_manage-authorization}", - "composite" : false, - "clientRole" : true, - "containerId" : "cfffd5d0-aa19-4057-8ca0-f2c51ca0e930", - "attributes" : { } - }, { - "id" : "824791f3-c345-42f8-b103-b7e6d7e40114", - "name" : "manage-identity-providers", - "description" : "${role_manage-identity-providers}", - "composite" : false, - "clientRole" : true, - "containerId" : "cfffd5d0-aa19-4057-8ca0-f2c51ca0e930", - "attributes" : { } - }, { - "id" : "1f840202-b7e2-4195-bac9-64e64dad2037", - "name" : "view-identity-providers", - "description" : "${role_view-identity-providers}", - "composite" : false, - "clientRole" : true, - "containerId" : "cfffd5d0-aa19-4057-8ca0-f2c51ca0e930", - "attributes" : { } - }, { - "id" : "3c32c096-bb13-44c9-a080-d756a48a9ea3", - "name" : "query-clients", - "description" : "${role_query-clients}", - "composite" : false, - "clientRole" : true, - "containerId" : "cfffd5d0-aa19-4057-8ca0-f2c51ca0e930", - "attributes" : { } - }, { - "id" : "e4b85a68-7f31-4fcf-89a2-f10d7df358e9", - "name" : "view-authorization", - "description" : "${role_view-authorization}", - "composite" : false, - "clientRole" : true, - "containerId" : "cfffd5d0-aa19-4057-8ca0-f2c51ca0e930", - "attributes" : { } - }, { - "id" : "7d317752-ae56-46f2-a2ce-67c64d1b35f6", - "name" : "view-users", - "description" : "${role_view-users}", - "composite" : true, - "composites" : { - "client" : { - "realm-management" : [ "query-users", "query-groups" ] - } - }, - "clientRole" : true, - "containerId" : "cfffd5d0-aa19-4057-8ca0-f2c51ca0e930", - "attributes" : { } - }, { - "id" : "28824208-976e-4622-b4d7-3d18efbb46fa", - "name" : "realm-admin", - "description" : "${role_realm-admin}", - "composite" : true, - "composites" : { - "client" : { - "realm-management" : [ "query-realms", "view-identity-providers", "manage-identity-providers", "manage-authorization", "query-clients", "view-authorization", "view-users", "manage-users", "view-realm", "query-users", "view-clients", "query-groups", "create-client", "manage-clients", "manage-events", "impersonation", "view-events", "manage-realm" ] - } - }, - "clientRole" : true, - "containerId" : "cfffd5d0-aa19-4057-8ca0-f2c51ca0e930", - "attributes" : { } - }, { - "id" : "57e846a2-930d-4621-819d-c35086507146", - "name" : "manage-users", - "description" : "${role_manage-users}", - "composite" : false, - "clientRole" : true, - "containerId" : "cfffd5d0-aa19-4057-8ca0-f2c51ca0e930", - "attributes" : { } - }, { - "id" : "7fad9cde-bf96-475a-9174-14a87da51f95", - "name" : "view-realm", - "description" : "${role_view-realm}", - "composite" : false, - "clientRole" : true, - "containerId" : "cfffd5d0-aa19-4057-8ca0-f2c51ca0e930", - "attributes" : { } - }, { - "id" : "bbcac294-d78a-4ea1-a4bf-0384266d2fe1", - "name" : "query-users", - "description" : "${role_query-users}", - "composite" : false, - "clientRole" : true, - "containerId" : "cfffd5d0-aa19-4057-8ca0-f2c51ca0e930", - "attributes" : { } - }, { - "id" : "480e1437-ab9e-47de-b47a-edc6b6e285de", - "name" : "view-clients", - "description" : "${role_view-clients}", - "composite" : true, - "composites" : { - "client" : { - "realm-management" : [ "query-clients" ] - } - }, - "clientRole" : true, - "containerId" : "cfffd5d0-aa19-4057-8ca0-f2c51ca0e930", - "attributes" : { } - }, { - "id" : "b9a9a8f5-f91e-4e73-9e88-1cdf42bd49f9", - "name" : "create-client", - "description" : "${role_create-client}", - "composite" : false, - "clientRole" : true, - "containerId" : "cfffd5d0-aa19-4057-8ca0-f2c51ca0e930", - "attributes" : { } - }, { - "id" : "4d1397fb-247c-436f-b26f-124cd89afb08", - "name" : "query-groups", - "description" : "${role_query-groups}", - "composite" : false, - "clientRole" : true, - "containerId" : "cfffd5d0-aa19-4057-8ca0-f2c51ca0e930", - "attributes" : { } - }, { - "id" : "e31f522b-b283-4ae1-b875-52afcd98b1d2", - "name" : "impersonation", - "description" : "${role_impersonation}", - "composite" : false, - "clientRole" : true, - "containerId" : "cfffd5d0-aa19-4057-8ca0-f2c51ca0e930", - "attributes" : { } - }, { - "id" : "51822d02-fa28-4a49-89da-bc534719d8a8", - "name" : "manage-clients", - "description" : "${role_manage-clients}", - "composite" : false, - "clientRole" : true, - "containerId" : "cfffd5d0-aa19-4057-8ca0-f2c51ca0e930", - "attributes" : { } - }, { - "id" : "b2743ce5-0ce8-4157-ae00-f693560f0b39", - "name" : "manage-events", - "description" : "${role_manage-events}", - "composite" : false, - "clientRole" : true, - "containerId" : "cfffd5d0-aa19-4057-8ca0-f2c51ca0e930", - "attributes" : { } - }, { - "id" : "7ea3d7e0-9bf4-438a-b773-243daf622aaa", - "name" : "view-events", - "description" : "${role_view-events}", - "composite" : false, - "clientRole" : true, - "containerId" : "cfffd5d0-aa19-4057-8ca0-f2c51ca0e930", - "attributes" : { } - }, { - "id" : "fb73f6f5-0ed5-41d0-852c-0eb3b195b15a", - "name" : "manage-realm", - "description" : "${role_manage-realm}", - "composite" : false, - "clientRole" : true, - "containerId" : "cfffd5d0-aa19-4057-8ca0-f2c51ca0e930", - "attributes" : { } - } ], - "security-admin-console" : [ ], - "dbrepo-client" : [ ], - "admin-cli" : [ ], - "rabbitmq-client" : [ ], - "account-console" : [ ], - "broker" : [ { - "id" : "de0cfd5e-c2fe-4082-ac39-e3b092139a0f", - "name" : "read-token", - "description" : "${role_read-token}", - "composite" : false, - "clientRole" : true, - "containerId" : "88694c91-753d-4c44-9740-ec9ac06bba45", - "attributes" : { } - } ], - "account" : [ { - "id" : "acd78c04-eefc-4344-a5b4-3fc83d848936", - "name" : "delete-account", - "description" : "${role_delete-account}", - "composite" : false, - "clientRole" : true, - "containerId" : "e767a4a6-79e9-4e08-82b7-1076e1a09142", - "attributes" : { } - }, { - "id" : "939be844-8c49-45b3-9ca1-4b10a454b346", - "name" : "view-profile", - "description" : "${role_view-profile}", - "composite" : false, - "clientRole" : true, - "containerId" : "e767a4a6-79e9-4e08-82b7-1076e1a09142", - "attributes" : { } - }, { - "id" : "e52fdf00-3e73-4c17-bc1c-643493710a6b", - "name" : "view-applications", - "description" : "${role_view-applications}", - "composite" : false, - "clientRole" : true, - "containerId" : "e767a4a6-79e9-4e08-82b7-1076e1a09142", - "attributes" : { } - }, { - "id" : "b02a822e-a708-420a-bddc-1a315033fd7c", - "name" : "view-consent", - "description" : "${role_view-consent}", - "composite" : false, - "clientRole" : true, - "containerId" : "e767a4a6-79e9-4e08-82b7-1076e1a09142", - "attributes" : { } - }, { - "id" : "c590e5f5-2cbf-4151-b1dc-96c454f1f654", - "name" : "view-groups", - "description" : "${role_view-groups}", - "composite" : false, - "clientRole" : true, - "containerId" : "e767a4a6-79e9-4e08-82b7-1076e1a09142", - "attributes" : { } - }, { - "id" : "15974151-6c13-426b-8cc3-7683dd1311e1", - "name" : "manage-account-links", - "description" : "${role_manage-account-links}", - "composite" : false, - "clientRole" : true, - "containerId" : "e767a4a6-79e9-4e08-82b7-1076e1a09142", - "attributes" : { } - }, { - "id" : "c12d8d94-c2df-498e-bbe4-2f934a83ae92", - "name" : "manage-consent", - "description" : "${role_manage-consent}", - "composite" : true, - "composites" : { - "client" : { - "account" : [ "view-consent" ] - } - }, - "clientRole" : true, - "containerId" : "e767a4a6-79e9-4e08-82b7-1076e1a09142", - "attributes" : { } - }, { - "id" : "55f85811-bded-4d6b-8f7b-45844b963875", - "name" : "manage-account", - "description" : "${role_manage-account}", - "composite" : true, - "composites" : { - "client" : { - "account" : [ "manage-account-links" ] - } - }, - "clientRole" : true, - "containerId" : "e767a4a6-79e9-4e08-82b7-1076e1a09142", - "attributes" : { } - } ] - } - }, - "groups" : [ { - "id" : "f2ce17fe-7b15-47a4-bbf8-86f415298fa9", - "name" : "data-stewards", - "path" : "/data-stewards", - "attributes" : { }, - "realmRoles" : [ "default-data-steward-roles" ], - "clientRoles" : { }, - "subGroups" : [ ] - }, { - "id" : "124d9888-0b6e-46aa-8225-077dcedaf16e", - "name" : "developers", - "path" : "/developers", - "attributes" : { }, - "realmRoles" : [ "default-developer-roles" ], - "clientRoles" : { }, - "subGroups" : [ ] - }, { - "id" : "f467c38e-9041-4faa-ae0b-39cec65ff4db", - "name" : "researchers", - "path" : "/researchers", - "attributes" : { }, - "realmRoles" : [ "default-researcher-roles" ], - "clientRoles" : { }, - "subGroups" : [ ] - }, { - "id" : "2b9f94b4-d434-4a98-8eab-25678cfee983", - "name" : "system", - "path" : "/system", - "attributes" : { }, - "realmRoles" : [ "default-system-roles" ], - "clientRoles" : { }, - "subGroups" : [ ] - } ], - "defaultRole" : { - "id" : "abd2d9ee-ebc4-4d0a-839e-6b588a6d442a", - "name" : "default-roles-dbrepo", - "description" : "${role_default-roles}", - "composite" : false, - "clientRole" : false, - "containerId" : "82c39861-d877-4667-a0f3-4daa2ee230e0" - }, - "defaultGroups" : [ "/researchers" ], - "requiredCredentials" : [ "password" ], - "otpPolicyType" : "totp", - "otpPolicyAlgorithm" : "HmacSHA1", - "otpPolicyInitialCounter" : 0, - "otpPolicyDigits" : 6, - "otpPolicyLookAheadWindow" : 1, - "otpPolicyPeriod" : 30, - "otpPolicyCodeReusable" : false, - "otpSupportedApplications" : [ "totpAppGoogleName", "totpAppFreeOTPName", "totpAppMicrosoftAuthenticatorName" ], - "webAuthnPolicyRpEntityName" : "keycloak", - "webAuthnPolicySignatureAlgorithms" : [ "ES256" ], - "webAuthnPolicyRpId" : "", - "webAuthnPolicyAttestationConveyancePreference" : "not specified", - "webAuthnPolicyAuthenticatorAttachment" : "not specified", - "webAuthnPolicyRequireResidentKey" : "not specified", - "webAuthnPolicyUserVerificationRequirement" : "not specified", - "webAuthnPolicyCreateTimeout" : 0, - "webAuthnPolicyAvoidSameAuthenticatorRegister" : false, - "webAuthnPolicyAcceptableAaguids" : [ ], - "webAuthnPolicyPasswordlessRpEntityName" : "keycloak", - "webAuthnPolicyPasswordlessSignatureAlgorithms" : [ "ES256" ], - "webAuthnPolicyPasswordlessRpId" : "", - "webAuthnPolicyPasswordlessAttestationConveyancePreference" : "not specified", - "webAuthnPolicyPasswordlessAuthenticatorAttachment" : "not specified", - "webAuthnPolicyPasswordlessRequireResidentKey" : "not specified", - "webAuthnPolicyPasswordlessUserVerificationRequirement" : "not specified", - "webAuthnPolicyPasswordlessCreateTimeout" : 0, - "webAuthnPolicyPasswordlessAvoidSameAuthenticatorRegister" : false, - "webAuthnPolicyPasswordlessAcceptableAaguids" : [ ], - "scopeMappings" : [ { - "clientScope" : "rabbitmq.tag:administrator", - "roles" : [ "escalated-broker-handling" ] - }, { - "clientScope" : "rabbitmq.tag:management", - "roles" : [ "default-broker-handling" ] - } ], - "clientScopeMappings" : { - "account" : [ { - "client" : "account-console", - "roles" : [ "manage-account", "view-groups" ] - } ] - }, - "clients" : [ { - "id" : "e767a4a6-79e9-4e08-82b7-1076e1a09142", - "clientId" : "account", - "name" : "${client_account}", - "rootUrl" : "${authBaseUrl}", - "baseUrl" : "/realms/dbrepo/account/", - "surrogateAuthRequired" : false, - "enabled" : true, - "alwaysDisplayInConsole" : false, - "clientAuthenticatorType" : "client-secret", - "redirectUris" : [ "/realms/dbrepo/account/*" ], - "webOrigins" : [ ], - "notBefore" : 0, - "bearerOnly" : false, - "consentRequired" : false, - "standardFlowEnabled" : true, - "implicitFlowEnabled" : false, - "directAccessGrantsEnabled" : false, - "serviceAccountsEnabled" : false, - "publicClient" : true, - "frontchannelLogout" : false, - "protocol" : "openid-connect", - "attributes" : { - "post.logout.redirect.uris" : "+" - }, - "authenticationFlowBindingOverrides" : { }, - "fullScopeAllowed" : false, - "nodeReRegistrationTimeout" : 0, - "defaultClientScopes" : [ "web-origins", "acr", "profile", "roles", "email" ], - "optionalClientScopes" : [ "address", "phone", "offline_access", "microprofile-jwt" ] - }, { - "id" : "d3c4a04e-39ce-4549-a34a-11e25774cd96", - "clientId" : "account-console", - "name" : "${client_account-console}", - "rootUrl" : "${authBaseUrl}", - "baseUrl" : "/realms/dbrepo/account/", - "surrogateAuthRequired" : false, - "enabled" : true, - "alwaysDisplayInConsole" : false, - "clientAuthenticatorType" : "client-secret", - "redirectUris" : [ "/realms/dbrepo/account/*" ], - "webOrigins" : [ ], - "notBefore" : 0, - "bearerOnly" : false, - "consentRequired" : false, - "standardFlowEnabled" : true, - "implicitFlowEnabled" : false, - "directAccessGrantsEnabled" : false, - "serviceAccountsEnabled" : false, - "publicClient" : true, - "frontchannelLogout" : false, - "protocol" : "openid-connect", - "attributes" : { - "post.logout.redirect.uris" : "+", - "pkce.code.challenge.method" : "S256" - }, - "authenticationFlowBindingOverrides" : { }, - "fullScopeAllowed" : false, - "nodeReRegistrationTimeout" : 0, - "protocolMappers" : [ { - "id" : "22d90d9c-9881-474c-8dfd-a62c808a9f1c", - "name" : "audience resolve", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-audience-resolve-mapper", - "consentRequired" : false, - "config" : { } - } ], - "defaultClientScopes" : [ "web-origins", "acr", "profile", "roles", "email" ], - "optionalClientScopes" : [ "address", "phone", "offline_access", "microprofile-jwt" ] - }, { - "id" : "81ef0f59-a5ca-4be4-a1d1-0c32edf1cfd6", - "clientId" : "admin-cli", - "name" : "${client_admin-cli}", - "surrogateAuthRequired" : false, - "enabled" : true, - "alwaysDisplayInConsole" : false, - "clientAuthenticatorType" : "client-secret", - "redirectUris" : [ ], - "webOrigins" : [ ], - "notBefore" : 0, - "bearerOnly" : false, - "consentRequired" : false, - "standardFlowEnabled" : false, - "implicitFlowEnabled" : false, - "directAccessGrantsEnabled" : true, - "serviceAccountsEnabled" : false, - "publicClient" : true, - "frontchannelLogout" : false, - "protocol" : "openid-connect", - "attributes" : { - "post.logout.redirect.uris" : "+" - }, - "authenticationFlowBindingOverrides" : { }, - "fullScopeAllowed" : false, - "nodeReRegistrationTimeout" : 0, - "defaultClientScopes" : [ "web-origins", "acr", "profile", "roles", "email" ], - "optionalClientScopes" : [ "address", "phone", "offline_access", "microprofile-jwt" ] - }, { - "id" : "88694c91-753d-4c44-9740-ec9ac06bba45", - "clientId" : "broker", - "name" : "${client_broker}", - "surrogateAuthRequired" : false, - "enabled" : true, - "alwaysDisplayInConsole" : false, - "clientAuthenticatorType" : "client-secret", - "redirectUris" : [ ], - "webOrigins" : [ ], - "notBefore" : 0, - "bearerOnly" : true, - "consentRequired" : false, - "standardFlowEnabled" : true, - "implicitFlowEnabled" : false, - "directAccessGrantsEnabled" : false, - "serviceAccountsEnabled" : false, - "publicClient" : false, - "frontchannelLogout" : false, - "protocol" : "openid-connect", - "attributes" : { - "post.logout.redirect.uris" : "+" - }, - "authenticationFlowBindingOverrides" : { }, - "fullScopeAllowed" : false, - "nodeReRegistrationTimeout" : 0, - "defaultClientScopes" : [ "web-origins", "acr", "profile", "roles", "email" ], - "optionalClientScopes" : [ "address", "phone", "offline_access", "microprofile-jwt" ] - }, { - "id" : "6b7ef364-4132-4831-b4e2-b6e9e9dc63ee", - "clientId" : "dbrepo-client", - "name" : "${dbrepo-client}", - "description" : "", - "rootUrl" : "", - "adminUrl" : "", - "baseUrl" : "", - "surrogateAuthRequired" : false, - "enabled" : true, - "alwaysDisplayInConsole" : true, - "clientAuthenticatorType" : "client-secret", - "secret" : "MUwRc7yfXSJwX8AdRMWaQC3Nep1VjwgG", - "redirectUris" : [ "*" ], - "webOrigins" : [ "*" ], - "notBefore" : 0, - "bearerOnly" : false, - "consentRequired" : false, - "standardFlowEnabled" : true, - "implicitFlowEnabled" : false, - "directAccessGrantsEnabled" : true, - "serviceAccountsEnabled" : false, - "publicClient" : false, - "frontchannelLogout" : true, - "protocol" : "openid-connect", - "attributes" : { - "oidc.ciba.grant.enabled" : "false", - "client.secret.creation.time" : "1680085365", - "backchannel.logout.session.required" : "true", - "post.logout.redirect.uris" : "*", - "oauth2.device.authorization.grant.enabled" : "false", - "backchannel.logout.revoke.offline.tokens" : "false" - }, - "authenticationFlowBindingOverrides" : { }, - "fullScopeAllowed" : true, - "nodeReRegistrationTimeout" : -1, - "protocolMappers" : [ { - "id" : "da0b27c1-ae2e-4baa-bf78-db233e15c78d", - "name" : "preferred_username", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-property-mapper", - "consentRequired" : false, - "config" : { - "user.attribute" : "username", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "preferred_username", - "userinfo.token.claim" : "true" - } - }, { - "id" : "7c94de93-f60f-487b-b4b7-1891c67f74cc", - "name" : "aud", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-hardcoded-claim-mapper", - "consentRequired" : false, - "config" : { - "claim.value" : "dbrepo", - "userinfo.token.claim" : "true", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "aud", - "access.tokenResponse.claim" : "false" - } - }, { - "id" : "030a1cd9-53d1-4a62-a375-94d50a2dc6fc", - "name" : "uid", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "aggregate.attrs" : "false", - "multivalued" : "false", - "userinfo.token.claim" : "true", - "user.attribute" : "LDAP_ID", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "uid" - } - } ], - "defaultClientScopes" : [ "roles", "attributes" ], - "optionalClientScopes" : [ "rabbitmq.read:*/*", "web-origins", "acr", "rabbitmq.write:*/*", "address", "phone", "offline_access", "profile", "microprofile-jwt", "email", "rabbitmq.configure:*/*" ] - }, { - "id" : "25741f6b-4867-4138-8238-6345c6ba8702", - "clientId" : "rabbitmq-client", - "name" : "${rabbitmq-client}", - "description" : "", - "rootUrl" : "", - "adminUrl" : "", - "baseUrl" : "", - "surrogateAuthRequired" : false, - "enabled" : true, - "alwaysDisplayInConsole" : false, - "clientAuthenticatorType" : "client-secret", - "secret" : "JEC2FexxrX4N65fLeDGukAl6R3Lc9y0u", - "redirectUris" : [ "*" ], - "webOrigins" : [ ], - "notBefore" : 0, - "bearerOnly" : false, - "consentRequired" : false, - "standardFlowEnabled" : true, - "implicitFlowEnabled" : false, - "directAccessGrantsEnabled" : true, - "serviceAccountsEnabled" : false, - "publicClient" : false, - "frontchannelLogout" : true, - "protocol" : "openid-connect", - "attributes" : { - "oidc.ciba.grant.enabled" : "false", - "client.secret.creation.time" : "1680000860", - "backchannel.logout.session.required" : "true", - "post.logout.redirect.uris" : "*", - "oauth2.device.authorization.grant.enabled" : "false", - "backchannel.logout.revoke.offline.tokens" : "false" - }, - "authenticationFlowBindingOverrides" : { }, - "fullScopeAllowed" : false, - "nodeReRegistrationTimeout" : -1, - "protocolMappers" : [ { - "id" : "01a937ed-f0e8-4137-80f3-3be3c447f7fb", - "name" : "username", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-property-mapper", - "consentRequired" : false, - "config" : { - "userinfo.token.claim" : "false", - "user.attribute" : "username", - "id.token.claim" : "false", - "access.token.claim" : "true", - "claim.name" : "client_id", - "jsonType.label" : "String" - } - }, { - "id" : "f1afc22d-f595-403b-ba2e-6ab19d98205e", - "name" : "Audience", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-hardcoded-claim-mapper", - "consentRequired" : false, - "config" : { - "claim.value" : "rabbitmq", - "userinfo.token.claim" : "false", - "id.token.claim" : "false", - "access.token.claim" : "true", - "claim.name" : "aud", - "access.tokenResponse.claim" : "false" - } - } ], - "defaultClientScopes" : [ "web-origins", "acr", "rabbitmq.tag:management" ], - "optionalClientScopes" : [ "rabbitmq.read:*/*", "rabbitmq.write:*/*", "address", "phone", "offline_access", "profile", "roles", "microprofile-jwt", "email", "rabbitmq.configure:*/*" ] - }, { - "id" : "cfffd5d0-aa19-4057-8ca0-f2c51ca0e930", - "clientId" : "realm-management", - "name" : "${client_realm-management}", - "surrogateAuthRequired" : false, - "enabled" : true, - "alwaysDisplayInConsole" : false, - "clientAuthenticatorType" : "client-secret", - "redirectUris" : [ ], - "webOrigins" : [ ], - "notBefore" : 0, - "bearerOnly" : true, - "consentRequired" : false, - "standardFlowEnabled" : true, - "implicitFlowEnabled" : false, - "directAccessGrantsEnabled" : false, - "serviceAccountsEnabled" : false, - "publicClient" : false, - "frontchannelLogout" : false, - "protocol" : "openid-connect", - "attributes" : { - "post.logout.redirect.uris" : "+" - }, - "authenticationFlowBindingOverrides" : { }, - "fullScopeAllowed" : false, - "nodeReRegistrationTimeout" : 0, - "defaultClientScopes" : [ "web-origins", "acr", "profile", "roles", "email" ], - "optionalClientScopes" : [ "address", "phone", "offline_access", "microprofile-jwt" ] - }, { - "id" : "f205c451-9524-4380-acc3-947f7ecb6b7c", - "clientId" : "security-admin-console", - "name" : "${client_security-admin-console}", - "rootUrl" : "${authAdminUrl}", - "baseUrl" : "/admin/dbrepo/console/", - "surrogateAuthRequired" : false, - "enabled" : true, - "alwaysDisplayInConsole" : false, - "clientAuthenticatorType" : "client-secret", - "redirectUris" : [ "/admin/dbrepo/console/*" ], - "webOrigins" : [ "+" ], - "notBefore" : 0, - "bearerOnly" : false, - "consentRequired" : false, - "standardFlowEnabled" : true, - "implicitFlowEnabled" : false, - "directAccessGrantsEnabled" : false, - "serviceAccountsEnabled" : false, - "publicClient" : true, - "frontchannelLogout" : false, - "protocol" : "openid-connect", - "attributes" : { - "post.logout.redirect.uris" : "+", - "pkce.code.challenge.method" : "S256" - }, - "authenticationFlowBindingOverrides" : { }, - "fullScopeAllowed" : false, - "nodeReRegistrationTimeout" : 0, - "protocolMappers" : [ { - "id" : "c4d54410-3f22-4259-9571-94da2c43b752", - "name" : "locale", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "userinfo.token.claim" : "true", - "user.attribute" : "locale", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "locale", - "jsonType.label" : "String" - } - } ], - "defaultClientScopes" : [ "web-origins", "acr", "profile", "roles", "email" ], - "optionalClientScopes" : [ "address", "phone", "offline_access", "microprofile-jwt" ] - } ], - "clientScopes" : [ { - "id" : "69f4ecf0-4165-49ab-bf0d-38409b15b706", - "name" : "rabbitmq.tag:administrator", - "description" : "administrator", - "protocol" : "openid-connect", - "attributes" : { - "include.in.token.scope" : "true", - "display.on.consent.screen" : "true", - "gui.order" : "", - "consent.screen.text" : "" - } - }, { - "id" : "7f6e9b44-e2eb-417d-b0fe-db820c9a6564", - "name" : "email", - "description" : "OpenID Connect built-in scope: email", - "protocol" : "openid-connect", - "attributes" : { - "include.in.token.scope" : "true", - "display.on.consent.screen" : "true", - "consent.screen.text" : "${emailScopeConsentText}" - }, - "protocolMappers" : [ { - "id" : "782819fe-ba5d-4ddb-9f95-cabb69d79c8d", - "name" : "email verified", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-property-mapper", - "consentRequired" : false, - "config" : { - "userinfo.token.claim" : "true", - "user.attribute" : "emailVerified", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "email_verified", - "jsonType.label" : "boolean" - } - }, { - "id" : "ca613fc8-bbf2-4240-8b33-a1874f1559f3", - "name" : "email", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-property-mapper", - "consentRequired" : false, - "config" : { - "userinfo.token.claim" : "true", - "user.attribute" : "email", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "email", - "jsonType.label" : "String" - } - } ] - }, { - "id" : "b9da268f-6745-49dc-a764-3c54e385accc", - "name" : "profile", - "description" : "OpenID Connect built-in scope: profile", - "protocol" : "openid-connect", - "attributes" : { - "include.in.token.scope" : "true", - "display.on.consent.screen" : "true", - "consent.screen.text" : "${profileScopeConsentText}" - }, - "protocolMappers" : [ { - "id" : "84f0487a-1d7d-470c-9b8e-5835294ae235", - "name" : "username", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-property-mapper", - "consentRequired" : false, - "config" : { - "userinfo.token.claim" : "true", - "user.attribute" : "username", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "preferred_username", - "jsonType.label" : "String" - } - }, { - "id" : "bbdcdb36-3ec0-443d-b1af-9993d40f0567", - "name" : "gender", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "userinfo.token.claim" : "true", - "user.attribute" : "gender", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "gender", - "jsonType.label" : "String" - } - }, { - "id" : "9faa870b-5491-4ce9-b27d-c9ce07d6a95e", - "name" : "birthdate", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "userinfo.token.claim" : "true", - "user.attribute" : "birthdate", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "birthdate", - "jsonType.label" : "String" - } - }, { - "id" : "f0e3c012-9523-4076-83ae-e466e2d08220", - "name" : "full name", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-full-name-mapper", - "consentRequired" : false, - "config" : { - "id.token.claim" : "true", - "access.token.claim" : "true", - "userinfo.token.claim" : "true" - } - }, { - "id" : "f757d8ec-e181-429c-9287-9ad0600b061f", - "name" : "profile", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "userinfo.token.claim" : "true", - "user.attribute" : "profile", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "profile", - "jsonType.label" : "String" - } - }, { - "id" : "18cfbf4b-0a8e-45c7-a832-c0f72c92f3f3", - "name" : "updated at", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "userinfo.token.claim" : "true", - "user.attribute" : "updatedAt", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "updated_at", - "jsonType.label" : "long" - } - }, { - "id" : "841ea785-26ab-429a-a420-09ce3948924d", - "name" : "family name", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-property-mapper", - "consentRequired" : false, - "config" : { - "userinfo.token.claim" : "true", - "user.attribute" : "lastName", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "family_name", - "jsonType.label" : "String" - } - }, { - "id" : "bfba13ff-f952-4e89-bbb1-a693fdebfae8", - "name" : "website", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "userinfo.token.claim" : "true", - "user.attribute" : "website", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "website", - "jsonType.label" : "String" - } - }, { - "id" : "475f071d-5149-4379-b928-76482f5f519c", - "name" : "zoneinfo", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "userinfo.token.claim" : "true", - "user.attribute" : "zoneinfo", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "zoneinfo", - "jsonType.label" : "String" - } - }, { - "id" : "b8bebfed-b5e9-4604-a0ee-9817f7d439ac", - "name" : "middle name", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "userinfo.token.claim" : "true", - "user.attribute" : "middleName", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "middle_name", - "jsonType.label" : "String" - } - }, { - "id" : "445232c8-6830-476c-a6f1-8bbef167595a", - "name" : "picture", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "userinfo.token.claim" : "true", - "user.attribute" : "picture", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "picture", - "jsonType.label" : "String" - } - }, { - "id" : "65f2e474-6ede-4872-86e4-e49504dd0f2a", - "name" : "locale", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "userinfo.token.claim" : "true", - "user.attribute" : "locale", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "locale", - "jsonType.label" : "String" - } - }, { - "id" : "16cd5a27-ccf3-453c-ae1e-8621813ab73c", - "name" : "given name", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-property-mapper", - "consentRequired" : false, - "config" : { - "userinfo.token.claim" : "true", - "user.attribute" : "firstName", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "given_name", - "jsonType.label" : "String" - } - }, { - "id" : "f9efedfc-3388-457c-b10a-1dff4525ff9b", - "name" : "nickname", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "userinfo.token.claim" : "true", - "user.attribute" : "nickname", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "nickname", - "jsonType.label" : "String" - } - } ] - }, { - "id" : "627fa054-08eb-4206-af71-9e838e984b8b", - "name" : "microprofile-jwt", - "description" : "Microprofile - JWT built-in scope", - "protocol" : "openid-connect", - "attributes" : { - "include.in.token.scope" : "true", - "display.on.consent.screen" : "false" - }, - "protocolMappers" : [ { - "id" : "e6cc53e5-5d7e-468e-88c8-0737dd3dc759", - "name" : "groups", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-realm-role-mapper", - "consentRequired" : false, - "config" : { - "multivalued" : "true", - "userinfo.token.claim" : "true", - "user.attribute" : "foo", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "groups", - "jsonType.label" : "String" - } - }, { - "id" : "83b4444c-10fc-44e8-a0c0-0c1da1f9bba3", - "name" : "upn", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-property-mapper", - "consentRequired" : false, - "config" : { - "userinfo.token.claim" : "true", - "user.attribute" : "username", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "upn", - "jsonType.label" : "String" - } - } ] - }, { - "id" : "4122ff9e-ad3c-4142-afc6-9aefdecfc86d", - "name" : "role_list", - "description" : "SAML role list", - "protocol" : "saml", - "attributes" : { - "consent.screen.text" : "${samlRoleListScopeConsentText}", - "display.on.consent.screen" : "true" - }, - "protocolMappers" : [ { - "id" : "bb0747fa-c008-4af3-93be-e7739650ebd5", - "name" : "role list", - "protocol" : "saml", - "protocolMapper" : "saml-role-list-mapper", - "consentRequired" : false, - "config" : { - "single" : "false", - "attribute.nameformat" : "Basic", - "attribute.name" : "Role" - } - } ] - }, { - "id" : "2e76447d-fbe7-4fa7-a16c-54a381b960ae", - "name" : "rabbitmq.configure:*/*", - "description" : "", - "protocol" : "openid-connect", - "attributes" : { - "include.in.token.scope" : "true", - "display.on.consent.screen" : "false", - "gui.order" : "", - "consent.screen.text" : "" - } - }, { - "id" : "52aad832-c6c4-49df-8a04-6ad4a406fdfa", - "name" : "phone", - "description" : "OpenID Connect built-in scope: phone", - "protocol" : "openid-connect", - "attributes" : { - "include.in.token.scope" : "true", - "display.on.consent.screen" : "true", - "consent.screen.text" : "${phoneScopeConsentText}" - }, - "protocolMappers" : [ { - "id" : "dae802fb-9138-408a-b80e-a40eb0f56814", - "name" : "phone number", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "userinfo.token.claim" : "true", - "user.attribute" : "phoneNumber", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "phone_number", - "jsonType.label" : "String" - } - }, { - "id" : "feb06a8d-b0eb-4911-8464-368d93f566fa", - "name" : "phone number verified", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "userinfo.token.claim" : "true", - "user.attribute" : "phoneNumberVerified", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "phone_number_verified", - "jsonType.label" : "boolean" - } - } ] - }, { - "id" : "f64d64e8-57ce-4eb2-b99e-9f02fdbd99f9", - "name" : "web-origins", - "description" : "OpenID Connect scope for add allowed web origins to the access token", - "protocol" : "openid-connect", - "attributes" : { - "include.in.token.scope" : "false", - "display.on.consent.screen" : "false", - "consent.screen.text" : "" - }, - "protocolMappers" : [ { - "id" : "c6411e3b-6478-453d-b530-5fe175a4d786", - "name" : "allowed web origins", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-allowed-origins-mapper", - "consentRequired" : false, - "config" : { } - } ] - }, { - "id" : "55341d34-0086-4173-ae61-d9b175b179d8", - "name" : "acr", - "description" : "OpenID Connect scope for add acr (authentication context class reference) to the token", - "protocol" : "openid-connect", - "attributes" : { - "include.in.token.scope" : "false", - "display.on.consent.screen" : "false" - }, - "protocolMappers" : [ { - "id" : "58ea3217-0fff-4207-9d08-919f5493b629", - "name" : "acr loa level", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-acr-mapper", - "consentRequired" : false, - "config" : { - "id.token.claim" : "true", - "access.token.claim" : "true", - "userinfo.token.claim" : "true" - } - } ] - }, { - "id" : "a02c2c38-923c-46ec-9899-321412b388e5", - "name" : "attributes", - "description" : "User Attributes", - "protocol" : "openid-connect", - "attributes" : { - "include.in.token.scope" : "false", - "display.on.consent.screen" : "false", - "gui.order" : "", - "consent.screen.text" : "" - }, - "protocolMappers" : [ { - "id" : "78c461c1-f3f9-4d10-8835-097f13bdcd60", - "name" : "Theme", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "aggregate.attrs" : "false", - "multivalued" : "false", - "userinfo.token.claim" : "true", - "user.attribute" : "theme_dark", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "attributes.theme_dark" - } - } ] - }, { - "id" : "06062e22-89c0-4e1d-a25b-2483903b02d5", - "name" : "rabbitmq.write:*/*", - "description" : "", - "protocol" : "openid-connect", - "attributes" : { - "include.in.token.scope" : "true", - "display.on.consent.screen" : "false", - "gui.order" : "", - "consent.screen.text" : "" - } - }, { - "id" : "db63e03b-7918-492f-997b-f2dda98f3b39", - "name" : "rabbitmq.tag:management", - "description" : "management", - "protocol" : "openid-connect", - "attributes" : { - "include.in.token.scope" : "true", - "display.on.consent.screen" : "true", - "gui.order" : "", - "consent.screen.text" : "" - } - }, { - "id" : "210cc792-6c07-45a6-a77e-827cdf3b41ba", - "name" : "offline_access", - "description" : "OpenID Connect built-in scope: offline_access", - "protocol" : "openid-connect", - "attributes" : { - "consent.screen.text" : "${offlineAccessScopeConsentText}", - "display.on.consent.screen" : "true" - } - }, { - "id" : "425abf4a-2ee2-431d-aa92-e373a36fe556", - "name" : "address", - "description" : "OpenID Connect built-in scope: address", - "protocol" : "openid-connect", - "attributes" : { - "include.in.token.scope" : "true", - "display.on.consent.screen" : "true", - "consent.screen.text" : "${addressScopeConsentText}" - }, - "protocolMappers" : [ { - "id" : "8d4ffe4d-1d01-4ca1-8ff4-44eacca61b30", - "name" : "address", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-address-mapper", - "consentRequired" : false, - "config" : { - "user.attribute.formatted" : "formatted", - "user.attribute.country" : "country", - "user.attribute.postal_code" : "postal_code", - "userinfo.token.claim" : "true", - "user.attribute.street" : "street", - "id.token.claim" : "true", - "user.attribute.region" : "region", - "access.token.claim" : "true", - "user.attribute.locality" : "locality" - } - } ] - }, { - "id" : "c96f0b73-ea79-4b46-93ef-d1092297f855", - "name" : "rabbitmq.read:*/*", - "description" : "", - "protocol" : "openid-connect", - "attributes" : { - "include.in.token.scope" : "true", - "display.on.consent.screen" : "false", - "gui.order" : "", - "consent.screen.text" : "" - } - }, { - "id" : "37f61543-dad7-4a82-8e10-77acdd1eefdc", - "name" : "roles", - "description" : "OpenID Connect scope for add user roles to the access token", - "protocol" : "openid-connect", - "attributes" : { - "include.in.token.scope" : "false", - "display.on.consent.screen" : "true", - "consent.screen.text" : "${rolesScopeConsentText}" - }, - "protocolMappers" : [ { - "id" : "3b6b6914-8ad1-4a71-88ec-444f754aaacb", - "name" : "audience resolve", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-audience-resolve-mapper", - "consentRequired" : false, - "config" : { } - }, { - "id" : "2defedf5-9af3-4531-822c-a879dedcd29d", - "name" : "realm roles", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-realm-role-mapper", - "consentRequired" : false, - "config" : { - "user.attribute" : "foo", - "access.token.claim" : "true", - "claim.name" : "realm_access.roles", - "jsonType.label" : "String", - "multivalued" : "true" - } - }, { - "id" : "a7bd6723-e58e-47f7-95c0-2925ce99283d", - "name" : "client roles", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-client-role-mapper", - "consentRequired" : false, - "config" : { - "user.attribute" : "foo", - "access.token.claim" : "true", - "claim.name" : "resource_access.${client_id}.roles", - "jsonType.label" : "String", - "multivalued" : "true" - } - } ] - } ], - "defaultDefaultClientScopes" : [ "rabbitmq.tag:administrator", "rabbitmq.tag:management" ], - "defaultOptionalClientScopes" : [ "rabbitmq.write:*/*", "offline_access", "rabbitmq.configure:*/*", "roles", "role_list", "address", "phone", "acr", "microprofile-jwt", "email", "attributes", "profile", "rabbitmq.read:*/*", "web-origins" ], - "browserSecurityHeaders" : { - "contentSecurityPolicyReportOnly" : "", - "xContentTypeOptions" : "nosniff", - "xRobotsTag" : "none", - "xFrameOptions" : "SAMEORIGIN", - "contentSecurityPolicy" : "frame-src 'self'; frame-ancestors 'self'; object-src 'none';", - "xXSSProtection" : "1; mode=block", - "strictTransportSecurity" : "max-age=31536000; includeSubDomains" - }, - "smtpServer" : { }, - "eventsEnabled" : false, - "eventsListeners" : [ "jboss-logging" ], - "enabledEventTypes" : [ "SEND_RESET_PASSWORD", "UPDATE_CONSENT_ERROR", "GRANT_CONSENT", "VERIFY_PROFILE_ERROR", "REMOVE_TOTP", "REVOKE_GRANT", "UPDATE_TOTP", "LOGIN_ERROR", "CLIENT_LOGIN", "RESET_PASSWORD_ERROR", "IMPERSONATE_ERROR", "CODE_TO_TOKEN_ERROR", "CUSTOM_REQUIRED_ACTION", "OAUTH2_DEVICE_CODE_TO_TOKEN_ERROR", "RESTART_AUTHENTICATION", "IMPERSONATE", "UPDATE_PROFILE_ERROR", "LOGIN", "OAUTH2_DEVICE_VERIFY_USER_CODE", "UPDATE_PASSWORD_ERROR", "CLIENT_INITIATED_ACCOUNT_LINKING", "TOKEN_EXCHANGE", "AUTHREQID_TO_TOKEN", "LOGOUT", "REGISTER", "DELETE_ACCOUNT_ERROR", "CLIENT_REGISTER", "IDENTITY_PROVIDER_LINK_ACCOUNT", "DELETE_ACCOUNT", "UPDATE_PASSWORD", "CLIENT_DELETE", "FEDERATED_IDENTITY_LINK_ERROR", "IDENTITY_PROVIDER_FIRST_LOGIN", "CLIENT_DELETE_ERROR", "VERIFY_EMAIL", "CLIENT_LOGIN_ERROR", "RESTART_AUTHENTICATION_ERROR", "EXECUTE_ACTIONS", "REMOVE_FEDERATED_IDENTITY_ERROR", "TOKEN_EXCHANGE_ERROR", "PERMISSION_TOKEN", "SEND_IDENTITY_PROVIDER_LINK_ERROR", "EXECUTE_ACTION_TOKEN_ERROR", "SEND_VERIFY_EMAIL", "OAUTH2_DEVICE_AUTH", "EXECUTE_ACTIONS_ERROR", "REMOVE_FEDERATED_IDENTITY", "OAUTH2_DEVICE_CODE_TO_TOKEN", "IDENTITY_PROVIDER_POST_LOGIN", "IDENTITY_PROVIDER_LINK_ACCOUNT_ERROR", "OAUTH2_DEVICE_VERIFY_USER_CODE_ERROR", "UPDATE_EMAIL", "REGISTER_ERROR", "REVOKE_GRANT_ERROR", "EXECUTE_ACTION_TOKEN", "LOGOUT_ERROR", "UPDATE_EMAIL_ERROR", "CLIENT_UPDATE_ERROR", "AUTHREQID_TO_TOKEN_ERROR", "UPDATE_PROFILE", "CLIENT_REGISTER_ERROR", "FEDERATED_IDENTITY_LINK", "SEND_IDENTITY_PROVIDER_LINK", "SEND_VERIFY_EMAIL_ERROR", "RESET_PASSWORD", "CLIENT_INITIATED_ACCOUNT_LINKING_ERROR", "OAUTH2_DEVICE_AUTH_ERROR", "UPDATE_CONSENT", "REMOVE_TOTP_ERROR", "VERIFY_EMAIL_ERROR", "SEND_RESET_PASSWORD_ERROR", "CLIENT_UPDATE", "CUSTOM_REQUIRED_ACTION_ERROR", "IDENTITY_PROVIDER_POST_LOGIN_ERROR", "UPDATE_TOTP_ERROR", "CODE_TO_TOKEN", "VERIFY_PROFILE", "GRANT_CONSENT_ERROR", "IDENTITY_PROVIDER_FIRST_LOGIN_ERROR" ], - "adminEventsEnabled" : false, - "adminEventsDetailsEnabled" : false, - "identityProviders" : [ ], - "identityProviderMappers" : [ ], - "components" : { - "org.keycloak.services.clientregistration.policy.ClientRegistrationPolicy" : [ { - "id" : "4d3f9f14-f5d2-4b0c-8ea7-e6d078aa2191", - "name" : "Max Clients Limit", - "providerId" : "max-clients", - "subType" : "anonymous", - "subComponents" : { }, - "config" : { - "max-clients" : [ "200" ] - } - }, { - "id" : "f35bce67-1e75-408b-b065-52183368d4fd", - "name" : "Allowed Client Scopes", - "providerId" : "allowed-client-templates", - "subType" : "anonymous", - "subComponents" : { }, - "config" : { - "allow-default-scopes" : [ "true" ] - } - }, { - "id" : "1849e52a-b8c9-44a8-af3d-ee19376a1ed1", - "name" : "Trusted Hosts", - "providerId" : "trusted-hosts", - "subType" : "anonymous", - "subComponents" : { }, - "config" : { - "host-sending-registration-request-must-match" : [ "true" ], - "client-uris-must-match" : [ "true" ] - } - }, { - "id" : "f565cb47-3bcf-4078-8f94-eb4179c375b8", - "name" : "Full Scope Disabled", - "providerId" : "scope", - "subType" : "anonymous", - "subComponents" : { }, - "config" : { } - }, { - "id" : "0efa669d-1017-4b4a-82e1-c2eaf72de2c9", - "name" : "Allowed Client Scopes", - "providerId" : "allowed-client-templates", - "subType" : "authenticated", - "subComponents" : { }, - "config" : { - "allow-default-scopes" : [ "true" ] - } - }, { - "id" : "528fb423-d66e-472e-9120-1f03ba9e0f18", - "name" : "Consent Required", - "providerId" : "consent-required", - "subType" : "anonymous", - "subComponents" : { }, - "config" : { } - }, { - "id" : "104ec5a9-025b-4c44-8ac0-82d22887ca3e", - "name" : "Allowed Protocol Mapper Types", - "providerId" : "allowed-protocol-mappers", - "subType" : "authenticated", - "subComponents" : { }, - "config" : { - "allowed-protocol-mapper-types" : [ "oidc-address-mapper", "saml-user-property-mapper", "saml-role-list-mapper", "oidc-usermodel-property-mapper", "oidc-usermodel-attribute-mapper", "saml-user-attribute-mapper", "oidc-sha256-pairwise-sub-mapper", "oidc-full-name-mapper" ] - } - }, { - "id" : "3ab11d74-5e76-408a-b85a-26bf8950f979", - "name" : "Allowed Protocol Mapper Types", - "providerId" : "allowed-protocol-mappers", - "subType" : "anonymous", - "subComponents" : { }, - "config" : { - "allowed-protocol-mapper-types" : [ "oidc-full-name-mapper", "oidc-sha256-pairwise-sub-mapper", "oidc-usermodel-attribute-mapper", "saml-role-list-mapper", "oidc-address-mapper", "oidc-usermodel-property-mapper", "saml-user-property-mapper", "saml-user-attribute-mapper" ] - } - } ], - "org.keycloak.keys.KeyProvider" : [ { - "id" : "28ca0b6d-b2e2-4785-b04b-2391e6344e30", - "name" : "aes-generated", - "providerId" : "aes-generated", - "subComponents" : { }, - "config" : { - "kid" : [ "6dc4834f-a1de-4cfe-a29d-e84ac8e9b1a8" ], - "secret" : [ "HpuzG_jWYKwypLeoPEMC4A" ], - "priority" : [ "100" ] - } - }, { - "id" : "bd7945cf-6d35-4e03-9c3a-197f2dc76973", - "name" : "hmac-generated", - "providerId" : "hmac-generated", - "subComponents" : { }, - "config" : { - "kid" : [ "c8500166-5cc4-4085-ad0f-853c3b0b0233" ], - "secret" : [ "TI3xg__G2Qy8C47DracpYir2X4ItQZSrhgr5KSlwRNISDbBqZ-ky3OcAyokSXMcpweSOaCPvbivpvzJNklUBvw" ], - "priority" : [ "100" ], - "algorithm" : [ "HS256" ] - } - }, { - "id" : "2f53ccf3-37b0-4d34-83e7-ed497499ee51", - "name" : "rsa-enc-generated", - "providerId" : "rsa-enc-generated", - "subComponents" : { }, - "config" : { - "privateKey" : [ "MIIEowIBAAKCAQEA3b1tNLfcjFLUw9UShVDNf+ZD8sQqb4YBaIXcSJTX/zDQUPiCp176BBGI3s4VplDArnOW+LumozmKogeoHEnGEIDW8ovgK5uMU9tSA2p0qqGBUMOdR8YATTIfCJe7qGiiuGa3WZy3sQLM70SuRzx02YU8gvUcvl2Js4KyqAziOUX/w3Wa59H9jjGNUXYyqaPWJp73eHzbVYWySzyLG22mVlcUtBx5siL5T2/Xu0p9z4l7/bapwwmOVi1ZrcHjbEAwdGEiSMGI/uWqAF+r1BRpmJLR7HNXcL3eK4/56VYLaiwSejfyYeRFMITEn/UxGYhcXZ5xMUUCG0TxjBhLYpTBuwIDAQABAoIBAA4dwebcxkrH99Poa8+WkiE7JgaS9sahx9OBI2xwJANoIU2TpzGuNLQZ76uLgB+rPWZTD9Xm5a1iJjwOyQ9/937TzPCk91D0tpgcusRikb8jx/6TGB9acL4kBjYUVCCHr3BA2G75MKKGtJ2OMvAbCQSosZj+r2VDwYFEPUkV2jheE5JHSBkwyIRrus3JCwu8gu5fyCg9z8ljcxJxI5HIsi4v8Z21aCw/cLj7h5cMt44wCjQz4rOfYNBEFeHDtlfR1QtWKgjm4ZHHJbKrzf9b2kQXclziceEbSM0tYbROEXKi+s0Zc+z3HEG89vv0vfN400clmzzIAijKY6gg3pPRWdECgYEA+lnWYbSlXDMNYx6RBXm1RnlMUYIm4oy4/9ljgnoGJ6WCn3SjFkgaDtiKfGIG1BSB85r04pAPANgcWHf5tWDnq0ARvBVG0BX2bKd++7B3D4d3CRYKCwm88SslJXv9dfHVhq4+zViFPiUWwT20A72jCuUCvL88y5fh/YBecfdh+jECgYEA4r5RD0NB9dMaeg5/jk/GEHIo4Z9KLc6FrSoOFo2xFkPOy1sgDpDOiNtypuWvniO7k7Ose3DS3hlfTMsKzIW/CgQJ20+Y4cvBWDaOsRxfjj7w3d+jH5OSJdKKSzTrgLKc9ZhlRzVXy0J0hipIA6HG5kdVdLXmh85ITmf1CbJhE6sCgYBjPVeBNbXTHZ2x6/z62aslO5IoQVqetb/kE82hfDOSZcao5Ph9Lam+ttH2ynkAevykj4mBgi+gWwqpey2uW7KaLPSaxShj9kDQA3mP1fzsV/u0y1rB02Nlin/YIxVvOqU1FT9p8SwoXVVu1sHUNck62VtDbN9xqUx5S/ikXrclEQKBgQCoTssOwEcK+Vty9KYcdfy4onTUHZBLdjxl8Iyqkxy7QTQUYRznkvesQPDXEDGO+kk3dyx2KKZt9Hl4IFNww2quPZcvcuMx4DQxjbXXpA8OIIxcta95NepLJwA+mRai3nKCH1A2TlNP7pFeMa5o+8IPly3Ix2lKr4Wepa4PN5i1pwKBgCZ1QP6XAOERl9NznNmU0rXVcvYNP4PIIfQWfvGsldZ4QKkmjjAGiS0/oYqdWs+UDRZyCRChaVjDXO9fk0PEG5OGKAj9nyiYCT/M8xtJ3UeP5ffZZvJ/vnye3QdDIo1e38ZzsWwJHmLYw7fRqY9W5Vxo0Vsy22U3CJY70KTxVdTy" ], - "keyUse" : [ "ENC" ], - "certificate" : [ "MIICmzCCAYMCBgGG3GWycDANBgkqhkiG9w0BAQsFADARMQ8wDQYDVQQDDAZkYnJlcG8wHhcNMjMwMzEzMTkxMzE3WhcNMzMwMzEzMTkxNDU3WjARMQ8wDQYDVQQDDAZkYnJlcG8wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDdvW00t9yMUtTD1RKFUM1/5kPyxCpvhgFohdxIlNf/MNBQ+IKnXvoEEYjezhWmUMCuc5b4u6ajOYqiB6gcScYQgNbyi+Arm4xT21IDanSqoYFQw51HxgBNMh8Il7uoaKK4ZrdZnLexAszvRK5HPHTZhTyC9Ry+XYmzgrKoDOI5Rf/DdZrn0f2OMY1RdjKpo9Ymnvd4fNtVhbJLPIsbbaZWVxS0HHmyIvlPb9e7Sn3PiXv9tqnDCY5WLVmtweNsQDB0YSJIwYj+5aoAX6vUFGmYktHsc1dwvd4rj/npVgtqLBJ6N/Jh5EUwhMSf9TEZiFxdnnExRQIbRPGMGEtilMG7AgMBAAEwDQYJKoZIhvcNAQELBQADggEBAK3kQ1VkQrzvSWvmXmazmNoA1ZiPzRDs1XhGUWxgsxzgPylr3dGBuqQbKvgnLUBQLSqlJHpI4fZflHswu1qrvVZYtekPcGef4WhcKAu2i1RwxrKa6RJQ1tRbrLuVYCzPv5p/DWgltWVn88aoLnqQn0SK/0PB/o4a4Cm7Kq2ZzCr1dACBr06LvOHsc7249OySmbG4HH+pLK6jVURhZ9VaObqAHe2FJBVVoIzURbdiRRURqumrIvbnpeaU1aFyg6ED5wTnXvmMPmVPt9F79mcB33bASO5wyu00X8t1hyN2Show2l2vxLACGUzVkTQt15s7uDLKE7qLmKSR3EuSGXWv3wA=" ], - "priority" : [ "100" ], - "algorithm" : [ "RSA-OAEP" ] - } - }, { - "id" : "2293ff99-3c6d-46d1-8635-5e679d5b134a", - "name" : "rsa-generated", - "providerId" : "rsa-generated", - "subComponents" : { }, - "config" : { - "privateKey" : [ "MIIEpAIBAAKCAQEAqqnHQ2BWWW9vDNLRCcxD++xZg/16oqMo/c1l+lcFEjjAIJjJp/HqrPYU/U9GvquGE6PbVFtTzW1KcKawOW+FJNOA3CGo8Q1TFEfz43B8rZpKsFbJKvQGVv1Z4HaKPvLUm7iMm8Hv91cLduuoWx6Q3DPe2vg13GKKEZe7UFghF+0T9u8EKzA/XqQ0OiICmsmYPbwvf9N3bCKsB/Y10EYmZRb8IhCoV9mmO5TxgWgiuNeCTtNCv2ePYqL/U0WvyGFW0reasIK8eg3KrAUj8DpyOgPOVBn3lBGf+3KFSYi+0bwZbJZWqbC/Xlk20Go1YfeJPRIt7ImxD27R/lNjgDO/MwIDAQABAoIBADNcMt6hAHub4JTAYS6Mra0EPRBO2XhWmACBrv3+8ETClXd5475KPLDewgRVtlmtbwU8G8awUXESQgPS9lfiqvQhPreA3cHlm6oP2WMKOEtakr2s8I+frsTBLCo0Ini9RaSzjoVVgS0zofyhASKi+T970MafSj5P3XNb8YBFdXgoYDiA7FXLH6a/+m7LScL+wGcFMAAeYESxZbMQLfH3v8L+4EcTraiwjLG17ZdlF3dpybMyUSse6ZQ/PdlyvBuzzLXhN6Ce2gd9ATfS+YWTzo7Yf+GU+ex5bIpVOfHqtuM/hyq7YGKENClsXwNZIAoFnvGCbvECAfgyapVrD30IfykCgYEA0rgsSZ82pxT40NxwgBD1g9lbNVBKXphRB/3S078qusUzJjT7AldEj4imGPhAbI7bI8gAeWJsp1XJWkjM8ktaVrh+NQl7p8e9OPh0pQF/5Bdg8ajbjXESpjnaU66pVYRQy/d+jNli/YRAHX5RUfsBl+6W4+WSVMGmKBiqJsur+ecCgYEAz1YVXClcmUnyZem5B+2E9noIzjF6ROE+jIb6rawM85P3Xd0lXtECQavtxw+Qk7I32qOwrxl1UpK2foVel3pazi+4OpMfmqtYGenRP1Zk1cZwrDo0cIemTDGjj3kJ8tYn12CGolFQpJZgK6OHzvG0tOxI5VZgjIViWNPe1PGWXtUCgYEAxXGNDe8BZs1f11S2lUlOw5yGug3hoYFXbAWJ5p7Ziuf8ZXB/QlJDC7se54a11wKEk6Jzz0lKRgE8CjzszJuOqnN0zn10QGIIC7nCklo1W6QMUmPGVWH994N976tZP6gbjQL6sT+AYcvpx7j0ubxYYeRNvnz+ACzzY964kGGHY0ECgYEAumlwPPNnMN7+VEjGNm2D7UMdJZ3wi3tkjF5ThdA5uMohTsAk+FG80KSu3RmOaGyEsUwY7+VYyYvlDm4E9PZqLBVVczyR3rMNPAcwPd0EPfvzk7WlLkOX7ct3fehaXH3VRlyfz9KCSeh1wOZ/lT1VtpD2nVOC7PSDzs92+kfXZZ0CgYAnrD1y4skgXkdwolZ3unn3EFyGm2d+X5aMTHwQPdWxqoNIAl/9wdghlzihwnPhhsxq1WzlxuC3V2IMrNPtRx70Mi+FbSmR5m4Xx5RptgMtMlwno+L40PzNJgMjHGjt0wcx3Vel8wuohDtnqMyS7P5nG1/TQx0Cyzwn7QOXlNpgbQ==" ], - "keyUse" : [ "SIG" ], - "certificate" : [ "MIICmzCCAYMCBgGG3GWyBTANBgkqhkiG9w0BAQsFADARMQ8wDQYDVQQDDAZkYnJlcG8wHhcNMjMwMzEzMTkxMzE3WhcNMzMwMzEzMTkxNDU3WjARMQ8wDQYDVQQDDAZkYnJlcG8wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCqqcdDYFZZb28M0tEJzEP77FmD/Xqioyj9zWX6VwUSOMAgmMmn8eqs9hT9T0a+q4YTo9tUW1PNbUpwprA5b4Uk04DcIajxDVMUR/PjcHytmkqwVskq9AZW/Vngdoo+8tSbuIybwe/3Vwt266hbHpDcM97a+DXcYooRl7tQWCEX7RP27wQrMD9epDQ6IgKayZg9vC9/03dsIqwH9jXQRiZlFvwiEKhX2aY7lPGBaCK414JO00K/Z49iov9TRa/IYVbSt5qwgrx6DcqsBSPwOnI6A85UGfeUEZ/7coVJiL7RvBlsllapsL9eWTbQajVh94k9Ei3sibEPbtH+U2OAM78zAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAASnN1Cuif1sdfEK2kWAURSXGJCohCROLWdKFjaeHPRaEfpbFJsgxW0Yj3nwX5O3bUlOWoTyENwnXSsXMQsqnNi+At32CKaKO8+AkhAbgQL9F0B+KeJwmYv3cUj5N/LYkJjBvZBzUZ4Ugu5dcxH0k7AktLAIwimkyEnxTNolOA3UyrGGpREr8MCKWVr10RFuOpF/0CsJNNwbHXzalO9D756EUcRWZ9VSg6QVNso0YYRKTnILWDn9hcTRnqGy3SHo3anFTqQZ+BB57YbgFWy6udC0LYRB3zdp6zNti87eu/VEymiDY/mmo1AB8Tm0b6vxFz4AKcL3ax5qS6YnZ9efSzk=" ], - "priority" : [ "100" ] - } - } ] - }, - "internationalizationEnabled" : false, - "supportedLocales" : [ ], - "authenticationFlows" : [ { - "id" : "88e5d526-2298-413c-a904-133ad839d47f", - "alias" : "Account verification options", - "description" : "Method with which to verity the existing account", - "providerId" : "basic-flow", - "topLevel" : false, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "idp-email-verification", - "authenticatorFlow" : false, - "requirement" : "ALTERNATIVE", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticatorFlow" : true, - "requirement" : "ALTERNATIVE", - "priority" : 20, - "autheticatorFlow" : true, - "flowAlias" : "Verify Existing Account by Re-authentication", - "userSetupAllowed" : false - } ] - }, { - "id" : "bc0b483f-4a3f-4c15-bf65-b26f5320e6c9", - "alias" : "Authentication Options", - "description" : "Authentication options.", - "providerId" : "basic-flow", - "topLevel" : false, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "basic-auth", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "basic-auth-otp", - "authenticatorFlow" : false, - "requirement" : "DISABLED", - "priority" : 20, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "auth-spnego", - "authenticatorFlow" : false, - "requirement" : "DISABLED", - "priority" : 30, - "autheticatorFlow" : false, - "userSetupAllowed" : false - } ] - }, { - "id" : "a690c715-fbae-4c20-b680-bd4010718761", - "alias" : "Browser - Conditional OTP", - "description" : "Flow to determine if the OTP is required for the authentication", - "providerId" : "basic-flow", - "topLevel" : false, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "conditional-user-configured", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "auth-otp-form", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 20, - "autheticatorFlow" : false, - "userSetupAllowed" : false - } ] - }, { - "id" : "ad6d407e-c73e-4439-baf3-d7c99c6cb6ad", - "alias" : "Direct Grant - Conditional OTP", - "description" : "Flow to determine if the OTP is required for the authentication", - "providerId" : "basic-flow", - "topLevel" : false, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "conditional-user-configured", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "direct-grant-validate-otp", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 20, - "autheticatorFlow" : false, - "userSetupAllowed" : false - } ] - }, { - "id" : "e5d03405-e10a-408a-adb2-41dbb4f24515", - "alias" : "First broker login - Conditional OTP", - "description" : "Flow to determine if the OTP is required for the authentication", - "providerId" : "basic-flow", - "topLevel" : false, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "conditional-user-configured", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "auth-otp-form", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 20, - "autheticatorFlow" : false, - "userSetupAllowed" : false - } ] - }, { - "id" : "96b93843-62d0-44f1-84dd-21cc5f95f523", - "alias" : "Handle Existing Account", - "description" : "Handle what to do if there is existing account with same email/username like authenticated identity provider", - "providerId" : "basic-flow", - "topLevel" : false, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "idp-confirm-link", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticatorFlow" : true, - "requirement" : "REQUIRED", - "priority" : 20, - "autheticatorFlow" : true, - "flowAlias" : "Account verification options", - "userSetupAllowed" : false - } ] - }, { - "id" : "088f4051-36ab-4952-a4f2-4ba53c408083", - "alias" : "Reset - Conditional OTP", - "description" : "Flow to determine if the OTP should be reset or not. Set to REQUIRED to force.", - "providerId" : "basic-flow", - "topLevel" : false, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "conditional-user-configured", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "reset-otp", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 20, - "autheticatorFlow" : false, - "userSetupAllowed" : false - } ] - }, { - "id" : "05f37bb2-779d-4e3f-ad1b-f6eb33bb3de4", - "alias" : "User creation or linking", - "description" : "Flow for the existing/non-existing user alternatives", - "providerId" : "basic-flow", - "topLevel" : false, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticatorConfig" : "create unique user config", - "authenticator" : "idp-create-user-if-unique", - "authenticatorFlow" : false, - "requirement" : "ALTERNATIVE", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticatorFlow" : true, - "requirement" : "ALTERNATIVE", - "priority" : 20, - "autheticatorFlow" : true, - "flowAlias" : "Handle Existing Account", - "userSetupAllowed" : false - } ] - }, { - "id" : "300a5647-7d2c-4348-9f1f-51504bfda1c4", - "alias" : "Verify Existing Account by Re-authentication", - "description" : "Reauthentication of existing account", - "providerId" : "basic-flow", - "topLevel" : false, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "idp-username-password-form", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticatorFlow" : true, - "requirement" : "CONDITIONAL", - "priority" : 20, - "autheticatorFlow" : true, - "flowAlias" : "First broker login - Conditional OTP", - "userSetupAllowed" : false - } ] - }, { - "id" : "26afc672-314b-4ad9-9711-7aaeafd7c00c", - "alias" : "browser", - "description" : "browser based authentication", - "providerId" : "basic-flow", - "topLevel" : true, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "auth-cookie", - "authenticatorFlow" : false, - "requirement" : "ALTERNATIVE", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "auth-spnego", - "authenticatorFlow" : false, - "requirement" : "DISABLED", - "priority" : 20, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "identity-provider-redirector", - "authenticatorFlow" : false, - "requirement" : "ALTERNATIVE", - "priority" : 25, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticatorFlow" : true, - "requirement" : "ALTERNATIVE", - "priority" : 30, - "autheticatorFlow" : true, - "flowAlias" : "forms", - "userSetupAllowed" : false - } ] - }, { - "id" : "9b301f6c-eda7-4da0-ba09-1a6454ff910d", - "alias" : "clients", - "description" : "Base authentication for clients", - "providerId" : "client-flow", - "topLevel" : true, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "client-secret", - "authenticatorFlow" : false, - "requirement" : "ALTERNATIVE", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "client-jwt", - "authenticatorFlow" : false, - "requirement" : "ALTERNATIVE", - "priority" : 20, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "client-secret-jwt", - "authenticatorFlow" : false, - "requirement" : "ALTERNATIVE", - "priority" : 30, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "client-x509", - "authenticatorFlow" : false, - "requirement" : "ALTERNATIVE", - "priority" : 40, - "autheticatorFlow" : false, - "userSetupAllowed" : false - } ] - }, { - "id" : "6e54f1be-dbad-4b6d-8eee-8e048d413c63", - "alias" : "direct grant", - "description" : "OpenID Connect Resource Owner Grant", - "providerId" : "basic-flow", - "topLevel" : true, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "direct-grant-validate-username", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "direct-grant-validate-password", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 20, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticatorFlow" : true, - "requirement" : "CONDITIONAL", - "priority" : 30, - "autheticatorFlow" : true, - "flowAlias" : "Direct Grant - Conditional OTP", - "userSetupAllowed" : false - } ] - }, { - "id" : "31da4b94-03c4-4d79-9ac3-5df1445c0781", - "alias" : "docker auth", - "description" : "Used by Docker clients to authenticate against the IDP", - "providerId" : "basic-flow", - "topLevel" : true, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "docker-http-basic-authenticator", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - } ] - }, { - "id" : "2e16651d-681f-4d9b-9dd4-9acdb465cd43", - "alias" : "first broker login", - "description" : "Actions taken after first broker login with identity provider account, which is not yet linked to any Keycloak account", - "providerId" : "basic-flow", - "topLevel" : true, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticatorConfig" : "review profile config", - "authenticator" : "idp-review-profile", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticatorFlow" : true, - "requirement" : "REQUIRED", - "priority" : 20, - "autheticatorFlow" : true, - "flowAlias" : "User creation or linking", - "userSetupAllowed" : false - } ] - }, { - "id" : "da109a26-fefa-48a4-ae8e-1d49627c2db8", - "alias" : "forms", - "description" : "Username, password, otp and other auth forms.", - "providerId" : "basic-flow", - "topLevel" : false, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "auth-username-password-form", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticatorFlow" : true, - "requirement" : "CONDITIONAL", - "priority" : 20, - "autheticatorFlow" : true, - "flowAlias" : "Browser - Conditional OTP", - "userSetupAllowed" : false - } ] - }, { - "id" : "b8f1f963-6813-4875-bae8-ce48a813763b", - "alias" : "http challenge", - "description" : "An authentication flow based on challenge-response HTTP Authentication Schemes", - "providerId" : "basic-flow", - "topLevel" : true, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "no-cookie-redirect", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticatorFlow" : true, - "requirement" : "REQUIRED", - "priority" : 20, - "autheticatorFlow" : true, - "flowAlias" : "Authentication Options", - "userSetupAllowed" : false - } ] - }, { - "id" : "4c983c77-241f-41c5-8b8a-e2cd6fc08914", - "alias" : "registration", - "description" : "registration flow", - "providerId" : "basic-flow", - "topLevel" : true, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "registration-page-form", - "authenticatorFlow" : true, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : true, - "flowAlias" : "registration form", - "userSetupAllowed" : false - } ] - }, { - "id" : "d62c8dd6-633c-408a-aa99-43071510efb4", - "alias" : "registration form", - "description" : "registration form", - "providerId" : "form-flow", - "topLevel" : false, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "registration-user-creation", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 20, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "registration-profile-action", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 40, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "registration-password-action", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 50, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "registration-recaptcha-action", - "authenticatorFlow" : false, - "requirement" : "DISABLED", - "priority" : 60, - "autheticatorFlow" : false, - "userSetupAllowed" : false - } ] - }, { - "id" : "c8ca5be7-e76d-4e16-b5ca-3ced99d92dbb", - "alias" : "reset credentials", - "description" : "Reset credentials for a user if they forgot their password or something", - "providerId" : "basic-flow", - "topLevel" : true, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "reset-credentials-choose-user", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "reset-credential-email", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 20, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "reset-password", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 30, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticatorFlow" : true, - "requirement" : "CONDITIONAL", - "priority" : 40, - "autheticatorFlow" : true, - "flowAlias" : "Reset - Conditional OTP", - "userSetupAllowed" : false - } ] - }, { - "id" : "389c1c37-e8af-4610-a507-e1257f55b954", - "alias" : "saml ecp", - "description" : "SAML ECP Profile Authentication Flow", - "providerId" : "basic-flow", - "topLevel" : true, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "http-basic-authenticator", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - } ] - } ], - "authenticatorConfig" : [ { - "id" : "d66ca9d0-1645-4c84-abfe-c0a696f17de4", - "alias" : "create unique user config", - "config" : { - "require.password.update.after.registration" : "false" - } - }, { - "id" : "061cc6b8-90be-4423-9bf9-974ead709b5d", - "alias" : "review profile config", - "config" : { - "update.profile.on.first.login" : "missing" - } - } ], - "requiredActions" : [ { - "alias" : "CONFIGURE_TOTP", - "name" : "Configure OTP", - "providerId" : "CONFIGURE_TOTP", - "enabled" : true, - "defaultAction" : false, - "priority" : 10, - "config" : { } - }, { - "alias" : "TERMS_AND_CONDITIONS", - "name" : "Terms and Conditions", - "providerId" : "TERMS_AND_CONDITIONS", - "enabled" : false, - "defaultAction" : false, - "priority" : 20, - "config" : { } - }, { - "alias" : "UPDATE_PASSWORD", - "name" : "Update Password", - "providerId" : "UPDATE_PASSWORD", - "enabled" : false, - "defaultAction" : false, - "priority" : 30, - "config" : { } - }, { - "alias" : "UPDATE_PROFILE", - "name" : "Update Profile", - "providerId" : "UPDATE_PROFILE", - "enabled" : true, - "defaultAction" : false, - "priority" : 40, - "config" : { } - }, { - "alias" : "VERIFY_EMAIL", - "name" : "Verify Email", - "providerId" : "VERIFY_EMAIL", - "enabled" : false, - "defaultAction" : false, - "priority" : 50, - "config" : { } - }, { - "alias" : "delete_account", - "name" : "Delete Account", - "providerId" : "delete_account", - "enabled" : false, - "defaultAction" : false, - "priority" : 60, - "config" : { } - }, { - "alias" : "webauthn-register", - "name" : "Webauthn Register", - "providerId" : "webauthn-register", - "enabled" : true, - "defaultAction" : false, - "priority" : 70, - "config" : { } - }, { - "alias" : "webauthn-register-passwordless", - "name" : "Webauthn Register Passwordless", - "providerId" : "webauthn-register-passwordless", - "enabled" : true, - "defaultAction" : false, - "priority" : 80, - "config" : { } - }, { - "alias" : "update_user_locale", - "name" : "Update User Locale", - "providerId" : "update_user_locale", - "enabled" : true, - "defaultAction" : false, - "priority" : 1000, - "config" : { } - } ], - "browserFlow" : "browser", - "registrationFlow" : "registration", - "directGrantFlow" : "direct grant", - "resetCredentialsFlow" : "reset credentials", - "clientAuthenticationFlow" : "clients", - "dockerAuthenticationFlow" : "docker auth", - "attributes" : { - "cibaBackchannelTokenDeliveryMode" : "poll", - "cibaAuthRequestedUserHint" : "login_hint", - "clientOfflineSessionMaxLifespan" : "0", - "oauth2DevicePollingInterval" : "5", - "clientSessionIdleTimeout" : "0", - "actionTokenGeneratedByUserLifespan-execute-actions" : "", - "actionTokenGeneratedByUserLifespan-verify-email" : "", - "clientOfflineSessionIdleTimeout" : "0", - "actionTokenGeneratedByUserLifespan-reset-credentials" : "", - "cibaInterval" : "5", - "realmReusableOtpCode" : "false", - "cibaExpiresIn" : "120", - "oauth2DeviceCodeLifespan" : "600", - "actionTokenGeneratedByUserLifespan-idp-verify-account-via-email" : "", - "parRequestUriLifespan" : "60", - "clientSessionMaxLifespan" : "0", - "shortVerificationUri" : "" - }, - "keycloakVersion" : "21.0.2", - "userManagedAccessAllowed" : false, - "clientProfiles" : { - "profiles" : [ ] - }, - "clientPolicies" : { - "policies" : [ ] - } -} \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml index 5ab6df06af..e0ba86a01d 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -3,7 +3,6 @@ volumes: data-db-data: auth-db-data: broker-service-data: - upload-service-data: search-db-data: identity-service-data: metric-db-data: @@ -348,8 +347,6 @@ services: depends_on: dbrepo-search-service: condition: service_healthy - dbrepo-upload-service: - condition: service_healthy healthcheck: test: curl -fsSL http://127.0.0.1:3000 && curl -fsSL http://127.0.0.1:3000/health interval: 10s @@ -522,36 +519,6 @@ services: logging: driver: json-file - dbrepo-upload-service: - restart: "no" - container_name: dbrepo-upload-service - hostname: upload-service - image: docker.io/tusproject/tusd:v2.4.0 - volumes: - - "./dbrepo-upload-service/pre-create.sh:/srv/tusd-hooks/pre-create:ro" - command: - - "-behind-proxy" - - "-max-size=2000000000" - - "-base-path=/api/upload/files/" - - "-hooks-dir=/srv/tusd-hooks/" - - "-s3-endpoint=${STORAGE_ENDPOINT:-http://storage-service:9000}" - - "-s3-bucket=dbrepo" - environment: - AWS_ACCESS_KEY_ID: "${S3_ACCESS_KEY_ID:-seaweedfsadmin}" - AWS_SECRET_ACCESS_KEY: "${S3_SECRET_ACCESS_KEY:-seaweedfsadmin}" - AWS_REGION: "${STORAGE_REGION_NAME:-default}" - METADATA_SERVICE_ENDPOINT: "${METADATA_SERVICE_ENDPOINT:-http://metadata-service:8080}" - depends_on: - dbrepo-storage-service: - condition: service_healthy - healthcheck: - test: wget -qO- localhost:8080/metrics | grep "tusd" || exit 1 - interval: 10s - timeout: 5s - retries: 12 - logging: - driver: json-file - dbrepo-data-service: restart: "no" container_name: dbrepo-data-service diff --git a/helm/dbrepo/files/create-event-listener.jar b/helm/dbrepo/files/create-event-listener.jar index 422b57a19db31b248eb17c9cc4586df30558a85b..6549707e790dc8a796f38709e6cc8bc5fc709521 100644 GIT binary patch delta 902 zcmbR1Kigk8z?+#xgn@yBgJJF5h^RGtVy_iW6xOZZvaHk8JevR3N~>V|chWZ^mT|s3 zptkjY+^lOBWinqGblxQ2f2{jG!MAhX4{fV_so9%1N*uj-M^PZl?)LLHa#ma3+*-Ny z<%NwdK71XK*;;4Cs}9fKw&Kv%(-u}P%S^a5LLQxO(>gO#PbN>APj~H3_v@0a&rdY| zUZh_;Z_BPi%jo(uQtu--rfXk$Bc{>!?p1E9Y1FUT?|FXp1}w3E^8e(|O;OKse7Ahv zIc4`<zZsXfv&z}lGN?8z*|?P1e_iMmt1q84{Er11SaF|bvXc0bx4|Hx{qXrdmTY-j z`x1rpfY&*f-peoGJ0B}`d*AopjPpA$IM3_($@zOpmR<fDSJ&EmtLv@mjj!-)9^RA3 zy>M1kUcvfRY-Y|1PC={w=@-0ddiJ3pPSQW)qAd6N4aV+KJ|;0sCHp1?F6t@_d%<+- zrO4%yHHnKR3zg2C=2^7o`=eF*&+9HLoK!qzRnhUz+go3S!zz>0?bt<jP}p-ZFmNz{ z!=3>NOy18Z&a`&!<Qt57Ac})Y9z<y}se!0KCT$Q^$7BkkwlaBxC?@7}AnFox57XMY zn-f^(GJ)v-Y&@JGnpdD!5G38BI2%N1Dox>pNB87oN|qo&Mr9es#gpZfB|sbtWf{g( zlS7piL7WO@8PQ*i3=D}S`T^dIOd`xMM^9d<EF&Y$1ePf&EzeBNLs#%nS%%4(X>uZy zFb|4GITabE0;b7*OtM<Y;t^3ufxw^-=Lj&obzBZoE<O1HlY}Nn3nJ0}nb+pj#lXPu zfq{WR1FnUEVM*hc$@f*vK|YXBm0>(G*;F+U#OY9#VG3fIT)<*7`IagVNaTg84AV!p z$^7gRljYRFB06d^O#k^O7qF;LE>tsMnj<^8j|pVA*yJl}!XPa#)nu6J6yc(075TIw iVS{j&ut&(bWCjL?jSLJ7!YJ;No?NJ|#<pGwBnSXnKSH(u delta 1016 zcmbR3Ki6M4z?+#xgn@yBgJJK4h$xF>5&q(d!n*Y{mi6Z5ZIjy)T)M38j`@a-KEjt8 zeY5`WHMwe0Ci9g+=S}kc$GYVSzMb=aa9ia|&ED)1bL8S7MS(0k`zLSsthT&4wX*l+ zg^eLS{T-FrT4$$Mot7_OacJvl3oEx}CR`dJkNn%T&dk)4c_+oEo4dpPx@7C~6OGkZ zrrY^P-Q6)qxBhwW_caz9OtZ?EMclW4U3W-I_wU(qw!dx~YW7e5pZvKe?rDzmmd`t< z{Qes^;}Un)ceb?*strpvE@k##7kb6&%O@58V}S-%+^2=CBz~;hXpqo;_<SErw!Dpf znL>KN>zq69-!J4lA1ir#-`C%a^E)p%&r|!u{Ch>#zKk`luC@18*IU(_Ug6g~yeE@; z;jE~<j|*0@ZF5#|3R?9~zu-;NvkwJvlKvSN=W?yzXsmuKv(WI;%_SZ}I+r4?r2I_} zshoCLdNjxCoY$4CX;Us=-kTm?Yx#XPn<ro3wS&$j@ljQZju+aeC8WsgWd?;l7Xt$a z132^<;9&A@MoFeU6DD6{)B{m$O!7>7CrnmnQUg)`Oxhr-hRGB}ZD#Uj+B0Di^Er^h z3(P%Cdnas;W0}juv}eNRzid35AU?N1tsqEkm*Q*?rLHuE6CT@>k0@D!1ph0^FfN@e zqb#AYXF^02+$9VQ3_@^@0K;3yGmMiTFpEsiQ0B=-SICT_@DC#cLt=@3fHxzP2s1WM zGB9wVXpm(BYbYr#&rHoj(>M9PvJ9i^<Uh)CAh*h>$S@X7ZcvfY#%H=dis>sSH>lWw z!svjC4AVEJ$pXw;lQ~p*z`phQ&9X|5fq_AXfq}sZu8V<TN#il*$q$%aCReEPD1buj z|EK2N{!9!E*H{@Cj8GJYuuRTlF`0Y=Y9jYP!9TY+7#P+GFffRrDE!PenU`H+vWyxJ z$R}EAGE9sDlk-^AC+DjfFwUF2K+P3w)9!T-l0Z%YVOtaf8WbllR5P7?UXcsxdqnmX d_6Rwb%)r2~k%56h7)6up<a~8Cwv9?4K>&JKO_l%v diff --git a/lib/python/dbrepo/RestClient.py b/lib/python/dbrepo/RestClient.py index 76eeaa18a1..d7d7d5b7eb 100644 --- a/lib/python/dbrepo/RestClient.py +++ b/lib/python/dbrepo/RestClient.py @@ -1,12 +1,12 @@ import logging import os import sys +from io import BytesIO import requests from pandas import DataFrame from pydantic import TypeAdapter -from dbrepo.UploadClient import UploadClient from dbrepo.api.dto import * from dbrepo.api.exceptions import ResponseCodeError, NotExistsError, \ ForbiddenError, MalformedError, NameExistsError, QueryStoreError, ExternalSystemError, \ @@ -49,7 +49,7 @@ class RestClient: f'initialized rest client with endpoint={self.endpoint}, username={username}, verify_ssl={secure}') def _wrapper(self, method: str, url: str, params: [(str,)] = None, payload=None, headers: dict = None, - force_auth: bool = False, stream: bool = False) -> requests.Response: + force_auth: bool = False, files: dict = None) -> requests.Response: if force_auth and (self.username is None and self.password is None): raise AuthenticationError(f"Failed to perform request: authentication required") url = f'{self.endpoint}{url}' @@ -57,8 +57,6 @@ class RestClient: logging.debug(f'url: {url}') if params is not None: logging.debug(f'params: {params}') - if stream is not None: - logging.debug(f'stream: {stream}') logging.debug(f'secure: {self.secure}') if headers is not None: logging.debug(f'headers: {headers}') @@ -75,7 +73,7 @@ class RestClient: auth = (self.username, self.password) logging.debug(f'configured for basic auth: username={self.username}, password=(hidden)') return requests.request(method=method, url=url, auth=auth, verify=self.secure, - json=payload, headers=headers, params=params, stream=stream) + json=payload, headers=headers, params=params, files=files) def whoami(self) -> str | None: """ @@ -907,6 +905,27 @@ class RestClient: raise ResponseCodeError(f'Failed to insert table data: response code: {response.status_code} is not ' f'201 (CREATED): {response.text}') + def _upload(self, dataframe: DataFrame) -> str: + """ + Uploads a pandas DataFrame to the S3 filesystem. + + :param dataframe: The dataframe to be uploaded. + + :returns: The S3 key if successful. + + :raises ResponseCodeError: If something went wrong with the insert. + """ + url = f'/api/upload' + buffer = BytesIO() + dataframe.to_csv(path_or_buf=buffer, header=False, index=False) + response = self._wrapper(method="post", url=url, force_auth=True, + files={'file': ('dataframe.csv', buffer.getvalue())}) + if response.status_code == 201: + body = response.json() + return UploadResponse.model_validate(body).s3_key + raise ResponseCodeError(f'Failed to upload: response code: {response.status_code} is not ' + f'202 (ACCEPTED): {response.text}') + def import_table_data(self, database_id: str, table_id: str, dataframe: DataFrame) -> None: """ Import a csv dataset from a file into a table in a database with given database id and table id. ATTENTION: @@ -923,12 +942,11 @@ class RestClient: :raises ServiceError: If something went wrong with obtaining the information in the metadata service. :raises ResponseCodeError: If something went wrong with the insert. """ - client = UploadClient() - filename = client.upload(dataframe) + url = f'/api/database/{database_id}/table/{table_id}/data/import' response = self._wrapper(method="post", url=url, force_auth=True, - payload=Import(location=filename, separator=',', quote='"', header=True, - line_termination='\n')) + payload=Import(location=self._upload(dataframe), separator=',', quote='"', + header=True, line_termination='\n')) if response.status_code == 202: return if response.status_code == 400: @@ -957,10 +975,8 @@ class RestClient: :raises NotExistsError: If the file was not found by the Analyse Service. :raises ResponseCodeError: If something went wrong with the analysis. """ - client = UploadClient() - filename = client.upload(dataframe) params = [ - ('filename', filename), + ('filename', self._upload(dataframe)), ('separator', ','), ('enum', enum), ('enum_tol', enum_tol) @@ -989,10 +1005,8 @@ class RestClient: :raises NotExistsError: If the file was not found by the Analyse Service. :raises ResponseCodeError: If something went wrong with the analysis. """ - client = UploadClient() - filename = client.upload(dataframe=dataframe) params = [ - ('filename', filename), + ('filename', self._upload(dataframe)), ('separator', ','), ] url = f'/api/analyse/keys' @@ -1710,7 +1724,7 @@ class RestClient: def get_identifiers(self, database_id: str = None, subset_id: str = None, view_id: str = None, table_id: str = None, type: IdentifierType = None, status: IdentifierStatusType = None) -> List[ - Identifier]: + Identifier]: """ Get list of identifiers, filter by the remaining optional arguments. @@ -1829,7 +1843,6 @@ class RestClient: raise ResponseCodeError(f'Failed to get messages: response code: {response.status_code} is not ' f'200 (OK): {response.text}') - def update_table_column(self, database_id: str, table_id: str, column_id: str, concept_uri: str = None, unit_uri: str = None) -> Column: """ diff --git a/lib/python/dbrepo/UploadClient.py b/lib/python/dbrepo/UploadClient.py deleted file mode 100644 index cb4dc3a3c5..0000000000 --- a/lib/python/dbrepo/UploadClient.py +++ /dev/null @@ -1,40 +0,0 @@ -import logging -import os -import re -import sys -from io import BytesIO - -from pandas import DataFrame -from tusclient import client - -from dbrepo.api.exceptions import UploadError - -logging.basicConfig(format='%(asctime)s %(name)-12s %(levelname)-6s %(message)s', level=logging.INFO, - stream=sys.stdout) - - -class UploadClient: - """ - The UploadClient class for communicating with the DBRepo REST API. All parameters can be set also via environment \ - variables, e.g. set endpoint with DBREPO_ENDPOINT, username with DBREPO_USERNAME, etc. You can override the \ - constructor parameters with the environment variables. - - :param endpoint: The REST API endpoint. Optional. Default: "http://gateway-service/api/upload/files" - """ - endpoint: str = None - - def __init__(self, endpoint: str = 'http://gateway-service/api/upload/files') -> None: - self.endpoint = os.environ.get('REST_UPLOAD_ENDPOINT', endpoint) - - def upload(self, dataframe: DataFrame) -> str: - logging.debug(f"upload to endpoint: {self.endpoint}") - tus_client = client.TusClient(url=self.endpoint) - buffer: BytesIO = BytesIO(dataframe.to_csv(index=False, header=False).encode('utf-8')) - uploader = tus_client.uploader(file_stream=buffer) - uploader.upload() - m = re.search('\\/([a-f0-9]+)$', uploader.url) - filename = m.group(0)[1:-1] - if filename is None: - raise UploadError('Failed to upload file: no filename') - logging.info(f'Uploaded to storage service with key: {filename}') - return filename diff --git a/lib/python/dbrepo/api/dto.py b/lib/python/dbrepo/api/dto.py index d004a9faa3..a9ffca9579 100644 --- a/lib/python/dbrepo/api/dto.py +++ b/lib/python/dbrepo/api/dto.py @@ -971,6 +971,10 @@ class ColumnSet(BaseModel): value: str +class UploadResponse(BaseModel): + s3_key: str + + class DataType(BaseModel): id: str display_name: str -- GitLab From 4de8f876b92a24a51eeb651be168285cb63b6da0 Mon Sep 17 00:00:00 2001 From: Martin Weise <martin.weise@tuwien.ac.at> Date: Mon, 24 Feb 2025 21:30:17 +0100 Subject: [PATCH 2/5] Fixed docker compose Signed-off-by: Martin Weise <martin.weise@tuwien.ac.at> --- .docker/docker-compose.yml | 34 ---------------------------------- docker-compose.yml | 1 - 2 files changed, 35 deletions(-) diff --git a/.docker/docker-compose.yml b/.docker/docker-compose.yml index 0f675e47eb..65a739b2e0 100644 --- a/.docker/docker-compose.yml +++ b/.docker/docker-compose.yml @@ -3,7 +3,6 @@ volumes: data-db-data: auth-db-data: broker-service-data: - upload-service-data: search-db-data: identity-service-data: metric-db-data: @@ -305,7 +304,6 @@ services: environment: NUXT_PUBLIC_API_CLIENT: "${BASE_URL:-http://localhost}" NUXT_PUBLIC_API_SERVER: "${BASE_URL:-http://gateway-service}" - NUXT_PUBLIC_UPLOAD_CLIENT: "${BASE_URL:-http://localhost}/api/upload/files" NUXT_OIDC_PROVIDERS_KEYCLOAK_AUTHORIZATION_URL: "${BASE_URL:-http://localhost}/realms/dbrepo/protocol/openid-connect/auth" NUXT_OIDC_PROVIDERS_KEYCLOAK_BASE_URL: "${BASE_URL:-http://localhost}/realms/dbrepo" NUXT_OIDC_PROVIDERS_KEYCLOAK_CLIENT_ID: "${AUTH_SERVICE_CLIENT:-dbrepo-client}" @@ -318,8 +316,6 @@ services: depends_on: dbrepo-search-service: condition: service_healthy - dbrepo-upload-service: - condition: service_healthy healthcheck: test: curl -fsSL http://127.0.0.1:3000 && curl -fsSL http://127.0.0.1:3000/health interval: 10s @@ -477,36 +473,6 @@ services: logging: driver: json-file - dbrepo-upload-service: - restart: "no" - container_name: dbrepo-upload-service - hostname: upload-service - image: docker.io/tusproject/tusd:v2.4.0 - volumes: - - "./config/pre-create.sh:/srv/tusd-hooks/pre-create:ro" - command: - - "-behind-proxy" - - "-max-size=2000000000" - - "-base-path=/api/upload/files/" - - "-hooks-dir=/srv/tusd-hooks/" - - "-s3-endpoint=${STORAGE_ENDPOINT:-http://storage-service:9000}" - - "-s3-bucket=dbrepo" - environment: - AWS_ACCESS_KEY_ID: "${S3_ACCESS_KEY_ID:-seaweedfsadmin}" - AWS_SECRET_ACCESS_KEY: "${S3_SECRET_ACCESS_KEY:-seaweedfsadmin}" - AWS_REGION: "${STORAGE_REGION_NAME:-default}" - METADATA_SERVICE_ENDPOINT: "${METADATA_SERVICE_ENDPOINT:-http://metadata-service:8080}" - depends_on: - dbrepo-storage-service: - condition: service_healthy - healthcheck: - test: wget -qO- localhost:8080/metrics | grep "tusd" || exit 1 - interval: 10s - timeout: 5s - retries: 12 - logging: - driver: json-file - dbrepo-data-service: restart: "no" container_name: dbrepo-data-service diff --git a/docker-compose.yml b/docker-compose.yml index e0ba86a01d..8f0d77334e 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -335,7 +335,6 @@ services: environment: NUXT_PUBLIC_API_CLIENT: "${BASE_URL:-http://localhost}" NUXT_PUBLIC_API_SERVER: "${BASE_URL:-http://localhost}" - NUXT_PUBLIC_UPLOAD_CLIENT: "${BASE_URL:-http://localhost}/api/upload/files" NUXT_OIDC_PROVIDERS_KEYCLOAK_AUTHORIZATION_URL: "${BASE_URL:-http://localhost}/realms/dbrepo/protocol/openid-connect/auth" NUXT_OIDC_PROVIDERS_KEYCLOAK_CLIENT_ID: "${AUTH_SERVICE_CLIENT:-dbrepo-client}" NUXT_OIDC_PROVIDERS_KEYCLOAK_CLIENT_SECRET: "${AUTH_SERVICE_CLIENT:-MUwRc7yfXSJwX8AdRMWaQC3Nep1VjwgG}" -- GitLab From e371fd5ca99f3d30b56ec8b6424a8d7a23306f8a Mon Sep 17 00:00:00 2001 From: Martin Weise <martin.weise@tuwien.ac.at> Date: Sun, 2 Mar 2025 19:20:15 +0100 Subject: [PATCH 3/5] WIP Signed-off-by: Martin Weise <martin.weise@tuwien.ac.at> --- .../at/tuwien/endpoints/DatabaseEndpointUnitTest.java | 9 ++++----- .../at/tuwien/gateway/DataServiceGatewayUnitTest.java | 7 ++++--- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/DatabaseEndpointUnitTest.java b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/DatabaseEndpointUnitTest.java index 525de98f75..fba64ad393 100644 --- a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/DatabaseEndpointUnitTest.java +++ b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/DatabaseEndpointUnitTest.java @@ -611,14 +611,13 @@ public class DatabaseEndpointUnitTest extends AbstractUnitTest { @Test @WithMockUser(username = USER_LOCAL_ADMIN_USERNAME, authorities = {"system"}) - public void findById_privateSchemaPrivateDataNoAccessInternalUser_succeeds() throws UserNotFoundException, - NotAllowedException, DataServiceException, DatabaseNotFoundException, ExchangeNotFoundException, - DataServiceConnectionException { + public void findById_privateSchemaPrivateDataNoAccessInternalUser_succeeds() throws NotAllowedException, + DatabaseNotFoundException { /* test */ final DatabaseDto database = findById_generic(DATABASE_1_ID, DATABASE_1, USER_LOCAL_ADMIN_PRINCIPAL); - assertEquals(2, database.getTables().size()); - assertEquals(2, database.getViews().size()); + assertEquals(4, database.getTables().size()); + assertEquals(3, database.getViews().size()); assertNotEquals(0, database.getAccesses().size()); } diff --git a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/gateway/DataServiceGatewayUnitTest.java b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/gateway/DataServiceGatewayUnitTest.java index 8db76d729a..5508a6245e 100644 --- a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/gateway/DataServiceGatewayUnitTest.java +++ b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/gateway/DataServiceGatewayUnitTest.java @@ -1116,8 +1116,7 @@ public class DataServiceGatewayUnitTest extends AbstractUnitTest { } @Test - public void getTableStatistics_emptyBody_fails() throws TableNotFoundException, DataServiceException, - DataServiceConnectionException { + public void getTableStatistics_emptyBody_fails() { /* mock */ when(dataServiceRestTemplate.exchange(anyString(), eq(HttpMethod.GET), eq(HttpEntity.EMPTY), eq(TableStatisticDto.class))) @@ -1125,7 +1124,9 @@ public class DataServiceGatewayUnitTest extends AbstractUnitTest { .build()); /* test */ - dataServiceGateway.getTableStatistics(DATABASE_3_ID, TABLE_8_ID); + assertThrows(DataServiceException.class, () -> { + dataServiceGateway.getTableStatistics(DATABASE_3_ID, TABLE_8_ID); + }); } @Test -- GitLab From c996d961df565c18ff1f6d1e367170d2fa2c4bb9 Mon Sep 17 00:00:00 2001 From: Martin Weise <martin.weise@tuwien.ac.at> Date: Sun, 2 Mar 2025 21:00:03 +0100 Subject: [PATCH 4/5] Fix credentials Signed-off-by: Martin Weise <martin.weise@tuwien.ac.at> --- dbrepo-auth-service/dbrepo-realm.json | 26 +++++----- .../target/create-event-listener.jar | Bin 10140 -> 10140 bytes .../impl/MetadataServiceGatewayImpl.java | 8 ++- .../tuwien/endpoints/ContainerEndpoint.java | 4 +- .../at/tuwien/endpoints/DatabaseEndpoint.java | 5 +- .../endpoints/ContainerEndpointUnitTest.java | 4 +- .../endpoints/DatabaseEndpointUnitTest.java | 46 ++++++++++++++---- dbrepo-ui/components/subset/Builder.vue | 9 ++-- .../[database_id]/subset/[subset_id]/data.vue | 3 +- .../[database_id]/table/[table_id]/data.vue | 3 +- .../[database_id]/view/[view_id]/data.vue | 4 +- helm/dbrepo/files/create-event-listener.jar | Bin 10140 -> 10140 bytes 12 files changed, 78 insertions(+), 34 deletions(-) diff --git a/dbrepo-auth-service/dbrepo-realm.json b/dbrepo-auth-service/dbrepo-realm.json index d3cfcd344c..cd8d8a0e14 100644 --- a/dbrepo-auth-service/dbrepo-realm.json +++ b/dbrepo-auth-service/dbrepo-realm.json @@ -42,7 +42,7 @@ "maxFailureWaitSeconds" : 900, "minimumQuickLoginWaitSeconds" : 60, "waitIncrementSeconds" : 60, - "quickLoginCheckMilliSeconds" : 1000, + "quickLoginCheckMilliSeconds" : 5000, "maxDeltaTimeSeconds" : 1036800, "failureFactor" : 10, "roles" : { @@ -2429,7 +2429,7 @@ "subType" : "anonymous", "subComponents" : { }, "config" : { - "allowed-protocol-mapper-types" : [ "oidc-full-name-mapper", "oidc-sha256-pairwise-sub-mapper", "oidc-usermodel-property-mapper", "saml-user-attribute-mapper", "oidc-address-mapper", "oidc-usermodel-attribute-mapper", "saml-user-property-mapper", "saml-role-list-mapper" ] + "allowed-protocol-mapper-types" : [ "oidc-address-mapper", "saml-user-attribute-mapper", "oidc-full-name-mapper", "saml-user-property-mapper", "oidc-sha256-pairwise-sub-mapper", "saml-role-list-mapper", "oidc-usermodel-property-mapper", "oidc-usermodel-attribute-mapper" ] } }, { "id" : "1849e52a-b8c9-44a8-af3d-ee19376a1ed1", @@ -2455,7 +2455,7 @@ "subType" : "authenticated", "subComponents" : { }, "config" : { - "allowed-protocol-mapper-types" : [ "saml-role-list-mapper", "oidc-full-name-mapper", "oidc-address-mapper", "oidc-usermodel-property-mapper", "saml-user-property-mapper", "oidc-sha256-pairwise-sub-mapper", "saml-user-attribute-mapper", "oidc-usermodel-attribute-mapper" ] + "allowed-protocol-mapper-types" : [ "oidc-full-name-mapper", "saml-role-list-mapper", "oidc-sha256-pairwise-sub-mapper", "oidc-usermodel-property-mapper", "oidc-usermodel-attribute-mapper", "oidc-address-mapper", "saml-user-attribute-mapper", "saml-user-property-mapper" ] } } ], "org.keycloak.userprofile.UserProfileProvider" : [ { @@ -2479,8 +2479,8 @@ "config" : { "ldap.attribute" : [ "createTimestamp" ], "is.mandatory.in.ldap" : [ "false" ], - "always.read.value.from.ldap" : [ "true" ], "read.only" : [ "true" ], + "always.read.value.from.ldap" : [ "true" ], "user.model.attribute" : [ "createTimestamp" ] } }, { @@ -2491,8 +2491,8 @@ "config" : { "ldap.attribute" : [ "sn" ], "is.mandatory.in.ldap" : [ "true" ], - "read.only" : [ "false" ], "always.read.value.from.ldap" : [ "true" ], + "read.only" : [ "false" ], "user.model.attribute" : [ "lastName" ] } }, { @@ -2529,10 +2529,10 @@ "membership.attribute.type" : [ "DN" ], "user.roles.retrieve.strategy" : [ "LOAD_GROUPS_BY_MEMBER_ATTRIBUTE" ], "group.name.ldap.attribute" : [ "cn" ], - "membership.user.ldap.attribute" : [ "uid" ], - "ignore.missing.groups" : [ "false" ], "membership.ldap.attribute" : [ "member" ], "preserve.group.inheritance" : [ "false" ], + "membership.user.ldap.attribute" : [ "uid" ], + "ignore.missing.groups" : [ "false" ], "memberof.ldap.attribute" : [ "memberOf" ], "group.object.classes" : [ "groupOfNames" ], "groups.dn" : [ "ou=users,dc=dbrepo,dc=at" ], @@ -2558,8 +2558,8 @@ "subComponents" : { }, "config" : { "ldap.attribute" : [ "uid" ], - "attribute.force.default" : [ "false" ], "is.mandatory.in.ldap" : [ "true" ], + "attribute.force.default" : [ "false" ], "is.binary.attribute" : [ "false" ], "read.only" : [ "false" ], "always.read.value.from.ldap" : [ "false" ], @@ -2568,8 +2568,8 @@ } ] }, "config" : { - "pagination" : [ "false" ], "fullSyncPeriod" : [ "-1" ], + "pagination" : [ "false" ], "startTls" : [ "false" ], "connectionPooling" : [ "true" ], "usersDn" : [ "ou=users,dc=dbrepo,dc=at" ], @@ -2577,15 +2577,15 @@ "useKerberosForPasswordAuthentication" : [ "false" ], "importEnabled" : [ "true" ], "enabled" : [ "true" ], - "usernameLDAPAttribute" : [ "uid" ], - "changedSyncPeriod" : [ "-1" ], - "bindCredential" : [ "admin" ], "bindDn" : [ "cn=admin,dc=dbrepo,dc=at" ], + "bindCredential" : [ "admin" ], + "changedSyncPeriod" : [ "-1" ], + "usernameLDAPAttribute" : [ "uid" ], "lastSync" : [ "1719252666" ], "vendor" : [ "other" ], "uuidLDAPAttribute" : [ "entryUUID" ], - "connectionUrl" : [ "ldap://identity-service:1389" ], "allowKerberosAuthentication" : [ "false" ], + "connectionUrl" : [ "ldap://identity-service:1389" ], "syncRegistrations" : [ "true" ], "authType" : [ "simple" ], "useTruststoreSpi" : [ "always" ], diff --git a/dbrepo-auth-service/listeners/target/create-event-listener.jar b/dbrepo-auth-service/listeners/target/create-event-listener.jar index e85ae3dc1f44b5261664128d662f50a92be81301..087747d1bce60c75c887a495e51d8b94617624f1 100644 GIT binary patch delta 618 zcmbQ^KgVAvz?+#xgn@yBgF$(DQq<MwHcAtPl<E%#9WoHuTfXf71bGi85w34)6#;Ce zY)5~a-SlcROP!QEalg69TII(p+Er%1IlXWC_MPn6TwjjFU#JYe-NSoSp-+sjG2ru0 z!{qN57NuVI%k}N<Q%$OIIwKvNweO1czb)>f>wF)-5Se*MV?jWty|k8LvQ_zx^_C`E zp322$i^M6_SHBAk|7Da}`qpUMoa^^C|2c7O#ZBD+nY*FCg|xSPF~86HMS9_kKNJ3| zKTq3x>c+H;_r{w1?ac<Q;#XvNq8PmxJd?TE=fx~uQTXC%<h-862_;g~RJUCCd^aKQ zz_<4KvYglKs_I@j99wYd<&N9-4x;mR8*Qt6{ms@+bYZ)V<R||6H<MTWShP({w6t>l zsy9~y%$M+d-gdHemG;iVi?y<Ed~M|LT)AuifsMSg4j-<}v{~p{uD9pdwK<uFGx@k} z0}Dz+RjeeROcuGS<9~dy;h8TYZk|RS-I8<O=f?bedM95>#nL5`mH%RG=F1iqNBO9x ziG^SIK=HuEz`(%(iigP?8C95+mQTLUsK=zdd@?(eJc!a@QUg%|Oxhr-mdO-EZDH~T zsbpk62cj-A_b@3h-yF{}mkC7wW8>ij(L4gRf*{4+inBqKhSC%cSZq%|qGZLSynK?f zDM-J$vK>f4xw1ZpTA^$Pq8=z)gD6=QR}ht=5)D#$P$dLJiL2&;1lv{PK-6<pClIBr Pwi`sfP|E~S!Rnp>a!Uc( delta 618 zcmbQ^KgVAvz?+#xgn@yBgJJcgq^PuO_hTmtDb=6OJ7gfR$NiN35B8ktA2^<by;$ga z!7HHZzQydMi54gBwS4+++Q=pvn#;fK`n`|mDz14OSh>6Z;az)qs%M1%oz{bAlmyah zs(fw;NtwL4w`y(Pg-!b;<_KJl5|^BxZoTi`;!oEf8CbYlUFSLx{%HLyE}w{LQFp>+ zvThZ%Z@b8qUq4Z{{K~X_zO&YB;+*ZT{XC*7Mf=PR<p2qrslS=LO}?1l=lvqRP~zW& z|LV`vwtC!{mhoOllfS+B!cO53c@rr{F9y%tBJRGNwJWy0coI2}hdKYt3H{=X1&^x_ zgfze8+i&$~ZEfM7D~&CVGke+I{*(0jf2Y;#tNZTvACw<fpZINCUw3d_=*je{hAUQ_ zwGLH#KkJs_()rs<wL(Hq$;yQW9$d%W;_r3!A8TLl^*8e8xZiT{-YR}5YWB;?y63Tm zZ2#kbDLj8GEM^^Pu<R=|YKRj_<X4bBQhxF0y<=kG&+9HLoK!k>sk-Cas->cjSYx+T zC?9?x42lOX1_llWP&`cD$f&}!YSQHEjCxF~CrxH&k_S;5Ollx1fJqxf)iRlas4Yz1 zAeD^F=Rnj&<{qZilQze*%w+=6|JZmqK{Ss*tsqEox8iINrJ*#10~Xtpk0@C&t)4VV z*%YMTT-gq!pj=rWM6FOZ15po@twEHmiYtgpQHchrJg5=^qQq76K!WY6aUklssuPIP QR@)7tUZ`b)s9<$Z0EzPyr~m)} diff --git a/dbrepo-data-service/services/src/main/java/at/tuwien/gateway/impl/MetadataServiceGatewayImpl.java b/dbrepo-data-service/services/src/main/java/at/tuwien/gateway/impl/MetadataServiceGatewayImpl.java index cd8cfff2da..053a5eac81 100644 --- a/dbrepo-data-service/services/src/main/java/at/tuwien/gateway/impl/MetadataServiceGatewayImpl.java +++ b/dbrepo-data-service/services/src/main/java/at/tuwien/gateway/impl/MetadataServiceGatewayImpl.java @@ -63,7 +63,7 @@ public class MetadataServiceGatewayImpl implements MetadataServiceGateway { log.error("Failed to find container with id {}: service responded unsuccessful: {}", containerId, response.getStatusCode()); throw new MetadataServiceException("Failed to find container: service responded unsuccessful: " + response.getStatusCode()); } - final List<String> expectedHeaders = List.of("X-Username", "X-Password", "X-Jdbc-Method"); + final List<String> expectedHeaders = List.of("X-Username", "X-Password", "X-Jdbc-Method", "X-Host", "X-Port"); if (!response.getHeaders().keySet().containsAll(expectedHeaders)) { log.error("Failed to find all container headers"); log.debug("expected headers: {}", expectedHeaders); @@ -75,6 +75,8 @@ public class MetadataServiceGatewayImpl implements MetadataServiceGateway { throw new MetadataServiceException("Failed to find container with id " + containerId + ": body is empty"); } final ContainerDto container = metadataMapper.containerDtoToContainerDto(response.getBody()); + container.setHost(response.getHeaders().get("X-Host").get(0)); + container.setPort(Integer.parseInt(response.getHeaders().get("X-Port").get(0))); container.setUsername(response.getHeaders().get("X-Username").get(0)); container.setPassword(response.getHeaders().get("X-Password").get(0)); container.getImage().setJdbcMethod(response.getHeaders().get("X-Jdbc-Method").get(0)); @@ -101,7 +103,7 @@ public class MetadataServiceGatewayImpl implements MetadataServiceGateway { log.error("Failed to find database with id {}: service responded unsuccessful: {}", id, response.getStatusCode()); throw new MetadataServiceException("Failed to find database: service responded unsuccessful: " + response.getStatusCode()); } - final List<String> expectedHeaders = List.of("X-Username", "X-Password", "X-Jdbc-Method"); + final List<String> expectedHeaders = List.of("X-Username", "X-Password", "X-Jdbc-Method", "X-Host", "X-Port"); if (!response.getHeaders().keySet().containsAll(expectedHeaders)) { log.error("Failed to find all database headers"); log.debug("expected headers: {}", expectedHeaders); @@ -113,6 +115,8 @@ public class MetadataServiceGatewayImpl implements MetadataServiceGateway { throw new MetadataServiceException("Failed to find database with id " + id + ": body is empty"); } final DatabaseDto database = response.getBody(); + database.getContainer().setHost(response.getHeaders().get("X-Host").get(0)); + database.getContainer().setPort(Integer.parseInt(response.getHeaders().get("X-Port").get(0))); database.getContainer().setUsername(response.getHeaders().get("X-Username").get(0)); database.getContainer().setPassword(response.getHeaders().get("X-Password").get(0)); database.getContainer().getImage().setJdbcMethod(response.getHeaders().get("X-Jdbc-Method").get(0)); diff --git a/dbrepo-metadata-service/rest-service/src/main/java/at/tuwien/endpoints/ContainerEndpoint.java b/dbrepo-metadata-service/rest-service/src/main/java/at/tuwien/endpoints/ContainerEndpoint.java index dc588c0607..266430372d 100644 --- a/dbrepo-metadata-service/rest-service/src/main/java/at/tuwien/endpoints/ContainerEndpoint.java +++ b/dbrepo-metadata-service/rest-service/src/main/java/at/tuwien/endpoints/ContainerEndpoint.java @@ -138,10 +138,12 @@ public class ContainerEndpoint extends AbstractEndpoint { final HttpHeaders headers = new HttpHeaders(); if (isSystem(principal)) { log.trace("attach privileged credential information"); + headers.set("X-Host", container.getHost()); + headers.set("X-Port", "" + container.getPort()); headers.set("X-Username", container.getPrivilegedUsername()); headers.set("X-Password", container.getPrivilegedPassword()); headers.set("X-Jdbc-Method", container.getImage().getJdbcMethod()); - headers.set("Access-Control-Expose-Headers", "X-Username X-Password X-Jdbc-Method"); + headers.set("Access-Control-Expose-Headers", "X-Username X-Password X-Jdbc-Method X-Host X-Port"); } return ResponseEntity.ok() .headers(headers) diff --git a/dbrepo-metadata-service/rest-service/src/main/java/at/tuwien/endpoints/DatabaseEndpoint.java b/dbrepo-metadata-service/rest-service/src/main/java/at/tuwien/endpoints/DatabaseEndpoint.java index d711f11a04..9eadffd0df 100644 --- a/dbrepo-metadata-service/rest-service/src/main/java/at/tuwien/endpoints/DatabaseEndpoint.java +++ b/dbrepo-metadata-service/rest-service/src/main/java/at/tuwien/endpoints/DatabaseEndpoint.java @@ -555,10 +555,13 @@ public class DatabaseEndpoint extends AbstractEndpoint { final DatabaseDto dto = metadataMapper.databaseToDatabaseDto(database); final HttpHeaders headers = new HttpHeaders(); if (isSystem(principal)) { + log.trace("attach privileged credential information"); + headers.set("X-Host", database.getContainer().getHost()); + headers.set("X-Port", "" + database.getContainer().getPort()); headers.set("X-Username", database.getContainer().getPrivilegedUsername()); headers.set("X-Password", database.getContainer().getPrivilegedPassword()); headers.set("X-Jdbc-Method", database.getContainer().getImage().getJdbcMethod()); - headers.set("Access-Control-Expose-Headers", "X-Username X-Password X-Jdbc-Method"); + headers.set("Access-Control-Expose-Headers", "X-Username X-Password X-Jdbc-Method X-Host X-Port"); } else { removeInternalData(dto.getContainer()); } diff --git a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/ContainerEndpointUnitTest.java b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/ContainerEndpointUnitTest.java index bce95faff5..67078ee409 100644 --- a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/ContainerEndpointUnitTest.java +++ b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/ContainerEndpointUnitTest.java @@ -70,10 +70,12 @@ public class ContainerEndpointUnitTest extends AbstractUnitTest { /* test */ final ResponseEntity<ContainerDto> response = findById_generic(CONTAINER_1_ID, CONTAINER_1, USER_LOCAL_ADMIN_PRINCIPAL); final HttpHeaders headers = response.getHeaders(); + assertEquals(List.of(CONTAINER_1_HOST), headers.get("X-Host")); + assertEquals(List.of("" + CONTAINER_1_PORT), headers.get("X-Port")); assertEquals(List.of(CONTAINER_1_PRIVILEGED_USERNAME), headers.get("X-Username")); assertEquals(List.of(CONTAINER_1_PRIVILEGED_PASSWORD), headers.get("X-Password")); assertEquals(List.of(IMAGE_1_JDBC), headers.get("X-Jdbc-Method")); - assertEquals(List.of("X-Username X-Password X-Jdbc-Method"), headers.get("Access-Control-Expose-Headers")); + assertEquals(List.of("X-Username X-Password X-Jdbc-Method X-Host X-Port"), headers.get("Access-Control-Expose-Headers")); } @Test diff --git a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/DatabaseEndpointUnitTest.java b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/DatabaseEndpointUnitTest.java index fba64ad393..a52a0a8880 100644 --- a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/DatabaseEndpointUnitTest.java +++ b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/DatabaseEndpointUnitTest.java @@ -14,6 +14,7 @@ import org.junit.jupiter.api.extension.ExtendWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.mock.mockito.MockBean; +import org.springframework.http.HttpHeaders; import org.springframework.http.HttpStatus; import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; @@ -591,7 +592,9 @@ public class DatabaseEndpointUnitTest extends AbstractUnitTest { DatabaseNotFoundException { /* test */ - final DatabaseDto database = findById_generic(DATABASE_2_ID, DATABASE_2, null); + final ResponseEntity<DatabaseDto> response = findById_generic(DATABASE_2_ID, DATABASE_2, null); + final DatabaseDto database = response.getBody(); + assertNotNull(database); assertEquals(3, database.getTables().size()); assertEquals(1, database.getViews().size()); assertEquals(0, database.getAccesses().size()); @@ -603,7 +606,9 @@ public class DatabaseEndpointUnitTest extends AbstractUnitTest { DatabaseNotFoundException { /* test */ - final DatabaseDto database = findById_generic(DATABASE_3_ID, DATABASE_3, USER_LOCAL_ADMIN_PRINCIPAL); + final ResponseEntity<DatabaseDto> response = findById_generic(DATABASE_3_ID, DATABASE_3, USER_LOCAL_ADMIN_PRINCIPAL); + final DatabaseDto database = response.getBody(); + assertNotNull(database); assertEquals(1, database.getTables().size()); assertEquals(1, database.getViews().size()); assertNotEquals(0, database.getAccesses().size()); @@ -615,7 +620,9 @@ public class DatabaseEndpointUnitTest extends AbstractUnitTest { DatabaseNotFoundException { /* test */ - final DatabaseDto database = findById_generic(DATABASE_1_ID, DATABASE_1, USER_LOCAL_ADMIN_PRINCIPAL); + final ResponseEntity<DatabaseDto> response = findById_generic(DATABASE_1_ID, DATABASE_1, USER_LOCAL_ADMIN_PRINCIPAL); + final DatabaseDto database = response.getBody(); + assertNotNull(database); assertEquals(4, database.getTables().size()); assertEquals(3, database.getViews().size()); assertNotEquals(0, database.getAccesses().size()); @@ -650,7 +657,9 @@ public class DatabaseEndpointUnitTest extends AbstractUnitTest { .thenReturn(List.of(DATABASE_1_USER_1_WRITE_ALL_ACCESS, DATABASE_1_USER_2_READ_ACCESS)); /* test */ - final DatabaseDto database = findById_generic(DATABASE_1_ID, DATABASE_1, USER_1_PRINCIPAL); + final ResponseEntity<DatabaseDto> response = findById_generic(DATABASE_1_ID, DATABASE_1, USER_1_PRINCIPAL); + final DatabaseDto database = response.getBody(); + assertNotNull(database); assertEquals(4, database.getTables().size()); assertEquals(3, database.getViews().size()); assertEquals(3, database.getAccesses().size()); @@ -665,7 +674,9 @@ public class DatabaseEndpointUnitTest extends AbstractUnitTest { .thenReturn(List.of(DATABASE_1_USER_1_WRITE_ALL_ACCESS, DATABASE_1_USER_2_READ_ACCESS)); /* test */ - final DatabaseDto database = findById_generic(DATABASE_1_ID, DATABASE_1, USER_2_PRINCIPAL); + final ResponseEntity<DatabaseDto> response = findById_generic(DATABASE_1_ID, DATABASE_1, USER_2_PRINCIPAL); + final DatabaseDto database = response.getBody(); + assertNotNull(database); assertEquals(4, database.getTables().size()); assertEquals(3, database.getViews().size()); assertEquals(0, database.getAccesses().size()); @@ -680,7 +691,9 @@ public class DatabaseEndpointUnitTest extends AbstractUnitTest { .thenReturn(List.of(DATABASE_1_USER_1_WRITE_ALL_ACCESS, DATABASE_1_USER_2_READ_ACCESS)); /* test */ - final DatabaseDto database = findById_generic(DATABASE_1_ID, DATABASE_1, USER_1_PRINCIPAL); + final ResponseEntity<DatabaseDto> response = findById_generic(DATABASE_1_ID, DATABASE_1, USER_1_PRINCIPAL); + final DatabaseDto database = response.getBody(); + assertNotNull(database); assertEquals(4, database.getTables().size()); assertEquals(3, database.getViews().size()); assertEquals(3, database.getAccesses().size()); @@ -706,6 +719,21 @@ public class DatabaseEndpointUnitTest extends AbstractUnitTest { }); } + @Test + @WithMockUser(username = USER_LOCAL_ADMIN_USERNAME) + public void findById_system_succeeds() throws NotAllowedException, DatabaseNotFoundException { + + /* test */ + final ResponseEntity<DatabaseDto> response = findById_generic(DATABASE_1_ID, DATABASE_1, USER_LOCAL_ADMIN_PRINCIPAL); + final HttpHeaders headers = response.getHeaders(); + assertEquals(List.of(CONTAINER_1_HOST), headers.get("X-Host")); + assertEquals(List.of("" + CONTAINER_1_PORT), headers.get("X-Port")); + assertEquals(List.of(CONTAINER_1_PRIVILEGED_USERNAME), headers.get("X-Username")); + assertEquals(List.of(CONTAINER_1_PRIVILEGED_PASSWORD), headers.get("X-Password")); + assertEquals(List.of(IMAGE_1_JDBC), headers.get("X-Jdbc-Method")); + assertEquals(List.of("X-Username X-Password X-Jdbc-Method X-Host X-Port"), headers.get("Access-Control-Expose-Headers")); + } + @Test @WithAnonymousUser public void findPreviewImage_anonymous_succeeds() throws DatabaseNotFoundException { @@ -806,7 +834,7 @@ public class DatabaseEndpointUnitTest extends AbstractUnitTest { assertNotNull(response.getBody()); } - public DatabaseDto findById_generic(UUID databaseId, Database database, Principal principal) + public ResponseEntity<DatabaseDto> findById_generic(UUID databaseId, Database database, Principal principal) throws DatabaseNotFoundException, NotAllowedException { /* mock */ @@ -822,9 +850,7 @@ public class DatabaseEndpointUnitTest extends AbstractUnitTest { /* test */ final ResponseEntity<DatabaseDto> response = databaseEndpoint.findById(databaseId, principal); assertEquals(HttpStatus.OK, response.getStatusCode()); - final DatabaseDto body = response.getBody(); - assertNotNull(body); - return body; + return response; } public ResponseEntity<byte[]> findPreviewImage_generic(UUID databaseId, Database database) diff --git a/dbrepo-ui/components/subset/Builder.vue b/dbrepo-ui/components/subset/Builder.vue index 60f9568a3f..52fff4c4df 100644 --- a/dbrepo-ui/components/subset/Builder.vue +++ b/dbrepo-ui/components/subset/Builder.vue @@ -496,10 +496,13 @@ export default { } }, canExecute () { - if (this.isView) { - return this.view.name !== null && this.view.is_public !== null && this.subset !== null + if (this.subset === null || !this.subset.columns || this.subset.columns.length === 0 || !this.$refs.form.isValid) { + return false + } + if (!this.isView) { + return true } - return this.subset !== null && this.subset.columns && this.subset.columns.length > 0 && this.$refs.form.isValid + return this.view.name !== null && this.view.is_public !== null }, inputVariant () { const runtimeConfig = useRuntimeConfig() diff --git a/dbrepo-ui/pages/database/[database_id]/subset/[subset_id]/data.vue b/dbrepo-ui/pages/database/[database_id]/subset/[subset_id]/data.vue index 682fc59b98..778de1dd96 100644 --- a/dbrepo-ui/pages/database/[database_id]/subset/[subset_id]/data.vue +++ b/dbrepo-ui/pages/database/[database_id]/subset/[subset_id]/data.vue @@ -36,7 +36,8 @@ </v-toolbar> <v-card v-if="subset" - tile> + rounded="0" + variant="flat"> <QueryResults id="query-results" ref="queryResults" diff --git a/dbrepo-ui/pages/database/[database_id]/table/[table_id]/data.vue b/dbrepo-ui/pages/database/[database_id]/table/[table_id]/data.vue index 75e9537007..d02449472e 100644 --- a/dbrepo-ui/pages/database/[database_id]/table/[table_id]/data.vue +++ b/dbrepo-ui/pages/database/[database_id]/table/[table_id]/data.vue @@ -61,7 +61,8 @@ </v-card-text> </v-card> <v-card - tile> + rounded="0" + variant="flat"> <QueryResults id="query-results" ref="queryResults" diff --git a/dbrepo-ui/pages/database/[database_id]/view/[view_id]/data.vue b/dbrepo-ui/pages/database/[database_id]/view/[view_id]/data.vue index 43e8f491d9..68013c5b95 100644 --- a/dbrepo-ui/pages/database/[database_id]/view/[view_id]/data.vue +++ b/dbrepo-ui/pages/database/[database_id]/view/[view_id]/data.vue @@ -22,7 +22,9 @@ :loading="loadingData" @click="reload" /> </v-toolbar> - <v-card tile> + <v-card + rounded="0" + variant="flat"> <QueryResults id="query-results" ref="queryResults" diff --git a/helm/dbrepo/files/create-event-listener.jar b/helm/dbrepo/files/create-event-listener.jar index e85ae3dc1f44b5261664128d662f50a92be81301..087747d1bce60c75c887a495e51d8b94617624f1 100644 GIT binary patch delta 618 zcmbQ^KgVAvz?+#xgn@yBgF$(DQq<MwHcAtPl<E%#9WoHuTfXf71bGi85w34)6#;Ce zY)5~a-SlcROP!QEalg69TII(p+Er%1IlXWC_MPn6TwjjFU#JYe-NSoSp-+sjG2ru0 z!{qN57NuVI%k}N<Q%$OIIwKvNweO1czb)>f>wF)-5Se*MV?jWty|k8LvQ_zx^_C`E zp322$i^M6_SHBAk|7Da}`qpUMoa^^C|2c7O#ZBD+nY*FCg|xSPF~86HMS9_kKNJ3| zKTq3x>c+H;_r{w1?ac<Q;#XvNq8PmxJd?TE=fx~uQTXC%<h-862_;g~RJUCCd^aKQ zz_<4KvYglKs_I@j99wYd<&N9-4x;mR8*Qt6{ms@+bYZ)V<R||6H<MTWShP({w6t>l zsy9~y%$M+d-gdHemG;iVi?y<Ed~M|LT)AuifsMSg4j-<}v{~p{uD9pdwK<uFGx@k} z0}Dz+RjeeROcuGS<9~dy;h8TYZk|RS-I8<O=f?bedM95>#nL5`mH%RG=F1iqNBO9x ziG^SIK=HuEz`(%(iigP?8C95+mQTLUsK=zdd@?(eJc!a@QUg%|Oxhr-mdO-EZDH~T zsbpk62cj-A_b@3h-yF{}mkC7wW8>ij(L4gRf*{4+inBqKhSC%cSZq%|qGZLSynK?f zDM-J$vK>f4xw1ZpTA^$Pq8=z)gD6=QR}ht=5)D#$P$dLJiL2&;1lv{PK-6<pClIBr Pwi`sfP|E~S!Rnp>a!Uc( delta 618 zcmbQ^KgVAvz?+#xgn@yBgJJcgq^PuO_hTmtDb=6OJ7gfR$NiN35B8ktA2^<by;$ga z!7HHZzQydMi54gBwS4+++Q=pvn#;fK`n`|mDz14OSh>6Z;az)qs%M1%oz{bAlmyah zs(fw;NtwL4w`y(Pg-!b;<_KJl5|^BxZoTi`;!oEf8CbYlUFSLx{%HLyE}w{LQFp>+ zvThZ%Z@b8qUq4Z{{K~X_zO&YB;+*ZT{XC*7Mf=PR<p2qrslS=LO}?1l=lvqRP~zW& z|LV`vwtC!{mhoOllfS+B!cO53c@rr{F9y%tBJRGNwJWy0coI2}hdKYt3H{=X1&^x_ zgfze8+i&$~ZEfM7D~&CVGke+I{*(0jf2Y;#tNZTvACw<fpZINCUw3d_=*je{hAUQ_ zwGLH#KkJs_()rs<wL(Hq$;yQW9$d%W;_r3!A8TLl^*8e8xZiT{-YR}5YWB;?y63Tm zZ2#kbDLj8GEM^^Pu<R=|YKRj_<X4bBQhxF0y<=kG&+9HLoK!k>sk-Cas->cjSYx+T zC?9?x42lOX1_llWP&`cD$f&}!YSQHEjCxF~CrxH&k_S;5Ollx1fJqxf)iRlas4Yz1 zAeD^F=Rnj&<{qZilQze*%w+=6|JZmqK{Ss*tsqEox8iINrJ*#10~Xtpk0@C&t)4VV z*%YMTT-gq!pj=rWM6FOZ15po@twEHmiYtgpQHchrJg5=^qQq76K!WY6aUklssuPIP QR@)7tUZ`b)s9<$Z0EzPyr~m)} -- GitLab From 54fd503b09d00f697cac7901ccd69f5d9d27ade3 Mon Sep 17 00:00:00 2001 From: Martin Weise <martin.weise@tuwien.ac.at> Date: Sun, 2 Mar 2025 21:43:33 +0100 Subject: [PATCH 5/5] Fixed test Signed-off-by: Martin Weise <martin.weise@tuwien.ac.at> --- .../tuwien/gateway/MetadataServiceGatewayUnitTest.java | 6 ++++++ .../tuwien/gateway/impl/MetadataServiceGatewayImpl.java | 4 ++-- .../mvc/AuthenticationPrivilegedIntegrationMvcTest.java | 9 ++++++--- 3 files changed, 14 insertions(+), 5 deletions(-) diff --git a/dbrepo-data-service/rest-service/src/test/java/at/tuwien/gateway/MetadataServiceGatewayUnitTest.java b/dbrepo-data-service/rest-service/src/test/java/at/tuwien/gateway/MetadataServiceGatewayUnitTest.java index d07123796c..1ea87d2fc1 100644 --- a/dbrepo-data-service/rest-service/src/test/java/at/tuwien/gateway/MetadataServiceGatewayUnitTest.java +++ b/dbrepo-data-service/rest-service/src/test/java/at/tuwien/gateway/MetadataServiceGatewayUnitTest.java @@ -126,9 +126,12 @@ public class MetadataServiceGatewayUnitTest extends AbstractUnitTest { public void getDatabaseById_succeeds() throws RemoteUnavailableException, MetadataServiceException, DatabaseNotFoundException { final HttpHeaders headers = new HttpHeaders(); + headers.set("X-Host", CONTAINER_1_HOST); + headers.set("X-Port", "" + CONTAINER_1_PORT); headers.set("X-Username", CONTAINER_1_PRIVILEGED_USERNAME); headers.set("X-Password", CONTAINER_1_PRIVILEGED_PASSWORD); headers.set("X-Jdbc-Method", IMAGE_1_JDBC); + headers.set("Access-Control-Expose-Headers", "X-Username X-Password X-Jdbc-Method X-Host X-Port"); /* mock */ when(internalRestTemplate.exchange(anyString(), eq(HttpMethod.GET), eq(HttpEntity.EMPTY), eq(DatabaseDto.class))) @@ -225,9 +228,12 @@ public class MetadataServiceGatewayUnitTest extends AbstractUnitTest { @Test public void getContainerById_succeeds() throws RemoteUnavailableException, ContainerNotFoundException, MetadataServiceException { final HttpHeaders headers = new HttpHeaders(); + headers.set("X-Host", CONTAINER_1_HOST); + headers.set("X-Port", "" + CONTAINER_1_PORT); headers.set("X-Username", CONTAINER_1_PRIVILEGED_USERNAME); headers.set("X-Password", CONTAINER_1_PRIVILEGED_PASSWORD); headers.set("X-Jdbc-Method", IMAGE_1_JDBC); + headers.set("Access-Control-Expose-Headers", "X-Username X-Password X-Jdbc-Method X-Host X-Port"); /* mock */ when(internalRestTemplate.exchange(anyString(), eq(HttpMethod.GET), eq(HttpEntity.EMPTY), eq(ContainerDto.class))) diff --git a/dbrepo-data-service/services/src/main/java/at/tuwien/gateway/impl/MetadataServiceGatewayImpl.java b/dbrepo-data-service/services/src/main/java/at/tuwien/gateway/impl/MetadataServiceGatewayImpl.java index 053a5eac81..ab0ab9dea5 100644 --- a/dbrepo-data-service/services/src/main/java/at/tuwien/gateway/impl/MetadataServiceGatewayImpl.java +++ b/dbrepo-data-service/services/src/main/java/at/tuwien/gateway/impl/MetadataServiceGatewayImpl.java @@ -65,10 +65,10 @@ public class MetadataServiceGatewayImpl implements MetadataServiceGateway { } final List<String> expectedHeaders = List.of("X-Username", "X-Password", "X-Jdbc-Method", "X-Host", "X-Port"); if (!response.getHeaders().keySet().containsAll(expectedHeaders)) { - log.error("Failed to find all container headers"); + log.error("Failed to find all container headers"); log.debug("expected headers: {}", expectedHeaders); log.debug("found headers: {}", response.getHeaders().keySet()); - throw new MetadataServiceException("Failed to find all container headers"); + throw new MetadataServiceException("Failed to find all container headers"); } if (response.getBody() == null) { log.error("Failed to find container with id {}: body is empty", containerId); diff --git a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/mvc/AuthenticationPrivilegedIntegrationMvcTest.java b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/mvc/AuthenticationPrivilegedIntegrationMvcTest.java index 91194375d0..e6535ccf19 100644 --- a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/mvc/AuthenticationPrivilegedIntegrationMvcTest.java +++ b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/mvc/AuthenticationPrivilegedIntegrationMvcTest.java @@ -1,7 +1,6 @@ package at.tuwien.mvc; import at.tuwien.api.keycloak.TokenDto; -import at.tuwien.entities.database.View; import at.tuwien.exception.AuthServiceConnectionException; import at.tuwien.exception.AuthServiceException; import at.tuwien.exception.CredentialsInvalidException; @@ -112,10 +111,12 @@ public class AuthenticationPrivilegedIntegrationMvcTest extends AbstractUnitTest /* test */ this.mockMvc.perform(get("/api/database/" + DATABASE_1_ID).with(httpBasic(USER_LOCAL_ADMIN_USERNAME, USER_LOCAL_ADMIN_PASSWORD))) .andDo(print()) + .andExpect(header().string("X-Host", CONTAINER_1_HOST)) + .andExpect(header().string("X-Port", "" + CONTAINER_1_PORT)) .andExpect(header().string("X-Username", CONTAINER_1_PRIVILEGED_USERNAME)) .andExpect(header().string("X-Password", CONTAINER_1_PRIVILEGED_PASSWORD)) .andExpect(header().string("X-Jdbc-Method", IMAGE_1_JDBC)) - .andExpect(header().string("Access-Control-Expose-Headers", "X-Username X-Password X-Jdbc-Method")) + .andExpect(header().string("Access-Control-Expose-Headers", "X-Username X-Password X-Jdbc-Method X-Host X-Port")) .andExpect(status().isOk()); } @@ -129,10 +130,12 @@ public class AuthenticationPrivilegedIntegrationMvcTest extends AbstractUnitTest /* test */ this.mockMvc.perform(get("/api/database/" + DATABASE_1_ID).header("Authorization", "Bearer " + jwt.getAccessToken())) .andDo(print()) + .andExpect(header().string("X-Host", CONTAINER_1_HOST)) + .andExpect(header().string("X-Port", "" + CONTAINER_1_PORT)) .andExpect(header().string("X-Username", CONTAINER_1_PRIVILEGED_USERNAME)) .andExpect(header().string("X-Password", CONTAINER_1_PRIVILEGED_PASSWORD)) .andExpect(header().string("X-Jdbc-Method", IMAGE_1_JDBC)) - .andExpect(header().string("Access-Control-Expose-Headers", "X-Username X-Password X-Jdbc-Method")) + .andExpect(header().string("Access-Control-Expose-Headers", "X-Username X-Password X-Jdbc-Method X-Host X-Port")) .andExpect(status().isOk()); } -- GitLab