├── .env.example
├── .gitignore
├── .nvmrc
├── LICENSE
├── README.md
├── components
├── FileUploader.tsx
└── MultipartFileUploader.tsx
├── next-env.d.ts
├── package-lock.json
├── package.json
├── pages
├── api
│ ├── multipart-upload
│ │ └── [endpoint].ts
│ └── upload.ts
└── index.tsx
├── public
├── favicon.ico
└── vercel.svg
├── styles
├── Home.module.css
└── globals.css
└── tsconfig.json
/.env.example:
--------------------------------------------------------------------------------
1 | R2_ACCOUNT_ID=
2 | R2_ACCESS_KEY_ID=
3 | R2_SECRET_KEY_ID=
4 | R2_BUCKET_NAME=
5 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 | /.pnp
6 | .pnp.js
7 |
8 | # testing
9 | /coverage
10 |
11 | # next.js
12 | /.next/
13 | /out/
14 |
15 | # production
16 | /build
17 |
18 | # misc
19 | .DS_Store
20 |
21 | # debug
22 | npm-debug.log*
23 | yarn-debug.log*
24 | yarn-error.log*
25 |
26 | # local env files
27 | .env.local
28 | .env.development.local
29 | .env.test.local
30 | .env.production.local
31 |
--------------------------------------------------------------------------------
/.nvmrc:
--------------------------------------------------------------------------------
1 | 18
2 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2024 Datopian
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Cloudflare R2 bucket File Uploader
2 |
3 | A minimal and flexible uploader component tailored for Cloudflare R2 bucket. It supports multipart upload and was tested with files up to ~10 GB size. Fully compatible with [PortalJS](https://portaljs.com/).
4 |
5 | - R2 blob storage support (or any S3 API compatible storage)
6 | - Tested with ~10 GB files
7 | - ~~File content hashing~~ Removed to improve performance.
8 | - Drag and drop
9 | - URL pre-signing
10 | - Multipart upload support
11 | - Customizable
12 |
13 |
14 |
15 | The intent of this repo is to provide simple to use and simple to copy and paste file uploader component for Next.js.
16 |
17 | The file uploader components use [Uppy](https://uppy.io/) under the hood and are accompanied by the necessary API routes.
18 |
19 | The components were written mainly to be used with R2 but any blob storage with a S3-compatible API should work with just a few tweaks.
20 |
21 | Good for simple projects or for bootstrapping more complex file-uploading workflows when customized.
22 |
23 | ## Setup
24 |
25 | This repo provides two different sets of component and API routes, one for simple uploads and the other for multipart uploads. If your application is meant to handle large files, multipart upload is the recommended approach. Choose one and follow the instructions below.
26 |
27 | ### Install the dependencies
28 |
29 | On your project, run:
30 |
31 | ```bash
32 | npm i @uppy/core @uppy/react @uppy/aws-s3 @uppy/dashboard @uppy/drag-drop @uppy/progress-bar @uppy/file-input crypto-hash @aws-sdk/client-s3 @aws-sdk/s3-request-presigner
33 | ```
34 |
35 | If you want to use the multipart upload component, one more dependency is required:
36 |
37 | ```bash
38 | npm i @uppy/aws-s3-multipart
39 | ```
40 |
41 | ### Copy the component and the API routes into your project
42 |
43 | #### Simple upload
44 |
45 | Copy the following file to the components folder of your project:
46 |
47 | https://github.com/datopian/r2-bucket-uploader/blob/main/components/FileUploader.tsx
48 |
49 | Next, copy the following file into your project's `pages/api/` folder:
50 |
51 | https://github.com/datopian/r2-bucket-uploader/blob/main/pages/api/upload.ts
52 |
53 | #### Multipart upload
54 |
55 | Copy the following file to the components folder of your project:
56 |
57 | https://github.com/datopian/r2-bucket-uploader/blob/main/components/MultipartFileUploader.tsx
58 |
59 | Next, copy the following folder into your project's `pages/api/` folder:
60 |
61 | https://github.com/datopian/r2-bucket-uploader/blob/main/pages/api/multipart-upload
62 |
63 | ### Set the environment variables
64 |
65 | In your `.env` file, set the following environment variables:
66 |
67 | ```bash
68 | R2_ACCOUNT_ID=
69 | R2_ACCESS_KEY_ID=
70 | R2_SECRET_KEY_ID=
71 | R2_BUCKET_NAME=
72 | ```
73 |
74 | The values should be available from the R2 management dashboard on Cloudflare.
75 |
76 | ### Set the CORS settings for the R2 bucket
77 |
78 | Create the following CORS settings in order to make the upload components work with your bucket:
79 |
80 | ```json
81 | [
82 | {
83 | "AllowedOrigins": ["*"],
84 | "AllowedMethods": ["GET", "PUT"],
85 | "AllowedHeaders": ["Authorization", "content-type"],
86 | "ExposeHeaders": ["ETag", "Location"],
87 | "MaxAgeSeconds": 3000
88 | },
89 | {
90 | "AllowedOrigins": ["*"],
91 | "AllowedMethods": ["GET"],
92 | "AllowedHeaders": ["*"]
93 | }
94 | ]
95 | ```
96 |
97 | Optionally, to increase security you can also customize the `AllowedOrigins` properties.
98 |
99 | ### Use the component
100 |
101 | Now you can import ` ` or ` ` anywhere in your project. E.g.:
102 |
103 | ```jsx
104 | // pages/index.js
105 | import FileUploader from "@components/FileUploader";
106 | import MultipartFileUploader from "@components/MultipartFileUploader";
107 |
108 | export default function Home() {
109 | return (
110 |
111 |
Upload an image:
112 |
113 | alert(JSON.stringify(result))}
115 | />
116 |
117 | {/* OR */}
118 |
119 | alert(JSON.stringify(result))}
121 | />
122 |
123 | );
124 | }
125 | ```
126 |
--------------------------------------------------------------------------------
/components/FileUploader.tsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import Uppy, { type UploadResult, UppyFile } from "@uppy/core";
3 | import AwsS3, { type AwsS3UploadParameters } from "@uppy/aws-s3";
4 | import { Dashboard } from "@uppy/react";
5 | import { sha256 } from "crypto-hash";
6 |
7 | // Uppy styles
8 | import "@uppy/core/dist/style.min.css";
9 | import "@uppy/dashboard/dist/style.min.css";
10 |
11 | export async function getUploadParameters(file: UppyFile) {
12 | const response = await fetch("/api/upload", {
13 | method: "POST",
14 | headers: {
15 | accept: "application/json",
16 | },
17 | body: JSON.stringify({
18 | filename: file.name,
19 | contentType: file.type,
20 | }),
21 | });
22 | if (!response.ok) throw new Error("Unsuccessful request");
23 |
24 | // Parse the JSON response.
25 | // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
26 | const data: { url: string; method: "PUT" } = await response.json();
27 |
28 | // Return an object in the correct shape.
29 | const object: AwsS3UploadParameters = {
30 | method: data.method,
31 | url: data.url,
32 | fields: {}, // For presigned PUT uploads, this should be left empty.
33 | // Provide content type header required by S3
34 | headers: {
35 | "Content-Type": file.type ? file.type : "application/octet-stream",
36 | },
37 | };
38 | return object;
39 | }
40 |
41 | export function FileUploader({
42 | onUploadSuccess,
43 | }: {
44 | onUploadSuccess: (result: UploadResult) => void;
45 | }) {
46 | const uppy = React.useMemo(() => {
47 | const uppy = new Uppy({
48 | autoProceed: true,
49 | restrictions: {
50 | maxNumberOfFiles: 3,
51 | },
52 | }).use(AwsS3, {
53 | id: "AwsS3",
54 | getUploadParameters: (file: UppyFile) => getUploadParameters(file),
55 | });
56 | return uppy;
57 | }, []);
58 | uppy.on("complete", (result) => {
59 | onUploadSuccess(result);
60 | });
61 | return ;
62 | }
63 |
--------------------------------------------------------------------------------
/components/MultipartFileUploader.tsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import Uppy, { type UploadResult } from "@uppy/core";
3 | import { Dashboard } from "@uppy/react";
4 | import AwsS3Multipart from "@uppy/aws-s3-multipart";
5 |
6 | // Uppy styles
7 | import "@uppy/core/dist/style.min.css";
8 | import "@uppy/dashboard/dist/style.min.css";
9 |
10 | const fetchUploadApiEndpoint = async (endpoint: string, data: any) => {
11 | const res = await fetch(`/api/multipart-upload/${endpoint}`, {
12 | method: "POST",
13 | body: JSON.stringify(data),
14 | headers: {
15 | accept: "application/json",
16 | "Content-Type": "application/json",
17 | },
18 | });
19 |
20 | return res.json();
21 | };
22 |
23 | export function MultipartFileUploader({
24 | onUploadSuccess,
25 | }: {
26 | onUploadSuccess: (result: UploadResult) => void;
27 | }) {
28 | const uppy = React.useMemo(() => {
29 | const uppy = new Uppy({
30 | autoProceed: true,
31 | }).use(AwsS3Multipart, {
32 | createMultipartUpload: async (file) => {
33 | const contentType = file.type;
34 | return fetchUploadApiEndpoint("create-multipart-upload", {
35 | file,
36 | contentType,
37 | });
38 | },
39 | listParts: (file, props) =>
40 | fetchUploadApiEndpoint("list-parts", { file, ...props }),
41 | signPart: (file, props) =>
42 | fetchUploadApiEndpoint("sign-part", { file, ...props }),
43 | abortMultipartUpload: (file, props) =>
44 | fetchUploadApiEndpoint("abort-multipart-upload", { file, ...props }),
45 | completeMultipartUpload: (file, props) =>
46 | fetchUploadApiEndpoint("complete-multipart-upload", { file, ...props }),
47 | });
48 | return uppy;
49 | }, []);
50 | uppy.on("complete", (result) => {
51 | onUploadSuccess(result);
52 | });
53 | uppy.on("upload-success", (file, response) => {
54 | uppy.setFileState(file.id, {
55 | progress: uppy.getState().files[file.id].progress,
56 | uploadURL: response.body.Location,
57 | response: response,
58 | isPaused: false,
59 | });
60 | });
61 |
62 | return ;
63 | }
64 |
--------------------------------------------------------------------------------
/next-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | ///
3 |
4 | // NOTE: This file should not be edited
5 | // see https://nextjs.org/docs/basic-features/typescript for more information.
6 |
--------------------------------------------------------------------------------
/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "r2-bucket-uploader",
3 | "lockfileVersion": 2,
4 | "requires": true,
5 | "packages": {
6 | "": {
7 | "dependencies": {
8 | "@aws-sdk/client-s3": "^3.410.0",
9 | "@aws-sdk/s3-request-presigner": "^3.410.0",
10 | "@uppy/aws-s3": "^3.3.0",
11 | "@uppy/aws-s3-multipart": "^3.6.0",
12 | "@uppy/core": "^3.5.0",
13 | "@uppy/dashboard": "^3.5.2",
14 | "@uppy/drag-drop": "^3.0.3",
15 | "@uppy/file-input": "^3.0.3",
16 | "@uppy/progress-bar": "^3.0.3",
17 | "@uppy/react": "^3.1.3",
18 | "crypto-hash": "^2.0.1",
19 | "next": "latest",
20 | "react": "18.2.0",
21 | "react-dom": "18.2.0"
22 | },
23 | "devDependencies": {
24 | "@types/node": "20.6.0",
25 | "@types/react": "18.2.21",
26 | "typescript": "5.2.2"
27 | },
28 | "engines": {
29 | "node": ">=18"
30 | }
31 | },
32 | "node_modules/@aws-crypto/crc32": {
33 | "version": "3.0.0",
34 | "resolved": "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-3.0.0.tgz",
35 | "integrity": "sha512-IzSgsrxUcsrejQbPVilIKy16kAT52EwB6zSaI+M3xxIhKh5+aldEyvI+z6erM7TCLB2BJsFrtHjp6/4/sr+3dA==",
36 | "dependencies": {
37 | "@aws-crypto/util": "^3.0.0",
38 | "@aws-sdk/types": "^3.222.0",
39 | "tslib": "^1.11.1"
40 | }
41 | },
42 | "node_modules/@aws-crypto/crc32/node_modules/tslib": {
43 | "version": "1.14.1",
44 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
45 | "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
46 | },
47 | "node_modules/@aws-crypto/crc32c": {
48 | "version": "3.0.0",
49 | "resolved": "https://registry.npmjs.org/@aws-crypto/crc32c/-/crc32c-3.0.0.tgz",
50 | "integrity": "sha512-ENNPPManmnVJ4BTXlOjAgD7URidbAznURqD0KvfREyc4o20DPYdEldU1f5cQ7Jbj0CJJSPaMIk/9ZshdB3210w==",
51 | "dependencies": {
52 | "@aws-crypto/util": "^3.0.0",
53 | "@aws-sdk/types": "^3.222.0",
54 | "tslib": "^1.11.1"
55 | }
56 | },
57 | "node_modules/@aws-crypto/crc32c/node_modules/tslib": {
58 | "version": "1.14.1",
59 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
60 | "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
61 | },
62 | "node_modules/@aws-crypto/ie11-detection": {
63 | "version": "3.0.0",
64 | "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz",
65 | "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==",
66 | "dependencies": {
67 | "tslib": "^1.11.1"
68 | }
69 | },
70 | "node_modules/@aws-crypto/ie11-detection/node_modules/tslib": {
71 | "version": "1.14.1",
72 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
73 | "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
74 | },
75 | "node_modules/@aws-crypto/sha1-browser": {
76 | "version": "3.0.0",
77 | "resolved": "https://registry.npmjs.org/@aws-crypto/sha1-browser/-/sha1-browser-3.0.0.tgz",
78 | "integrity": "sha512-NJth5c997GLHs6nOYTzFKTbYdMNA6/1XlKVgnZoaZcQ7z7UJlOgj2JdbHE8tiYLS3fzXNCguct77SPGat2raSw==",
79 | "dependencies": {
80 | "@aws-crypto/ie11-detection": "^3.0.0",
81 | "@aws-crypto/supports-web-crypto": "^3.0.0",
82 | "@aws-crypto/util": "^3.0.0",
83 | "@aws-sdk/types": "^3.222.0",
84 | "@aws-sdk/util-locate-window": "^3.0.0",
85 | "@aws-sdk/util-utf8-browser": "^3.0.0",
86 | "tslib": "^1.11.1"
87 | }
88 | },
89 | "node_modules/@aws-crypto/sha1-browser/node_modules/tslib": {
90 | "version": "1.14.1",
91 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
92 | "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
93 | },
94 | "node_modules/@aws-crypto/sha256-browser": {
95 | "version": "3.0.0",
96 | "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz",
97 | "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==",
98 | "dependencies": {
99 | "@aws-crypto/ie11-detection": "^3.0.0",
100 | "@aws-crypto/sha256-js": "^3.0.0",
101 | "@aws-crypto/supports-web-crypto": "^3.0.0",
102 | "@aws-crypto/util": "^3.0.0",
103 | "@aws-sdk/types": "^3.222.0",
104 | "@aws-sdk/util-locate-window": "^3.0.0",
105 | "@aws-sdk/util-utf8-browser": "^3.0.0",
106 | "tslib": "^1.11.1"
107 | }
108 | },
109 | "node_modules/@aws-crypto/sha256-browser/node_modules/tslib": {
110 | "version": "1.14.1",
111 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
112 | "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
113 | },
114 | "node_modules/@aws-crypto/sha256-js": {
115 | "version": "3.0.0",
116 | "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz",
117 | "integrity": "sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==",
118 | "dependencies": {
119 | "@aws-crypto/util": "^3.0.0",
120 | "@aws-sdk/types": "^3.222.0",
121 | "tslib": "^1.11.1"
122 | }
123 | },
124 | "node_modules/@aws-crypto/sha256-js/node_modules/tslib": {
125 | "version": "1.14.1",
126 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
127 | "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
128 | },
129 | "node_modules/@aws-crypto/supports-web-crypto": {
130 | "version": "3.0.0",
131 | "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz",
132 | "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==",
133 | "dependencies": {
134 | "tslib": "^1.11.1"
135 | }
136 | },
137 | "node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": {
138 | "version": "1.14.1",
139 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
140 | "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
141 | },
142 | "node_modules/@aws-crypto/util": {
143 | "version": "3.0.0",
144 | "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz",
145 | "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==",
146 | "dependencies": {
147 | "@aws-sdk/types": "^3.222.0",
148 | "@aws-sdk/util-utf8-browser": "^3.0.0",
149 | "tslib": "^1.11.1"
150 | }
151 | },
152 | "node_modules/@aws-crypto/util/node_modules/tslib": {
153 | "version": "1.14.1",
154 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
155 | "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
156 | },
157 | "node_modules/@aws-sdk/client-s3": {
158 | "version": "3.410.0",
159 | "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.410.0.tgz",
160 | "integrity": "sha512-9pInvFl3xgk+CnbHFZVk0wAicZUiokIGQ05e/ZDBHjiWK5ph/XeQ4CCTuh7JxT0yABNhua8/6txsyq/uNXOzoA==",
161 | "dependencies": {
162 | "@aws-crypto/sha1-browser": "3.0.0",
163 | "@aws-crypto/sha256-browser": "3.0.0",
164 | "@aws-crypto/sha256-js": "3.0.0",
165 | "@aws-sdk/client-sts": "3.410.0",
166 | "@aws-sdk/credential-provider-node": "3.410.0",
167 | "@aws-sdk/middleware-bucket-endpoint": "3.410.0",
168 | "@aws-sdk/middleware-expect-continue": "3.410.0",
169 | "@aws-sdk/middleware-flexible-checksums": "3.410.0",
170 | "@aws-sdk/middleware-host-header": "3.410.0",
171 | "@aws-sdk/middleware-location-constraint": "3.410.0",
172 | "@aws-sdk/middleware-logger": "3.410.0",
173 | "@aws-sdk/middleware-recursion-detection": "3.410.0",
174 | "@aws-sdk/middleware-sdk-s3": "3.410.0",
175 | "@aws-sdk/middleware-signing": "3.410.0",
176 | "@aws-sdk/middleware-ssec": "3.410.0",
177 | "@aws-sdk/middleware-user-agent": "3.410.0",
178 | "@aws-sdk/signature-v4-multi-region": "3.410.0",
179 | "@aws-sdk/types": "3.410.0",
180 | "@aws-sdk/util-endpoints": "3.410.0",
181 | "@aws-sdk/util-user-agent-browser": "3.410.0",
182 | "@aws-sdk/util-user-agent-node": "3.410.0",
183 | "@aws-sdk/xml-builder": "3.310.0",
184 | "@smithy/config-resolver": "^2.0.7",
185 | "@smithy/eventstream-serde-browser": "^2.0.6",
186 | "@smithy/eventstream-serde-config-resolver": "^2.0.6",
187 | "@smithy/eventstream-serde-node": "^2.0.6",
188 | "@smithy/fetch-http-handler": "^2.1.2",
189 | "@smithy/hash-blob-browser": "^2.0.6",
190 | "@smithy/hash-node": "^2.0.6",
191 | "@smithy/hash-stream-node": "^2.0.6",
192 | "@smithy/invalid-dependency": "^2.0.6",
193 | "@smithy/md5-js": "^2.0.6",
194 | "@smithy/middleware-content-length": "^2.0.8",
195 | "@smithy/middleware-endpoint": "^2.0.6",
196 | "@smithy/middleware-retry": "^2.0.9",
197 | "@smithy/middleware-serde": "^2.0.6",
198 | "@smithy/middleware-stack": "^2.0.0",
199 | "@smithy/node-config-provider": "^2.0.9",
200 | "@smithy/node-http-handler": "^2.1.2",
201 | "@smithy/protocol-http": "^3.0.2",
202 | "@smithy/smithy-client": "^2.1.3",
203 | "@smithy/types": "^2.3.0",
204 | "@smithy/url-parser": "^2.0.6",
205 | "@smithy/util-base64": "^2.0.0",
206 | "@smithy/util-body-length-browser": "^2.0.0",
207 | "@smithy/util-body-length-node": "^2.1.0",
208 | "@smithy/util-defaults-mode-browser": "^2.0.7",
209 | "@smithy/util-defaults-mode-node": "^2.0.9",
210 | "@smithy/util-retry": "^2.0.0",
211 | "@smithy/util-stream": "^2.0.9",
212 | "@smithy/util-utf8": "^2.0.0",
213 | "@smithy/util-waiter": "^2.0.6",
214 | "fast-xml-parser": "4.2.5",
215 | "tslib": "^2.5.0"
216 | },
217 | "engines": {
218 | "node": ">=14.0.0"
219 | }
220 | },
221 | "node_modules/@aws-sdk/client-sso": {
222 | "version": "3.410.0",
223 | "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.410.0.tgz",
224 | "integrity": "sha512-MC9GrgwtlOuSL2WS3DRM3dQ/5y+49KSMMJRH6JiEcU5vE0dX/OtEcX+VfEwpi73x5pSfIjm7xnzjzOFx+sQBIg==",
225 | "dependencies": {
226 | "@aws-crypto/sha256-browser": "3.0.0",
227 | "@aws-crypto/sha256-js": "3.0.0",
228 | "@aws-sdk/middleware-host-header": "3.410.0",
229 | "@aws-sdk/middleware-logger": "3.410.0",
230 | "@aws-sdk/middleware-recursion-detection": "3.410.0",
231 | "@aws-sdk/middleware-user-agent": "3.410.0",
232 | "@aws-sdk/types": "3.410.0",
233 | "@aws-sdk/util-endpoints": "3.410.0",
234 | "@aws-sdk/util-user-agent-browser": "3.410.0",
235 | "@aws-sdk/util-user-agent-node": "3.410.0",
236 | "@smithy/config-resolver": "^2.0.7",
237 | "@smithy/fetch-http-handler": "^2.1.2",
238 | "@smithy/hash-node": "^2.0.6",
239 | "@smithy/invalid-dependency": "^2.0.6",
240 | "@smithy/middleware-content-length": "^2.0.8",
241 | "@smithy/middleware-endpoint": "^2.0.6",
242 | "@smithy/middleware-retry": "^2.0.9",
243 | "@smithy/middleware-serde": "^2.0.6",
244 | "@smithy/middleware-stack": "^2.0.0",
245 | "@smithy/node-config-provider": "^2.0.9",
246 | "@smithy/node-http-handler": "^2.1.2",
247 | "@smithy/protocol-http": "^3.0.2",
248 | "@smithy/smithy-client": "^2.1.3",
249 | "@smithy/types": "^2.3.0",
250 | "@smithy/url-parser": "^2.0.6",
251 | "@smithy/util-base64": "^2.0.0",
252 | "@smithy/util-body-length-browser": "^2.0.0",
253 | "@smithy/util-body-length-node": "^2.1.0",
254 | "@smithy/util-defaults-mode-browser": "^2.0.7",
255 | "@smithy/util-defaults-mode-node": "^2.0.9",
256 | "@smithy/util-retry": "^2.0.0",
257 | "@smithy/util-utf8": "^2.0.0",
258 | "tslib": "^2.5.0"
259 | },
260 | "engines": {
261 | "node": ">=14.0.0"
262 | }
263 | },
264 | "node_modules/@aws-sdk/client-sts": {
265 | "version": "3.410.0",
266 | "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.410.0.tgz",
267 | "integrity": "sha512-e6VMrBJtnTxxUXwDmkADGIvyppmDMFf4+cGGA68tVCUm1cFNlCI6M/67bVSIPN/WVKAAfhEL5O2vVXCM7aatYg==",
268 | "dependencies": {
269 | "@aws-crypto/sha256-browser": "3.0.0",
270 | "@aws-crypto/sha256-js": "3.0.0",
271 | "@aws-sdk/credential-provider-node": "3.410.0",
272 | "@aws-sdk/middleware-host-header": "3.410.0",
273 | "@aws-sdk/middleware-logger": "3.410.0",
274 | "@aws-sdk/middleware-recursion-detection": "3.410.0",
275 | "@aws-sdk/middleware-sdk-sts": "3.410.0",
276 | "@aws-sdk/middleware-signing": "3.410.0",
277 | "@aws-sdk/middleware-user-agent": "3.410.0",
278 | "@aws-sdk/types": "3.410.0",
279 | "@aws-sdk/util-endpoints": "3.410.0",
280 | "@aws-sdk/util-user-agent-browser": "3.410.0",
281 | "@aws-sdk/util-user-agent-node": "3.410.0",
282 | "@smithy/config-resolver": "^2.0.7",
283 | "@smithy/fetch-http-handler": "^2.1.2",
284 | "@smithy/hash-node": "^2.0.6",
285 | "@smithy/invalid-dependency": "^2.0.6",
286 | "@smithy/middleware-content-length": "^2.0.8",
287 | "@smithy/middleware-endpoint": "^2.0.6",
288 | "@smithy/middleware-retry": "^2.0.9",
289 | "@smithy/middleware-serde": "^2.0.6",
290 | "@smithy/middleware-stack": "^2.0.0",
291 | "@smithy/node-config-provider": "^2.0.9",
292 | "@smithy/node-http-handler": "^2.1.2",
293 | "@smithy/protocol-http": "^3.0.2",
294 | "@smithy/smithy-client": "^2.1.3",
295 | "@smithy/types": "^2.3.0",
296 | "@smithy/url-parser": "^2.0.6",
297 | "@smithy/util-base64": "^2.0.0",
298 | "@smithy/util-body-length-browser": "^2.0.0",
299 | "@smithy/util-body-length-node": "^2.1.0",
300 | "@smithy/util-defaults-mode-browser": "^2.0.7",
301 | "@smithy/util-defaults-mode-node": "^2.0.9",
302 | "@smithy/util-retry": "^2.0.0",
303 | "@smithy/util-utf8": "^2.0.0",
304 | "fast-xml-parser": "4.2.5",
305 | "tslib": "^2.5.0"
306 | },
307 | "engines": {
308 | "node": ">=14.0.0"
309 | }
310 | },
311 | "node_modules/@aws-sdk/credential-provider-env": {
312 | "version": "3.410.0",
313 | "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.410.0.tgz",
314 | "integrity": "sha512-c7TB9LbN0PkFOsXI0lcRJnqPNOmc4VBvrHf8jP/BkTDg4YUoKQKOFd4d0SqzODmlZiAyoMQVZTR4ISZo95Zj4Q==",
315 | "dependencies": {
316 | "@aws-sdk/types": "3.410.0",
317 | "@smithy/property-provider": "^2.0.0",
318 | "@smithy/types": "^2.3.0",
319 | "tslib": "^2.5.0"
320 | },
321 | "engines": {
322 | "node": ">=14.0.0"
323 | }
324 | },
325 | "node_modules/@aws-sdk/credential-provider-ini": {
326 | "version": "3.410.0",
327 | "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.410.0.tgz",
328 | "integrity": "sha512-D8rcr5bRCFD0f42MPQ7K6TWZq5d3pfqrKINL1/bpfkK5BJbvq1BGYmR88UC6CLpTRtZ1LHY2HgYG0fp/2zjjww==",
329 | "dependencies": {
330 | "@aws-sdk/credential-provider-env": "3.410.0",
331 | "@aws-sdk/credential-provider-process": "3.410.0",
332 | "@aws-sdk/credential-provider-sso": "3.410.0",
333 | "@aws-sdk/credential-provider-web-identity": "3.410.0",
334 | "@aws-sdk/types": "3.410.0",
335 | "@smithy/credential-provider-imds": "^2.0.0",
336 | "@smithy/property-provider": "^2.0.0",
337 | "@smithy/shared-ini-file-loader": "^2.0.6",
338 | "@smithy/types": "^2.3.0",
339 | "tslib": "^2.5.0"
340 | },
341 | "engines": {
342 | "node": ">=14.0.0"
343 | }
344 | },
345 | "node_modules/@aws-sdk/credential-provider-node": {
346 | "version": "3.410.0",
347 | "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.410.0.tgz",
348 | "integrity": "sha512-0wmVm33T/j1FS7MZ/j+WsPlgSc0YnCXnpbWSov1Mn6R86SHI2b2JhdIPRRE4XbGfyW2QGNUl2CwoZVaqhXeF5g==",
349 | "dependencies": {
350 | "@aws-sdk/credential-provider-env": "3.410.0",
351 | "@aws-sdk/credential-provider-ini": "3.410.0",
352 | "@aws-sdk/credential-provider-process": "3.410.0",
353 | "@aws-sdk/credential-provider-sso": "3.410.0",
354 | "@aws-sdk/credential-provider-web-identity": "3.410.0",
355 | "@aws-sdk/types": "3.410.0",
356 | "@smithy/credential-provider-imds": "^2.0.0",
357 | "@smithy/property-provider": "^2.0.0",
358 | "@smithy/shared-ini-file-loader": "^2.0.6",
359 | "@smithy/types": "^2.3.0",
360 | "tslib": "^2.5.0"
361 | },
362 | "engines": {
363 | "node": ">=14.0.0"
364 | }
365 | },
366 | "node_modules/@aws-sdk/credential-provider-process": {
367 | "version": "3.410.0",
368 | "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.410.0.tgz",
369 | "integrity": "sha512-BMju1hlDCDNkkSZpKF5SQ8G0WCLRj6/Jvw9QmudLHJuVwYJXEW1r2AsVMg98OZ3hB9G+MAvHruHZIbMiNmUMXQ==",
370 | "dependencies": {
371 | "@aws-sdk/types": "3.410.0",
372 | "@smithy/property-provider": "^2.0.0",
373 | "@smithy/shared-ini-file-loader": "^2.0.6",
374 | "@smithy/types": "^2.3.0",
375 | "tslib": "^2.5.0"
376 | },
377 | "engines": {
378 | "node": ">=14.0.0"
379 | }
380 | },
381 | "node_modules/@aws-sdk/credential-provider-sso": {
382 | "version": "3.410.0",
383 | "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.410.0.tgz",
384 | "integrity": "sha512-zEaoY/sY+KYTlQUkp9dvveAHf175b8RIt0DsQkDrRPtrg/RBHR00r5rFvz9+nrwsR8546RaBU7h/zzTaQGhmcA==",
385 | "dependencies": {
386 | "@aws-sdk/client-sso": "3.410.0",
387 | "@aws-sdk/token-providers": "3.410.0",
388 | "@aws-sdk/types": "3.410.0",
389 | "@smithy/property-provider": "^2.0.0",
390 | "@smithy/shared-ini-file-loader": "^2.0.6",
391 | "@smithy/types": "^2.3.0",
392 | "tslib": "^2.5.0"
393 | },
394 | "engines": {
395 | "node": ">=14.0.0"
396 | }
397 | },
398 | "node_modules/@aws-sdk/credential-provider-web-identity": {
399 | "version": "3.410.0",
400 | "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.410.0.tgz",
401 | "integrity": "sha512-cE0l8LmEHdWbDkdPNgrfdYSgp4/cIVXrjUKI1QCATA729CrHZ/OQjB/maOBOrMHO9YTiggko887NkslVvwVB7w==",
402 | "dependencies": {
403 | "@aws-sdk/types": "3.410.0",
404 | "@smithy/property-provider": "^2.0.0",
405 | "@smithy/types": "^2.3.0",
406 | "tslib": "^2.5.0"
407 | },
408 | "engines": {
409 | "node": ">=14.0.0"
410 | }
411 | },
412 | "node_modules/@aws-sdk/middleware-bucket-endpoint": {
413 | "version": "3.410.0",
414 | "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.410.0.tgz",
415 | "integrity": "sha512-pUGrpFgCKf9fDHu01JJhhw+MUImheS0HFlZwNG37OMubkxUAbCdmYGewGxfTCUvWyZJtx9bVjrSu6gG7w+RARg==",
416 | "dependencies": {
417 | "@aws-sdk/types": "3.410.0",
418 | "@aws-sdk/util-arn-parser": "3.310.0",
419 | "@smithy/node-config-provider": "^2.0.9",
420 | "@smithy/protocol-http": "^3.0.2",
421 | "@smithy/types": "^2.3.0",
422 | "@smithy/util-config-provider": "^2.0.0",
423 | "tslib": "^2.5.0"
424 | },
425 | "engines": {
426 | "node": ">=14.0.0"
427 | }
428 | },
429 | "node_modules/@aws-sdk/middleware-expect-continue": {
430 | "version": "3.410.0",
431 | "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.410.0.tgz",
432 | "integrity": "sha512-e5YqGCNmW99GZjEPPujJ02RlEZql19U40oORysBhVF7mKz8BBvF3s8l37tvu37oxebDEkh1u/2cm2+ggOXxLjQ==",
433 | "dependencies": {
434 | "@aws-sdk/types": "3.410.0",
435 | "@smithy/protocol-http": "^3.0.2",
436 | "@smithy/types": "^2.3.0",
437 | "tslib": "^2.5.0"
438 | },
439 | "engines": {
440 | "node": ">=14.0.0"
441 | }
442 | },
443 | "node_modules/@aws-sdk/middleware-flexible-checksums": {
444 | "version": "3.410.0",
445 | "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.410.0.tgz",
446 | "integrity": "sha512-IK7KlvEKtrQVBfmAp/MmGd0wbWLuN2GZwwfAmsU0qFb0f5vOVUbKDsu6tudtDKCBG9uXyTEsx3/QGvoK2zDy+g==",
447 | "dependencies": {
448 | "@aws-crypto/crc32": "3.0.0",
449 | "@aws-crypto/crc32c": "3.0.0",
450 | "@aws-sdk/types": "3.410.0",
451 | "@smithy/is-array-buffer": "^2.0.0",
452 | "@smithy/protocol-http": "^3.0.2",
453 | "@smithy/types": "^2.3.0",
454 | "@smithy/util-utf8": "^2.0.0",
455 | "tslib": "^2.5.0"
456 | },
457 | "engines": {
458 | "node": ">=14.0.0"
459 | }
460 | },
461 | "node_modules/@aws-sdk/middleware-host-header": {
462 | "version": "3.410.0",
463 | "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.410.0.tgz",
464 | "integrity": "sha512-ED/OVcyITln5rrxnajZP+V0PN1nug+gSDHJDqdDo/oLy7eiDr/ZWn3nlWW7WcMplQ1/Jnb+hK0UetBp/25XooA==",
465 | "dependencies": {
466 | "@aws-sdk/types": "3.410.0",
467 | "@smithy/protocol-http": "^3.0.2",
468 | "@smithy/types": "^2.3.0",
469 | "tslib": "^2.5.0"
470 | },
471 | "engines": {
472 | "node": ">=14.0.0"
473 | }
474 | },
475 | "node_modules/@aws-sdk/middleware-location-constraint": {
476 | "version": "3.410.0",
477 | "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.410.0.tgz",
478 | "integrity": "sha512-jAftSpOpw/5AdpOJ/cGiXCb+Vv22KXR5QZmxmllUDsnlm18672tpRaI2plmu/1d98CVvqhY61eSklFMrIf2c4w==",
479 | "dependencies": {
480 | "@aws-sdk/types": "3.410.0",
481 | "@smithy/types": "^2.3.0",
482 | "tslib": "^2.5.0"
483 | },
484 | "engines": {
485 | "node": ">=14.0.0"
486 | }
487 | },
488 | "node_modules/@aws-sdk/middleware-logger": {
489 | "version": "3.410.0",
490 | "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.410.0.tgz",
491 | "integrity": "sha512-YtmKYCVtBfScq3/UFJk+aSZOktKJBNZL9DaSc2aPcy/goCVsYDOkGwtHk0jIkC1JRSNCkVTqL7ya60sSr8zaQQ==",
492 | "dependencies": {
493 | "@aws-sdk/types": "3.410.0",
494 | "@smithy/types": "^2.3.0",
495 | "tslib": "^2.5.0"
496 | },
497 | "engines": {
498 | "node": ">=14.0.0"
499 | }
500 | },
501 | "node_modules/@aws-sdk/middleware-recursion-detection": {
502 | "version": "3.410.0",
503 | "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.410.0.tgz",
504 | "integrity": "sha512-KWaes5FLzRqj28vaIEE4Bimpga2E596WdPF2HaH6zsVMJddoRDsc3ZX9ZhLOGrXzIO1RqBd0QxbLrM0S/B2aOQ==",
505 | "dependencies": {
506 | "@aws-sdk/types": "3.410.0",
507 | "@smithy/protocol-http": "^3.0.2",
508 | "@smithy/types": "^2.3.0",
509 | "tslib": "^2.5.0"
510 | },
511 | "engines": {
512 | "node": ">=14.0.0"
513 | }
514 | },
515 | "node_modules/@aws-sdk/middleware-sdk-s3": {
516 | "version": "3.410.0",
517 | "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.410.0.tgz",
518 | "integrity": "sha512-K2sG2V1ZkezYMCIy3uMt0MwtflcfIwLptwm0iFLaYitiINZQ1tcslk9ggAjyTHg0rslDSI4/zjkhy8VHFOV7HA==",
519 | "dependencies": {
520 | "@aws-sdk/types": "3.410.0",
521 | "@aws-sdk/util-arn-parser": "3.310.0",
522 | "@smithy/protocol-http": "^3.0.2",
523 | "@smithy/types": "^2.3.0",
524 | "tslib": "^2.5.0"
525 | },
526 | "engines": {
527 | "node": ">=14.0.0"
528 | }
529 | },
530 | "node_modules/@aws-sdk/middleware-sdk-sts": {
531 | "version": "3.410.0",
532 | "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.410.0.tgz",
533 | "integrity": "sha512-YfBpctDocRR4CcROoDueJA7D+aMLBV8nTFfmVNdLLLgyuLZ/AUR11VQSu1lf9gQZKl8IpKE/BLf2fRE/qV1ZuA==",
534 | "dependencies": {
535 | "@aws-sdk/middleware-signing": "3.410.0",
536 | "@aws-sdk/types": "3.410.0",
537 | "@smithy/types": "^2.3.0",
538 | "tslib": "^2.5.0"
539 | },
540 | "engines": {
541 | "node": ">=14.0.0"
542 | }
543 | },
544 | "node_modules/@aws-sdk/middleware-signing": {
545 | "version": "3.410.0",
546 | "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.410.0.tgz",
547 | "integrity": "sha512-KBAZ/eoAJUSJv5us2HsKwK2OszG2s9FEyKpEhgnHLcbbKzW873zHBH5GcOGEQu4AWArTy2ndzJu3FF+9/J9hJQ==",
548 | "dependencies": {
549 | "@aws-sdk/types": "3.410.0",
550 | "@smithy/property-provider": "^2.0.0",
551 | "@smithy/protocol-http": "^3.0.2",
552 | "@smithy/signature-v4": "^2.0.0",
553 | "@smithy/types": "^2.3.0",
554 | "@smithy/util-middleware": "^2.0.0",
555 | "tslib": "^2.5.0"
556 | },
557 | "engines": {
558 | "node": ">=14.0.0"
559 | }
560 | },
561 | "node_modules/@aws-sdk/middleware-ssec": {
562 | "version": "3.410.0",
563 | "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.410.0.tgz",
564 | "integrity": "sha512-DNsjVTXoxIh+PuW9o45CFaMiconbuZRm19MC3NA1yNCaCj3ZxD5OdXAutq6UjQdrx8UG4EjUlCJEEvBKmboITw==",
565 | "dependencies": {
566 | "@aws-sdk/types": "3.410.0",
567 | "@smithy/types": "^2.3.0",
568 | "tslib": "^2.5.0"
569 | },
570 | "engines": {
571 | "node": ">=14.0.0"
572 | }
573 | },
574 | "node_modules/@aws-sdk/middleware-user-agent": {
575 | "version": "3.410.0",
576 | "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.410.0.tgz",
577 | "integrity": "sha512-ZayDtLfvCZUohSxQc/49BfoU/y6bDHLfLdyyUJbJ54Sv8zQcrmdyKvCBFUZwE6tHQgAmv9/ZT18xECMl+xiONA==",
578 | "dependencies": {
579 | "@aws-sdk/types": "3.410.0",
580 | "@aws-sdk/util-endpoints": "3.410.0",
581 | "@smithy/protocol-http": "^3.0.2",
582 | "@smithy/types": "^2.3.0",
583 | "tslib": "^2.5.0"
584 | },
585 | "engines": {
586 | "node": ">=14.0.0"
587 | }
588 | },
589 | "node_modules/@aws-sdk/s3-request-presigner": {
590 | "version": "3.410.0",
591 | "resolved": "https://registry.npmjs.org/@aws-sdk/s3-request-presigner/-/s3-request-presigner-3.410.0.tgz",
592 | "integrity": "sha512-In2/XPdPA874XH0MdhLJ7tG74Yay/ATCMpMQcy+summlPhmO1G3BiKMoaDPRks+zJNhgiy6++PlcP93fwDSxcA==",
593 | "dependencies": {
594 | "@aws-sdk/signature-v4-multi-region": "3.410.0",
595 | "@aws-sdk/types": "3.410.0",
596 | "@aws-sdk/util-format-url": "3.410.0",
597 | "@smithy/middleware-endpoint": "^2.0.6",
598 | "@smithy/protocol-http": "^3.0.2",
599 | "@smithy/smithy-client": "^2.1.3",
600 | "@smithy/types": "^2.3.0",
601 | "tslib": "^2.5.0"
602 | },
603 | "engines": {
604 | "node": ">=14.0.0"
605 | }
606 | },
607 | "node_modules/@aws-sdk/signature-v4-multi-region": {
608 | "version": "3.410.0",
609 | "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.410.0.tgz",
610 | "integrity": "sha512-abgcl9/i9frxGUVAfHHWj49UMCFEmzkYwKmV/4kw9MYn6BZ3HKb5M00tBLn9/PcAKfANS7O+qJRiEQT66rmfhg==",
611 | "dependencies": {
612 | "@aws-sdk/types": "3.410.0",
613 | "@smithy/protocol-http": "^3.0.2",
614 | "@smithy/signature-v4": "^2.0.0",
615 | "@smithy/types": "^2.3.0",
616 | "tslib": "^2.5.0"
617 | },
618 | "engines": {
619 | "node": ">=14.0.0"
620 | },
621 | "peerDependencies": {
622 | "@aws-sdk/signature-v4-crt": "^3.118.0"
623 | },
624 | "peerDependenciesMeta": {
625 | "@aws-sdk/signature-v4-crt": {
626 | "optional": true
627 | }
628 | }
629 | },
630 | "node_modules/@aws-sdk/token-providers": {
631 | "version": "3.410.0",
632 | "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.410.0.tgz",
633 | "integrity": "sha512-d5Nc0xydkH/X0LA1HDyhGY5sEv4LuADFk+QpDtT8ogLilcre+b1jpdY8Sih/gd1KoGS1H+d1tz2hSGwUHAbUbw==",
634 | "dependencies": {
635 | "@aws-crypto/sha256-browser": "3.0.0",
636 | "@aws-crypto/sha256-js": "3.0.0",
637 | "@aws-sdk/middleware-host-header": "3.410.0",
638 | "@aws-sdk/middleware-logger": "3.410.0",
639 | "@aws-sdk/middleware-recursion-detection": "3.410.0",
640 | "@aws-sdk/middleware-user-agent": "3.410.0",
641 | "@aws-sdk/types": "3.410.0",
642 | "@aws-sdk/util-endpoints": "3.410.0",
643 | "@aws-sdk/util-user-agent-browser": "3.410.0",
644 | "@aws-sdk/util-user-agent-node": "3.410.0",
645 | "@smithy/config-resolver": "^2.0.7",
646 | "@smithy/fetch-http-handler": "^2.1.2",
647 | "@smithy/hash-node": "^2.0.6",
648 | "@smithy/invalid-dependency": "^2.0.6",
649 | "@smithy/middleware-content-length": "^2.0.8",
650 | "@smithy/middleware-endpoint": "^2.0.6",
651 | "@smithy/middleware-retry": "^2.0.9",
652 | "@smithy/middleware-serde": "^2.0.6",
653 | "@smithy/middleware-stack": "^2.0.0",
654 | "@smithy/node-config-provider": "^2.0.9",
655 | "@smithy/node-http-handler": "^2.1.2",
656 | "@smithy/property-provider": "^2.0.0",
657 | "@smithy/protocol-http": "^3.0.2",
658 | "@smithy/shared-ini-file-loader": "^2.0.6",
659 | "@smithy/smithy-client": "^2.1.3",
660 | "@smithy/types": "^2.3.0",
661 | "@smithy/url-parser": "^2.0.6",
662 | "@smithy/util-base64": "^2.0.0",
663 | "@smithy/util-body-length-browser": "^2.0.0",
664 | "@smithy/util-body-length-node": "^2.1.0",
665 | "@smithy/util-defaults-mode-browser": "^2.0.7",
666 | "@smithy/util-defaults-mode-node": "^2.0.9",
667 | "@smithy/util-retry": "^2.0.0",
668 | "@smithy/util-utf8": "^2.0.0",
669 | "tslib": "^2.5.0"
670 | },
671 | "engines": {
672 | "node": ">=14.0.0"
673 | }
674 | },
675 | "node_modules/@aws-sdk/types": {
676 | "version": "3.410.0",
677 | "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.410.0.tgz",
678 | "integrity": "sha512-D7iaUCszv/v04NDaZUmCmekamy6VD/lKozm/3gS9+dkfU6cC2CsNoUfPV8BlV6dPdw0oWgF91am3I1stdvfVrQ==",
679 | "dependencies": {
680 | "@smithy/types": "^2.3.0",
681 | "tslib": "^2.5.0"
682 | },
683 | "engines": {
684 | "node": ">=14.0.0"
685 | }
686 | },
687 | "node_modules/@aws-sdk/util-arn-parser": {
688 | "version": "3.310.0",
689 | "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.310.0.tgz",
690 | "integrity": "sha512-jL8509owp/xB9+Or0pvn3Fe+b94qfklc2yPowZZIFAkFcCSIdkIglz18cPDWnYAcy9JGewpMS1COXKIUhZkJsA==",
691 | "dependencies": {
692 | "tslib": "^2.5.0"
693 | },
694 | "engines": {
695 | "node": ">=14.0.0"
696 | }
697 | },
698 | "node_modules/@aws-sdk/util-endpoints": {
699 | "version": "3.410.0",
700 | "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.410.0.tgz",
701 | "integrity": "sha512-iNiqJyC7N3+8zFwnXUqcWSxrZecVZLToo1iTQQdeYL2af1IcOtRgb7n8jpAI/hmXhBSx2+3RI+Y7pxyFo1vu+w==",
702 | "dependencies": {
703 | "@aws-sdk/types": "3.410.0",
704 | "tslib": "^2.5.0"
705 | },
706 | "engines": {
707 | "node": ">=14.0.0"
708 | }
709 | },
710 | "node_modules/@aws-sdk/util-format-url": {
711 | "version": "3.410.0",
712 | "resolved": "https://registry.npmjs.org/@aws-sdk/util-format-url/-/util-format-url-3.410.0.tgz",
713 | "integrity": "sha512-ftxPYq7RBxJMQrOCJARx8+sQccmG+6y7mm9JzfXOHOfS1aWnYQizTitJ7PMA8p90xrUAFQ2CmjT0jaEGWg5VGQ==",
714 | "dependencies": {
715 | "@aws-sdk/types": "3.410.0",
716 | "@smithy/querystring-builder": "^2.0.6",
717 | "@smithy/types": "^2.3.0",
718 | "tslib": "^2.5.0"
719 | },
720 | "engines": {
721 | "node": ">=14.0.0"
722 | }
723 | },
724 | "node_modules/@aws-sdk/util-locate-window": {
725 | "version": "3.310.0",
726 | "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.310.0.tgz",
727 | "integrity": "sha512-qo2t/vBTnoXpjKxlsC2e1gBrRm80M3bId27r0BRB2VniSSe7bL1mmzM+/HFtujm0iAxtPM+aLEflLJlJeDPg0w==",
728 | "dependencies": {
729 | "tslib": "^2.5.0"
730 | },
731 | "engines": {
732 | "node": ">=14.0.0"
733 | }
734 | },
735 | "node_modules/@aws-sdk/util-user-agent-browser": {
736 | "version": "3.410.0",
737 | "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.410.0.tgz",
738 | "integrity": "sha512-i1G/XGpXGMRT2zEiAhi1xucJsfCWk8nNYjk/LbC0sA+7B9Huri96YAzVib12wkHPsJQvZxZC6CpQDIHWm4lXMA==",
739 | "dependencies": {
740 | "@aws-sdk/types": "3.410.0",
741 | "@smithy/types": "^2.3.0",
742 | "bowser": "^2.11.0",
743 | "tslib": "^2.5.0"
744 | }
745 | },
746 | "node_modules/@aws-sdk/util-user-agent-node": {
747 | "version": "3.410.0",
748 | "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.410.0.tgz",
749 | "integrity": "sha512-bK70t1jHRl8HrJXd4hEIwc5PBZ7U0w+81AKFnanIVKZwZedd6nLibUXDTK14z/Jp2GFcBqd4zkt2YLGkRt/U4A==",
750 | "dependencies": {
751 | "@aws-sdk/types": "3.410.0",
752 | "@smithy/node-config-provider": "^2.0.9",
753 | "@smithy/types": "^2.3.0",
754 | "tslib": "^2.5.0"
755 | },
756 | "engines": {
757 | "node": ">=14.0.0"
758 | },
759 | "peerDependencies": {
760 | "aws-crt": ">=1.0.0"
761 | },
762 | "peerDependenciesMeta": {
763 | "aws-crt": {
764 | "optional": true
765 | }
766 | }
767 | },
768 | "node_modules/@aws-sdk/util-utf8-browser": {
769 | "version": "3.259.0",
770 | "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.259.0.tgz",
771 | "integrity": "sha512-UvFa/vR+e19XookZF8RzFZBrw2EUkQWxiBW0yYQAhvk3C+QVGl0H3ouca8LDBlBfQKXwmW3huo/59H8rwb1wJw==",
772 | "dependencies": {
773 | "tslib": "^2.3.1"
774 | }
775 | },
776 | "node_modules/@aws-sdk/xml-builder": {
777 | "version": "3.310.0",
778 | "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.310.0.tgz",
779 | "integrity": "sha512-TqELu4mOuSIKQCqj63fGVs86Yh+vBx5nHRpWKNUNhB2nPTpfbziTs5c1X358be3peVWA4wPxW7Nt53KIg1tnNw==",
780 | "dependencies": {
781 | "tslib": "^2.5.0"
782 | },
783 | "engines": {
784 | "node": ">=14.0.0"
785 | }
786 | },
787 | "node_modules/@next/env": {
788 | "version": "13.4.19",
789 | "resolved": "https://registry.npmjs.org/@next/env/-/env-13.4.19.tgz",
790 | "integrity": "sha512-FsAT5x0jF2kkhNkKkukhsyYOrRqtSxrEhfliniIq0bwWbuXLgyt3Gv0Ml+b91XwjwArmuP7NxCiGd++GGKdNMQ=="
791 | },
792 | "node_modules/@next/swc-darwin-arm64": {
793 | "version": "13.4.19",
794 | "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.4.19.tgz",
795 | "integrity": "sha512-vv1qrjXeGbuF2mOkhkdxMDtv9np7W4mcBtaDnHU+yJG+bBwa6rYsYSCI/9Xm5+TuF5SbZbrWO6G1NfTh1TMjvQ==",
796 | "cpu": [
797 | "arm64"
798 | ],
799 | "optional": true,
800 | "os": [
801 | "darwin"
802 | ],
803 | "engines": {
804 | "node": ">= 10"
805 | }
806 | },
807 | "node_modules/@next/swc-darwin-x64": {
808 | "version": "13.4.19",
809 | "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-13.4.19.tgz",
810 | "integrity": "sha512-jyzO6wwYhx6F+7gD8ddZfuqO4TtpJdw3wyOduR4fxTUCm3aLw7YmHGYNjS0xRSYGAkLpBkH1E0RcelyId6lNsw==",
811 | "cpu": [
812 | "x64"
813 | ],
814 | "optional": true,
815 | "os": [
816 | "darwin"
817 | ],
818 | "engines": {
819 | "node": ">= 10"
820 | }
821 | },
822 | "node_modules/@next/swc-linux-arm64-gnu": {
823 | "version": "13.4.19",
824 | "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.4.19.tgz",
825 | "integrity": "sha512-vdlnIlaAEh6H+G6HrKZB9c2zJKnpPVKnA6LBwjwT2BTjxI7e0Hx30+FoWCgi50e+YO49p6oPOtesP9mXDRiiUg==",
826 | "cpu": [
827 | "arm64"
828 | ],
829 | "optional": true,
830 | "os": [
831 | "linux"
832 | ],
833 | "engines": {
834 | "node": ">= 10"
835 | }
836 | },
837 | "node_modules/@next/swc-linux-arm64-musl": {
838 | "version": "13.4.19",
839 | "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.4.19.tgz",
840 | "integrity": "sha512-aU0HkH2XPgxqrbNRBFb3si9Ahu/CpaR5RPmN2s9GiM9qJCiBBlZtRTiEca+DC+xRPyCThTtWYgxjWHgU7ZkyvA==",
841 | "cpu": [
842 | "arm64"
843 | ],
844 | "optional": true,
845 | "os": [
846 | "linux"
847 | ],
848 | "engines": {
849 | "node": ">= 10"
850 | }
851 | },
852 | "node_modules/@next/swc-linux-x64-gnu": {
853 | "version": "13.4.19",
854 | "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.4.19.tgz",
855 | "integrity": "sha512-htwOEagMa/CXNykFFeAHHvMJeqZfNQEoQvHfsA4wgg5QqGNqD5soeCer4oGlCol6NGUxknrQO6VEustcv+Md+g==",
856 | "cpu": [
857 | "x64"
858 | ],
859 | "optional": true,
860 | "os": [
861 | "linux"
862 | ],
863 | "engines": {
864 | "node": ">= 10"
865 | }
866 | },
867 | "node_modules/@next/swc-linux-x64-musl": {
868 | "version": "13.4.19",
869 | "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.4.19.tgz",
870 | "integrity": "sha512-4Gj4vvtbK1JH8ApWTT214b3GwUh9EKKQjY41hH/t+u55Knxi/0wesMzwQRhppK6Ddalhu0TEttbiJ+wRcoEj5Q==",
871 | "cpu": [
872 | "x64"
873 | ],
874 | "optional": true,
875 | "os": [
876 | "linux"
877 | ],
878 | "engines": {
879 | "node": ">= 10"
880 | }
881 | },
882 | "node_modules/@next/swc-win32-arm64-msvc": {
883 | "version": "13.4.19",
884 | "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.4.19.tgz",
885 | "integrity": "sha512-bUfDevQK4NsIAHXs3/JNgnvEY+LRyneDN788W2NYiRIIzmILjba7LaQTfihuFawZDhRtkYCv3JDC3B4TwnmRJw==",
886 | "cpu": [
887 | "arm64"
888 | ],
889 | "optional": true,
890 | "os": [
891 | "win32"
892 | ],
893 | "engines": {
894 | "node": ">= 10"
895 | }
896 | },
897 | "node_modules/@next/swc-win32-ia32-msvc": {
898 | "version": "13.4.19",
899 | "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.4.19.tgz",
900 | "integrity": "sha512-Y5kikILFAr81LYIFaw6j/NrOtmiM4Sf3GtOc0pn50ez2GCkr+oejYuKGcwAwq3jiTKuzF6OF4iT2INPoxRycEA==",
901 | "cpu": [
902 | "ia32"
903 | ],
904 | "optional": true,
905 | "os": [
906 | "win32"
907 | ],
908 | "engines": {
909 | "node": ">= 10"
910 | }
911 | },
912 | "node_modules/@next/swc-win32-x64-msvc": {
913 | "version": "13.4.19",
914 | "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.4.19.tgz",
915 | "integrity": "sha512-YzA78jBDXMYiINdPdJJwGgPNT3YqBNNGhsthsDoWHL9p24tEJn9ViQf/ZqTbwSpX/RrkPupLfuuTH2sf73JBAw==",
916 | "cpu": [
917 | "x64"
918 | ],
919 | "optional": true,
920 | "os": [
921 | "win32"
922 | ],
923 | "engines": {
924 | "node": ">= 10"
925 | }
926 | },
927 | "node_modules/@smithy/abort-controller": {
928 | "version": "2.0.6",
929 | "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-2.0.6.tgz",
930 | "integrity": "sha512-4I7g0lyGUlW2onf8mD76IzU37oRWSHsQ5zlW5MjDzgg4I4J9bOK4500Gx6qOuoN7+GulAnGLe1YwyrIluzhakg==",
931 | "dependencies": {
932 | "@smithy/types": "^2.3.0",
933 | "tslib": "^2.5.0"
934 | },
935 | "engines": {
936 | "node": ">=14.0.0"
937 | }
938 | },
939 | "node_modules/@smithy/chunked-blob-reader": {
940 | "version": "2.0.0",
941 | "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader/-/chunked-blob-reader-2.0.0.tgz",
942 | "integrity": "sha512-k+J4GHJsMSAIQPChGBrjEmGS+WbPonCXesoqP9fynIqjn7rdOThdH8FAeCmokP9mxTYKQAKoHCLPzNlm6gh7Wg==",
943 | "dependencies": {
944 | "tslib": "^2.5.0"
945 | }
946 | },
947 | "node_modules/@smithy/chunked-blob-reader-native": {
948 | "version": "2.0.0",
949 | "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-2.0.0.tgz",
950 | "integrity": "sha512-HM8V2Rp1y8+1343tkZUKZllFhEQPNmpNdgFAncbTsxkZ18/gqjk23XXv3qGyXWp412f3o43ZZ1UZHVcHrpRnCQ==",
951 | "dependencies": {
952 | "@smithy/util-base64": "^2.0.0",
953 | "tslib": "^2.5.0"
954 | }
955 | },
956 | "node_modules/@smithy/config-resolver": {
957 | "version": "2.0.7",
958 | "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-2.0.7.tgz",
959 | "integrity": "sha512-J4J1AWiqaApC+3I9U++SuxAQ3BOoM5VoYnpFzCZcb63aLF80Zpc/nq2pFR1OsEIYyg2UYNdcBKKfHABmwo4WgQ==",
960 | "dependencies": {
961 | "@smithy/node-config-provider": "^2.0.9",
962 | "@smithy/types": "^2.3.0",
963 | "@smithy/util-config-provider": "^2.0.0",
964 | "@smithy/util-middleware": "^2.0.0",
965 | "tslib": "^2.5.0"
966 | },
967 | "engines": {
968 | "node": ">=14.0.0"
969 | }
970 | },
971 | "node_modules/@smithy/credential-provider-imds": {
972 | "version": "2.0.9",
973 | "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-2.0.9.tgz",
974 | "integrity": "sha512-K7WZRkHS5HZofRgK+O8W4YXXyaVexU1K6hp9vlUL/8CsnrFbZS9quyH/6hTROrYh2PuJr24yii1kc83NJdxMGQ==",
975 | "dependencies": {
976 | "@smithy/node-config-provider": "^2.0.9",
977 | "@smithy/property-provider": "^2.0.7",
978 | "@smithy/types": "^2.3.0",
979 | "@smithy/url-parser": "^2.0.6",
980 | "tslib": "^2.5.0"
981 | },
982 | "engines": {
983 | "node": ">=14.0.0"
984 | }
985 | },
986 | "node_modules/@smithy/eventstream-codec": {
987 | "version": "2.0.6",
988 | "resolved": "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-2.0.6.tgz",
989 | "integrity": "sha512-J9xL82mlYRUMXFnB9VaThXkD7z2JLr52FIVZMoQQ1dxZG5ub+NOGmzaTTZC/cMmKXI/nwCoFuwDWCTjwQhYhQA==",
990 | "dependencies": {
991 | "@aws-crypto/crc32": "3.0.0",
992 | "@smithy/types": "^2.3.0",
993 | "@smithy/util-hex-encoding": "^2.0.0",
994 | "tslib": "^2.5.0"
995 | }
996 | },
997 | "node_modules/@smithy/eventstream-serde-browser": {
998 | "version": "2.0.6",
999 | "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-2.0.6.tgz",
1000 | "integrity": "sha512-cNJqAkmArHytV0CjBka3CKnU/J6zNlOZynvo2Txj98a0cxKeug8gL6SQTpoTyGk+M4LicjcrzQtDs06mU8U0Ag==",
1001 | "dependencies": {
1002 | "@smithy/eventstream-serde-universal": "^2.0.6",
1003 | "@smithy/types": "^2.3.0",
1004 | "tslib": "^2.5.0"
1005 | },
1006 | "engines": {
1007 | "node": ">=14.0.0"
1008 | }
1009 | },
1010 | "node_modules/@smithy/eventstream-serde-config-resolver": {
1011 | "version": "2.0.6",
1012 | "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-2.0.6.tgz",
1013 | "integrity": "sha512-jODu0MWaP06kzBMUtSd4Ga3S2DnTp3tfjPgdjaw9K/Z4yI7J9rUB73aNGo6ZxxH/vl/k66b5NZJ/3O1AzZ4ggw==",
1014 | "dependencies": {
1015 | "@smithy/types": "^2.3.0",
1016 | "tslib": "^2.5.0"
1017 | },
1018 | "engines": {
1019 | "node": ">=14.0.0"
1020 | }
1021 | },
1022 | "node_modules/@smithy/eventstream-serde-node": {
1023 | "version": "2.0.6",
1024 | "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-2.0.6.tgz",
1025 | "integrity": "sha512-ua7ok1g16p7OGAVZntn1l3wegN8RtsyPBl9ebqEDeSxdm+iuEfkAS1E/JFs6S6UBfr8Z0tbql5jTT9iVwIFGGA==",
1026 | "dependencies": {
1027 | "@smithy/eventstream-serde-universal": "^2.0.6",
1028 | "@smithy/types": "^2.3.0",
1029 | "tslib": "^2.5.0"
1030 | },
1031 | "engines": {
1032 | "node": ">=14.0.0"
1033 | }
1034 | },
1035 | "node_modules/@smithy/eventstream-serde-universal": {
1036 | "version": "2.0.6",
1037 | "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-2.0.6.tgz",
1038 | "integrity": "sha512-bH1TElelS8tlqll6cJAWKM11Es+pE9htRzjiiFG1+xcyKaM90UFNRX5oKZIrJugZlmP37pvfRwSJ/3ZaaqSBIA==",
1039 | "dependencies": {
1040 | "@smithy/eventstream-codec": "^2.0.6",
1041 | "@smithy/types": "^2.3.0",
1042 | "tslib": "^2.5.0"
1043 | },
1044 | "engines": {
1045 | "node": ">=14.0.0"
1046 | }
1047 | },
1048 | "node_modules/@smithy/fetch-http-handler": {
1049 | "version": "2.1.2",
1050 | "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-2.1.2.tgz",
1051 | "integrity": "sha512-3Gm3pQm4viUPU+e7KkRScS9t5phBxSNRS8rQSZ+HeCwK/busrX0/2HJZiwLvGblqPqi1laJB0lD18AdiOioJww==",
1052 | "dependencies": {
1053 | "@smithy/protocol-http": "^3.0.2",
1054 | "@smithy/querystring-builder": "^2.0.6",
1055 | "@smithy/types": "^2.3.0",
1056 | "@smithy/util-base64": "^2.0.0",
1057 | "tslib": "^2.5.0"
1058 | }
1059 | },
1060 | "node_modules/@smithy/hash-blob-browser": {
1061 | "version": "2.0.6",
1062 | "resolved": "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-2.0.6.tgz",
1063 | "integrity": "sha512-zmJCRb80WDthCZqQ9LiKeFUEmyPM9WUcd0jYa7tlU3p0LsDnaFKuUS+MT0uJehPGyUEicbi1KBdUmtoqEAQr1A==",
1064 | "dependencies": {
1065 | "@smithy/chunked-blob-reader": "^2.0.0",
1066 | "@smithy/chunked-blob-reader-native": "^2.0.0",
1067 | "@smithy/types": "^2.3.0",
1068 | "tslib": "^2.5.0"
1069 | }
1070 | },
1071 | "node_modules/@smithy/hash-node": {
1072 | "version": "2.0.6",
1073 | "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-2.0.6.tgz",
1074 | "integrity": "sha512-xz7fzFxSzxohKGGyKPbLReRrY01JOZgRDHIXSks3PxQxG9c8PJMa5nUw0stH8UOySUgkofmMy0n7vTUsF5Mdqg==",
1075 | "dependencies": {
1076 | "@smithy/types": "^2.3.0",
1077 | "@smithy/util-buffer-from": "^2.0.0",
1078 | "@smithy/util-utf8": "^2.0.0",
1079 | "tslib": "^2.5.0"
1080 | },
1081 | "engines": {
1082 | "node": ">=14.0.0"
1083 | }
1084 | },
1085 | "node_modules/@smithy/hash-stream-node": {
1086 | "version": "2.0.6",
1087 | "resolved": "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-2.0.6.tgz",
1088 | "integrity": "sha512-BWtWJ8Ppc8z+Rz9XBu4Hcl+pC+9BKV5GvbQpXZf4IsQX6oTwqo0qJK7Lwe5mYM0hRnqgwjn2mhQ303fIRN7AMw==",
1089 | "dependencies": {
1090 | "@smithy/types": "^2.3.0",
1091 | "@smithy/util-utf8": "^2.0.0",
1092 | "tslib": "^2.5.0"
1093 | },
1094 | "engines": {
1095 | "node": ">=14.0.0"
1096 | }
1097 | },
1098 | "node_modules/@smithy/invalid-dependency": {
1099 | "version": "2.0.6",
1100 | "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-2.0.6.tgz",
1101 | "integrity": "sha512-L5MUyl9mzawIvBxr0Hg3J/Q5qZFXKcBgMk0PacfK3Mthp4WAR6h7iMxdSQ23Q7X/kxOrpZuoYEdh1BWLKbDc8Q==",
1102 | "dependencies": {
1103 | "@smithy/types": "^2.3.0",
1104 | "tslib": "^2.5.0"
1105 | }
1106 | },
1107 | "node_modules/@smithy/is-array-buffer": {
1108 | "version": "2.0.0",
1109 | "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.0.0.tgz",
1110 | "integrity": "sha512-z3PjFjMyZNI98JFRJi/U0nGoLWMSJlDjAW4QUX2WNZLas5C0CmVV6LJ01JI0k90l7FvpmixjWxPFmENSClQ7ug==",
1111 | "dependencies": {
1112 | "tslib": "^2.5.0"
1113 | },
1114 | "engines": {
1115 | "node": ">=14.0.0"
1116 | }
1117 | },
1118 | "node_modules/@smithy/md5-js": {
1119 | "version": "2.0.6",
1120 | "resolved": "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-2.0.6.tgz",
1121 | "integrity": "sha512-Ek2qSFFICJa2E0RRVsIkQ6c1jeJTESwF24SMh3liKFNbr2Ax4uJiWsLhDBDQFOhJwjp1mbC4lN85isfGS+KhQg==",
1122 | "dependencies": {
1123 | "@smithy/types": "^2.3.0",
1124 | "@smithy/util-utf8": "^2.0.0",
1125 | "tslib": "^2.5.0"
1126 | }
1127 | },
1128 | "node_modules/@smithy/middleware-content-length": {
1129 | "version": "2.0.8",
1130 | "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-2.0.8.tgz",
1131 | "integrity": "sha512-fHJFsscHXrYhUSWMFJNXfsZW8KsyhWQfBgU3b0nvDfpm+NAeQLqKYNhywGrDwZQc1k+lt7Fw9faAquhNPxTZRA==",
1132 | "dependencies": {
1133 | "@smithy/protocol-http": "^3.0.2",
1134 | "@smithy/types": "^2.3.0",
1135 | "tslib": "^2.5.0"
1136 | },
1137 | "engines": {
1138 | "node": ">=14.0.0"
1139 | }
1140 | },
1141 | "node_modules/@smithy/middleware-endpoint": {
1142 | "version": "2.0.6",
1143 | "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-2.0.6.tgz",
1144 | "integrity": "sha512-MuSPPtEHFal/M77tR3ffLsdOfX29IZpA990nGuoPj5zQnAYrA4PYBGoqqrASQKm8Xb3C0NwuYzOATT7WX4f5Pg==",
1145 | "dependencies": {
1146 | "@smithy/middleware-serde": "^2.0.6",
1147 | "@smithy/types": "^2.3.0",
1148 | "@smithy/url-parser": "^2.0.6",
1149 | "@smithy/util-middleware": "^2.0.0",
1150 | "tslib": "^2.5.0"
1151 | },
1152 | "engines": {
1153 | "node": ">=14.0.0"
1154 | }
1155 | },
1156 | "node_modules/@smithy/middleware-retry": {
1157 | "version": "2.0.9",
1158 | "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-2.0.9.tgz",
1159 | "integrity": "sha512-gneEqWj4l/ZjHdZPk0BFMXoTalRArdQ8i579/KqJgBAc6Ux5vnR/SSppkMCkj2kOQYwdypvzSPeqEW3ZrvIg6g==",
1160 | "dependencies": {
1161 | "@smithy/node-config-provider": "^2.0.9",
1162 | "@smithy/protocol-http": "^3.0.2",
1163 | "@smithy/service-error-classification": "^2.0.0",
1164 | "@smithy/types": "^2.3.0",
1165 | "@smithy/util-middleware": "^2.0.0",
1166 | "@smithy/util-retry": "^2.0.0",
1167 | "tslib": "^2.5.0",
1168 | "uuid": "^8.3.2"
1169 | },
1170 | "engines": {
1171 | "node": ">=14.0.0"
1172 | }
1173 | },
1174 | "node_modules/@smithy/middleware-serde": {
1175 | "version": "2.0.6",
1176 | "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-2.0.6.tgz",
1177 | "integrity": "sha512-8/GODBngYbrS28CMZtaHIL4R9rLNSQ/zgb+N1OAZ02NwBUawlnLDcatve9YRzhJC/IWz0/pt+WimJZaO1sGcig==",
1178 | "dependencies": {
1179 | "@smithy/types": "^2.3.0",
1180 | "tslib": "^2.5.0"
1181 | },
1182 | "engines": {
1183 | "node": ">=14.0.0"
1184 | }
1185 | },
1186 | "node_modules/@smithy/middleware-stack": {
1187 | "version": "2.0.0",
1188 | "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-2.0.0.tgz",
1189 | "integrity": "sha512-31XC1xNF65nlbc16yuh3wwTudmqs6qy4EseQUGF8A/p2m/5wdd/cnXJqpniy/XvXVwkHPz/GwV36HqzHtIKATQ==",
1190 | "dependencies": {
1191 | "tslib": "^2.5.0"
1192 | },
1193 | "engines": {
1194 | "node": ">=14.0.0"
1195 | }
1196 | },
1197 | "node_modules/@smithy/node-config-provider": {
1198 | "version": "2.0.9",
1199 | "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-2.0.9.tgz",
1200 | "integrity": "sha512-TlSPbCwtT/jgNnmPQqKuCR5CFN8UIrCCHRrgUfs3NqRMuaLLeP8TPe1fSKq2J8h1M/jd4BF853gneles0gWevg==",
1201 | "dependencies": {
1202 | "@smithy/property-provider": "^2.0.7",
1203 | "@smithy/shared-ini-file-loader": "^2.0.8",
1204 | "@smithy/types": "^2.3.0",
1205 | "tslib": "^2.5.0"
1206 | },
1207 | "engines": {
1208 | "node": ">=14.0.0"
1209 | }
1210 | },
1211 | "node_modules/@smithy/node-http-handler": {
1212 | "version": "2.1.2",
1213 | "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-2.1.2.tgz",
1214 | "integrity": "sha512-PdEEDCShuM8zxGoaRxmGB/1ikB8oeqz+ZAF9VIA8FCP3E59j8zDTF+wCELoWd1Y6gtxr+RcTAg5sA8nvn5qH/w==",
1215 | "dependencies": {
1216 | "@smithy/abort-controller": "^2.0.6",
1217 | "@smithy/protocol-http": "^3.0.2",
1218 | "@smithy/querystring-builder": "^2.0.6",
1219 | "@smithy/types": "^2.3.0",
1220 | "tslib": "^2.5.0"
1221 | },
1222 | "engines": {
1223 | "node": ">=14.0.0"
1224 | }
1225 | },
1226 | "node_modules/@smithy/property-provider": {
1227 | "version": "2.0.7",
1228 | "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-2.0.7.tgz",
1229 | "integrity": "sha512-XT8Tl7YNxM8tCtGqy7v7DSf6PxyXaPE9cdA/Yj4dEw2b05V3RrPqsP+t5XJiZu0yIsQ7pdeYZWv2sSEWVjNeAg==",
1230 | "dependencies": {
1231 | "@smithy/types": "^2.3.0",
1232 | "tslib": "^2.5.0"
1233 | },
1234 | "engines": {
1235 | "node": ">=14.0.0"
1236 | }
1237 | },
1238 | "node_modules/@smithy/protocol-http": {
1239 | "version": "3.0.2",
1240 | "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-3.0.2.tgz",
1241 | "integrity": "sha512-LUOWCPRihvJBkdSs+ivK9m1f/rMfF3n9Zpzg8qdry2eIG4HQqqLBMWQyF9bgk7JhsrrOa3//jJKhXzvL7wL5Xw==",
1242 | "dependencies": {
1243 | "@smithy/types": "^2.3.0",
1244 | "tslib": "^2.5.0"
1245 | },
1246 | "engines": {
1247 | "node": ">=14.0.0"
1248 | }
1249 | },
1250 | "node_modules/@smithy/querystring-builder": {
1251 | "version": "2.0.6",
1252 | "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-2.0.6.tgz",
1253 | "integrity": "sha512-HnU00shCGoV8vKJZTiNBkNvR9NogU3NIUaVMAGJPSqNGJj3psWo+TUrC0BVCDcwiCljXwXCFGJqIcsWtClrktQ==",
1254 | "dependencies": {
1255 | "@smithy/types": "^2.3.0",
1256 | "@smithy/util-uri-escape": "^2.0.0",
1257 | "tslib": "^2.5.0"
1258 | },
1259 | "engines": {
1260 | "node": ">=14.0.0"
1261 | }
1262 | },
1263 | "node_modules/@smithy/querystring-parser": {
1264 | "version": "2.0.6",
1265 | "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-2.0.6.tgz",
1266 | "integrity": "sha512-i4LKoXHP7pTFAPjLIJyQXYOhWokbcFha3WWsX74sAKmuluv0XM2cxONZoFxwEzmWhsNyM6buSwJSZXyPiec0AQ==",
1267 | "dependencies": {
1268 | "@smithy/types": "^2.3.0",
1269 | "tslib": "^2.5.0"
1270 | },
1271 | "engines": {
1272 | "node": ">=14.0.0"
1273 | }
1274 | },
1275 | "node_modules/@smithy/service-error-classification": {
1276 | "version": "2.0.0",
1277 | "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-2.0.0.tgz",
1278 | "integrity": "sha512-2z5Nafy1O0cTf69wKyNjGW/sNVMiqDnb4jgwfMG8ye8KnFJ5qmJpDccwIbJNhXIfbsxTg9SEec2oe1cexhMJvw==",
1279 | "engines": {
1280 | "node": ">=14.0.0"
1281 | }
1282 | },
1283 | "node_modules/@smithy/shared-ini-file-loader": {
1284 | "version": "2.0.8",
1285 | "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-2.0.8.tgz",
1286 | "integrity": "sha512-4u+V+Dv7JGpJ0tppB5rxCem7WhdFux950z4cGPhV0kHTPkKe8DDgINzOlVa2RBu5dI33D02OBJcxFjhW4FPORg==",
1287 | "dependencies": {
1288 | "@smithy/types": "^2.3.0",
1289 | "tslib": "^2.5.0"
1290 | },
1291 | "engines": {
1292 | "node": ">=14.0.0"
1293 | }
1294 | },
1295 | "node_modules/@smithy/signature-v4": {
1296 | "version": "2.0.6",
1297 | "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-2.0.6.tgz",
1298 | "integrity": "sha512-4zNTi8w4sky07YKq7oYucZt4ogY00IEaS1NFDXxmCN5V/ywE0WiK+WMim+8wtYQmB0qy3oExZR4LoCAml6j/rA==",
1299 | "dependencies": {
1300 | "@smithy/eventstream-codec": "^2.0.6",
1301 | "@smithy/is-array-buffer": "^2.0.0",
1302 | "@smithy/types": "^2.3.0",
1303 | "@smithy/util-hex-encoding": "^2.0.0",
1304 | "@smithy/util-middleware": "^2.0.0",
1305 | "@smithy/util-uri-escape": "^2.0.0",
1306 | "@smithy/util-utf8": "^2.0.0",
1307 | "tslib": "^2.5.0"
1308 | },
1309 | "engines": {
1310 | "node": ">=14.0.0"
1311 | }
1312 | },
1313 | "node_modules/@smithy/smithy-client": {
1314 | "version": "2.1.3",
1315 | "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-2.1.3.tgz",
1316 | "integrity": "sha512-nSMMp2AKqcG/ruzCY01ogrMdbq/WS1cvGStTsw7yd6bTpp/bGtlOgXvy3h7e0zP7w2DH1AtvIwzYBD6ejZePsQ==",
1317 | "dependencies": {
1318 | "@smithy/middleware-stack": "^2.0.0",
1319 | "@smithy/types": "^2.3.0",
1320 | "@smithy/util-stream": "^2.0.9",
1321 | "tslib": "^2.5.0"
1322 | },
1323 | "engines": {
1324 | "node": ">=14.0.0"
1325 | }
1326 | },
1327 | "node_modules/@smithy/types": {
1328 | "version": "2.3.0",
1329 | "resolved": "https://registry.npmjs.org/@smithy/types/-/types-2.3.0.tgz",
1330 | "integrity": "sha512-pJce3rd39MElkV57UTPAoSYAApjQLELUxjU5adHNLYk9gnPvyIGbJNJTZVVFu00BrgZH3W/cQe8QuFcknDyodQ==",
1331 | "dependencies": {
1332 | "tslib": "^2.5.0"
1333 | },
1334 | "engines": {
1335 | "node": ">=14.0.0"
1336 | }
1337 | },
1338 | "node_modules/@smithy/url-parser": {
1339 | "version": "2.0.6",
1340 | "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-2.0.6.tgz",
1341 | "integrity": "sha512-9i6j5QW6bapHZ4rtkXOAm0hOUG1+5IVdVJXNSUTcNskwJchZH5IQuDNPCbgUi/u2P8EZazKt4wXT51QxOXCz1A==",
1342 | "dependencies": {
1343 | "@smithy/querystring-parser": "^2.0.6",
1344 | "@smithy/types": "^2.3.0",
1345 | "tslib": "^2.5.0"
1346 | }
1347 | },
1348 | "node_modules/@smithy/util-base64": {
1349 | "version": "2.0.0",
1350 | "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-2.0.0.tgz",
1351 | "integrity": "sha512-Zb1E4xx+m5Lud8bbeYi5FkcMJMnn+1WUnJF3qD7rAdXpaL7UjkFQLdmW5fHadoKbdHpwH9vSR8EyTJFHJs++tA==",
1352 | "dependencies": {
1353 | "@smithy/util-buffer-from": "^2.0.0",
1354 | "tslib": "^2.5.0"
1355 | },
1356 | "engines": {
1357 | "node": ">=14.0.0"
1358 | }
1359 | },
1360 | "node_modules/@smithy/util-body-length-browser": {
1361 | "version": "2.0.0",
1362 | "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-2.0.0.tgz",
1363 | "integrity": "sha512-JdDuS4ircJt+FDnaQj88TzZY3+njZ6O+D3uakS32f2VNnDo3vyEuNdBOh/oFd8Df1zSZOuH1HEChk2AOYDezZg==",
1364 | "dependencies": {
1365 | "tslib": "^2.5.0"
1366 | }
1367 | },
1368 | "node_modules/@smithy/util-body-length-node": {
1369 | "version": "2.1.0",
1370 | "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-2.1.0.tgz",
1371 | "integrity": "sha512-/li0/kj/y3fQ3vyzn36NTLGmUwAICb7Jbe/CsWCktW363gh1MOcpEcSO3mJ344Gv2dqz8YJCLQpb6hju/0qOWw==",
1372 | "dependencies": {
1373 | "tslib": "^2.5.0"
1374 | },
1375 | "engines": {
1376 | "node": ">=14.0.0"
1377 | }
1378 | },
1379 | "node_modules/@smithy/util-buffer-from": {
1380 | "version": "2.0.0",
1381 | "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.0.0.tgz",
1382 | "integrity": "sha512-/YNnLoHsR+4W4Vf2wL5lGv0ksg8Bmk3GEGxn2vEQt52AQaPSCuaO5PM5VM7lP1K9qHRKHwrPGktqVoAHKWHxzw==",
1383 | "dependencies": {
1384 | "@smithy/is-array-buffer": "^2.0.0",
1385 | "tslib": "^2.5.0"
1386 | },
1387 | "engines": {
1388 | "node": ">=14.0.0"
1389 | }
1390 | },
1391 | "node_modules/@smithy/util-config-provider": {
1392 | "version": "2.0.0",
1393 | "resolved": "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-2.0.0.tgz",
1394 | "integrity": "sha512-xCQ6UapcIWKxXHEU4Mcs2s7LcFQRiU3XEluM2WcCjjBtQkUN71Tb+ydGmJFPxMUrW/GWMgQEEGipLym4XG0jZg==",
1395 | "dependencies": {
1396 | "tslib": "^2.5.0"
1397 | },
1398 | "engines": {
1399 | "node": ">=14.0.0"
1400 | }
1401 | },
1402 | "node_modules/@smithy/util-defaults-mode-browser": {
1403 | "version": "2.0.7",
1404 | "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-2.0.7.tgz",
1405 | "integrity": "sha512-s1caKxC7Y87Q72Goll//clZs2WNBfG9WtFDWVRS+Qgk147YPCOUYtkpuD0XZAh/vbayObFz5tQ1fiX4G19HSCA==",
1406 | "dependencies": {
1407 | "@smithy/property-provider": "^2.0.7",
1408 | "@smithy/types": "^2.3.0",
1409 | "bowser": "^2.11.0",
1410 | "tslib": "^2.5.0"
1411 | },
1412 | "engines": {
1413 | "node": ">= 10.0.0"
1414 | }
1415 | },
1416 | "node_modules/@smithy/util-defaults-mode-node": {
1417 | "version": "2.0.9",
1418 | "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-2.0.9.tgz",
1419 | "integrity": "sha512-HlV4iNL3/PgPpmDGs0+XrAKtwFQ8rOs5P2y5Dye8dUYaJauadlzHRrNKk7wH2aBYswvT2HM+PIgXamvrE7xbcw==",
1420 | "dependencies": {
1421 | "@smithy/config-resolver": "^2.0.7",
1422 | "@smithy/credential-provider-imds": "^2.0.9",
1423 | "@smithy/node-config-provider": "^2.0.9",
1424 | "@smithy/property-provider": "^2.0.7",
1425 | "@smithy/types": "^2.3.0",
1426 | "tslib": "^2.5.0"
1427 | },
1428 | "engines": {
1429 | "node": ">= 10.0.0"
1430 | }
1431 | },
1432 | "node_modules/@smithy/util-hex-encoding": {
1433 | "version": "2.0.0",
1434 | "resolved": "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-2.0.0.tgz",
1435 | "integrity": "sha512-c5xY+NUnFqG6d7HFh1IFfrm3mGl29lC+vF+geHv4ToiuJCBmIfzx6IeHLg+OgRdPFKDXIw6pvi+p3CsscaMcMA==",
1436 | "dependencies": {
1437 | "tslib": "^2.5.0"
1438 | },
1439 | "engines": {
1440 | "node": ">=14.0.0"
1441 | }
1442 | },
1443 | "node_modules/@smithy/util-middleware": {
1444 | "version": "2.0.0",
1445 | "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-2.0.0.tgz",
1446 | "integrity": "sha512-eCWX4ECuDHn1wuyyDdGdUWnT4OGyIzV0LN1xRttBFMPI9Ff/4heSHVxneyiMtOB//zpXWCha1/SWHJOZstG7kA==",
1447 | "dependencies": {
1448 | "tslib": "^2.5.0"
1449 | },
1450 | "engines": {
1451 | "node": ">=14.0.0"
1452 | }
1453 | },
1454 | "node_modules/@smithy/util-retry": {
1455 | "version": "2.0.0",
1456 | "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-2.0.0.tgz",
1457 | "integrity": "sha512-/dvJ8afrElasuiiIttRJeoS2sy8YXpksQwiM/TcepqdRVp7u4ejd9C4IQURHNjlfPUT7Y6lCDSa2zQJbdHhVTg==",
1458 | "dependencies": {
1459 | "@smithy/service-error-classification": "^2.0.0",
1460 | "tslib": "^2.5.0"
1461 | },
1462 | "engines": {
1463 | "node": ">= 14.0.0"
1464 | }
1465 | },
1466 | "node_modules/@smithy/util-stream": {
1467 | "version": "2.0.9",
1468 | "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-2.0.9.tgz",
1469 | "integrity": "sha512-Fn2/3IMwqu0l2hOC7K3bbtSqFEJ6nOzMLoPVIhuH84yw/95itNkFBwVbIIiAfDaout0ZfZ26+5ch86E2q3avww==",
1470 | "dependencies": {
1471 | "@smithy/fetch-http-handler": "^2.1.2",
1472 | "@smithy/node-http-handler": "^2.1.2",
1473 | "@smithy/types": "^2.3.0",
1474 | "@smithy/util-base64": "^2.0.0",
1475 | "@smithy/util-buffer-from": "^2.0.0",
1476 | "@smithy/util-hex-encoding": "^2.0.0",
1477 | "@smithy/util-utf8": "^2.0.0",
1478 | "tslib": "^2.5.0"
1479 | },
1480 | "engines": {
1481 | "node": ">=14.0.0"
1482 | }
1483 | },
1484 | "node_modules/@smithy/util-uri-escape": {
1485 | "version": "2.0.0",
1486 | "resolved": "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-2.0.0.tgz",
1487 | "integrity": "sha512-ebkxsqinSdEooQduuk9CbKcI+wheijxEb3utGXkCoYQkJnwTnLbH1JXGimJtUkQwNQbsbuYwG2+aFVyZf5TLaw==",
1488 | "dependencies": {
1489 | "tslib": "^2.5.0"
1490 | },
1491 | "engines": {
1492 | "node": ">=14.0.0"
1493 | }
1494 | },
1495 | "node_modules/@smithy/util-utf8": {
1496 | "version": "2.0.0",
1497 | "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.0.0.tgz",
1498 | "integrity": "sha512-rctU1VkziY84n5OXe3bPNpKR001ZCME2JCaBBFgtiM2hfKbHFudc/BkMuPab8hRbLd0j3vbnBTTZ1igBf0wgiQ==",
1499 | "dependencies": {
1500 | "@smithy/util-buffer-from": "^2.0.0",
1501 | "tslib": "^2.5.0"
1502 | },
1503 | "engines": {
1504 | "node": ">=14.0.0"
1505 | }
1506 | },
1507 | "node_modules/@smithy/util-waiter": {
1508 | "version": "2.0.6",
1509 | "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-2.0.6.tgz",
1510 | "integrity": "sha512-wjxvKB4XSfgpOg3lr4RulnVhd21fMMC4CPARBwrSN7+3U28fwOifv8f7T+Ibay9DAQTj9qXxmd8ag6WXBRgNhg==",
1511 | "dependencies": {
1512 | "@smithy/abort-controller": "^2.0.6",
1513 | "@smithy/types": "^2.3.0",
1514 | "tslib": "^2.5.0"
1515 | },
1516 | "engines": {
1517 | "node": ">=14.0.0"
1518 | }
1519 | },
1520 | "node_modules/@swc/helpers": {
1521 | "version": "0.5.1",
1522 | "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.1.tgz",
1523 | "integrity": "sha512-sJ902EfIzn1Fa+qYmjdQqh8tPsoxyBz+8yBKC2HKUxyezKJFwPGOn7pv4WY6QuQW//ySQi5lJjA/ZT9sNWWNTg==",
1524 | "dependencies": {
1525 | "tslib": "^2.4.0"
1526 | }
1527 | },
1528 | "node_modules/@transloadit/prettier-bytes": {
1529 | "version": "0.0.9",
1530 | "resolved": "https://registry.npmjs.org/@transloadit/prettier-bytes/-/prettier-bytes-0.0.9.tgz",
1531 | "integrity": "sha512-pCvdmea/F3Tn4hAtHqNXmjcixSaroJJ+L3STXlYJdir1g1m2mRQpWbN8a4SvgQtaw2930Ckhdx8qXdXBFMKbAA=="
1532 | },
1533 | "node_modules/@types/node": {
1534 | "version": "20.6.0",
1535 | "resolved": "https://registry.npmjs.org/@types/node/-/node-20.6.0.tgz",
1536 | "integrity": "sha512-najjVq5KN2vsH2U/xyh2opaSEz6cZMR2SetLIlxlj08nOcmPOemJmUK2o4kUzfLqfrWE0PIrNeE16XhYDd3nqg==",
1537 | "dev": true
1538 | },
1539 | "node_modules/@types/prop-types": {
1540 | "version": "15.7.5",
1541 | "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz",
1542 | "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==",
1543 | "dev": true
1544 | },
1545 | "node_modules/@types/react": {
1546 | "version": "18.2.21",
1547 | "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.21.tgz",
1548 | "integrity": "sha512-neFKG/sBAwGxHgXiIxnbm3/AAVQ/cMRS93hvBpg8xYRbeQSPVABp9U2bRnPf0iI4+Ucdv3plSxKK+3CW2ENJxA==",
1549 | "dev": true,
1550 | "dependencies": {
1551 | "@types/prop-types": "*",
1552 | "@types/scheduler": "*",
1553 | "csstype": "^3.0.2"
1554 | }
1555 | },
1556 | "node_modules/@types/scheduler": {
1557 | "version": "0.16.3",
1558 | "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.3.tgz",
1559 | "integrity": "sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ==",
1560 | "dev": true
1561 | },
1562 | "node_modules/@uppy/aws-s3": {
1563 | "version": "3.3.0",
1564 | "resolved": "https://registry.npmjs.org/@uppy/aws-s3/-/aws-s3-3.3.0.tgz",
1565 | "integrity": "sha512-M+dzWWdCZHBaauZTitLHA/ciDU8FMJ310fyTZ10PiBOPCyw+aGDtfzoyYVmaDHf5jkw/mIOgyQjO8VM+pTjAzA==",
1566 | "dependencies": {
1567 | "@uppy/aws-s3-multipart": "^3.6.0",
1568 | "@uppy/companion-client": "^3.4.0",
1569 | "@uppy/utils": "^5.5.0",
1570 | "@uppy/xhr-upload": "^3.4.0",
1571 | "nanoid": "^4.0.0"
1572 | },
1573 | "peerDependencies": {
1574 | "@uppy/core": "^3.5.0"
1575 | }
1576 | },
1577 | "node_modules/@uppy/aws-s3-multipart": {
1578 | "version": "3.6.0",
1579 | "resolved": "https://registry.npmjs.org/@uppy/aws-s3-multipart/-/aws-s3-multipart-3.6.0.tgz",
1580 | "integrity": "sha512-4TYOptKsofNks11ktRbrGaPvEapd3hj+IIatcAxjJ0RX4SwwjMbvSNKzS3PBbwLnpVfAIFHA/n5S9EgKocVmYg==",
1581 | "dependencies": {
1582 | "@uppy/companion-client": "^3.4.0",
1583 | "@uppy/utils": "^5.5.0"
1584 | },
1585 | "peerDependencies": {
1586 | "@uppy/core": "^3.5.0"
1587 | }
1588 | },
1589 | "node_modules/@uppy/aws-s3/node_modules/nanoid": {
1590 | "version": "4.0.2",
1591 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-4.0.2.tgz",
1592 | "integrity": "sha512-7ZtY5KTCNheRGfEFxnedV5zFiORN1+Y1N6zvPTnHQd8ENUvfaDBeuJDZb2bN/oXwXxu3qkTXDzy57W5vAmDTBw==",
1593 | "funding": [
1594 | {
1595 | "type": "github",
1596 | "url": "https://github.com/sponsors/ai"
1597 | }
1598 | ],
1599 | "bin": {
1600 | "nanoid": "bin/nanoid.js"
1601 | },
1602 | "engines": {
1603 | "node": "^14 || ^16 || >=18"
1604 | }
1605 | },
1606 | "node_modules/@uppy/companion-client": {
1607 | "version": "3.4.0",
1608 | "resolved": "https://registry.npmjs.org/@uppy/companion-client/-/companion-client-3.4.0.tgz",
1609 | "integrity": "sha512-mGm3I/VdlaXvvYnbkidQDk3ttPY7VjvRwoHdXaAOHsIwPZBFUlCRggw84TQN9NejiasqTK/U7xvARDunjVhGBA==",
1610 | "dependencies": {
1611 | "@uppy/utils": "^5.5.0",
1612 | "namespace-emitter": "^2.0.1"
1613 | }
1614 | },
1615 | "node_modules/@uppy/core": {
1616 | "version": "3.5.0",
1617 | "resolved": "https://registry.npmjs.org/@uppy/core/-/core-3.5.0.tgz",
1618 | "integrity": "sha512-Ujm3VrFkqCNnsqvjZL1RQhIdccbjUxfLJW6EhirYcOLr1kCUjhgKSE/iOJnC2eadohHwOWFTx+X8e9bhH6HT7g==",
1619 | "dependencies": {
1620 | "@transloadit/prettier-bytes": "0.0.9",
1621 | "@uppy/store-default": "^3.0.3",
1622 | "@uppy/utils": "^5.5.0",
1623 | "lodash": "^4.17.21",
1624 | "mime-match": "^1.0.2",
1625 | "namespace-emitter": "^2.0.1",
1626 | "nanoid": "^4.0.0",
1627 | "preact": "^10.5.13"
1628 | }
1629 | },
1630 | "node_modules/@uppy/core/node_modules/nanoid": {
1631 | "version": "4.0.2",
1632 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-4.0.2.tgz",
1633 | "integrity": "sha512-7ZtY5KTCNheRGfEFxnedV5zFiORN1+Y1N6zvPTnHQd8ENUvfaDBeuJDZb2bN/oXwXxu3qkTXDzy57W5vAmDTBw==",
1634 | "funding": [
1635 | {
1636 | "type": "github",
1637 | "url": "https://github.com/sponsors/ai"
1638 | }
1639 | ],
1640 | "bin": {
1641 | "nanoid": "bin/nanoid.js"
1642 | },
1643 | "engines": {
1644 | "node": "^14 || ^16 || >=18"
1645 | }
1646 | },
1647 | "node_modules/@uppy/dashboard": {
1648 | "version": "3.5.2",
1649 | "resolved": "https://registry.npmjs.org/@uppy/dashboard/-/dashboard-3.5.2.tgz",
1650 | "integrity": "sha512-6CWhqqm93Uo2QpwYrDRCVrpxStCCK359Wr8CvaOi14BJrcE8JyPczXbrzHMzbjKt2Rz8G3TzQUa1r9nZkylrGQ==",
1651 | "dependencies": {
1652 | "@transloadit/prettier-bytes": "0.0.7",
1653 | "@uppy/informer": "^3.0.3",
1654 | "@uppy/provider-views": "^3.5.0",
1655 | "@uppy/status-bar": "^3.2.4",
1656 | "@uppy/thumbnail-generator": "^3.0.4",
1657 | "@uppy/utils": "^5.5.0",
1658 | "classnames": "^2.2.6",
1659 | "is-shallow-equal": "^1.0.1",
1660 | "lodash": "^4.17.21",
1661 | "memoize-one": "^6.0.0",
1662 | "nanoid": "^4.0.0",
1663 | "preact": "^10.5.13"
1664 | },
1665 | "peerDependencies": {
1666 | "@uppy/core": "^3.5.0"
1667 | }
1668 | },
1669 | "node_modules/@uppy/dashboard/node_modules/@transloadit/prettier-bytes": {
1670 | "version": "0.0.7",
1671 | "resolved": "https://registry.npmjs.org/@transloadit/prettier-bytes/-/prettier-bytes-0.0.7.tgz",
1672 | "integrity": "sha512-VeJbUb0wEKbcwaSlj5n+LscBl9IPgLPkHVGBkh00cztv6X4L/TJXK58LzFuBKX7/GAfiGhIwH67YTLTlzvIzBA=="
1673 | },
1674 | "node_modules/@uppy/dashboard/node_modules/nanoid": {
1675 | "version": "4.0.2",
1676 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-4.0.2.tgz",
1677 | "integrity": "sha512-7ZtY5KTCNheRGfEFxnedV5zFiORN1+Y1N6zvPTnHQd8ENUvfaDBeuJDZb2bN/oXwXxu3qkTXDzy57W5vAmDTBw==",
1678 | "funding": [
1679 | {
1680 | "type": "github",
1681 | "url": "https://github.com/sponsors/ai"
1682 | }
1683 | ],
1684 | "bin": {
1685 | "nanoid": "bin/nanoid.js"
1686 | },
1687 | "engines": {
1688 | "node": "^14 || ^16 || >=18"
1689 | }
1690 | },
1691 | "node_modules/@uppy/drag-drop": {
1692 | "version": "3.0.3",
1693 | "resolved": "https://registry.npmjs.org/@uppy/drag-drop/-/drag-drop-3.0.3.tgz",
1694 | "integrity": "sha512-0bCgQKxg+9vkxQipTgrX9yQIuK9a0hZrkipm1+Ynq6jTeig49b7II1bWYnoKdiYhi6nRE4UnDJf4z09yCAU7rA==",
1695 | "dependencies": {
1696 | "@uppy/utils": "^5.4.3",
1697 | "preact": "^10.5.13"
1698 | },
1699 | "peerDependencies": {
1700 | "@uppy/core": "^3.4.0"
1701 | }
1702 | },
1703 | "node_modules/@uppy/file-input": {
1704 | "version": "3.0.3",
1705 | "resolved": "https://registry.npmjs.org/@uppy/file-input/-/file-input-3.0.3.tgz",
1706 | "integrity": "sha512-tYmbQIWjNPnKFFzBmZcNHFyMkfPAPSOrse+3qnmSWYzGKWaZfKP1zM0MiABZO/AH5X6hhLIQDRY8TsyiPfmJ9w==",
1707 | "dependencies": {
1708 | "@uppy/utils": "^5.4.3",
1709 | "preact": "^10.5.13"
1710 | },
1711 | "peerDependencies": {
1712 | "@uppy/core": "^3.4.0"
1713 | }
1714 | },
1715 | "node_modules/@uppy/informer": {
1716 | "version": "3.0.3",
1717 | "resolved": "https://registry.npmjs.org/@uppy/informer/-/informer-3.0.3.tgz",
1718 | "integrity": "sha512-jMMlZ0bCJ2ruJJ0LMl7pJrM/b0e9vjVEHvYYdQghnRSRDSMONcTJXEqNZ0Lu4x7OZR1SGvqqchFk7n3vAsuERw==",
1719 | "dependencies": {
1720 | "@uppy/utils": "^5.4.3",
1721 | "preact": "^10.5.13"
1722 | },
1723 | "peerDependencies": {
1724 | "@uppy/core": "^3.4.0"
1725 | }
1726 | },
1727 | "node_modules/@uppy/progress-bar": {
1728 | "version": "3.0.3",
1729 | "resolved": "https://registry.npmjs.org/@uppy/progress-bar/-/progress-bar-3.0.3.tgz",
1730 | "integrity": "sha512-s0iRCnDQ5zcyk8ZyTF46W7Kkf9S1hH1oj2+GBYDdFzc72tgrx49arHs3YobkH7X9whhc/qTskLe32cyC9oe6ZQ==",
1731 | "dependencies": {
1732 | "@uppy/utils": "^5.4.3",
1733 | "preact": "^10.5.13"
1734 | },
1735 | "peerDependencies": {
1736 | "@uppy/core": "^3.4.0"
1737 | }
1738 | },
1739 | "node_modules/@uppy/provider-views": {
1740 | "version": "3.5.0",
1741 | "resolved": "https://registry.npmjs.org/@uppy/provider-views/-/provider-views-3.5.0.tgz",
1742 | "integrity": "sha512-xSp5xQ6NsPLS2XJdsdBQCLgQELEd0BvVM2R34/XFyGTSqeA4NJKHfM6kSKwjW/jkj26CyFN5nth6CGeNaaKQ+w==",
1743 | "dependencies": {
1744 | "@uppy/utils": "^5.4.3",
1745 | "classnames": "^2.2.6",
1746 | "nanoid": "^4.0.0",
1747 | "p-queue": "^7.3.4",
1748 | "preact": "^10.5.13"
1749 | },
1750 | "peerDependencies": {
1751 | "@uppy/core": "^3.4.0"
1752 | }
1753 | },
1754 | "node_modules/@uppy/provider-views/node_modules/nanoid": {
1755 | "version": "4.0.2",
1756 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-4.0.2.tgz",
1757 | "integrity": "sha512-7ZtY5KTCNheRGfEFxnedV5zFiORN1+Y1N6zvPTnHQd8ENUvfaDBeuJDZb2bN/oXwXxu3qkTXDzy57W5vAmDTBw==",
1758 | "funding": [
1759 | {
1760 | "type": "github",
1761 | "url": "https://github.com/sponsors/ai"
1762 | }
1763 | ],
1764 | "bin": {
1765 | "nanoid": "bin/nanoid.js"
1766 | },
1767 | "engines": {
1768 | "node": "^14 || ^16 || >=18"
1769 | }
1770 | },
1771 | "node_modules/@uppy/react": {
1772 | "version": "3.1.3",
1773 | "resolved": "https://registry.npmjs.org/@uppy/react/-/react-3.1.3.tgz",
1774 | "integrity": "sha512-nzSpJ2PZ3lGp0wwGAxlvyIemUKE1HIITzLA9h6sUJLrweVndbXcZzxGvLm2M09l3lAE8LeybRo5Pnsn8adaH+w==",
1775 | "dependencies": {
1776 | "@uppy/utils": "^5.4.1",
1777 | "prop-types": "^15.6.1"
1778 | },
1779 | "peerDependencies": {
1780 | "@uppy/core": "^3.3.1",
1781 | "@uppy/dashboard": "^3.4.2",
1782 | "@uppy/drag-drop": "^3.0.2",
1783 | "@uppy/file-input": "^3.0.2",
1784 | "@uppy/progress-bar": "^3.0.2",
1785 | "@uppy/status-bar": "^3.2.2",
1786 | "react": "^16.0.0 || ^17.0.0 || ^18.0.0"
1787 | },
1788 | "peerDependenciesMeta": {
1789 | "@uppy/dashboard": {
1790 | "optional": true
1791 | },
1792 | "@uppy/drag-drop": {
1793 | "optional": true
1794 | },
1795 | "@uppy/file-input": {
1796 | "optional": true
1797 | },
1798 | "@uppy/progress-bar": {
1799 | "optional": true
1800 | },
1801 | "@uppy/status-bar": {
1802 | "optional": true
1803 | }
1804 | }
1805 | },
1806 | "node_modules/@uppy/status-bar": {
1807 | "version": "3.2.4",
1808 | "resolved": "https://registry.npmjs.org/@uppy/status-bar/-/status-bar-3.2.4.tgz",
1809 | "integrity": "sha512-WuK0LRmz7H7iBDV0VO+iUNoXmhbyeCEAWzslX0nqhkGuMchIQprVwd80ZegACySajqcpV1RDNxdhmgtCbRn8wA==",
1810 | "dependencies": {
1811 | "@transloadit/prettier-bytes": "0.0.9",
1812 | "@uppy/utils": "^5.4.3",
1813 | "classnames": "^2.2.6",
1814 | "preact": "^10.5.13"
1815 | },
1816 | "peerDependencies": {
1817 | "@uppy/core": "^3.4.0"
1818 | }
1819 | },
1820 | "node_modules/@uppy/store-default": {
1821 | "version": "3.0.3",
1822 | "resolved": "https://registry.npmjs.org/@uppy/store-default/-/store-default-3.0.3.tgz",
1823 | "integrity": "sha512-/zlvQNj4HjkthI+7dNdj/8mOlTg1Zb1gJ/ZsOxof0g3xXD+OAwm7asRnOwpfj2dos+lExdW/zMn8XsRGsuvb6Q=="
1824 | },
1825 | "node_modules/@uppy/thumbnail-generator": {
1826 | "version": "3.0.4",
1827 | "resolved": "https://registry.npmjs.org/@uppy/thumbnail-generator/-/thumbnail-generator-3.0.4.tgz",
1828 | "integrity": "sha512-f7E+4F6UWunX3jnV3wfL+k5zQaukKmD1z2qYbmRg5OuE9CxDJrNdAVk14KDAi79seejPJa6VVfCgGjTlIGLaRA==",
1829 | "dependencies": {
1830 | "@uppy/utils": "^5.4.3",
1831 | "exifr": "^7.0.0"
1832 | },
1833 | "peerDependencies": {
1834 | "@uppy/core": "^3.4.0"
1835 | }
1836 | },
1837 | "node_modules/@uppy/utils": {
1838 | "version": "5.5.0",
1839 | "resolved": "https://registry.npmjs.org/@uppy/utils/-/utils-5.5.0.tgz",
1840 | "integrity": "sha512-hNeYEbihSq/dKK7CZ3euvv3pN2NAO0z1x2FFoZsTajSxY4f7PPOZJoltvOQEKx1vFljhLvOY33s3KNlvXjogqg==",
1841 | "dependencies": {
1842 | "lodash": "^4.17.21",
1843 | "preact": "^10.5.13"
1844 | }
1845 | },
1846 | "node_modules/@uppy/xhr-upload": {
1847 | "version": "3.4.0",
1848 | "resolved": "https://registry.npmjs.org/@uppy/xhr-upload/-/xhr-upload-3.4.0.tgz",
1849 | "integrity": "sha512-JfJWYkV4NCkeDgS80XpSZwV6D7ssVgTeVckE/h96Sg+ehc7kXCb1aqurzOLZJJmuRiZZzcLpZEMRXYSu1tIPRQ==",
1850 | "dependencies": {
1851 | "@uppy/companion-client": "^3.4.0",
1852 | "@uppy/utils": "^5.5.0",
1853 | "nanoid": "^4.0.0"
1854 | },
1855 | "peerDependencies": {
1856 | "@uppy/core": "^3.5.0"
1857 | }
1858 | },
1859 | "node_modules/@uppy/xhr-upload/node_modules/nanoid": {
1860 | "version": "4.0.2",
1861 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-4.0.2.tgz",
1862 | "integrity": "sha512-7ZtY5KTCNheRGfEFxnedV5zFiORN1+Y1N6zvPTnHQd8ENUvfaDBeuJDZb2bN/oXwXxu3qkTXDzy57W5vAmDTBw==",
1863 | "funding": [
1864 | {
1865 | "type": "github",
1866 | "url": "https://github.com/sponsors/ai"
1867 | }
1868 | ],
1869 | "bin": {
1870 | "nanoid": "bin/nanoid.js"
1871 | },
1872 | "engines": {
1873 | "node": "^14 || ^16 || >=18"
1874 | }
1875 | },
1876 | "node_modules/bowser": {
1877 | "version": "2.11.0",
1878 | "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz",
1879 | "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA=="
1880 | },
1881 | "node_modules/busboy": {
1882 | "version": "1.6.0",
1883 | "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz",
1884 | "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==",
1885 | "dependencies": {
1886 | "streamsearch": "^1.1.0"
1887 | },
1888 | "engines": {
1889 | "node": ">=10.16.0"
1890 | }
1891 | },
1892 | "node_modules/caniuse-lite": {
1893 | "version": "1.0.30001533",
1894 | "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001533.tgz",
1895 | "integrity": "sha512-9aY/b05NKU4Yl2sbcJhn4A7MsGwR1EPfW/nrqsnqVA0Oq50wpmPaGI+R1Z0UKlUl96oxUkGEOILWtOHck0eCWw==",
1896 | "funding": [
1897 | {
1898 | "type": "opencollective",
1899 | "url": "https://opencollective.com/browserslist"
1900 | },
1901 | {
1902 | "type": "tidelift",
1903 | "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
1904 | },
1905 | {
1906 | "type": "github",
1907 | "url": "https://github.com/sponsors/ai"
1908 | }
1909 | ]
1910 | },
1911 | "node_modules/classnames": {
1912 | "version": "2.3.2",
1913 | "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz",
1914 | "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw=="
1915 | },
1916 | "node_modules/client-only": {
1917 | "version": "0.0.1",
1918 | "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz",
1919 | "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA=="
1920 | },
1921 | "node_modules/crypto-hash": {
1922 | "version": "2.0.1",
1923 | "resolved": "https://registry.npmjs.org/crypto-hash/-/crypto-hash-2.0.1.tgz",
1924 | "integrity": "sha512-t4mkp7Vh6MuCZRBf0XLzBOfhkH3nW6YEAotMDSjshVQ1GffCMGdPLSr7pKH0rdXY02jTjAZ7QW2apD0buaZXcQ==",
1925 | "engines": {
1926 | "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
1927 | },
1928 | "funding": {
1929 | "url": "https://github.com/sponsors/sindresorhus"
1930 | }
1931 | },
1932 | "node_modules/csstype": {
1933 | "version": "3.1.2",
1934 | "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz",
1935 | "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==",
1936 | "dev": true
1937 | },
1938 | "node_modules/eventemitter3": {
1939 | "version": "5.0.1",
1940 | "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz",
1941 | "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA=="
1942 | },
1943 | "node_modules/exifr": {
1944 | "version": "7.1.3",
1945 | "resolved": "https://registry.npmjs.org/exifr/-/exifr-7.1.3.tgz",
1946 | "integrity": "sha512-g/aje2noHivrRSLbAUtBPWFbxKdKhgj/xr1vATDdUXPOFYJlQ62Ft0oy+72V6XLIpDJfHs6gXLbBLAolqOXYRw=="
1947 | },
1948 | "node_modules/fast-xml-parser": {
1949 | "version": "4.2.5",
1950 | "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.2.5.tgz",
1951 | "integrity": "sha512-B9/wizE4WngqQftFPmdaMYlXoJlJOYxGQOanC77fq9k8+Z0v5dDSVh+3glErdIROP//s/jgb7ZuxKfB8nVyo0g==",
1952 | "funding": [
1953 | {
1954 | "type": "paypal",
1955 | "url": "https://paypal.me/naturalintelligence"
1956 | },
1957 | {
1958 | "type": "github",
1959 | "url": "https://github.com/sponsors/NaturalIntelligence"
1960 | }
1961 | ],
1962 | "dependencies": {
1963 | "strnum": "^1.0.5"
1964 | },
1965 | "bin": {
1966 | "fxparser": "src/cli/cli.js"
1967 | }
1968 | },
1969 | "node_modules/glob-to-regexp": {
1970 | "version": "0.4.1",
1971 | "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz",
1972 | "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw=="
1973 | },
1974 | "node_modules/graceful-fs": {
1975 | "version": "4.2.11",
1976 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
1977 | "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ=="
1978 | },
1979 | "node_modules/is-shallow-equal": {
1980 | "version": "1.0.1",
1981 | "resolved": "https://registry.npmjs.org/is-shallow-equal/-/is-shallow-equal-1.0.1.tgz",
1982 | "integrity": "sha512-lq5RvK+85Hs5J3p4oA4256M1FEffzmI533ikeDHvJd42nouRRx5wBzt36JuviiGe5dIPyHON/d0/Up+PBo6XkQ=="
1983 | },
1984 | "node_modules/js-tokens": {
1985 | "version": "4.0.0",
1986 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
1987 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
1988 | },
1989 | "node_modules/lodash": {
1990 | "version": "4.17.21",
1991 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
1992 | "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
1993 | },
1994 | "node_modules/loose-envify": {
1995 | "version": "1.4.0",
1996 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
1997 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
1998 | "dependencies": {
1999 | "js-tokens": "^3.0.0 || ^4.0.0"
2000 | },
2001 | "bin": {
2002 | "loose-envify": "cli.js"
2003 | }
2004 | },
2005 | "node_modules/memoize-one": {
2006 | "version": "6.0.0",
2007 | "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-6.0.0.tgz",
2008 | "integrity": "sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw=="
2009 | },
2010 | "node_modules/mime-match": {
2011 | "version": "1.0.2",
2012 | "resolved": "https://registry.npmjs.org/mime-match/-/mime-match-1.0.2.tgz",
2013 | "integrity": "sha512-VXp/ugGDVh3eCLOBCiHZMYWQaTNUHv2IJrut+yXA6+JbLPXHglHwfS/5A5L0ll+jkCY7fIzRJcH6OIunF+c6Cg==",
2014 | "dependencies": {
2015 | "wildcard": "^1.1.0"
2016 | }
2017 | },
2018 | "node_modules/namespace-emitter": {
2019 | "version": "2.0.1",
2020 | "resolved": "https://registry.npmjs.org/namespace-emitter/-/namespace-emitter-2.0.1.tgz",
2021 | "integrity": "sha512-N/sMKHniSDJBjfrkbS/tpkPj4RAbvW3mr8UAzvlMHyun93XEm83IAvhWtJVHo+RHn/oO8Job5YN4b+wRjSVp5g=="
2022 | },
2023 | "node_modules/nanoid": {
2024 | "version": "3.3.6",
2025 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz",
2026 | "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==",
2027 | "funding": [
2028 | {
2029 | "type": "github",
2030 | "url": "https://github.com/sponsors/ai"
2031 | }
2032 | ],
2033 | "bin": {
2034 | "nanoid": "bin/nanoid.cjs"
2035 | },
2036 | "engines": {
2037 | "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
2038 | }
2039 | },
2040 | "node_modules/next": {
2041 | "version": "13.4.19",
2042 | "resolved": "https://registry.npmjs.org/next/-/next-13.4.19.tgz",
2043 | "integrity": "sha512-HuPSzzAbJ1T4BD8e0bs6B9C1kWQ6gv8ykZoRWs5AQoiIuqbGHHdQO7Ljuvg05Q0Z24E2ABozHe6FxDvI6HfyAw==",
2044 | "dependencies": {
2045 | "@next/env": "13.4.19",
2046 | "@swc/helpers": "0.5.1",
2047 | "busboy": "1.6.0",
2048 | "caniuse-lite": "^1.0.30001406",
2049 | "postcss": "8.4.14",
2050 | "styled-jsx": "5.1.1",
2051 | "watchpack": "2.4.0",
2052 | "zod": "3.21.4"
2053 | },
2054 | "bin": {
2055 | "next": "dist/bin/next"
2056 | },
2057 | "engines": {
2058 | "node": ">=16.8.0"
2059 | },
2060 | "optionalDependencies": {
2061 | "@next/swc-darwin-arm64": "13.4.19",
2062 | "@next/swc-darwin-x64": "13.4.19",
2063 | "@next/swc-linux-arm64-gnu": "13.4.19",
2064 | "@next/swc-linux-arm64-musl": "13.4.19",
2065 | "@next/swc-linux-x64-gnu": "13.4.19",
2066 | "@next/swc-linux-x64-musl": "13.4.19",
2067 | "@next/swc-win32-arm64-msvc": "13.4.19",
2068 | "@next/swc-win32-ia32-msvc": "13.4.19",
2069 | "@next/swc-win32-x64-msvc": "13.4.19"
2070 | },
2071 | "peerDependencies": {
2072 | "@opentelemetry/api": "^1.1.0",
2073 | "react": "^18.2.0",
2074 | "react-dom": "^18.2.0",
2075 | "sass": "^1.3.0"
2076 | },
2077 | "peerDependenciesMeta": {
2078 | "@opentelemetry/api": {
2079 | "optional": true
2080 | },
2081 | "sass": {
2082 | "optional": true
2083 | }
2084 | }
2085 | },
2086 | "node_modules/object-assign": {
2087 | "version": "4.1.1",
2088 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
2089 | "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
2090 | "engines": {
2091 | "node": ">=0.10.0"
2092 | }
2093 | },
2094 | "node_modules/p-queue": {
2095 | "version": "7.4.1",
2096 | "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-7.4.1.tgz",
2097 | "integrity": "sha512-vRpMXmIkYF2/1hLBKisKeVYJZ8S2tZ0zEAmIJgdVKP2nq0nh4qCdf8bgw+ZgKrkh71AOCaqzwbJJk1WtdcF3VA==",
2098 | "dependencies": {
2099 | "eventemitter3": "^5.0.1",
2100 | "p-timeout": "^5.0.2"
2101 | },
2102 | "engines": {
2103 | "node": ">=12"
2104 | },
2105 | "funding": {
2106 | "url": "https://github.com/sponsors/sindresorhus"
2107 | }
2108 | },
2109 | "node_modules/p-timeout": {
2110 | "version": "5.1.0",
2111 | "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz",
2112 | "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==",
2113 | "engines": {
2114 | "node": ">=12"
2115 | },
2116 | "funding": {
2117 | "url": "https://github.com/sponsors/sindresorhus"
2118 | }
2119 | },
2120 | "node_modules/picocolors": {
2121 | "version": "1.0.0",
2122 | "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
2123 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
2124 | },
2125 | "node_modules/postcss": {
2126 | "version": "8.4.14",
2127 | "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz",
2128 | "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==",
2129 | "funding": [
2130 | {
2131 | "type": "opencollective",
2132 | "url": "https://opencollective.com/postcss/"
2133 | },
2134 | {
2135 | "type": "tidelift",
2136 | "url": "https://tidelift.com/funding/github/npm/postcss"
2137 | }
2138 | ],
2139 | "dependencies": {
2140 | "nanoid": "^3.3.4",
2141 | "picocolors": "^1.0.0",
2142 | "source-map-js": "^1.0.2"
2143 | },
2144 | "engines": {
2145 | "node": "^10 || ^12 || >=14"
2146 | }
2147 | },
2148 | "node_modules/preact": {
2149 | "version": "10.17.1",
2150 | "resolved": "https://registry.npmjs.org/preact/-/preact-10.17.1.tgz",
2151 | "integrity": "sha512-X9BODrvQ4Ekwv9GURm9AKAGaomqXmip7NQTZgY7gcNmr7XE83adOMJvd3N42id1tMFU7ojiynRsYnY6/BRFxLA==",
2152 | "funding": {
2153 | "type": "opencollective",
2154 | "url": "https://opencollective.com/preact"
2155 | }
2156 | },
2157 | "node_modules/prop-types": {
2158 | "version": "15.8.1",
2159 | "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz",
2160 | "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==",
2161 | "dependencies": {
2162 | "loose-envify": "^1.4.0",
2163 | "object-assign": "^4.1.1",
2164 | "react-is": "^16.13.1"
2165 | }
2166 | },
2167 | "node_modules/react": {
2168 | "version": "18.2.0",
2169 | "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz",
2170 | "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==",
2171 | "dependencies": {
2172 | "loose-envify": "^1.1.0"
2173 | },
2174 | "engines": {
2175 | "node": ">=0.10.0"
2176 | }
2177 | },
2178 | "node_modules/react-dom": {
2179 | "version": "18.2.0",
2180 | "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz",
2181 | "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==",
2182 | "dependencies": {
2183 | "loose-envify": "^1.1.0",
2184 | "scheduler": "^0.23.0"
2185 | },
2186 | "peerDependencies": {
2187 | "react": "^18.2.0"
2188 | }
2189 | },
2190 | "node_modules/react-is": {
2191 | "version": "16.13.1",
2192 | "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
2193 | "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
2194 | },
2195 | "node_modules/scheduler": {
2196 | "version": "0.23.0",
2197 | "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz",
2198 | "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==",
2199 | "dependencies": {
2200 | "loose-envify": "^1.1.0"
2201 | }
2202 | },
2203 | "node_modules/source-map-js": {
2204 | "version": "1.0.2",
2205 | "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
2206 | "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
2207 | "engines": {
2208 | "node": ">=0.10.0"
2209 | }
2210 | },
2211 | "node_modules/streamsearch": {
2212 | "version": "1.1.0",
2213 | "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz",
2214 | "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==",
2215 | "engines": {
2216 | "node": ">=10.0.0"
2217 | }
2218 | },
2219 | "node_modules/strnum": {
2220 | "version": "1.0.5",
2221 | "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz",
2222 | "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA=="
2223 | },
2224 | "node_modules/styled-jsx": {
2225 | "version": "5.1.1",
2226 | "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz",
2227 | "integrity": "sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==",
2228 | "dependencies": {
2229 | "client-only": "0.0.1"
2230 | },
2231 | "engines": {
2232 | "node": ">= 12.0.0"
2233 | },
2234 | "peerDependencies": {
2235 | "react": ">= 16.8.0 || 17.x.x || ^18.0.0-0"
2236 | },
2237 | "peerDependenciesMeta": {
2238 | "@babel/core": {
2239 | "optional": true
2240 | },
2241 | "babel-plugin-macros": {
2242 | "optional": true
2243 | }
2244 | }
2245 | },
2246 | "node_modules/tslib": {
2247 | "version": "2.6.2",
2248 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz",
2249 | "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
2250 | },
2251 | "node_modules/typescript": {
2252 | "version": "5.2.2",
2253 | "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz",
2254 | "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==",
2255 | "dev": true,
2256 | "bin": {
2257 | "tsc": "bin/tsc",
2258 | "tsserver": "bin/tsserver"
2259 | },
2260 | "engines": {
2261 | "node": ">=14.17"
2262 | }
2263 | },
2264 | "node_modules/uuid": {
2265 | "version": "8.3.2",
2266 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
2267 | "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
2268 | "bin": {
2269 | "uuid": "dist/bin/uuid"
2270 | }
2271 | },
2272 | "node_modules/watchpack": {
2273 | "version": "2.4.0",
2274 | "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz",
2275 | "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==",
2276 | "dependencies": {
2277 | "glob-to-regexp": "^0.4.1",
2278 | "graceful-fs": "^4.1.2"
2279 | },
2280 | "engines": {
2281 | "node": ">=10.13.0"
2282 | }
2283 | },
2284 | "node_modules/wildcard": {
2285 | "version": "1.1.2",
2286 | "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-1.1.2.tgz",
2287 | "integrity": "sha512-DXukZJxpHA8LuotRwL0pP1+rS6CS7FF2qStDDE1C7DDg2rLud2PXRMuEDYIPhgEezwnlHNL4c+N6MfMTjCGTng=="
2288 | },
2289 | "node_modules/zod": {
2290 | "version": "3.21.4",
2291 | "resolved": "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz",
2292 | "integrity": "sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==",
2293 | "funding": {
2294 | "url": "https://github.com/sponsors/colinhacks"
2295 | }
2296 | }
2297 | },
2298 | "dependencies": {
2299 | "@aws-crypto/crc32": {
2300 | "version": "3.0.0",
2301 | "resolved": "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-3.0.0.tgz",
2302 | "integrity": "sha512-IzSgsrxUcsrejQbPVilIKy16kAT52EwB6zSaI+M3xxIhKh5+aldEyvI+z6erM7TCLB2BJsFrtHjp6/4/sr+3dA==",
2303 | "requires": {
2304 | "@aws-crypto/util": "^3.0.0",
2305 | "@aws-sdk/types": "^3.222.0",
2306 | "tslib": "^1.11.1"
2307 | },
2308 | "dependencies": {
2309 | "tslib": {
2310 | "version": "1.14.1",
2311 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
2312 | "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
2313 | }
2314 | }
2315 | },
2316 | "@aws-crypto/crc32c": {
2317 | "version": "3.0.0",
2318 | "resolved": "https://registry.npmjs.org/@aws-crypto/crc32c/-/crc32c-3.0.0.tgz",
2319 | "integrity": "sha512-ENNPPManmnVJ4BTXlOjAgD7URidbAznURqD0KvfREyc4o20DPYdEldU1f5cQ7Jbj0CJJSPaMIk/9ZshdB3210w==",
2320 | "requires": {
2321 | "@aws-crypto/util": "^3.0.0",
2322 | "@aws-sdk/types": "^3.222.0",
2323 | "tslib": "^1.11.1"
2324 | },
2325 | "dependencies": {
2326 | "tslib": {
2327 | "version": "1.14.1",
2328 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
2329 | "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
2330 | }
2331 | }
2332 | },
2333 | "@aws-crypto/ie11-detection": {
2334 | "version": "3.0.0",
2335 | "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz",
2336 | "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==",
2337 | "requires": {
2338 | "tslib": "^1.11.1"
2339 | },
2340 | "dependencies": {
2341 | "tslib": {
2342 | "version": "1.14.1",
2343 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
2344 | "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
2345 | }
2346 | }
2347 | },
2348 | "@aws-crypto/sha1-browser": {
2349 | "version": "3.0.0",
2350 | "resolved": "https://registry.npmjs.org/@aws-crypto/sha1-browser/-/sha1-browser-3.0.0.tgz",
2351 | "integrity": "sha512-NJth5c997GLHs6nOYTzFKTbYdMNA6/1XlKVgnZoaZcQ7z7UJlOgj2JdbHE8tiYLS3fzXNCguct77SPGat2raSw==",
2352 | "requires": {
2353 | "@aws-crypto/ie11-detection": "^3.0.0",
2354 | "@aws-crypto/supports-web-crypto": "^3.0.0",
2355 | "@aws-crypto/util": "^3.0.0",
2356 | "@aws-sdk/types": "^3.222.0",
2357 | "@aws-sdk/util-locate-window": "^3.0.0",
2358 | "@aws-sdk/util-utf8-browser": "^3.0.0",
2359 | "tslib": "^1.11.1"
2360 | },
2361 | "dependencies": {
2362 | "tslib": {
2363 | "version": "1.14.1",
2364 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
2365 | "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
2366 | }
2367 | }
2368 | },
2369 | "@aws-crypto/sha256-browser": {
2370 | "version": "3.0.0",
2371 | "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz",
2372 | "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==",
2373 | "requires": {
2374 | "@aws-crypto/ie11-detection": "^3.0.0",
2375 | "@aws-crypto/sha256-js": "^3.0.0",
2376 | "@aws-crypto/supports-web-crypto": "^3.0.0",
2377 | "@aws-crypto/util": "^3.0.0",
2378 | "@aws-sdk/types": "^3.222.0",
2379 | "@aws-sdk/util-locate-window": "^3.0.0",
2380 | "@aws-sdk/util-utf8-browser": "^3.0.0",
2381 | "tslib": "^1.11.1"
2382 | },
2383 | "dependencies": {
2384 | "tslib": {
2385 | "version": "1.14.1",
2386 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
2387 | "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
2388 | }
2389 | }
2390 | },
2391 | "@aws-crypto/sha256-js": {
2392 | "version": "3.0.0",
2393 | "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz",
2394 | "integrity": "sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==",
2395 | "requires": {
2396 | "@aws-crypto/util": "^3.0.0",
2397 | "@aws-sdk/types": "^3.222.0",
2398 | "tslib": "^1.11.1"
2399 | },
2400 | "dependencies": {
2401 | "tslib": {
2402 | "version": "1.14.1",
2403 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
2404 | "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
2405 | }
2406 | }
2407 | },
2408 | "@aws-crypto/supports-web-crypto": {
2409 | "version": "3.0.0",
2410 | "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz",
2411 | "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==",
2412 | "requires": {
2413 | "tslib": "^1.11.1"
2414 | },
2415 | "dependencies": {
2416 | "tslib": {
2417 | "version": "1.14.1",
2418 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
2419 | "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
2420 | }
2421 | }
2422 | },
2423 | "@aws-crypto/util": {
2424 | "version": "3.0.0",
2425 | "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz",
2426 | "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==",
2427 | "requires": {
2428 | "@aws-sdk/types": "^3.222.0",
2429 | "@aws-sdk/util-utf8-browser": "^3.0.0",
2430 | "tslib": "^1.11.1"
2431 | },
2432 | "dependencies": {
2433 | "tslib": {
2434 | "version": "1.14.1",
2435 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
2436 | "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
2437 | }
2438 | }
2439 | },
2440 | "@aws-sdk/client-s3": {
2441 | "version": "3.410.0",
2442 | "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.410.0.tgz",
2443 | "integrity": "sha512-9pInvFl3xgk+CnbHFZVk0wAicZUiokIGQ05e/ZDBHjiWK5ph/XeQ4CCTuh7JxT0yABNhua8/6txsyq/uNXOzoA==",
2444 | "requires": {
2445 | "@aws-crypto/sha1-browser": "3.0.0",
2446 | "@aws-crypto/sha256-browser": "3.0.0",
2447 | "@aws-crypto/sha256-js": "3.0.0",
2448 | "@aws-sdk/client-sts": "3.410.0",
2449 | "@aws-sdk/credential-provider-node": "3.410.0",
2450 | "@aws-sdk/middleware-bucket-endpoint": "3.410.0",
2451 | "@aws-sdk/middleware-expect-continue": "3.410.0",
2452 | "@aws-sdk/middleware-flexible-checksums": "3.410.0",
2453 | "@aws-sdk/middleware-host-header": "3.410.0",
2454 | "@aws-sdk/middleware-location-constraint": "3.410.0",
2455 | "@aws-sdk/middleware-logger": "3.410.0",
2456 | "@aws-sdk/middleware-recursion-detection": "3.410.0",
2457 | "@aws-sdk/middleware-sdk-s3": "3.410.0",
2458 | "@aws-sdk/middleware-signing": "3.410.0",
2459 | "@aws-sdk/middleware-ssec": "3.410.0",
2460 | "@aws-sdk/middleware-user-agent": "3.410.0",
2461 | "@aws-sdk/signature-v4-multi-region": "3.410.0",
2462 | "@aws-sdk/types": "3.410.0",
2463 | "@aws-sdk/util-endpoints": "3.410.0",
2464 | "@aws-sdk/util-user-agent-browser": "3.410.0",
2465 | "@aws-sdk/util-user-agent-node": "3.410.0",
2466 | "@aws-sdk/xml-builder": "3.310.0",
2467 | "@smithy/config-resolver": "^2.0.7",
2468 | "@smithy/eventstream-serde-browser": "^2.0.6",
2469 | "@smithy/eventstream-serde-config-resolver": "^2.0.6",
2470 | "@smithy/eventstream-serde-node": "^2.0.6",
2471 | "@smithy/fetch-http-handler": "^2.1.2",
2472 | "@smithy/hash-blob-browser": "^2.0.6",
2473 | "@smithy/hash-node": "^2.0.6",
2474 | "@smithy/hash-stream-node": "^2.0.6",
2475 | "@smithy/invalid-dependency": "^2.0.6",
2476 | "@smithy/md5-js": "^2.0.6",
2477 | "@smithy/middleware-content-length": "^2.0.8",
2478 | "@smithy/middleware-endpoint": "^2.0.6",
2479 | "@smithy/middleware-retry": "^2.0.9",
2480 | "@smithy/middleware-serde": "^2.0.6",
2481 | "@smithy/middleware-stack": "^2.0.0",
2482 | "@smithy/node-config-provider": "^2.0.9",
2483 | "@smithy/node-http-handler": "^2.1.2",
2484 | "@smithy/protocol-http": "^3.0.2",
2485 | "@smithy/smithy-client": "^2.1.3",
2486 | "@smithy/types": "^2.3.0",
2487 | "@smithy/url-parser": "^2.0.6",
2488 | "@smithy/util-base64": "^2.0.0",
2489 | "@smithy/util-body-length-browser": "^2.0.0",
2490 | "@smithy/util-body-length-node": "^2.1.0",
2491 | "@smithy/util-defaults-mode-browser": "^2.0.7",
2492 | "@smithy/util-defaults-mode-node": "^2.0.9",
2493 | "@smithy/util-retry": "^2.0.0",
2494 | "@smithy/util-stream": "^2.0.9",
2495 | "@smithy/util-utf8": "^2.0.0",
2496 | "@smithy/util-waiter": "^2.0.6",
2497 | "fast-xml-parser": "4.2.5",
2498 | "tslib": "^2.5.0"
2499 | }
2500 | },
2501 | "@aws-sdk/client-sso": {
2502 | "version": "3.410.0",
2503 | "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.410.0.tgz",
2504 | "integrity": "sha512-MC9GrgwtlOuSL2WS3DRM3dQ/5y+49KSMMJRH6JiEcU5vE0dX/OtEcX+VfEwpi73x5pSfIjm7xnzjzOFx+sQBIg==",
2505 | "requires": {
2506 | "@aws-crypto/sha256-browser": "3.0.0",
2507 | "@aws-crypto/sha256-js": "3.0.0",
2508 | "@aws-sdk/middleware-host-header": "3.410.0",
2509 | "@aws-sdk/middleware-logger": "3.410.0",
2510 | "@aws-sdk/middleware-recursion-detection": "3.410.0",
2511 | "@aws-sdk/middleware-user-agent": "3.410.0",
2512 | "@aws-sdk/types": "3.410.0",
2513 | "@aws-sdk/util-endpoints": "3.410.0",
2514 | "@aws-sdk/util-user-agent-browser": "3.410.0",
2515 | "@aws-sdk/util-user-agent-node": "3.410.0",
2516 | "@smithy/config-resolver": "^2.0.7",
2517 | "@smithy/fetch-http-handler": "^2.1.2",
2518 | "@smithy/hash-node": "^2.0.6",
2519 | "@smithy/invalid-dependency": "^2.0.6",
2520 | "@smithy/middleware-content-length": "^2.0.8",
2521 | "@smithy/middleware-endpoint": "^2.0.6",
2522 | "@smithy/middleware-retry": "^2.0.9",
2523 | "@smithy/middleware-serde": "^2.0.6",
2524 | "@smithy/middleware-stack": "^2.0.0",
2525 | "@smithy/node-config-provider": "^2.0.9",
2526 | "@smithy/node-http-handler": "^2.1.2",
2527 | "@smithy/protocol-http": "^3.0.2",
2528 | "@smithy/smithy-client": "^2.1.3",
2529 | "@smithy/types": "^2.3.0",
2530 | "@smithy/url-parser": "^2.0.6",
2531 | "@smithy/util-base64": "^2.0.0",
2532 | "@smithy/util-body-length-browser": "^2.0.0",
2533 | "@smithy/util-body-length-node": "^2.1.0",
2534 | "@smithy/util-defaults-mode-browser": "^2.0.7",
2535 | "@smithy/util-defaults-mode-node": "^2.0.9",
2536 | "@smithy/util-retry": "^2.0.0",
2537 | "@smithy/util-utf8": "^2.0.0",
2538 | "tslib": "^2.5.0"
2539 | }
2540 | },
2541 | "@aws-sdk/client-sts": {
2542 | "version": "3.410.0",
2543 | "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.410.0.tgz",
2544 | "integrity": "sha512-e6VMrBJtnTxxUXwDmkADGIvyppmDMFf4+cGGA68tVCUm1cFNlCI6M/67bVSIPN/WVKAAfhEL5O2vVXCM7aatYg==",
2545 | "requires": {
2546 | "@aws-crypto/sha256-browser": "3.0.0",
2547 | "@aws-crypto/sha256-js": "3.0.0",
2548 | "@aws-sdk/credential-provider-node": "3.410.0",
2549 | "@aws-sdk/middleware-host-header": "3.410.0",
2550 | "@aws-sdk/middleware-logger": "3.410.0",
2551 | "@aws-sdk/middleware-recursion-detection": "3.410.0",
2552 | "@aws-sdk/middleware-sdk-sts": "3.410.0",
2553 | "@aws-sdk/middleware-signing": "3.410.0",
2554 | "@aws-sdk/middleware-user-agent": "3.410.0",
2555 | "@aws-sdk/types": "3.410.0",
2556 | "@aws-sdk/util-endpoints": "3.410.0",
2557 | "@aws-sdk/util-user-agent-browser": "3.410.0",
2558 | "@aws-sdk/util-user-agent-node": "3.410.0",
2559 | "@smithy/config-resolver": "^2.0.7",
2560 | "@smithy/fetch-http-handler": "^2.1.2",
2561 | "@smithy/hash-node": "^2.0.6",
2562 | "@smithy/invalid-dependency": "^2.0.6",
2563 | "@smithy/middleware-content-length": "^2.0.8",
2564 | "@smithy/middleware-endpoint": "^2.0.6",
2565 | "@smithy/middleware-retry": "^2.0.9",
2566 | "@smithy/middleware-serde": "^2.0.6",
2567 | "@smithy/middleware-stack": "^2.0.0",
2568 | "@smithy/node-config-provider": "^2.0.9",
2569 | "@smithy/node-http-handler": "^2.1.2",
2570 | "@smithy/protocol-http": "^3.0.2",
2571 | "@smithy/smithy-client": "^2.1.3",
2572 | "@smithy/types": "^2.3.0",
2573 | "@smithy/url-parser": "^2.0.6",
2574 | "@smithy/util-base64": "^2.0.0",
2575 | "@smithy/util-body-length-browser": "^2.0.0",
2576 | "@smithy/util-body-length-node": "^2.1.0",
2577 | "@smithy/util-defaults-mode-browser": "^2.0.7",
2578 | "@smithy/util-defaults-mode-node": "^2.0.9",
2579 | "@smithy/util-retry": "^2.0.0",
2580 | "@smithy/util-utf8": "^2.0.0",
2581 | "fast-xml-parser": "4.2.5",
2582 | "tslib": "^2.5.0"
2583 | }
2584 | },
2585 | "@aws-sdk/credential-provider-env": {
2586 | "version": "3.410.0",
2587 | "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.410.0.tgz",
2588 | "integrity": "sha512-c7TB9LbN0PkFOsXI0lcRJnqPNOmc4VBvrHf8jP/BkTDg4YUoKQKOFd4d0SqzODmlZiAyoMQVZTR4ISZo95Zj4Q==",
2589 | "requires": {
2590 | "@aws-sdk/types": "3.410.0",
2591 | "@smithy/property-provider": "^2.0.0",
2592 | "@smithy/types": "^2.3.0",
2593 | "tslib": "^2.5.0"
2594 | }
2595 | },
2596 | "@aws-sdk/credential-provider-ini": {
2597 | "version": "3.410.0",
2598 | "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.410.0.tgz",
2599 | "integrity": "sha512-D8rcr5bRCFD0f42MPQ7K6TWZq5d3pfqrKINL1/bpfkK5BJbvq1BGYmR88UC6CLpTRtZ1LHY2HgYG0fp/2zjjww==",
2600 | "requires": {
2601 | "@aws-sdk/credential-provider-env": "3.410.0",
2602 | "@aws-sdk/credential-provider-process": "3.410.0",
2603 | "@aws-sdk/credential-provider-sso": "3.410.0",
2604 | "@aws-sdk/credential-provider-web-identity": "3.410.0",
2605 | "@aws-sdk/types": "3.410.0",
2606 | "@smithy/credential-provider-imds": "^2.0.0",
2607 | "@smithy/property-provider": "^2.0.0",
2608 | "@smithy/shared-ini-file-loader": "^2.0.6",
2609 | "@smithy/types": "^2.3.0",
2610 | "tslib": "^2.5.0"
2611 | }
2612 | },
2613 | "@aws-sdk/credential-provider-node": {
2614 | "version": "3.410.0",
2615 | "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.410.0.tgz",
2616 | "integrity": "sha512-0wmVm33T/j1FS7MZ/j+WsPlgSc0YnCXnpbWSov1Mn6R86SHI2b2JhdIPRRE4XbGfyW2QGNUl2CwoZVaqhXeF5g==",
2617 | "requires": {
2618 | "@aws-sdk/credential-provider-env": "3.410.0",
2619 | "@aws-sdk/credential-provider-ini": "3.410.0",
2620 | "@aws-sdk/credential-provider-process": "3.410.0",
2621 | "@aws-sdk/credential-provider-sso": "3.410.0",
2622 | "@aws-sdk/credential-provider-web-identity": "3.410.0",
2623 | "@aws-sdk/types": "3.410.0",
2624 | "@smithy/credential-provider-imds": "^2.0.0",
2625 | "@smithy/property-provider": "^2.0.0",
2626 | "@smithy/shared-ini-file-loader": "^2.0.6",
2627 | "@smithy/types": "^2.3.0",
2628 | "tslib": "^2.5.0"
2629 | }
2630 | },
2631 | "@aws-sdk/credential-provider-process": {
2632 | "version": "3.410.0",
2633 | "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.410.0.tgz",
2634 | "integrity": "sha512-BMju1hlDCDNkkSZpKF5SQ8G0WCLRj6/Jvw9QmudLHJuVwYJXEW1r2AsVMg98OZ3hB9G+MAvHruHZIbMiNmUMXQ==",
2635 | "requires": {
2636 | "@aws-sdk/types": "3.410.0",
2637 | "@smithy/property-provider": "^2.0.0",
2638 | "@smithy/shared-ini-file-loader": "^2.0.6",
2639 | "@smithy/types": "^2.3.0",
2640 | "tslib": "^2.5.0"
2641 | }
2642 | },
2643 | "@aws-sdk/credential-provider-sso": {
2644 | "version": "3.410.0",
2645 | "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.410.0.tgz",
2646 | "integrity": "sha512-zEaoY/sY+KYTlQUkp9dvveAHf175b8RIt0DsQkDrRPtrg/RBHR00r5rFvz9+nrwsR8546RaBU7h/zzTaQGhmcA==",
2647 | "requires": {
2648 | "@aws-sdk/client-sso": "3.410.0",
2649 | "@aws-sdk/token-providers": "3.410.0",
2650 | "@aws-sdk/types": "3.410.0",
2651 | "@smithy/property-provider": "^2.0.0",
2652 | "@smithy/shared-ini-file-loader": "^2.0.6",
2653 | "@smithy/types": "^2.3.0",
2654 | "tslib": "^2.5.0"
2655 | }
2656 | },
2657 | "@aws-sdk/credential-provider-web-identity": {
2658 | "version": "3.410.0",
2659 | "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.410.0.tgz",
2660 | "integrity": "sha512-cE0l8LmEHdWbDkdPNgrfdYSgp4/cIVXrjUKI1QCATA729CrHZ/OQjB/maOBOrMHO9YTiggko887NkslVvwVB7w==",
2661 | "requires": {
2662 | "@aws-sdk/types": "3.410.0",
2663 | "@smithy/property-provider": "^2.0.0",
2664 | "@smithy/types": "^2.3.0",
2665 | "tslib": "^2.5.0"
2666 | }
2667 | },
2668 | "@aws-sdk/middleware-bucket-endpoint": {
2669 | "version": "3.410.0",
2670 | "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.410.0.tgz",
2671 | "integrity": "sha512-pUGrpFgCKf9fDHu01JJhhw+MUImheS0HFlZwNG37OMubkxUAbCdmYGewGxfTCUvWyZJtx9bVjrSu6gG7w+RARg==",
2672 | "requires": {
2673 | "@aws-sdk/types": "3.410.0",
2674 | "@aws-sdk/util-arn-parser": "3.310.0",
2675 | "@smithy/node-config-provider": "^2.0.9",
2676 | "@smithy/protocol-http": "^3.0.2",
2677 | "@smithy/types": "^2.3.0",
2678 | "@smithy/util-config-provider": "^2.0.0",
2679 | "tslib": "^2.5.0"
2680 | }
2681 | },
2682 | "@aws-sdk/middleware-expect-continue": {
2683 | "version": "3.410.0",
2684 | "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.410.0.tgz",
2685 | "integrity": "sha512-e5YqGCNmW99GZjEPPujJ02RlEZql19U40oORysBhVF7mKz8BBvF3s8l37tvu37oxebDEkh1u/2cm2+ggOXxLjQ==",
2686 | "requires": {
2687 | "@aws-sdk/types": "3.410.0",
2688 | "@smithy/protocol-http": "^3.0.2",
2689 | "@smithy/types": "^2.3.0",
2690 | "tslib": "^2.5.0"
2691 | }
2692 | },
2693 | "@aws-sdk/middleware-flexible-checksums": {
2694 | "version": "3.410.0",
2695 | "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.410.0.tgz",
2696 | "integrity": "sha512-IK7KlvEKtrQVBfmAp/MmGd0wbWLuN2GZwwfAmsU0qFb0f5vOVUbKDsu6tudtDKCBG9uXyTEsx3/QGvoK2zDy+g==",
2697 | "requires": {
2698 | "@aws-crypto/crc32": "3.0.0",
2699 | "@aws-crypto/crc32c": "3.0.0",
2700 | "@aws-sdk/types": "3.410.0",
2701 | "@smithy/is-array-buffer": "^2.0.0",
2702 | "@smithy/protocol-http": "^3.0.2",
2703 | "@smithy/types": "^2.3.0",
2704 | "@smithy/util-utf8": "^2.0.0",
2705 | "tslib": "^2.5.0"
2706 | }
2707 | },
2708 | "@aws-sdk/middleware-host-header": {
2709 | "version": "3.410.0",
2710 | "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.410.0.tgz",
2711 | "integrity": "sha512-ED/OVcyITln5rrxnajZP+V0PN1nug+gSDHJDqdDo/oLy7eiDr/ZWn3nlWW7WcMplQ1/Jnb+hK0UetBp/25XooA==",
2712 | "requires": {
2713 | "@aws-sdk/types": "3.410.0",
2714 | "@smithy/protocol-http": "^3.0.2",
2715 | "@smithy/types": "^2.3.0",
2716 | "tslib": "^2.5.0"
2717 | }
2718 | },
2719 | "@aws-sdk/middleware-location-constraint": {
2720 | "version": "3.410.0",
2721 | "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.410.0.tgz",
2722 | "integrity": "sha512-jAftSpOpw/5AdpOJ/cGiXCb+Vv22KXR5QZmxmllUDsnlm18672tpRaI2plmu/1d98CVvqhY61eSklFMrIf2c4w==",
2723 | "requires": {
2724 | "@aws-sdk/types": "3.410.0",
2725 | "@smithy/types": "^2.3.0",
2726 | "tslib": "^2.5.0"
2727 | }
2728 | },
2729 | "@aws-sdk/middleware-logger": {
2730 | "version": "3.410.0",
2731 | "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.410.0.tgz",
2732 | "integrity": "sha512-YtmKYCVtBfScq3/UFJk+aSZOktKJBNZL9DaSc2aPcy/goCVsYDOkGwtHk0jIkC1JRSNCkVTqL7ya60sSr8zaQQ==",
2733 | "requires": {
2734 | "@aws-sdk/types": "3.410.0",
2735 | "@smithy/types": "^2.3.0",
2736 | "tslib": "^2.5.0"
2737 | }
2738 | },
2739 | "@aws-sdk/middleware-recursion-detection": {
2740 | "version": "3.410.0",
2741 | "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.410.0.tgz",
2742 | "integrity": "sha512-KWaes5FLzRqj28vaIEE4Bimpga2E596WdPF2HaH6zsVMJddoRDsc3ZX9ZhLOGrXzIO1RqBd0QxbLrM0S/B2aOQ==",
2743 | "requires": {
2744 | "@aws-sdk/types": "3.410.0",
2745 | "@smithy/protocol-http": "^3.0.2",
2746 | "@smithy/types": "^2.3.0",
2747 | "tslib": "^2.5.0"
2748 | }
2749 | },
2750 | "@aws-sdk/middleware-sdk-s3": {
2751 | "version": "3.410.0",
2752 | "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.410.0.tgz",
2753 | "integrity": "sha512-K2sG2V1ZkezYMCIy3uMt0MwtflcfIwLptwm0iFLaYitiINZQ1tcslk9ggAjyTHg0rslDSI4/zjkhy8VHFOV7HA==",
2754 | "requires": {
2755 | "@aws-sdk/types": "3.410.0",
2756 | "@aws-sdk/util-arn-parser": "3.310.0",
2757 | "@smithy/protocol-http": "^3.0.2",
2758 | "@smithy/types": "^2.3.0",
2759 | "tslib": "^2.5.0"
2760 | }
2761 | },
2762 | "@aws-sdk/middleware-sdk-sts": {
2763 | "version": "3.410.0",
2764 | "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.410.0.tgz",
2765 | "integrity": "sha512-YfBpctDocRR4CcROoDueJA7D+aMLBV8nTFfmVNdLLLgyuLZ/AUR11VQSu1lf9gQZKl8IpKE/BLf2fRE/qV1ZuA==",
2766 | "requires": {
2767 | "@aws-sdk/middleware-signing": "3.410.0",
2768 | "@aws-sdk/types": "3.410.0",
2769 | "@smithy/types": "^2.3.0",
2770 | "tslib": "^2.5.0"
2771 | }
2772 | },
2773 | "@aws-sdk/middleware-signing": {
2774 | "version": "3.410.0",
2775 | "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.410.0.tgz",
2776 | "integrity": "sha512-KBAZ/eoAJUSJv5us2HsKwK2OszG2s9FEyKpEhgnHLcbbKzW873zHBH5GcOGEQu4AWArTy2ndzJu3FF+9/J9hJQ==",
2777 | "requires": {
2778 | "@aws-sdk/types": "3.410.0",
2779 | "@smithy/property-provider": "^2.0.0",
2780 | "@smithy/protocol-http": "^3.0.2",
2781 | "@smithy/signature-v4": "^2.0.0",
2782 | "@smithy/types": "^2.3.0",
2783 | "@smithy/util-middleware": "^2.0.0",
2784 | "tslib": "^2.5.0"
2785 | }
2786 | },
2787 | "@aws-sdk/middleware-ssec": {
2788 | "version": "3.410.0",
2789 | "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.410.0.tgz",
2790 | "integrity": "sha512-DNsjVTXoxIh+PuW9o45CFaMiconbuZRm19MC3NA1yNCaCj3ZxD5OdXAutq6UjQdrx8UG4EjUlCJEEvBKmboITw==",
2791 | "requires": {
2792 | "@aws-sdk/types": "3.410.0",
2793 | "@smithy/types": "^2.3.0",
2794 | "tslib": "^2.5.0"
2795 | }
2796 | },
2797 | "@aws-sdk/middleware-user-agent": {
2798 | "version": "3.410.0",
2799 | "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.410.0.tgz",
2800 | "integrity": "sha512-ZayDtLfvCZUohSxQc/49BfoU/y6bDHLfLdyyUJbJ54Sv8zQcrmdyKvCBFUZwE6tHQgAmv9/ZT18xECMl+xiONA==",
2801 | "requires": {
2802 | "@aws-sdk/types": "3.410.0",
2803 | "@aws-sdk/util-endpoints": "3.410.0",
2804 | "@smithy/protocol-http": "^3.0.2",
2805 | "@smithy/types": "^2.3.0",
2806 | "tslib": "^2.5.0"
2807 | }
2808 | },
2809 | "@aws-sdk/s3-request-presigner": {
2810 | "version": "3.410.0",
2811 | "resolved": "https://registry.npmjs.org/@aws-sdk/s3-request-presigner/-/s3-request-presigner-3.410.0.tgz",
2812 | "integrity": "sha512-In2/XPdPA874XH0MdhLJ7tG74Yay/ATCMpMQcy+summlPhmO1G3BiKMoaDPRks+zJNhgiy6++PlcP93fwDSxcA==",
2813 | "requires": {
2814 | "@aws-sdk/signature-v4-multi-region": "3.410.0",
2815 | "@aws-sdk/types": "3.410.0",
2816 | "@aws-sdk/util-format-url": "3.410.0",
2817 | "@smithy/middleware-endpoint": "^2.0.6",
2818 | "@smithy/protocol-http": "^3.0.2",
2819 | "@smithy/smithy-client": "^2.1.3",
2820 | "@smithy/types": "^2.3.0",
2821 | "tslib": "^2.5.0"
2822 | }
2823 | },
2824 | "@aws-sdk/signature-v4-multi-region": {
2825 | "version": "3.410.0",
2826 | "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.410.0.tgz",
2827 | "integrity": "sha512-abgcl9/i9frxGUVAfHHWj49UMCFEmzkYwKmV/4kw9MYn6BZ3HKb5M00tBLn9/PcAKfANS7O+qJRiEQT66rmfhg==",
2828 | "requires": {
2829 | "@aws-sdk/types": "3.410.0",
2830 | "@smithy/protocol-http": "^3.0.2",
2831 | "@smithy/signature-v4": "^2.0.0",
2832 | "@smithy/types": "^2.3.0",
2833 | "tslib": "^2.5.0"
2834 | }
2835 | },
2836 | "@aws-sdk/token-providers": {
2837 | "version": "3.410.0",
2838 | "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.410.0.tgz",
2839 | "integrity": "sha512-d5Nc0xydkH/X0LA1HDyhGY5sEv4LuADFk+QpDtT8ogLilcre+b1jpdY8Sih/gd1KoGS1H+d1tz2hSGwUHAbUbw==",
2840 | "requires": {
2841 | "@aws-crypto/sha256-browser": "3.0.0",
2842 | "@aws-crypto/sha256-js": "3.0.0",
2843 | "@aws-sdk/middleware-host-header": "3.410.0",
2844 | "@aws-sdk/middleware-logger": "3.410.0",
2845 | "@aws-sdk/middleware-recursion-detection": "3.410.0",
2846 | "@aws-sdk/middleware-user-agent": "3.410.0",
2847 | "@aws-sdk/types": "3.410.0",
2848 | "@aws-sdk/util-endpoints": "3.410.0",
2849 | "@aws-sdk/util-user-agent-browser": "3.410.0",
2850 | "@aws-sdk/util-user-agent-node": "3.410.0",
2851 | "@smithy/config-resolver": "^2.0.7",
2852 | "@smithy/fetch-http-handler": "^2.1.2",
2853 | "@smithy/hash-node": "^2.0.6",
2854 | "@smithy/invalid-dependency": "^2.0.6",
2855 | "@smithy/middleware-content-length": "^2.0.8",
2856 | "@smithy/middleware-endpoint": "^2.0.6",
2857 | "@smithy/middleware-retry": "^2.0.9",
2858 | "@smithy/middleware-serde": "^2.0.6",
2859 | "@smithy/middleware-stack": "^2.0.0",
2860 | "@smithy/node-config-provider": "^2.0.9",
2861 | "@smithy/node-http-handler": "^2.1.2",
2862 | "@smithy/property-provider": "^2.0.0",
2863 | "@smithy/protocol-http": "^3.0.2",
2864 | "@smithy/shared-ini-file-loader": "^2.0.6",
2865 | "@smithy/smithy-client": "^2.1.3",
2866 | "@smithy/types": "^2.3.0",
2867 | "@smithy/url-parser": "^2.0.6",
2868 | "@smithy/util-base64": "^2.0.0",
2869 | "@smithy/util-body-length-browser": "^2.0.0",
2870 | "@smithy/util-body-length-node": "^2.1.0",
2871 | "@smithy/util-defaults-mode-browser": "^2.0.7",
2872 | "@smithy/util-defaults-mode-node": "^2.0.9",
2873 | "@smithy/util-retry": "^2.0.0",
2874 | "@smithy/util-utf8": "^2.0.0",
2875 | "tslib": "^2.5.0"
2876 | }
2877 | },
2878 | "@aws-sdk/types": {
2879 | "version": "3.410.0",
2880 | "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.410.0.tgz",
2881 | "integrity": "sha512-D7iaUCszv/v04NDaZUmCmekamy6VD/lKozm/3gS9+dkfU6cC2CsNoUfPV8BlV6dPdw0oWgF91am3I1stdvfVrQ==",
2882 | "requires": {
2883 | "@smithy/types": "^2.3.0",
2884 | "tslib": "^2.5.0"
2885 | }
2886 | },
2887 | "@aws-sdk/util-arn-parser": {
2888 | "version": "3.310.0",
2889 | "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.310.0.tgz",
2890 | "integrity": "sha512-jL8509owp/xB9+Or0pvn3Fe+b94qfklc2yPowZZIFAkFcCSIdkIglz18cPDWnYAcy9JGewpMS1COXKIUhZkJsA==",
2891 | "requires": {
2892 | "tslib": "^2.5.0"
2893 | }
2894 | },
2895 | "@aws-sdk/util-endpoints": {
2896 | "version": "3.410.0",
2897 | "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.410.0.tgz",
2898 | "integrity": "sha512-iNiqJyC7N3+8zFwnXUqcWSxrZecVZLToo1iTQQdeYL2af1IcOtRgb7n8jpAI/hmXhBSx2+3RI+Y7pxyFo1vu+w==",
2899 | "requires": {
2900 | "@aws-sdk/types": "3.410.0",
2901 | "tslib": "^2.5.0"
2902 | }
2903 | },
2904 | "@aws-sdk/util-format-url": {
2905 | "version": "3.410.0",
2906 | "resolved": "https://registry.npmjs.org/@aws-sdk/util-format-url/-/util-format-url-3.410.0.tgz",
2907 | "integrity": "sha512-ftxPYq7RBxJMQrOCJARx8+sQccmG+6y7mm9JzfXOHOfS1aWnYQizTitJ7PMA8p90xrUAFQ2CmjT0jaEGWg5VGQ==",
2908 | "requires": {
2909 | "@aws-sdk/types": "3.410.0",
2910 | "@smithy/querystring-builder": "^2.0.6",
2911 | "@smithy/types": "^2.3.0",
2912 | "tslib": "^2.5.0"
2913 | }
2914 | },
2915 | "@aws-sdk/util-locate-window": {
2916 | "version": "3.310.0",
2917 | "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.310.0.tgz",
2918 | "integrity": "sha512-qo2t/vBTnoXpjKxlsC2e1gBrRm80M3bId27r0BRB2VniSSe7bL1mmzM+/HFtujm0iAxtPM+aLEflLJlJeDPg0w==",
2919 | "requires": {
2920 | "tslib": "^2.5.0"
2921 | }
2922 | },
2923 | "@aws-sdk/util-user-agent-browser": {
2924 | "version": "3.410.0",
2925 | "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.410.0.tgz",
2926 | "integrity": "sha512-i1G/XGpXGMRT2zEiAhi1xucJsfCWk8nNYjk/LbC0sA+7B9Huri96YAzVib12wkHPsJQvZxZC6CpQDIHWm4lXMA==",
2927 | "requires": {
2928 | "@aws-sdk/types": "3.410.0",
2929 | "@smithy/types": "^2.3.0",
2930 | "bowser": "^2.11.0",
2931 | "tslib": "^2.5.0"
2932 | }
2933 | },
2934 | "@aws-sdk/util-user-agent-node": {
2935 | "version": "3.410.0",
2936 | "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.410.0.tgz",
2937 | "integrity": "sha512-bK70t1jHRl8HrJXd4hEIwc5PBZ7U0w+81AKFnanIVKZwZedd6nLibUXDTK14z/Jp2GFcBqd4zkt2YLGkRt/U4A==",
2938 | "requires": {
2939 | "@aws-sdk/types": "3.410.0",
2940 | "@smithy/node-config-provider": "^2.0.9",
2941 | "@smithy/types": "^2.3.0",
2942 | "tslib": "^2.5.0"
2943 | }
2944 | },
2945 | "@aws-sdk/util-utf8-browser": {
2946 | "version": "3.259.0",
2947 | "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.259.0.tgz",
2948 | "integrity": "sha512-UvFa/vR+e19XookZF8RzFZBrw2EUkQWxiBW0yYQAhvk3C+QVGl0H3ouca8LDBlBfQKXwmW3huo/59H8rwb1wJw==",
2949 | "requires": {
2950 | "tslib": "^2.3.1"
2951 | }
2952 | },
2953 | "@aws-sdk/xml-builder": {
2954 | "version": "3.310.0",
2955 | "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.310.0.tgz",
2956 | "integrity": "sha512-TqELu4mOuSIKQCqj63fGVs86Yh+vBx5nHRpWKNUNhB2nPTpfbziTs5c1X358be3peVWA4wPxW7Nt53KIg1tnNw==",
2957 | "requires": {
2958 | "tslib": "^2.5.0"
2959 | }
2960 | },
2961 | "@next/env": {
2962 | "version": "13.4.19",
2963 | "resolved": "https://registry.npmjs.org/@next/env/-/env-13.4.19.tgz",
2964 | "integrity": "sha512-FsAT5x0jF2kkhNkKkukhsyYOrRqtSxrEhfliniIq0bwWbuXLgyt3Gv0Ml+b91XwjwArmuP7NxCiGd++GGKdNMQ=="
2965 | },
2966 | "@next/swc-darwin-arm64": {
2967 | "version": "13.4.19",
2968 | "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.4.19.tgz",
2969 | "integrity": "sha512-vv1qrjXeGbuF2mOkhkdxMDtv9np7W4mcBtaDnHU+yJG+bBwa6rYsYSCI/9Xm5+TuF5SbZbrWO6G1NfTh1TMjvQ==",
2970 | "optional": true
2971 | },
2972 | "@next/swc-darwin-x64": {
2973 | "version": "13.4.19",
2974 | "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-13.4.19.tgz",
2975 | "integrity": "sha512-jyzO6wwYhx6F+7gD8ddZfuqO4TtpJdw3wyOduR4fxTUCm3aLw7YmHGYNjS0xRSYGAkLpBkH1E0RcelyId6lNsw==",
2976 | "optional": true
2977 | },
2978 | "@next/swc-linux-arm64-gnu": {
2979 | "version": "13.4.19",
2980 | "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.4.19.tgz",
2981 | "integrity": "sha512-vdlnIlaAEh6H+G6HrKZB9c2zJKnpPVKnA6LBwjwT2BTjxI7e0Hx30+FoWCgi50e+YO49p6oPOtesP9mXDRiiUg==",
2982 | "optional": true
2983 | },
2984 | "@next/swc-linux-arm64-musl": {
2985 | "version": "13.4.19",
2986 | "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.4.19.tgz",
2987 | "integrity": "sha512-aU0HkH2XPgxqrbNRBFb3si9Ahu/CpaR5RPmN2s9GiM9qJCiBBlZtRTiEca+DC+xRPyCThTtWYgxjWHgU7ZkyvA==",
2988 | "optional": true
2989 | },
2990 | "@next/swc-linux-x64-gnu": {
2991 | "version": "13.4.19",
2992 | "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.4.19.tgz",
2993 | "integrity": "sha512-htwOEagMa/CXNykFFeAHHvMJeqZfNQEoQvHfsA4wgg5QqGNqD5soeCer4oGlCol6NGUxknrQO6VEustcv+Md+g==",
2994 | "optional": true
2995 | },
2996 | "@next/swc-linux-x64-musl": {
2997 | "version": "13.4.19",
2998 | "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.4.19.tgz",
2999 | "integrity": "sha512-4Gj4vvtbK1JH8ApWTT214b3GwUh9EKKQjY41hH/t+u55Knxi/0wesMzwQRhppK6Ddalhu0TEttbiJ+wRcoEj5Q==",
3000 | "optional": true
3001 | },
3002 | "@next/swc-win32-arm64-msvc": {
3003 | "version": "13.4.19",
3004 | "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.4.19.tgz",
3005 | "integrity": "sha512-bUfDevQK4NsIAHXs3/JNgnvEY+LRyneDN788W2NYiRIIzmILjba7LaQTfihuFawZDhRtkYCv3JDC3B4TwnmRJw==",
3006 | "optional": true
3007 | },
3008 | "@next/swc-win32-ia32-msvc": {
3009 | "version": "13.4.19",
3010 | "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.4.19.tgz",
3011 | "integrity": "sha512-Y5kikILFAr81LYIFaw6j/NrOtmiM4Sf3GtOc0pn50ez2GCkr+oejYuKGcwAwq3jiTKuzF6OF4iT2INPoxRycEA==",
3012 | "optional": true
3013 | },
3014 | "@next/swc-win32-x64-msvc": {
3015 | "version": "13.4.19",
3016 | "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.4.19.tgz",
3017 | "integrity": "sha512-YzA78jBDXMYiINdPdJJwGgPNT3YqBNNGhsthsDoWHL9p24tEJn9ViQf/ZqTbwSpX/RrkPupLfuuTH2sf73JBAw==",
3018 | "optional": true
3019 | },
3020 | "@smithy/abort-controller": {
3021 | "version": "2.0.6",
3022 | "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-2.0.6.tgz",
3023 | "integrity": "sha512-4I7g0lyGUlW2onf8mD76IzU37oRWSHsQ5zlW5MjDzgg4I4J9bOK4500Gx6qOuoN7+GulAnGLe1YwyrIluzhakg==",
3024 | "requires": {
3025 | "@smithy/types": "^2.3.0",
3026 | "tslib": "^2.5.0"
3027 | }
3028 | },
3029 | "@smithy/chunked-blob-reader": {
3030 | "version": "2.0.0",
3031 | "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader/-/chunked-blob-reader-2.0.0.tgz",
3032 | "integrity": "sha512-k+J4GHJsMSAIQPChGBrjEmGS+WbPonCXesoqP9fynIqjn7rdOThdH8FAeCmokP9mxTYKQAKoHCLPzNlm6gh7Wg==",
3033 | "requires": {
3034 | "tslib": "^2.5.0"
3035 | }
3036 | },
3037 | "@smithy/chunked-blob-reader-native": {
3038 | "version": "2.0.0",
3039 | "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-2.0.0.tgz",
3040 | "integrity": "sha512-HM8V2Rp1y8+1343tkZUKZllFhEQPNmpNdgFAncbTsxkZ18/gqjk23XXv3qGyXWp412f3o43ZZ1UZHVcHrpRnCQ==",
3041 | "requires": {
3042 | "@smithy/util-base64": "^2.0.0",
3043 | "tslib": "^2.5.0"
3044 | }
3045 | },
3046 | "@smithy/config-resolver": {
3047 | "version": "2.0.7",
3048 | "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-2.0.7.tgz",
3049 | "integrity": "sha512-J4J1AWiqaApC+3I9U++SuxAQ3BOoM5VoYnpFzCZcb63aLF80Zpc/nq2pFR1OsEIYyg2UYNdcBKKfHABmwo4WgQ==",
3050 | "requires": {
3051 | "@smithy/node-config-provider": "^2.0.9",
3052 | "@smithy/types": "^2.3.0",
3053 | "@smithy/util-config-provider": "^2.0.0",
3054 | "@smithy/util-middleware": "^2.0.0",
3055 | "tslib": "^2.5.0"
3056 | }
3057 | },
3058 | "@smithy/credential-provider-imds": {
3059 | "version": "2.0.9",
3060 | "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-2.0.9.tgz",
3061 | "integrity": "sha512-K7WZRkHS5HZofRgK+O8W4YXXyaVexU1K6hp9vlUL/8CsnrFbZS9quyH/6hTROrYh2PuJr24yii1kc83NJdxMGQ==",
3062 | "requires": {
3063 | "@smithy/node-config-provider": "^2.0.9",
3064 | "@smithy/property-provider": "^2.0.7",
3065 | "@smithy/types": "^2.3.0",
3066 | "@smithy/url-parser": "^2.0.6",
3067 | "tslib": "^2.5.0"
3068 | }
3069 | },
3070 | "@smithy/eventstream-codec": {
3071 | "version": "2.0.6",
3072 | "resolved": "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-2.0.6.tgz",
3073 | "integrity": "sha512-J9xL82mlYRUMXFnB9VaThXkD7z2JLr52FIVZMoQQ1dxZG5ub+NOGmzaTTZC/cMmKXI/nwCoFuwDWCTjwQhYhQA==",
3074 | "requires": {
3075 | "@aws-crypto/crc32": "3.0.0",
3076 | "@smithy/types": "^2.3.0",
3077 | "@smithy/util-hex-encoding": "^2.0.0",
3078 | "tslib": "^2.5.0"
3079 | }
3080 | },
3081 | "@smithy/eventstream-serde-browser": {
3082 | "version": "2.0.6",
3083 | "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-2.0.6.tgz",
3084 | "integrity": "sha512-cNJqAkmArHytV0CjBka3CKnU/J6zNlOZynvo2Txj98a0cxKeug8gL6SQTpoTyGk+M4LicjcrzQtDs06mU8U0Ag==",
3085 | "requires": {
3086 | "@smithy/eventstream-serde-universal": "^2.0.6",
3087 | "@smithy/types": "^2.3.0",
3088 | "tslib": "^2.5.0"
3089 | }
3090 | },
3091 | "@smithy/eventstream-serde-config-resolver": {
3092 | "version": "2.0.6",
3093 | "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-2.0.6.tgz",
3094 | "integrity": "sha512-jODu0MWaP06kzBMUtSd4Ga3S2DnTp3tfjPgdjaw9K/Z4yI7J9rUB73aNGo6ZxxH/vl/k66b5NZJ/3O1AzZ4ggw==",
3095 | "requires": {
3096 | "@smithy/types": "^2.3.0",
3097 | "tslib": "^2.5.0"
3098 | }
3099 | },
3100 | "@smithy/eventstream-serde-node": {
3101 | "version": "2.0.6",
3102 | "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-2.0.6.tgz",
3103 | "integrity": "sha512-ua7ok1g16p7OGAVZntn1l3wegN8RtsyPBl9ebqEDeSxdm+iuEfkAS1E/JFs6S6UBfr8Z0tbql5jTT9iVwIFGGA==",
3104 | "requires": {
3105 | "@smithy/eventstream-serde-universal": "^2.0.6",
3106 | "@smithy/types": "^2.3.0",
3107 | "tslib": "^2.5.0"
3108 | }
3109 | },
3110 | "@smithy/eventstream-serde-universal": {
3111 | "version": "2.0.6",
3112 | "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-2.0.6.tgz",
3113 | "integrity": "sha512-bH1TElelS8tlqll6cJAWKM11Es+pE9htRzjiiFG1+xcyKaM90UFNRX5oKZIrJugZlmP37pvfRwSJ/3ZaaqSBIA==",
3114 | "requires": {
3115 | "@smithy/eventstream-codec": "^2.0.6",
3116 | "@smithy/types": "^2.3.0",
3117 | "tslib": "^2.5.0"
3118 | }
3119 | },
3120 | "@smithy/fetch-http-handler": {
3121 | "version": "2.1.2",
3122 | "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-2.1.2.tgz",
3123 | "integrity": "sha512-3Gm3pQm4viUPU+e7KkRScS9t5phBxSNRS8rQSZ+HeCwK/busrX0/2HJZiwLvGblqPqi1laJB0lD18AdiOioJww==",
3124 | "requires": {
3125 | "@smithy/protocol-http": "^3.0.2",
3126 | "@smithy/querystring-builder": "^2.0.6",
3127 | "@smithy/types": "^2.3.0",
3128 | "@smithy/util-base64": "^2.0.0",
3129 | "tslib": "^2.5.0"
3130 | }
3131 | },
3132 | "@smithy/hash-blob-browser": {
3133 | "version": "2.0.6",
3134 | "resolved": "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-2.0.6.tgz",
3135 | "integrity": "sha512-zmJCRb80WDthCZqQ9LiKeFUEmyPM9WUcd0jYa7tlU3p0LsDnaFKuUS+MT0uJehPGyUEicbi1KBdUmtoqEAQr1A==",
3136 | "requires": {
3137 | "@smithy/chunked-blob-reader": "^2.0.0",
3138 | "@smithy/chunked-blob-reader-native": "^2.0.0",
3139 | "@smithy/types": "^2.3.0",
3140 | "tslib": "^2.5.0"
3141 | }
3142 | },
3143 | "@smithy/hash-node": {
3144 | "version": "2.0.6",
3145 | "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-2.0.6.tgz",
3146 | "integrity": "sha512-xz7fzFxSzxohKGGyKPbLReRrY01JOZgRDHIXSks3PxQxG9c8PJMa5nUw0stH8UOySUgkofmMy0n7vTUsF5Mdqg==",
3147 | "requires": {
3148 | "@smithy/types": "^2.3.0",
3149 | "@smithy/util-buffer-from": "^2.0.0",
3150 | "@smithy/util-utf8": "^2.0.0",
3151 | "tslib": "^2.5.0"
3152 | }
3153 | },
3154 | "@smithy/hash-stream-node": {
3155 | "version": "2.0.6",
3156 | "resolved": "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-2.0.6.tgz",
3157 | "integrity": "sha512-BWtWJ8Ppc8z+Rz9XBu4Hcl+pC+9BKV5GvbQpXZf4IsQX6oTwqo0qJK7Lwe5mYM0hRnqgwjn2mhQ303fIRN7AMw==",
3158 | "requires": {
3159 | "@smithy/types": "^2.3.0",
3160 | "@smithy/util-utf8": "^2.0.0",
3161 | "tslib": "^2.5.0"
3162 | }
3163 | },
3164 | "@smithy/invalid-dependency": {
3165 | "version": "2.0.6",
3166 | "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-2.0.6.tgz",
3167 | "integrity": "sha512-L5MUyl9mzawIvBxr0Hg3J/Q5qZFXKcBgMk0PacfK3Mthp4WAR6h7iMxdSQ23Q7X/kxOrpZuoYEdh1BWLKbDc8Q==",
3168 | "requires": {
3169 | "@smithy/types": "^2.3.0",
3170 | "tslib": "^2.5.0"
3171 | }
3172 | },
3173 | "@smithy/is-array-buffer": {
3174 | "version": "2.0.0",
3175 | "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.0.0.tgz",
3176 | "integrity": "sha512-z3PjFjMyZNI98JFRJi/U0nGoLWMSJlDjAW4QUX2WNZLas5C0CmVV6LJ01JI0k90l7FvpmixjWxPFmENSClQ7ug==",
3177 | "requires": {
3178 | "tslib": "^2.5.0"
3179 | }
3180 | },
3181 | "@smithy/md5-js": {
3182 | "version": "2.0.6",
3183 | "resolved": "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-2.0.6.tgz",
3184 | "integrity": "sha512-Ek2qSFFICJa2E0RRVsIkQ6c1jeJTESwF24SMh3liKFNbr2Ax4uJiWsLhDBDQFOhJwjp1mbC4lN85isfGS+KhQg==",
3185 | "requires": {
3186 | "@smithy/types": "^2.3.0",
3187 | "@smithy/util-utf8": "^2.0.0",
3188 | "tslib": "^2.5.0"
3189 | }
3190 | },
3191 | "@smithy/middleware-content-length": {
3192 | "version": "2.0.8",
3193 | "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-2.0.8.tgz",
3194 | "integrity": "sha512-fHJFsscHXrYhUSWMFJNXfsZW8KsyhWQfBgU3b0nvDfpm+NAeQLqKYNhywGrDwZQc1k+lt7Fw9faAquhNPxTZRA==",
3195 | "requires": {
3196 | "@smithy/protocol-http": "^3.0.2",
3197 | "@smithy/types": "^2.3.0",
3198 | "tslib": "^2.5.0"
3199 | }
3200 | },
3201 | "@smithy/middleware-endpoint": {
3202 | "version": "2.0.6",
3203 | "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-2.0.6.tgz",
3204 | "integrity": "sha512-MuSPPtEHFal/M77tR3ffLsdOfX29IZpA990nGuoPj5zQnAYrA4PYBGoqqrASQKm8Xb3C0NwuYzOATT7WX4f5Pg==",
3205 | "requires": {
3206 | "@smithy/middleware-serde": "^2.0.6",
3207 | "@smithy/types": "^2.3.0",
3208 | "@smithy/url-parser": "^2.0.6",
3209 | "@smithy/util-middleware": "^2.0.0",
3210 | "tslib": "^2.5.0"
3211 | }
3212 | },
3213 | "@smithy/middleware-retry": {
3214 | "version": "2.0.9",
3215 | "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-2.0.9.tgz",
3216 | "integrity": "sha512-gneEqWj4l/ZjHdZPk0BFMXoTalRArdQ8i579/KqJgBAc6Ux5vnR/SSppkMCkj2kOQYwdypvzSPeqEW3ZrvIg6g==",
3217 | "requires": {
3218 | "@smithy/node-config-provider": "^2.0.9",
3219 | "@smithy/protocol-http": "^3.0.2",
3220 | "@smithy/service-error-classification": "^2.0.0",
3221 | "@smithy/types": "^2.3.0",
3222 | "@smithy/util-middleware": "^2.0.0",
3223 | "@smithy/util-retry": "^2.0.0",
3224 | "tslib": "^2.5.0",
3225 | "uuid": "^8.3.2"
3226 | }
3227 | },
3228 | "@smithy/middleware-serde": {
3229 | "version": "2.0.6",
3230 | "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-2.0.6.tgz",
3231 | "integrity": "sha512-8/GODBngYbrS28CMZtaHIL4R9rLNSQ/zgb+N1OAZ02NwBUawlnLDcatve9YRzhJC/IWz0/pt+WimJZaO1sGcig==",
3232 | "requires": {
3233 | "@smithy/types": "^2.3.0",
3234 | "tslib": "^2.5.0"
3235 | }
3236 | },
3237 | "@smithy/middleware-stack": {
3238 | "version": "2.0.0",
3239 | "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-2.0.0.tgz",
3240 | "integrity": "sha512-31XC1xNF65nlbc16yuh3wwTudmqs6qy4EseQUGF8A/p2m/5wdd/cnXJqpniy/XvXVwkHPz/GwV36HqzHtIKATQ==",
3241 | "requires": {
3242 | "tslib": "^2.5.0"
3243 | }
3244 | },
3245 | "@smithy/node-config-provider": {
3246 | "version": "2.0.9",
3247 | "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-2.0.9.tgz",
3248 | "integrity": "sha512-TlSPbCwtT/jgNnmPQqKuCR5CFN8UIrCCHRrgUfs3NqRMuaLLeP8TPe1fSKq2J8h1M/jd4BF853gneles0gWevg==",
3249 | "requires": {
3250 | "@smithy/property-provider": "^2.0.7",
3251 | "@smithy/shared-ini-file-loader": "^2.0.8",
3252 | "@smithy/types": "^2.3.0",
3253 | "tslib": "^2.5.0"
3254 | }
3255 | },
3256 | "@smithy/node-http-handler": {
3257 | "version": "2.1.2",
3258 | "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-2.1.2.tgz",
3259 | "integrity": "sha512-PdEEDCShuM8zxGoaRxmGB/1ikB8oeqz+ZAF9VIA8FCP3E59j8zDTF+wCELoWd1Y6gtxr+RcTAg5sA8nvn5qH/w==",
3260 | "requires": {
3261 | "@smithy/abort-controller": "^2.0.6",
3262 | "@smithy/protocol-http": "^3.0.2",
3263 | "@smithy/querystring-builder": "^2.0.6",
3264 | "@smithy/types": "^2.3.0",
3265 | "tslib": "^2.5.0"
3266 | }
3267 | },
3268 | "@smithy/property-provider": {
3269 | "version": "2.0.7",
3270 | "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-2.0.7.tgz",
3271 | "integrity": "sha512-XT8Tl7YNxM8tCtGqy7v7DSf6PxyXaPE9cdA/Yj4dEw2b05V3RrPqsP+t5XJiZu0yIsQ7pdeYZWv2sSEWVjNeAg==",
3272 | "requires": {
3273 | "@smithy/types": "^2.3.0",
3274 | "tslib": "^2.5.0"
3275 | }
3276 | },
3277 | "@smithy/protocol-http": {
3278 | "version": "3.0.2",
3279 | "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-3.0.2.tgz",
3280 | "integrity": "sha512-LUOWCPRihvJBkdSs+ivK9m1f/rMfF3n9Zpzg8qdry2eIG4HQqqLBMWQyF9bgk7JhsrrOa3//jJKhXzvL7wL5Xw==",
3281 | "requires": {
3282 | "@smithy/types": "^2.3.0",
3283 | "tslib": "^2.5.0"
3284 | }
3285 | },
3286 | "@smithy/querystring-builder": {
3287 | "version": "2.0.6",
3288 | "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-2.0.6.tgz",
3289 | "integrity": "sha512-HnU00shCGoV8vKJZTiNBkNvR9NogU3NIUaVMAGJPSqNGJj3psWo+TUrC0BVCDcwiCljXwXCFGJqIcsWtClrktQ==",
3290 | "requires": {
3291 | "@smithy/types": "^2.3.0",
3292 | "@smithy/util-uri-escape": "^2.0.0",
3293 | "tslib": "^2.5.0"
3294 | }
3295 | },
3296 | "@smithy/querystring-parser": {
3297 | "version": "2.0.6",
3298 | "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-2.0.6.tgz",
3299 | "integrity": "sha512-i4LKoXHP7pTFAPjLIJyQXYOhWokbcFha3WWsX74sAKmuluv0XM2cxONZoFxwEzmWhsNyM6buSwJSZXyPiec0AQ==",
3300 | "requires": {
3301 | "@smithy/types": "^2.3.0",
3302 | "tslib": "^2.5.0"
3303 | }
3304 | },
3305 | "@smithy/service-error-classification": {
3306 | "version": "2.0.0",
3307 | "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-2.0.0.tgz",
3308 | "integrity": "sha512-2z5Nafy1O0cTf69wKyNjGW/sNVMiqDnb4jgwfMG8ye8KnFJ5qmJpDccwIbJNhXIfbsxTg9SEec2oe1cexhMJvw=="
3309 | },
3310 | "@smithy/shared-ini-file-loader": {
3311 | "version": "2.0.8",
3312 | "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-2.0.8.tgz",
3313 | "integrity": "sha512-4u+V+Dv7JGpJ0tppB5rxCem7WhdFux950z4cGPhV0kHTPkKe8DDgINzOlVa2RBu5dI33D02OBJcxFjhW4FPORg==",
3314 | "requires": {
3315 | "@smithy/types": "^2.3.0",
3316 | "tslib": "^2.5.0"
3317 | }
3318 | },
3319 | "@smithy/signature-v4": {
3320 | "version": "2.0.6",
3321 | "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-2.0.6.tgz",
3322 | "integrity": "sha512-4zNTi8w4sky07YKq7oYucZt4ogY00IEaS1NFDXxmCN5V/ywE0WiK+WMim+8wtYQmB0qy3oExZR4LoCAml6j/rA==",
3323 | "requires": {
3324 | "@smithy/eventstream-codec": "^2.0.6",
3325 | "@smithy/is-array-buffer": "^2.0.0",
3326 | "@smithy/types": "^2.3.0",
3327 | "@smithy/util-hex-encoding": "^2.0.0",
3328 | "@smithy/util-middleware": "^2.0.0",
3329 | "@smithy/util-uri-escape": "^2.0.0",
3330 | "@smithy/util-utf8": "^2.0.0",
3331 | "tslib": "^2.5.0"
3332 | }
3333 | },
3334 | "@smithy/smithy-client": {
3335 | "version": "2.1.3",
3336 | "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-2.1.3.tgz",
3337 | "integrity": "sha512-nSMMp2AKqcG/ruzCY01ogrMdbq/WS1cvGStTsw7yd6bTpp/bGtlOgXvy3h7e0zP7w2DH1AtvIwzYBD6ejZePsQ==",
3338 | "requires": {
3339 | "@smithy/middleware-stack": "^2.0.0",
3340 | "@smithy/types": "^2.3.0",
3341 | "@smithy/util-stream": "^2.0.9",
3342 | "tslib": "^2.5.0"
3343 | }
3344 | },
3345 | "@smithy/types": {
3346 | "version": "2.3.0",
3347 | "resolved": "https://registry.npmjs.org/@smithy/types/-/types-2.3.0.tgz",
3348 | "integrity": "sha512-pJce3rd39MElkV57UTPAoSYAApjQLELUxjU5adHNLYk9gnPvyIGbJNJTZVVFu00BrgZH3W/cQe8QuFcknDyodQ==",
3349 | "requires": {
3350 | "tslib": "^2.5.0"
3351 | }
3352 | },
3353 | "@smithy/url-parser": {
3354 | "version": "2.0.6",
3355 | "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-2.0.6.tgz",
3356 | "integrity": "sha512-9i6j5QW6bapHZ4rtkXOAm0hOUG1+5IVdVJXNSUTcNskwJchZH5IQuDNPCbgUi/u2P8EZazKt4wXT51QxOXCz1A==",
3357 | "requires": {
3358 | "@smithy/querystring-parser": "^2.0.6",
3359 | "@smithy/types": "^2.3.0",
3360 | "tslib": "^2.5.0"
3361 | }
3362 | },
3363 | "@smithy/util-base64": {
3364 | "version": "2.0.0",
3365 | "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-2.0.0.tgz",
3366 | "integrity": "sha512-Zb1E4xx+m5Lud8bbeYi5FkcMJMnn+1WUnJF3qD7rAdXpaL7UjkFQLdmW5fHadoKbdHpwH9vSR8EyTJFHJs++tA==",
3367 | "requires": {
3368 | "@smithy/util-buffer-from": "^2.0.0",
3369 | "tslib": "^2.5.0"
3370 | }
3371 | },
3372 | "@smithy/util-body-length-browser": {
3373 | "version": "2.0.0",
3374 | "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-2.0.0.tgz",
3375 | "integrity": "sha512-JdDuS4ircJt+FDnaQj88TzZY3+njZ6O+D3uakS32f2VNnDo3vyEuNdBOh/oFd8Df1zSZOuH1HEChk2AOYDezZg==",
3376 | "requires": {
3377 | "tslib": "^2.5.0"
3378 | }
3379 | },
3380 | "@smithy/util-body-length-node": {
3381 | "version": "2.1.0",
3382 | "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-2.1.0.tgz",
3383 | "integrity": "sha512-/li0/kj/y3fQ3vyzn36NTLGmUwAICb7Jbe/CsWCktW363gh1MOcpEcSO3mJ344Gv2dqz8YJCLQpb6hju/0qOWw==",
3384 | "requires": {
3385 | "tslib": "^2.5.0"
3386 | }
3387 | },
3388 | "@smithy/util-buffer-from": {
3389 | "version": "2.0.0",
3390 | "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.0.0.tgz",
3391 | "integrity": "sha512-/YNnLoHsR+4W4Vf2wL5lGv0ksg8Bmk3GEGxn2vEQt52AQaPSCuaO5PM5VM7lP1K9qHRKHwrPGktqVoAHKWHxzw==",
3392 | "requires": {
3393 | "@smithy/is-array-buffer": "^2.0.0",
3394 | "tslib": "^2.5.0"
3395 | }
3396 | },
3397 | "@smithy/util-config-provider": {
3398 | "version": "2.0.0",
3399 | "resolved": "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-2.0.0.tgz",
3400 | "integrity": "sha512-xCQ6UapcIWKxXHEU4Mcs2s7LcFQRiU3XEluM2WcCjjBtQkUN71Tb+ydGmJFPxMUrW/GWMgQEEGipLym4XG0jZg==",
3401 | "requires": {
3402 | "tslib": "^2.5.0"
3403 | }
3404 | },
3405 | "@smithy/util-defaults-mode-browser": {
3406 | "version": "2.0.7",
3407 | "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-2.0.7.tgz",
3408 | "integrity": "sha512-s1caKxC7Y87Q72Goll//clZs2WNBfG9WtFDWVRS+Qgk147YPCOUYtkpuD0XZAh/vbayObFz5tQ1fiX4G19HSCA==",
3409 | "requires": {
3410 | "@smithy/property-provider": "^2.0.7",
3411 | "@smithy/types": "^2.3.0",
3412 | "bowser": "^2.11.0",
3413 | "tslib": "^2.5.0"
3414 | }
3415 | },
3416 | "@smithy/util-defaults-mode-node": {
3417 | "version": "2.0.9",
3418 | "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-2.0.9.tgz",
3419 | "integrity": "sha512-HlV4iNL3/PgPpmDGs0+XrAKtwFQ8rOs5P2y5Dye8dUYaJauadlzHRrNKk7wH2aBYswvT2HM+PIgXamvrE7xbcw==",
3420 | "requires": {
3421 | "@smithy/config-resolver": "^2.0.7",
3422 | "@smithy/credential-provider-imds": "^2.0.9",
3423 | "@smithy/node-config-provider": "^2.0.9",
3424 | "@smithy/property-provider": "^2.0.7",
3425 | "@smithy/types": "^2.3.0",
3426 | "tslib": "^2.5.0"
3427 | }
3428 | },
3429 | "@smithy/util-hex-encoding": {
3430 | "version": "2.0.0",
3431 | "resolved": "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-2.0.0.tgz",
3432 | "integrity": "sha512-c5xY+NUnFqG6d7HFh1IFfrm3mGl29lC+vF+geHv4ToiuJCBmIfzx6IeHLg+OgRdPFKDXIw6pvi+p3CsscaMcMA==",
3433 | "requires": {
3434 | "tslib": "^2.5.0"
3435 | }
3436 | },
3437 | "@smithy/util-middleware": {
3438 | "version": "2.0.0",
3439 | "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-2.0.0.tgz",
3440 | "integrity": "sha512-eCWX4ECuDHn1wuyyDdGdUWnT4OGyIzV0LN1xRttBFMPI9Ff/4heSHVxneyiMtOB//zpXWCha1/SWHJOZstG7kA==",
3441 | "requires": {
3442 | "tslib": "^2.5.0"
3443 | }
3444 | },
3445 | "@smithy/util-retry": {
3446 | "version": "2.0.0",
3447 | "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-2.0.0.tgz",
3448 | "integrity": "sha512-/dvJ8afrElasuiiIttRJeoS2sy8YXpksQwiM/TcepqdRVp7u4ejd9C4IQURHNjlfPUT7Y6lCDSa2zQJbdHhVTg==",
3449 | "requires": {
3450 | "@smithy/service-error-classification": "^2.0.0",
3451 | "tslib": "^2.5.0"
3452 | }
3453 | },
3454 | "@smithy/util-stream": {
3455 | "version": "2.0.9",
3456 | "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-2.0.9.tgz",
3457 | "integrity": "sha512-Fn2/3IMwqu0l2hOC7K3bbtSqFEJ6nOzMLoPVIhuH84yw/95itNkFBwVbIIiAfDaout0ZfZ26+5ch86E2q3avww==",
3458 | "requires": {
3459 | "@smithy/fetch-http-handler": "^2.1.2",
3460 | "@smithy/node-http-handler": "^2.1.2",
3461 | "@smithy/types": "^2.3.0",
3462 | "@smithy/util-base64": "^2.0.0",
3463 | "@smithy/util-buffer-from": "^2.0.0",
3464 | "@smithy/util-hex-encoding": "^2.0.0",
3465 | "@smithy/util-utf8": "^2.0.0",
3466 | "tslib": "^2.5.0"
3467 | }
3468 | },
3469 | "@smithy/util-uri-escape": {
3470 | "version": "2.0.0",
3471 | "resolved": "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-2.0.0.tgz",
3472 | "integrity": "sha512-ebkxsqinSdEooQduuk9CbKcI+wheijxEb3utGXkCoYQkJnwTnLbH1JXGimJtUkQwNQbsbuYwG2+aFVyZf5TLaw==",
3473 | "requires": {
3474 | "tslib": "^2.5.0"
3475 | }
3476 | },
3477 | "@smithy/util-utf8": {
3478 | "version": "2.0.0",
3479 | "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.0.0.tgz",
3480 | "integrity": "sha512-rctU1VkziY84n5OXe3bPNpKR001ZCME2JCaBBFgtiM2hfKbHFudc/BkMuPab8hRbLd0j3vbnBTTZ1igBf0wgiQ==",
3481 | "requires": {
3482 | "@smithy/util-buffer-from": "^2.0.0",
3483 | "tslib": "^2.5.0"
3484 | }
3485 | },
3486 | "@smithy/util-waiter": {
3487 | "version": "2.0.6",
3488 | "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-2.0.6.tgz",
3489 | "integrity": "sha512-wjxvKB4XSfgpOg3lr4RulnVhd21fMMC4CPARBwrSN7+3U28fwOifv8f7T+Ibay9DAQTj9qXxmd8ag6WXBRgNhg==",
3490 | "requires": {
3491 | "@smithy/abort-controller": "^2.0.6",
3492 | "@smithy/types": "^2.3.0",
3493 | "tslib": "^2.5.0"
3494 | }
3495 | },
3496 | "@swc/helpers": {
3497 | "version": "0.5.1",
3498 | "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.1.tgz",
3499 | "integrity": "sha512-sJ902EfIzn1Fa+qYmjdQqh8tPsoxyBz+8yBKC2HKUxyezKJFwPGOn7pv4WY6QuQW//ySQi5lJjA/ZT9sNWWNTg==",
3500 | "requires": {
3501 | "tslib": "^2.4.0"
3502 | }
3503 | },
3504 | "@transloadit/prettier-bytes": {
3505 | "version": "0.0.9",
3506 | "resolved": "https://registry.npmjs.org/@transloadit/prettier-bytes/-/prettier-bytes-0.0.9.tgz",
3507 | "integrity": "sha512-pCvdmea/F3Tn4hAtHqNXmjcixSaroJJ+L3STXlYJdir1g1m2mRQpWbN8a4SvgQtaw2930Ckhdx8qXdXBFMKbAA=="
3508 | },
3509 | "@types/node": {
3510 | "version": "20.6.0",
3511 | "resolved": "https://registry.npmjs.org/@types/node/-/node-20.6.0.tgz",
3512 | "integrity": "sha512-najjVq5KN2vsH2U/xyh2opaSEz6cZMR2SetLIlxlj08nOcmPOemJmUK2o4kUzfLqfrWE0PIrNeE16XhYDd3nqg==",
3513 | "dev": true
3514 | },
3515 | "@types/prop-types": {
3516 | "version": "15.7.5",
3517 | "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz",
3518 | "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==",
3519 | "dev": true
3520 | },
3521 | "@types/react": {
3522 | "version": "18.2.21",
3523 | "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.21.tgz",
3524 | "integrity": "sha512-neFKG/sBAwGxHgXiIxnbm3/AAVQ/cMRS93hvBpg8xYRbeQSPVABp9U2bRnPf0iI4+Ucdv3plSxKK+3CW2ENJxA==",
3525 | "dev": true,
3526 | "requires": {
3527 | "@types/prop-types": "*",
3528 | "@types/scheduler": "*",
3529 | "csstype": "^3.0.2"
3530 | }
3531 | },
3532 | "@types/scheduler": {
3533 | "version": "0.16.3",
3534 | "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.3.tgz",
3535 | "integrity": "sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ==",
3536 | "dev": true
3537 | },
3538 | "@uppy/aws-s3": {
3539 | "version": "3.3.0",
3540 | "resolved": "https://registry.npmjs.org/@uppy/aws-s3/-/aws-s3-3.3.0.tgz",
3541 | "integrity": "sha512-M+dzWWdCZHBaauZTitLHA/ciDU8FMJ310fyTZ10PiBOPCyw+aGDtfzoyYVmaDHf5jkw/mIOgyQjO8VM+pTjAzA==",
3542 | "requires": {
3543 | "@uppy/aws-s3-multipart": "^3.6.0",
3544 | "@uppy/companion-client": "^3.4.0",
3545 | "@uppy/utils": "^5.5.0",
3546 | "@uppy/xhr-upload": "^3.4.0",
3547 | "nanoid": "^4.0.0"
3548 | },
3549 | "dependencies": {
3550 | "nanoid": {
3551 | "version": "4.0.2",
3552 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-4.0.2.tgz",
3553 | "integrity": "sha512-7ZtY5KTCNheRGfEFxnedV5zFiORN1+Y1N6zvPTnHQd8ENUvfaDBeuJDZb2bN/oXwXxu3qkTXDzy57W5vAmDTBw=="
3554 | }
3555 | }
3556 | },
3557 | "@uppy/aws-s3-multipart": {
3558 | "version": "3.6.0",
3559 | "resolved": "https://registry.npmjs.org/@uppy/aws-s3-multipart/-/aws-s3-multipart-3.6.0.tgz",
3560 | "integrity": "sha512-4TYOptKsofNks11ktRbrGaPvEapd3hj+IIatcAxjJ0RX4SwwjMbvSNKzS3PBbwLnpVfAIFHA/n5S9EgKocVmYg==",
3561 | "requires": {
3562 | "@uppy/companion-client": "^3.4.0",
3563 | "@uppy/utils": "^5.5.0"
3564 | }
3565 | },
3566 | "@uppy/companion-client": {
3567 | "version": "3.4.0",
3568 | "resolved": "https://registry.npmjs.org/@uppy/companion-client/-/companion-client-3.4.0.tgz",
3569 | "integrity": "sha512-mGm3I/VdlaXvvYnbkidQDk3ttPY7VjvRwoHdXaAOHsIwPZBFUlCRggw84TQN9NejiasqTK/U7xvARDunjVhGBA==",
3570 | "requires": {
3571 | "@uppy/utils": "^5.5.0",
3572 | "namespace-emitter": "^2.0.1"
3573 | }
3574 | },
3575 | "@uppy/core": {
3576 | "version": "3.5.0",
3577 | "resolved": "https://registry.npmjs.org/@uppy/core/-/core-3.5.0.tgz",
3578 | "integrity": "sha512-Ujm3VrFkqCNnsqvjZL1RQhIdccbjUxfLJW6EhirYcOLr1kCUjhgKSE/iOJnC2eadohHwOWFTx+X8e9bhH6HT7g==",
3579 | "requires": {
3580 | "@transloadit/prettier-bytes": "0.0.9",
3581 | "@uppy/store-default": "^3.0.3",
3582 | "@uppy/utils": "^5.5.0",
3583 | "lodash": "^4.17.21",
3584 | "mime-match": "^1.0.2",
3585 | "namespace-emitter": "^2.0.1",
3586 | "nanoid": "^4.0.0",
3587 | "preact": "^10.5.13"
3588 | },
3589 | "dependencies": {
3590 | "nanoid": {
3591 | "version": "4.0.2",
3592 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-4.0.2.tgz",
3593 | "integrity": "sha512-7ZtY5KTCNheRGfEFxnedV5zFiORN1+Y1N6zvPTnHQd8ENUvfaDBeuJDZb2bN/oXwXxu3qkTXDzy57W5vAmDTBw=="
3594 | }
3595 | }
3596 | },
3597 | "@uppy/dashboard": {
3598 | "version": "3.5.2",
3599 | "resolved": "https://registry.npmjs.org/@uppy/dashboard/-/dashboard-3.5.2.tgz",
3600 | "integrity": "sha512-6CWhqqm93Uo2QpwYrDRCVrpxStCCK359Wr8CvaOi14BJrcE8JyPczXbrzHMzbjKt2Rz8G3TzQUa1r9nZkylrGQ==",
3601 | "requires": {
3602 | "@transloadit/prettier-bytes": "0.0.7",
3603 | "@uppy/informer": "^3.0.3",
3604 | "@uppy/provider-views": "^3.5.0",
3605 | "@uppy/status-bar": "^3.2.4",
3606 | "@uppy/thumbnail-generator": "^3.0.4",
3607 | "@uppy/utils": "^5.5.0",
3608 | "classnames": "^2.2.6",
3609 | "is-shallow-equal": "^1.0.1",
3610 | "lodash": "^4.17.21",
3611 | "memoize-one": "^6.0.0",
3612 | "nanoid": "^4.0.0",
3613 | "preact": "^10.5.13"
3614 | },
3615 | "dependencies": {
3616 | "@transloadit/prettier-bytes": {
3617 | "version": "0.0.7",
3618 | "resolved": "https://registry.npmjs.org/@transloadit/prettier-bytes/-/prettier-bytes-0.0.7.tgz",
3619 | "integrity": "sha512-VeJbUb0wEKbcwaSlj5n+LscBl9IPgLPkHVGBkh00cztv6X4L/TJXK58LzFuBKX7/GAfiGhIwH67YTLTlzvIzBA=="
3620 | },
3621 | "nanoid": {
3622 | "version": "4.0.2",
3623 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-4.0.2.tgz",
3624 | "integrity": "sha512-7ZtY5KTCNheRGfEFxnedV5zFiORN1+Y1N6zvPTnHQd8ENUvfaDBeuJDZb2bN/oXwXxu3qkTXDzy57W5vAmDTBw=="
3625 | }
3626 | }
3627 | },
3628 | "@uppy/drag-drop": {
3629 | "version": "3.0.3",
3630 | "resolved": "https://registry.npmjs.org/@uppy/drag-drop/-/drag-drop-3.0.3.tgz",
3631 | "integrity": "sha512-0bCgQKxg+9vkxQipTgrX9yQIuK9a0hZrkipm1+Ynq6jTeig49b7II1bWYnoKdiYhi6nRE4UnDJf4z09yCAU7rA==",
3632 | "requires": {
3633 | "@uppy/utils": "^5.4.3",
3634 | "preact": "^10.5.13"
3635 | }
3636 | },
3637 | "@uppy/file-input": {
3638 | "version": "3.0.3",
3639 | "resolved": "https://registry.npmjs.org/@uppy/file-input/-/file-input-3.0.3.tgz",
3640 | "integrity": "sha512-tYmbQIWjNPnKFFzBmZcNHFyMkfPAPSOrse+3qnmSWYzGKWaZfKP1zM0MiABZO/AH5X6hhLIQDRY8TsyiPfmJ9w==",
3641 | "requires": {
3642 | "@uppy/utils": "^5.4.3",
3643 | "preact": "^10.5.13"
3644 | }
3645 | },
3646 | "@uppy/informer": {
3647 | "version": "3.0.3",
3648 | "resolved": "https://registry.npmjs.org/@uppy/informer/-/informer-3.0.3.tgz",
3649 | "integrity": "sha512-jMMlZ0bCJ2ruJJ0LMl7pJrM/b0e9vjVEHvYYdQghnRSRDSMONcTJXEqNZ0Lu4x7OZR1SGvqqchFk7n3vAsuERw==",
3650 | "requires": {
3651 | "@uppy/utils": "^5.4.3",
3652 | "preact": "^10.5.13"
3653 | }
3654 | },
3655 | "@uppy/progress-bar": {
3656 | "version": "3.0.3",
3657 | "resolved": "https://registry.npmjs.org/@uppy/progress-bar/-/progress-bar-3.0.3.tgz",
3658 | "integrity": "sha512-s0iRCnDQ5zcyk8ZyTF46W7Kkf9S1hH1oj2+GBYDdFzc72tgrx49arHs3YobkH7X9whhc/qTskLe32cyC9oe6ZQ==",
3659 | "requires": {
3660 | "@uppy/utils": "^5.4.3",
3661 | "preact": "^10.5.13"
3662 | }
3663 | },
3664 | "@uppy/provider-views": {
3665 | "version": "3.5.0",
3666 | "resolved": "https://registry.npmjs.org/@uppy/provider-views/-/provider-views-3.5.0.tgz",
3667 | "integrity": "sha512-xSp5xQ6NsPLS2XJdsdBQCLgQELEd0BvVM2R34/XFyGTSqeA4NJKHfM6kSKwjW/jkj26CyFN5nth6CGeNaaKQ+w==",
3668 | "requires": {
3669 | "@uppy/utils": "^5.4.3",
3670 | "classnames": "^2.2.6",
3671 | "nanoid": "^4.0.0",
3672 | "p-queue": "^7.3.4",
3673 | "preact": "^10.5.13"
3674 | },
3675 | "dependencies": {
3676 | "nanoid": {
3677 | "version": "4.0.2",
3678 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-4.0.2.tgz",
3679 | "integrity": "sha512-7ZtY5KTCNheRGfEFxnedV5zFiORN1+Y1N6zvPTnHQd8ENUvfaDBeuJDZb2bN/oXwXxu3qkTXDzy57W5vAmDTBw=="
3680 | }
3681 | }
3682 | },
3683 | "@uppy/react": {
3684 | "version": "3.1.3",
3685 | "resolved": "https://registry.npmjs.org/@uppy/react/-/react-3.1.3.tgz",
3686 | "integrity": "sha512-nzSpJ2PZ3lGp0wwGAxlvyIemUKE1HIITzLA9h6sUJLrweVndbXcZzxGvLm2M09l3lAE8LeybRo5Pnsn8adaH+w==",
3687 | "requires": {
3688 | "@uppy/utils": "^5.4.1",
3689 | "prop-types": "^15.6.1"
3690 | }
3691 | },
3692 | "@uppy/status-bar": {
3693 | "version": "3.2.4",
3694 | "resolved": "https://registry.npmjs.org/@uppy/status-bar/-/status-bar-3.2.4.tgz",
3695 | "integrity": "sha512-WuK0LRmz7H7iBDV0VO+iUNoXmhbyeCEAWzslX0nqhkGuMchIQprVwd80ZegACySajqcpV1RDNxdhmgtCbRn8wA==",
3696 | "requires": {
3697 | "@transloadit/prettier-bytes": "0.0.9",
3698 | "@uppy/utils": "^5.4.3",
3699 | "classnames": "^2.2.6",
3700 | "preact": "^10.5.13"
3701 | }
3702 | },
3703 | "@uppy/store-default": {
3704 | "version": "3.0.3",
3705 | "resolved": "https://registry.npmjs.org/@uppy/store-default/-/store-default-3.0.3.tgz",
3706 | "integrity": "sha512-/zlvQNj4HjkthI+7dNdj/8mOlTg1Zb1gJ/ZsOxof0g3xXD+OAwm7asRnOwpfj2dos+lExdW/zMn8XsRGsuvb6Q=="
3707 | },
3708 | "@uppy/thumbnail-generator": {
3709 | "version": "3.0.4",
3710 | "resolved": "https://registry.npmjs.org/@uppy/thumbnail-generator/-/thumbnail-generator-3.0.4.tgz",
3711 | "integrity": "sha512-f7E+4F6UWunX3jnV3wfL+k5zQaukKmD1z2qYbmRg5OuE9CxDJrNdAVk14KDAi79seejPJa6VVfCgGjTlIGLaRA==",
3712 | "requires": {
3713 | "@uppy/utils": "^5.4.3",
3714 | "exifr": "^7.0.0"
3715 | }
3716 | },
3717 | "@uppy/utils": {
3718 | "version": "5.5.0",
3719 | "resolved": "https://registry.npmjs.org/@uppy/utils/-/utils-5.5.0.tgz",
3720 | "integrity": "sha512-hNeYEbihSq/dKK7CZ3euvv3pN2NAO0z1x2FFoZsTajSxY4f7PPOZJoltvOQEKx1vFljhLvOY33s3KNlvXjogqg==",
3721 | "requires": {
3722 | "lodash": "^4.17.21",
3723 | "preact": "^10.5.13"
3724 | }
3725 | },
3726 | "@uppy/xhr-upload": {
3727 | "version": "3.4.0",
3728 | "resolved": "https://registry.npmjs.org/@uppy/xhr-upload/-/xhr-upload-3.4.0.tgz",
3729 | "integrity": "sha512-JfJWYkV4NCkeDgS80XpSZwV6D7ssVgTeVckE/h96Sg+ehc7kXCb1aqurzOLZJJmuRiZZzcLpZEMRXYSu1tIPRQ==",
3730 | "requires": {
3731 | "@uppy/companion-client": "^3.4.0",
3732 | "@uppy/utils": "^5.5.0",
3733 | "nanoid": "^4.0.0"
3734 | },
3735 | "dependencies": {
3736 | "nanoid": {
3737 | "version": "4.0.2",
3738 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-4.0.2.tgz",
3739 | "integrity": "sha512-7ZtY5KTCNheRGfEFxnedV5zFiORN1+Y1N6zvPTnHQd8ENUvfaDBeuJDZb2bN/oXwXxu3qkTXDzy57W5vAmDTBw=="
3740 | }
3741 | }
3742 | },
3743 | "bowser": {
3744 | "version": "2.11.0",
3745 | "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz",
3746 | "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA=="
3747 | },
3748 | "busboy": {
3749 | "version": "1.6.0",
3750 | "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz",
3751 | "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==",
3752 | "requires": {
3753 | "streamsearch": "^1.1.0"
3754 | }
3755 | },
3756 | "caniuse-lite": {
3757 | "version": "1.0.30001533",
3758 | "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001533.tgz",
3759 | "integrity": "sha512-9aY/b05NKU4Yl2sbcJhn4A7MsGwR1EPfW/nrqsnqVA0Oq50wpmPaGI+R1Z0UKlUl96oxUkGEOILWtOHck0eCWw=="
3760 | },
3761 | "classnames": {
3762 | "version": "2.3.2",
3763 | "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz",
3764 | "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw=="
3765 | },
3766 | "client-only": {
3767 | "version": "0.0.1",
3768 | "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz",
3769 | "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA=="
3770 | },
3771 | "crypto-hash": {
3772 | "version": "2.0.1",
3773 | "resolved": "https://registry.npmjs.org/crypto-hash/-/crypto-hash-2.0.1.tgz",
3774 | "integrity": "sha512-t4mkp7Vh6MuCZRBf0XLzBOfhkH3nW6YEAotMDSjshVQ1GffCMGdPLSr7pKH0rdXY02jTjAZ7QW2apD0buaZXcQ=="
3775 | },
3776 | "csstype": {
3777 | "version": "3.1.2",
3778 | "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz",
3779 | "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==",
3780 | "dev": true
3781 | },
3782 | "eventemitter3": {
3783 | "version": "5.0.1",
3784 | "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz",
3785 | "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA=="
3786 | },
3787 | "exifr": {
3788 | "version": "7.1.3",
3789 | "resolved": "https://registry.npmjs.org/exifr/-/exifr-7.1.3.tgz",
3790 | "integrity": "sha512-g/aje2noHivrRSLbAUtBPWFbxKdKhgj/xr1vATDdUXPOFYJlQ62Ft0oy+72V6XLIpDJfHs6gXLbBLAolqOXYRw=="
3791 | },
3792 | "fast-xml-parser": {
3793 | "version": "4.2.5",
3794 | "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.2.5.tgz",
3795 | "integrity": "sha512-B9/wizE4WngqQftFPmdaMYlXoJlJOYxGQOanC77fq9k8+Z0v5dDSVh+3glErdIROP//s/jgb7ZuxKfB8nVyo0g==",
3796 | "requires": {
3797 | "strnum": "^1.0.5"
3798 | }
3799 | },
3800 | "glob-to-regexp": {
3801 | "version": "0.4.1",
3802 | "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz",
3803 | "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw=="
3804 | },
3805 | "graceful-fs": {
3806 | "version": "4.2.11",
3807 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
3808 | "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ=="
3809 | },
3810 | "is-shallow-equal": {
3811 | "version": "1.0.1",
3812 | "resolved": "https://registry.npmjs.org/is-shallow-equal/-/is-shallow-equal-1.0.1.tgz",
3813 | "integrity": "sha512-lq5RvK+85Hs5J3p4oA4256M1FEffzmI533ikeDHvJd42nouRRx5wBzt36JuviiGe5dIPyHON/d0/Up+PBo6XkQ=="
3814 | },
3815 | "js-tokens": {
3816 | "version": "4.0.0",
3817 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
3818 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
3819 | },
3820 | "lodash": {
3821 | "version": "4.17.21",
3822 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
3823 | "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
3824 | },
3825 | "loose-envify": {
3826 | "version": "1.4.0",
3827 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
3828 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
3829 | "requires": {
3830 | "js-tokens": "^3.0.0 || ^4.0.0"
3831 | }
3832 | },
3833 | "memoize-one": {
3834 | "version": "6.0.0",
3835 | "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-6.0.0.tgz",
3836 | "integrity": "sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw=="
3837 | },
3838 | "mime-match": {
3839 | "version": "1.0.2",
3840 | "resolved": "https://registry.npmjs.org/mime-match/-/mime-match-1.0.2.tgz",
3841 | "integrity": "sha512-VXp/ugGDVh3eCLOBCiHZMYWQaTNUHv2IJrut+yXA6+JbLPXHglHwfS/5A5L0ll+jkCY7fIzRJcH6OIunF+c6Cg==",
3842 | "requires": {
3843 | "wildcard": "^1.1.0"
3844 | }
3845 | },
3846 | "namespace-emitter": {
3847 | "version": "2.0.1",
3848 | "resolved": "https://registry.npmjs.org/namespace-emitter/-/namespace-emitter-2.0.1.tgz",
3849 | "integrity": "sha512-N/sMKHniSDJBjfrkbS/tpkPj4RAbvW3mr8UAzvlMHyun93XEm83IAvhWtJVHo+RHn/oO8Job5YN4b+wRjSVp5g=="
3850 | },
3851 | "nanoid": {
3852 | "version": "3.3.6",
3853 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz",
3854 | "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA=="
3855 | },
3856 | "next": {
3857 | "version": "13.4.19",
3858 | "resolved": "https://registry.npmjs.org/next/-/next-13.4.19.tgz",
3859 | "integrity": "sha512-HuPSzzAbJ1T4BD8e0bs6B9C1kWQ6gv8ykZoRWs5AQoiIuqbGHHdQO7Ljuvg05Q0Z24E2ABozHe6FxDvI6HfyAw==",
3860 | "requires": {
3861 | "@next/env": "13.4.19",
3862 | "@next/swc-darwin-arm64": "13.4.19",
3863 | "@next/swc-darwin-x64": "13.4.19",
3864 | "@next/swc-linux-arm64-gnu": "13.4.19",
3865 | "@next/swc-linux-arm64-musl": "13.4.19",
3866 | "@next/swc-linux-x64-gnu": "13.4.19",
3867 | "@next/swc-linux-x64-musl": "13.4.19",
3868 | "@next/swc-win32-arm64-msvc": "13.4.19",
3869 | "@next/swc-win32-ia32-msvc": "13.4.19",
3870 | "@next/swc-win32-x64-msvc": "13.4.19",
3871 | "@swc/helpers": "0.5.1",
3872 | "busboy": "1.6.0",
3873 | "caniuse-lite": "^1.0.30001406",
3874 | "postcss": "8.4.14",
3875 | "styled-jsx": "5.1.1",
3876 | "watchpack": "2.4.0",
3877 | "zod": "3.21.4"
3878 | }
3879 | },
3880 | "object-assign": {
3881 | "version": "4.1.1",
3882 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
3883 | "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg=="
3884 | },
3885 | "p-queue": {
3886 | "version": "7.4.1",
3887 | "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-7.4.1.tgz",
3888 | "integrity": "sha512-vRpMXmIkYF2/1hLBKisKeVYJZ8S2tZ0zEAmIJgdVKP2nq0nh4qCdf8bgw+ZgKrkh71AOCaqzwbJJk1WtdcF3VA==",
3889 | "requires": {
3890 | "eventemitter3": "^5.0.1",
3891 | "p-timeout": "^5.0.2"
3892 | }
3893 | },
3894 | "p-timeout": {
3895 | "version": "5.1.0",
3896 | "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz",
3897 | "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew=="
3898 | },
3899 | "picocolors": {
3900 | "version": "1.0.0",
3901 | "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
3902 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
3903 | },
3904 | "postcss": {
3905 | "version": "8.4.14",
3906 | "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz",
3907 | "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==",
3908 | "requires": {
3909 | "nanoid": "^3.3.4",
3910 | "picocolors": "^1.0.0",
3911 | "source-map-js": "^1.0.2"
3912 | }
3913 | },
3914 | "preact": {
3915 | "version": "10.17.1",
3916 | "resolved": "https://registry.npmjs.org/preact/-/preact-10.17.1.tgz",
3917 | "integrity": "sha512-X9BODrvQ4Ekwv9GURm9AKAGaomqXmip7NQTZgY7gcNmr7XE83adOMJvd3N42id1tMFU7ojiynRsYnY6/BRFxLA=="
3918 | },
3919 | "prop-types": {
3920 | "version": "15.8.1",
3921 | "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz",
3922 | "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==",
3923 | "requires": {
3924 | "loose-envify": "^1.4.0",
3925 | "object-assign": "^4.1.1",
3926 | "react-is": "^16.13.1"
3927 | }
3928 | },
3929 | "react": {
3930 | "version": "18.2.0",
3931 | "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz",
3932 | "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==",
3933 | "requires": {
3934 | "loose-envify": "^1.1.0"
3935 | }
3936 | },
3937 | "react-dom": {
3938 | "version": "18.2.0",
3939 | "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz",
3940 | "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==",
3941 | "requires": {
3942 | "loose-envify": "^1.1.0",
3943 | "scheduler": "^0.23.0"
3944 | }
3945 | },
3946 | "react-is": {
3947 | "version": "16.13.1",
3948 | "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
3949 | "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
3950 | },
3951 | "scheduler": {
3952 | "version": "0.23.0",
3953 | "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz",
3954 | "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==",
3955 | "requires": {
3956 | "loose-envify": "^1.1.0"
3957 | }
3958 | },
3959 | "source-map-js": {
3960 | "version": "1.0.2",
3961 | "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
3962 | "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw=="
3963 | },
3964 | "streamsearch": {
3965 | "version": "1.1.0",
3966 | "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz",
3967 | "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg=="
3968 | },
3969 | "strnum": {
3970 | "version": "1.0.5",
3971 | "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz",
3972 | "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA=="
3973 | },
3974 | "styled-jsx": {
3975 | "version": "5.1.1",
3976 | "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz",
3977 | "integrity": "sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==",
3978 | "requires": {
3979 | "client-only": "0.0.1"
3980 | }
3981 | },
3982 | "tslib": {
3983 | "version": "2.6.2",
3984 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz",
3985 | "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
3986 | },
3987 | "typescript": {
3988 | "version": "5.2.2",
3989 | "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz",
3990 | "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==",
3991 | "dev": true
3992 | },
3993 | "uuid": {
3994 | "version": "8.3.2",
3995 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
3996 | "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg=="
3997 | },
3998 | "watchpack": {
3999 | "version": "2.4.0",
4000 | "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz",
4001 | "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==",
4002 | "requires": {
4003 | "glob-to-regexp": "^0.4.1",
4004 | "graceful-fs": "^4.1.2"
4005 | }
4006 | },
4007 | "wildcard": {
4008 | "version": "1.1.2",
4009 | "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-1.1.2.tgz",
4010 | "integrity": "sha512-DXukZJxpHA8LuotRwL0pP1+rS6CS7FF2qStDDE1C7DDg2rLud2PXRMuEDYIPhgEezwnlHNL4c+N6MfMTjCGTng=="
4011 | },
4012 | "zod": {
4013 | "version": "3.21.4",
4014 | "resolved": "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz",
4015 | "integrity": "sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw=="
4016 | }
4017 | }
4018 | }
4019 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "private": true,
3 | "scripts": {
4 | "build": "next build",
5 | "dev": "next dev",
6 | "start": "next start"
7 | },
8 | "dependencies": {
9 | "@aws-sdk/client-s3": "^3.410.0",
10 | "@aws-sdk/s3-request-presigner": "^3.410.0",
11 | "@uppy/aws-s3": "^3.3.0",
12 | "@uppy/aws-s3-multipart": "^3.6.0",
13 | "@uppy/core": "^3.5.0",
14 | "@uppy/dashboard": "^3.5.2",
15 | "@uppy/drag-drop": "^3.0.3",
16 | "@uppy/file-input": "^3.0.3",
17 | "@uppy/progress-bar": "^3.0.3",
18 | "@uppy/react": "^3.1.3",
19 | "crypto-hash": "^2.0.1",
20 | "next": "latest",
21 | "react": "18.2.0",
22 | "react-dom": "18.2.0"
23 | },
24 | "engines": {
25 | "node": ">=18"
26 | },
27 | "devDependencies": {
28 | "@types/node": "20.6.0",
29 | "@types/react": "18.2.21",
30 | "typescript": "5.2.2"
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/pages/api/multipart-upload/[endpoint].ts:
--------------------------------------------------------------------------------
1 | import type { NextApiRequest, NextApiResponse } from "next";
2 | import {
3 | UploadPartCommand,
4 | S3Client,
5 | ListPartsCommand,
6 | CreateMultipartUploadCommand,
7 | CompleteMultipartUploadCommand,
8 | AbortMultipartUploadCommand,
9 | } from "@aws-sdk/client-s3";
10 | import { getSignedUrl } from "@aws-sdk/s3-request-presigner";
11 |
12 | const { R2_ACCOUNT_ID, R2_ACCESS_KEY_ID, R2_SECRET_KEY_ID, R2_BUCKET_NAME } =
13 | process.env;
14 |
15 | const R2 = new S3Client({
16 | region: "auto",
17 | endpoint: `https://${R2_ACCOUNT_ID}.r2.cloudflarestorage.com`,
18 | credentials: {
19 | accessKeyId: R2_ACCESS_KEY_ID,
20 | secretAccessKey: R2_SECRET_KEY_ID,
21 | },
22 | });
23 |
24 | export default async function handler(
25 | req: NextApiRequest,
26 | res: NextApiResponse
27 | ) {
28 | const { endpoint } = req.query;
29 |
30 | switch (endpoint) {
31 | case "create-multipart-upload":
32 | return createMultipartUpload(req, res);
33 | case "prepare-upload-parts":
34 | return prepareUploadParts(req, res);
35 | case "complete-multipart-upload":
36 | return completeMultipartUpload(req, res);
37 | case "list-parts":
38 | return listParts(req, res);
39 | case "abort-multipart-upload":
40 | return abortMultipartUpload(req, res);
41 | case "sign-part":
42 | return signPart(req, res);
43 | }
44 | return res.status(404).end();
45 | }
46 |
47 | export async function createMultipartUpload(
48 | req: NextApiRequest,
49 | res: NextApiResponse
50 | ) {
51 | const { file, contentType } = req.body;
52 | const filename = file.name;
53 | try {
54 | const params = {
55 | Bucket: R2_BUCKET_NAME,
56 | Key: `resources/${filename}`,
57 | ContentType: contentType,
58 | };
59 |
60 | const command = new CreateMultipartUploadCommand({ ...params });
61 | const response = await R2.send(command);
62 | return res.status(200).json({
63 | uploadId: response.UploadId,
64 | key: response.Key,
65 | });
66 | } catch (err) {
67 | console.log("Error", err);
68 | return res.status(500).json({ source: { status: 500 } });
69 | }
70 | }
71 |
72 | export async function prepareUploadParts(
73 | req: NextApiRequest,
74 | res: NextApiResponse
75 | ) {
76 | const { partData } = req.body;
77 |
78 | const parts = partData.parts;
79 |
80 | const response = {
81 | presignedUrls: {},
82 | };
83 |
84 | for (let part of parts) {
85 | try {
86 | const params = {
87 | Bucket: R2_BUCKET_NAME,
88 | Key: partData.key,
89 | PartNumber: part.number,
90 | UploadId: partData.uploadId,
91 | };
92 | const command = new UploadPartCommand({ ...params });
93 | const url = await getSignedUrl(R2, command, { expiresIn: 3600 });
94 |
95 | response.presignedUrls[part.number] = url;
96 | } catch (err) {
97 | console.log("Error", err);
98 | return res.status(500).json(err);
99 | }
100 | }
101 |
102 | return res.status(200).json(response);
103 | }
104 |
105 | export async function listParts(req: NextApiRequest, res: NextApiResponse) {
106 | const { key, uploadId } = req.body;
107 |
108 | try {
109 | const params = {
110 | Bucket: R2_BUCKET_NAME,
111 | Key: key,
112 | UploadId: uploadId,
113 | };
114 | const command = new ListPartsCommand({ ...params });
115 | const response = await R2.send(command);
116 |
117 | return res.status(200).json(response["Parts"]);
118 | } catch (err) {
119 | console.log("Error", err);
120 | return res.status(500).json(err);
121 | }
122 | }
123 |
124 | export async function completeMultipartUpload(
125 | req: NextApiRequest,
126 | res: NextApiResponse
127 | ) {
128 | const { key, uploadId, parts } = req.body;
129 |
130 | try {
131 | const params = {
132 | Bucket: R2_BUCKET_NAME,
133 | Key: key,
134 | UploadId: uploadId,
135 | MultipartUpload: { Parts: parts },
136 | };
137 | const command = new CompleteMultipartUploadCommand({ ...params });
138 | const response = await R2.send(command);
139 | return res.status(200).json(response);
140 | } catch (err) {
141 | console.log("Error", err);
142 | return res.status(500).json(err);
143 | }
144 | }
145 |
146 | export async function abortMultipartUpload(
147 | req: NextApiRequest,
148 | res: NextApiResponse
149 | ) {
150 | const { key, uploadId } = req.body;
151 |
152 | try {
153 | const params = {
154 | Bucket: R2_BUCKET_NAME,
155 | Key: key,
156 | UploadId: uploadId,
157 | };
158 | const command = new AbortMultipartUploadCommand({ ...params });
159 | const response = await R2.send(command);
160 |
161 | return res.status(200).json(response);
162 | } catch (err) {
163 | console.log("Error", err);
164 | return res.status(500).json(err);
165 | }
166 | }
167 |
168 | export async function signPart(req: NextApiRequest, res: NextApiResponse) {
169 | const { key, uploadId } = req.body;
170 | const partNumber = parseInt(req.body.partNumber);
171 |
172 | const params = {
173 | Bucket: R2_BUCKET_NAME,
174 | Key: key,
175 | PartNumber: partNumber,
176 | UploadId: uploadId,
177 | };
178 |
179 | const command = new UploadPartCommand({ ...params });
180 | const url = await getSignedUrl(R2, command, { expiresIn: 3600 });
181 | return res.status(200).json({
182 | url: url,
183 | });
184 | }
185 |
--------------------------------------------------------------------------------
/pages/api/upload.ts:
--------------------------------------------------------------------------------
1 | import type { NextApiRequest, NextApiResponse } from "next";
2 | import { PutObjectCommand, S3Client } from "@aws-sdk/client-s3";
3 | import { getSignedUrl } from "@aws-sdk/s3-request-presigner";
4 |
5 | const { R2_ACCOUNT_ID, R2_ACCESS_KEY_ID, R2_SECRET_KEY_ID, R2_BUCKET_NAME } =
6 | process.env;
7 |
8 | const R2 = new S3Client({
9 | region: "auto",
10 | endpoint: `https://${R2_ACCOUNT_ID}.r2.cloudflarestorage.com`,
11 | credentials: {
12 | accessKeyId: R2_ACCESS_KEY_ID,
13 | secretAccessKey: R2_SECRET_KEY_ID,
14 | },
15 | });
16 |
17 | export default async function handler(
18 | req: NextApiRequest,
19 | res: NextApiResponse
20 | ) {
21 | // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
22 | const { filename, contentType } = JSON.parse(req.body as string);
23 | const signedUrl = await getSignedUrl(
24 | R2,
25 | new PutObjectCommand({
26 | Bucket: R2_BUCKET_NAME,
27 | Key: `resources/${filename}`,
28 | ContentType: contentType as string,
29 | }),
30 | { expiresIn: 3600 }
31 | );
32 | res.setHeader("Access-Control-Allow-Origin", "*");
33 | res.json({
34 | url: signedUrl,
35 | method: "PUT",
36 | });
37 | res.end();
38 | }
39 |
--------------------------------------------------------------------------------
/pages/index.tsx:
--------------------------------------------------------------------------------
1 | import Head from "next/head";
2 | import { FileUploader } from "../components/FileUploader";
3 | import { MultipartFileUploader } from "../components/MultipartFileUploader";
4 | import styles from "../styles/Home.module.css";
5 |
6 |
7 | export default function Home() {
8 | return (
9 |
10 |
11 |
R2 bucket File Uploader
12 |
13 |
14 |
15 |
16 | Upload files to R2 bucket
17 |
18 |
19 | You can drag and drop file(s) or directories below to upload them into
20 | a blob storage bucket.
21 |
22 |
23 |
24 |
Simple upload
25 | console.log(JSON.stringify(result))}
27 | />
28 |
29 |
30 |
31 |
32 |
33 |
Multipart upload
34 | console.log(JSON.stringify(result))}
36 | />
37 |
38 |
39 |
40 |
71 |
72 |
96 |
97 | );
98 | }
99 |
--------------------------------------------------------------------------------
/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/datopian/r2-bucket-uploader/2537eb5f63225f758a621cb2512e94c0fe317c29/public/favicon.ico
--------------------------------------------------------------------------------
/public/vercel.svg:
--------------------------------------------------------------------------------
1 |
3 |
4 |
--------------------------------------------------------------------------------
/styles/Home.module.css:
--------------------------------------------------------------------------------
1 | .container {
2 | min-height: 100vh;
3 | padding: 0 0.5rem;
4 | display: flex;
5 | flex-direction: column;
6 | justify-content: center;
7 | align-items: center;
8 | }
9 |
10 | .title a {
11 | color: #60a5fa;
12 | text-decoration: none;
13 | }
14 |
15 | .title a:hover,
16 | .title a:focus,
17 | .title a:active {
18 | text-decoration: underline;
19 | }
20 |
21 | .title {
22 | margin: 0 0 1rem;
23 | line-height: 1.15;
24 | font-size: 1.6rem;
25 | }
26 |
27 | .title {
28 | text-align: center;
29 | }
30 |
31 | .title,
32 | .description {
33 | text-align: center;
34 | }
35 |
36 | .description {
37 | line-height: 1.5;
38 | font-size: 1rem;
39 | }
40 |
41 | .grid {
42 | display: flex;
43 | align-items: center;
44 | justify-content: center;
45 | flex-wrap: wrap;
46 |
47 | max-width: 800px;
48 | margin-top: 3rem;
49 | }
50 |
51 | .card {
52 | margin: 1rem;
53 | flex-basis: 45%;
54 | padding: 1.5rem;
55 | text-align: left;
56 | color: inherit;
57 | text-decoration: none;
58 | border: 1px solid #eaeaea;
59 | border-radius: 10px;
60 | transition:
61 | color 0.15s ease,
62 | border-color 0.15s ease;
63 | }
64 |
65 | .card:hover,
66 | .card:focus,
67 | .card:active {
68 | color: #0070f3;
69 | border-color: #0070f3;
70 | }
71 |
72 | .card h3 {
73 | margin: 0 0 1rem 0;
74 | font-size: 1.5rem;
75 | }
76 |
77 | .card p {
78 | margin: 0;
79 | font-size: 1.25rem;
80 | line-height: 1.5;
81 | }
82 |
83 | .logo {
84 | height: 1em;
85 | }
86 |
87 | @media (max-width: 600px) {
88 | .grid {
89 | width: 100%;
90 | flex-direction: column;
91 | }
92 | }
93 |
--------------------------------------------------------------------------------
/styles/globals.css:
--------------------------------------------------------------------------------
1 | html,
2 | body {
3 | padding: 0;
4 | margin: 0;
5 | font-family:
6 | Inter,
7 | -apple-system,
8 | BlinkMacSystemFont,
9 | Segoe UI,
10 | Roboto,
11 | Oxygen,
12 | Ubuntu,
13 | Cantarell,
14 | Fira Sans,
15 | Droid Sans,
16 | Helvetica Neue,
17 | sans-serif;
18 | }
19 |
20 | a {
21 | color: inherit;
22 | text-decoration: none;
23 | }
24 |
25 | * {
26 | box-sizing: border-box;
27 | }
28 |
29 | img {
30 | max-width: 100%;
31 | height: auto;
32 | }
33 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "lib": [
4 | "dom",
5 | "dom.iterable",
6 | "esnext"
7 | ],
8 | "allowJs": true,
9 | "skipLibCheck": true,
10 | "strict": false,
11 | "noEmit": true,
12 | "incremental": true,
13 | "esModuleInterop": true,
14 | "module": "esnext",
15 | "moduleResolution": "node",
16 | "resolveJsonModule": true,
17 | "isolatedModules": true,
18 | "jsx": "preserve"
19 | },
20 | "include": [
21 | "next-env.d.ts",
22 | "**/*.ts",
23 | "**/*.tsx"
24 | ],
25 | "exclude": [
26 | "node_modules"
27 | ]
28 | }
29 |
--------------------------------------------------------------------------------