From 17607995dfb70ebdd57b9e0f673d1098626ae893 Mon Sep 17 00:00:00 2001 From: Gowtham Shanmugasundaram Date: Tue, 8 Oct 2024 16:39:52 +0530 Subject: [PATCH] RHSTOR-6195: Bucket - list page Signed-off-by: Gowtham Shanmugasundaram --- locales/en/plugin__odf-console.json | 20 +- package.json | 2 +- .../drpolicy-list-page.spec.tsx | 2 +- .../drpolicy-list-page/drpolicy-list-page.tsx | 2 +- .../manage-policy-view.tsx | 2 +- .../protected-applications/components.tsx | 2 +- .../buckets-list-page/bucketListTable.tsx | 205 +++ .../buckets-list-page/bucketPagination.tsx | 83 ++ .../buckets-list-page/bucketsListPage.tsx | 90 ++ .../s3-browser/objects-list/ObjectsList.tsx | 142 +- .../s3-browser/pagination-helper.tsx | 126 ++ packages/odf/constants/s3-browser.ts | 5 + packages/odf/features.ts | 8 +- packages/odf/types/s3-browser.ts | 6 + packages/odf/utils/s3-browser.ts | 22 +- .../shared/src/details-page/timestamp.tsx | 19 +- .../src}/empty-state-page/empty-page.scss | 0 .../src}/empty-state-page/empty-page.tsx | 2 +- packages/shared/src/empty-state-page/index.ts | 1 + packages/shared/src/hooks/index.ts | 1 + .../src/hooks/useUserSettingsLocalStorage.ts | 188 +++ packages/shared/src/index.ts | 1 + packages/shared/src/s3/types.ts | 4 + .../shared/src/table/composable-table.tsx | 7 +- packages/shared/src/utils/table.ts | 21 +- plugins/odf/console-extensions.json | 19 +- plugins/odf/console-plugin.json | 3 +- yarn.lock | 1239 ++++++++++------- 28 files changed, 1557 insertions(+), 665 deletions(-) create mode 100644 packages/odf/components/s3-browser/buckets-list-page/bucketListTable.tsx create mode 100644 packages/odf/components/s3-browser/buckets-list-page/bucketPagination.tsx create mode 100644 packages/odf/components/s3-browser/buckets-list-page/bucketsListPage.tsx create mode 100644 packages/odf/components/s3-browser/pagination-helper.tsx rename packages/{mco/components => shared/src}/empty-state-page/empty-page.scss (100%) rename packages/{mco/components => shared/src}/empty-state-page/empty-page.tsx (98%) create mode 100644 packages/shared/src/empty-state-page/index.ts create mode 100644 packages/shared/src/hooks/useUserSettingsLocalStorage.ts diff --git a/locales/en/plugin__odf-console.json b/locales/en/plugin__odf-console.json index c2d120d7c..f1a6f55d5 100644 --- a/locales/en/plugin__odf-console.json +++ b/locales/en/plugin__odf-console.json @@ -150,10 +150,6 @@ "Clusters": "Clusters", "Connected applications": "Connected applications", "Cannot delete while connected to an application.": "Cannot delete while connected to an application.", - "Loading Empty Page": "Loading Empty Page", - "You are not authorized to complete this action. See your cluster administrator for role-based access control information.": "You are not authorized to complete this action. See your cluster administrator for role-based access control information.", - "Not Authorized": "Not Authorized", - "Empty Page": "Empty Page", "Clean up application resources on current primary cluster {{ failoverCluster }} to start the relocation.": "Clean up application resources on current primary cluster {{ failoverCluster }} to start the relocation.", "Cleanup Pending": "Cleanup Pending", "Relocating to cluster {{ preferredCluster }}": "Relocating to cluster {{ preferredCluster }}", @@ -1115,6 +1111,16 @@ "MCG": "MCG", "Object path: ": "Object path: ", "Copy to share": "Copy to share", + "Erase the contents of your bucket": "Erase the contents of your bucket", + "Storage endpoint": "Storage endpoint", + "Create on": "Create on", + "Owner": "Owner", + "Create and manage your buckets": "Create and manage your buckets", + "Navigate through your buckets effortlessly. View the contents of your S3-managed and Openshift-managed buckets, making it easy to locate and inspect objects.": "Navigate through your buckets effortlessly. View the contents of your S3-managed and Openshift-managed buckets, making it easy to locate and inspect objects.", + "No buckets found": "No buckets found", + "Search a bucket by name": "Search a bucket by name", + "Create bucket": "Create bucket", + "Browse, upload, and manage objects in buckets.": "Browse, upload, and manage objects in buckets.", "Create Bucket": "Create Bucket", "An object bucket is a cloud storage container that organizes and manages files (objects), allowing users to store, retrieve and control access to data efficiently.": "An object bucket is a cloud storage container that organizes and manages files (objects), allowing users to store, retrieve and control access to data efficiently.", "Select bucket creation method": "Select bucket creation method", @@ -1394,7 +1400,6 @@ "{{count}} annotation_one": "{{count}} annotation", "{{count}} annotation_other": "{{count}} annotation", "Created at": "Created at", - "Owner": "Owner", "No labels": "No labels", "No owner": "No owner", "Select input": "Select input", @@ -1403,6 +1408,10 @@ "No resources available": "No resources available", "Select {{resourceLabel}}": "Select {{resourceLabel}}", "Error Loading": "Error Loading", + "Loading empty page": "Loading empty page", + "You are not authorized to complete this action. See your cluster administrator for role-based access control information.": "You are not authorized to complete this action. See your cluster administrator for role-based access control information.", + "Not Authorized": "Not Authorized", + "Empty Page": "Empty Page", "Reset": "Reset", "An error occurred. Please try again.": "An error occurred. Please try again.", "Error Loading {{label}}: {{message}}": "Error Loading {{label}}: {{message}}", @@ -1462,6 +1471,7 @@ "Infrastructures": "Infrastructures", "Subscriptions": "Subscriptions", "Project": "Project", + "Composable table": "Composable table", "Show password": "Show password", "Enter node": "Enter node", "Deployment details": "Deployment details", diff --git a/package.json b/package.json index 7db94177e..5e0df9eac 100644 --- a/package.json +++ b/package.json @@ -59,7 +59,7 @@ "dev:c": "yarn ocp-console & PLUGIN=${PLUGIN} I8N_NS=${I8N_NS} yarn server:plugin & wait" }, "dependencies": { - "@aws-sdk/client-s3": "3.614.0", + "@aws-sdk/client-s3": "3.667.0", "@aws-sdk/s3-request-presigner": "3.614.0", "@openshift-console/dynamic-plugin-sdk": "1.3.0", "@openshift-console/dynamic-plugin-sdk-internal": "1.0.0", diff --git a/packages/mco/components/drpolicy-list-page/drpolicy-list-page.spec.tsx b/packages/mco/components/drpolicy-list-page/drpolicy-list-page.spec.tsx index 6e9ec7166..763f0a64a 100644 --- a/packages/mco/components/drpolicy-list-page/drpolicy-list-page.spec.tsx +++ b/packages/mco/components/drpolicy-list-page/drpolicy-list-page.spec.tsx @@ -92,6 +92,6 @@ describe('Test drpolicy list page', () => { test('Empty page loading test', async () => { testCase = 3; render(); - expect(screen.getByLabelText('Loading Empty Page')).toBeInTheDocument(); + expect(screen.getByLabelText('Loading empty page')).toBeInTheDocument(); }); }); diff --git a/packages/mco/components/drpolicy-list-page/drpolicy-list-page.tsx b/packages/mco/components/drpolicy-list-page/drpolicy-list-page.tsx index 8cb9d1dae..bec655f00 100644 --- a/packages/mco/components/drpolicy-list-page/drpolicy-list-page.tsx +++ b/packages/mco/components/drpolicy-list-page/drpolicy-list-page.tsx @@ -1,5 +1,6 @@ import * as React from 'react'; import { pluralize } from '@odf/core/components/utils'; +import EmptyPage from '@odf/shared/empty-state-page/empty-page'; import { useAccessReview } from '@odf/shared/hooks/rbac-hook'; import { Kebab } from '@odf/shared/kebab/kebab'; import { getName } from '@odf/shared/selectors'; @@ -28,7 +29,6 @@ import { import { DRPolicyModel } from '../../models'; import { DRPolicyKind } from '../../types'; import { getReplicationType, isDRPolicyValidated } from '../../utils'; -import EmptyPage from '../empty-state-page/empty-page'; import { Header, kebabActionItems, tableColumnInfo } from './helper'; import './drpolicy-list-page.scss'; diff --git a/packages/mco/components/modals/app-manage-policies/manage-policy-view.tsx b/packages/mco/components/modals/app-manage-policies/manage-policy-view.tsx index cbd663e2c..da4b1b4bc 100644 --- a/packages/mco/components/modals/app-manage-policies/manage-policy-view.tsx +++ b/packages/mco/components/modals/app-manage-policies/manage-policy-view.tsx @@ -2,6 +2,7 @@ import * as React from 'react'; import { DRPolicyKind, DRPlacementControlKind } from '@odf/mco/types'; import { getDRPolicyStatus, parseSyncInterval } from '@odf/mco/utils'; import { formatTime, getLatestDate } from '@odf/shared/details-page/datetime'; +import EmptyPage from '@odf/shared/empty-state-page/empty-page'; import { StatusBox } from '@odf/shared/generic/status-box'; import { Labels } from '@odf/shared/labels'; import { ModalBody, ModalFooter } from '@odf/shared/modals/Modal'; @@ -31,7 +32,6 @@ import { SYNC_SCHEDULE_DISPLAY_TEXT, } from '../../../constants'; import { getDRPlacementControlResourceObj } from '../../../hooks'; -import EmptyPage from '../../empty-state-page/empty-page'; import { doNotDeletePVCAnnotationPromises, unAssignPromises, diff --git a/packages/mco/components/protected-applications/components.tsx b/packages/mco/components/protected-applications/components.tsx index 04e9e9009..dabfba96c 100644 --- a/packages/mco/components/protected-applications/components.tsx +++ b/packages/mco/components/protected-applications/components.tsx @@ -3,6 +3,7 @@ import { ActionDropdown, ToggleVariant, } from '@odf/shared/dropdown/action-dropdown'; +import EmptyPage from '@odf/shared/empty-state-page/empty-page'; import { DataUnavailableError } from '@odf/shared/generic/Error'; import { NamespaceModel } from '@odf/shared/models'; import { ResourceNameWIcon } from '@odf/shared/resource-link/resource-link'; @@ -36,7 +37,6 @@ import { } from '../../constants'; import { DRPlacementControlModel } from '../../models'; import { DRPlacementControlKind } from '../../types'; -import EmptyPage from '../empty-state-page/empty-page'; import { getCurrentActivity } from '../mco-dashboard/disaster-recovery/cluster-app-card/application'; import { getAlertMessages, diff --git a/packages/odf/components/s3-browser/buckets-list-page/bucketListTable.tsx b/packages/odf/components/s3-browser/buckets-list-page/bucketListTable.tsx new file mode 100644 index 000000000..995a3a6dc --- /dev/null +++ b/packages/odf/components/s3-browser/buckets-list-page/bucketListTable.tsx @@ -0,0 +1,205 @@ +import * as React from 'react'; +import { + BUCKET_BOOKMARKS_USER_SETTINGS_KEY, + BUCKETS_BASE_ROUTE, +} from '@odf/core/constants'; +import { BucketCrFormat } from '@odf/core/types'; +import { Timestamp } from '@odf/shared/details-page/timestamp'; +import { EmptyPage } from '@odf/shared/empty-state-page'; +import { useUserSettingsLocalStorage } from '@odf/shared/hooks/useUserSettingsLocalStorage'; +import { + ComposableTable, + RowComponentType, +} from '@odf/shared/table/composable-table'; +import { useCustomTranslation } from '@odf/shared/useCustomTranslationHook'; +import { sortRows } from '@odf/shared/utils'; +import { TFunction } from 'react-i18next'; +import { Link } from 'react-router-dom-v5-compat'; +import { Bullseye, Label } from '@patternfly/react-core'; +import { UserIcon } from '@patternfly/react-icons'; +import { + ActionsColumn, + IAction, + TableVariant, + Td, + Tr, +} from '@patternfly/react-table'; + +const getRowActions = (t: TFunction): IAction[] => [ + // ToDo: add empty/delete bucket action + { + title: ( + <> + {t('Empty bucket')} +

+ {t('Erase the contents of your bucket')} +

+ + ), + onClick: () => undefined, + }, + { + title: t('Delete bucket'), + onClick: () => undefined, + }, +]; + +const getColumnNames = (t: TFunction) => [ + '', // favoritable, + t('Name'), + t('Storage endpoint'), + t('Create on'), + t('Owner'), + '', // action kebab +]; + +const getHeaderColumns = (t: TFunction, favorites: string[]) => { + const columnNames = getColumnNames(t); + return [ + { + columnName: columnNames[0], + sortFunction: (a, b, c) => sortRows(a, b, c, 'metadata.name', favorites), + }, + { + columnName: columnNames[1], + sortFunction: (a, b, c) => sortRows(a, b, c, 'metadata.name'), + }, + { + columnName: columnNames[2], + thProps: { + className: 'pf-v5-u-w-16-on-lg', + }, + }, + { + columnName: columnNames[3], + sortFunction: (a, b, c) => + sortRows(a, b, c, 'metadata.creationTimestamp'), + thProps: { + className: 'pf-v5-u-w-16-on-lg', + }, + }, + { + columnName: columnNames[4], + thProps: { + className: 'pf-v5-u-w-16-on-lg', + }, + }, + { + columnName: columnNames[5], + }, + ]; +}; + +const NoBucketMessage: React.FC = () => { + const { t } = useCustomTranslation(); + return ( + <>} + title={t('Create and manage your buckets')} + isLoaded + canAccess + > + {t( + 'Navigate through your buckets effortlessly. View the contents of your S3-managed and Openshift-managed buckets, making it easy to locate and inspect objects.' + )} + + ); +}; + +const EmptyRowMessage: React.FC = () => { + const { t } = useCustomTranslation(); + return {t('No buckets found')}; +}; + +const BucketsTableRow: React.FC> = ({ + row: bucket, + rowIndex, + extraProps, +}) => { + const { t } = useCustomTranslation(); + const columnNames = getColumnNames(t); + const { + apiResponse: { owner }, + metadata: { name, creationTimestamp }, + } = bucket; + const { favorites, setFavorites }: RowExtraPropsType = extraProps; + + const onSetFavorite = (key, active) => { + setFavorites((oldFavorites) => [ + ...oldFavorites.filter((oldFavorite) => oldFavorite !== key), + ...(active ? [key] : []), + ]); + }; + + return ( + + + onSetFavorite(name, isFavoriting), + rowIndex, + }} + /> + + {name} + + + {/* ToDo: Currently we only support MCG, make is configurable once RGW is supported as well */} + + + + {} + + + {owner} + + + + + + ); +}; + +export const BucketsListTable: React.FC = ({ + allBuckets, + filteredBuckets, + loaded, + error, +}) => { + const { t } = useCustomTranslation(); + const [favorites, setFavorites] = useUserSettingsLocalStorage( + BUCKET_BOOKMARKS_USER_SETTINGS_KEY, + true, + [] + ); + return ( + + ); +}; + +type BucketsListTableProps = { + allBuckets: BucketCrFormat[]; + filteredBuckets: BucketCrFormat[]; + loaded: boolean; + error: any; +}; + +type RowExtraPropsType = { + favorites: string[]; + setFavorites: React.Dispatch>; +}; diff --git a/packages/odf/components/s3-browser/buckets-list-page/bucketPagination.tsx b/packages/odf/components/s3-browser/buckets-list-page/bucketPagination.tsx new file mode 100644 index 000000000..13e8c6d21 --- /dev/null +++ b/packages/odf/components/s3-browser/buckets-list-page/bucketPagination.tsx @@ -0,0 +1,83 @@ +import * as React from 'react'; +import { ListBucketsCommandOutput } from '@aws-sdk/client-s3'; +import { LIST_BUCKET, MAX_BUCKETS } from '@odf/core/constants'; +import { BucketCrFormat } from '@odf/core/types'; +import { convertBucketDataToCrFormat } from '@odf/core/utils'; +import useSWRMutation from 'swr/mutation'; +import { NoobaaS3Context } from '../noobaa-context'; +import { + ContinuationTokens, + continuationTokensRefresher, + fetchS3Resources, + Pagination, +} from '../pagination-helper'; + +export const BucketPagination: React.FC = ({ + setBucketInfo, +}) => { + const { noobaaS3 } = React.useContext(NoobaaS3Context); + const { data, error, isMutating, trigger } = useSWRMutation( + LIST_BUCKET, + (_url, { arg }: { arg: string }) => + noobaaS3.listBuckets({ + MaxBuckets: MAX_BUCKETS, + ...(!!arg && { ContinuationToken: arg }), + }) + ); + + const loadedWOError = !isMutating && !error; + const [continuationTokens, setContinuationTokens] = + React.useState({ + previous: [], + current: '', + next: '', + }); + + React.useEffect(() => { + setBucketInfo([convertBucketDataToCrFormat(data), !isMutating, error]); + }, [data, isMutating, error, setBucketInfo]); + + // initial fetch on first mount + React.useEffect(() => { + continuationTokensRefresher(setContinuationTokens, trigger); + // eslint-disable-next-line react-hooks/exhaustive-deps + }, []); + + const onNextClick = async () => { + if (!!continuationTokens.next && loadedWOError) + fetchS3Resources( + setContinuationTokens, + trigger, + true, + continuationTokens.next + ); + }; + + const onPreviousClick = async () => { + if (!!continuationTokens.current && loadedWOError) { + const paginationToken = + continuationTokens.previous[continuationTokens.previous.length - 1]; + fetchS3Resources( + setContinuationTokens, + trigger, + false, + paginationToken + ); + } + }; + + return ( + + ); +}; + +type BucketPaginationProps = { + setBucketInfo: React.Dispatch< + React.SetStateAction<[BucketCrFormat[], boolean, any]> + >; +}; diff --git a/packages/odf/components/s3-browser/buckets-list-page/bucketsListPage.tsx b/packages/odf/components/s3-browser/buckets-list-page/bucketsListPage.tsx new file mode 100644 index 000000000..8acaaf582 --- /dev/null +++ b/packages/odf/components/s3-browser/buckets-list-page/bucketsListPage.tsx @@ -0,0 +1,90 @@ +import * as React from 'react'; +import { useRefresh } from '@odf/shared/hooks'; +import { useCustomTranslation } from '@odf/shared/useCustomTranslationHook'; +import { getValidFilteredData } from '@odf/shared/utils'; +import { + ListPageBody, + ListPageCreateLink, + ListPageFilter, + ListPageHeader, + useListPageFilter, +} from '@openshift-console/dynamic-plugin-sdk'; +import { Button, ButtonVariant, Flex, FlexItem } from '@patternfly/react-core'; +import { SyncAltIcon } from '@patternfly/react-icons'; +import { BUCKET_CREATE_PAGE_PATH } from '../../../constants'; +import { BucketCrFormat } from '../../../types'; +import { NoobaaS3Provider } from '../noobaa-context'; +import { BucketsListTable } from './bucketListTable'; +import { BucketPagination } from './bucketPagination'; + +const BucketsListPageBody: React.FC = () => { + const { t } = useCustomTranslation(); + const [fresh, triggerRefresh] = useRefresh(); + const [bucketInfo, setBucketInfo] = React.useState< + [BucketCrFormat[], boolean, any] + >([[], false, undefined]); + const [buckets, loaded, loadError] = bucketInfo; + const [allBuckets, filteredBuckets, onFilterChange] = + useListPageFilter(buckets); + + return ( + + + + + + + + + + + + + {fresh && } + + + + {fresh && ( + + )} + + ); +}; + +const BucketsListPage: React.FC = () => { + const { t } = useCustomTranslation(); + + return ( + + + + {t('Create bucket')} + + +
+ {t('Browse, upload, and manage objects in buckets.')} +
+ +
+ ); +}; + +export default BucketsListPage; diff --git a/packages/odf/components/s3-browser/objects-list/ObjectsList.tsx b/packages/odf/components/s3-browser/objects-list/ObjectsList.tsx index 2cf0b796a..58dc86de5 100644 --- a/packages/odf/components/s3-browser/objects-list/ObjectsList.tsx +++ b/packages/odf/components/s3-browser/objects-list/ObjectsList.tsx @@ -12,9 +12,8 @@ import { useCustomTranslation } from '@odf/shared/useCustomTranslationHook'; import { useModal } from '@openshift-console/dynamic-plugin-sdk'; import { LaunchModal } from '@openshift-console/dynamic-plugin-sdk/lib/app/modal-support/ModalProvider'; import { TFunction } from 'i18next'; -import * as _ from 'lodash-es'; import { useParams, useSearchParams } from 'react-router-dom-v5-compat'; -import useSWRMutation, { TriggerWithOptionsArgs } from 'swr/mutation'; +import useSWRMutation from 'swr/mutation'; import { Button, ButtonVariant, @@ -26,7 +25,6 @@ import { AlertActionCloseButton, AlertActionLink, } from '@patternfly/react-core'; -import { AngleLeftIcon, AngleRightIcon } from '@patternfly/react-icons'; import { ActionsColumn, IAction, @@ -44,6 +42,13 @@ import { import { ObjectCrFormat } from '../../../types'; import { getPath, convertObjectsDataToCrFormat } from '../../../utils'; import { NoobaaS3Context } from '../noobaa-context'; +import { + Pagination, + PaginationProps, + ContinuationTokens, + fetchS3Resources, + continuationTokensRefresher, +} from '../pagination-helper'; import { isRowSelectable, getColumns, @@ -55,13 +60,6 @@ const LazyCreateFolderModal = React.lazy( () => import('../../../modals/s3-browser/create-folder/CreateFolderModal') ); -type PaginationProps = { - onNext: () => void; - onPrevious: () => void; - disableNext: boolean; - disablePrevious: boolean; -}; - type TableActionsProps = { launcher: LaunchModal; selectedRows: ObjectCrFormat[]; @@ -78,90 +76,6 @@ type DeletionAlertsProps = { foldersPath: string; }; -type ContinuationTokens = { - previous: string[]; - current: string; - next: string; -}; - -type Trigger = TriggerWithOptionsArgs< - ListObjectsV2CommandOutput, - any, - string, - string ->; - -// for navigating (next/previous) through objects list -const continuationTokensSetter = ( - setContinuationTokens: React.Dispatch< - React.SetStateAction - >, - response: ListObjectsV2CommandOutput, - isNext: boolean, - setSelectedRows: React.Dispatch> -) => { - setContinuationTokens((oldTokens) => { - const newTokens = _.cloneDeep(oldTokens); - if (isNext) { - newTokens.previous.push(newTokens.current); - newTokens.current = newTokens.next; - } else { - newTokens.current = newTokens.previous.pop(); - } - newTokens.next = response.NextContinuationToken; - - return newTokens; - }); - setSelectedRows([]); -}; - -const fetchObjects = async ( - setContinuationTokens: React.Dispatch< - React.SetStateAction - >, - trigger: Trigger, - isNext: boolean, - setSelectedRows: React.Dispatch>, - paginationToken = '' -) => { - try { - const response: ListObjectsV2CommandOutput = await trigger(paginationToken); - continuationTokensSetter( - setContinuationTokens, - response, - isNext, - setSelectedRows - ); - } catch (err) { - // no need to handle any error here, use "error" object directly from the "useSWRMutation" hook - // eslint-disable-next-line no-console - console.error(err); - } -}; - -// for refreshing (re-feching) objects from start, once state of bucket has changed (objects added/deleted) -const continuationTokensRefresher = async ( - setContinuationTokens: React.Dispatch< - React.SetStateAction - >, - trigger: Trigger, - setSelectedRows: React.Dispatch> -) => { - try { - const response: ListObjectsV2CommandOutput = await trigger(); - setContinuationTokens({ - previous: [''], - current: '', - next: response.NextContinuationToken, - }); - setSelectedRows([]); - } catch (err) { - // no need to handle any error here, use "error" object directly from the "useSWRMutation" hook - // eslint-disable-next-line no-console - console.error(err); - } -}; - const getBulkActionsItems = ( t: TFunction, launcher: LaunchModal, @@ -203,34 +117,6 @@ export const CustomActionsToggle = (props: CustomActionsToggleProps) => { ); }; -const Pagination: React.FC = ({ - onNext, - onPrevious, - disableNext, - disablePrevious, -}) => { - return ( -
- - -
- ); -}; - const TableActions: React.FC = ({ onNext, onPrevious, @@ -467,12 +353,12 @@ export const ObjectsList: React.FC<{}> = () => { { if (!!continuationTokens.next && loadedWOError) - fetchObjects( + fetchS3Resources( setContinuationTokens, trigger, true, - setSelectedRows, - continuationTokens.next + continuationTokens.next, + setSelectedRows ); }} onPrevious={async () => { @@ -481,12 +367,12 @@ export const ObjectsList: React.FC<{}> = () => { continuationTokens.previous[ continuationTokens.previous.length - 1 ]; - fetchObjects( + fetchS3Resources( setContinuationTokens, trigger, false, - setSelectedRows, - paginationToken + paginationToken, + setSelectedRows ); } }} diff --git a/packages/odf/components/s3-browser/pagination-helper.tsx b/packages/odf/components/s3-browser/pagination-helper.tsx new file mode 100644 index 000000000..c5c77f9ca --- /dev/null +++ b/packages/odf/components/s3-browser/pagination-helper.tsx @@ -0,0 +1,126 @@ +import * as React from 'react'; +import { ListCommandOutput } from '@odf/shared/s3'; +import { K8sResourceCommon } from '@openshift-console/dynamic-plugin-sdk'; +import * as _ from 'lodash-es'; +import { TriggerWithOptionsArgs } from 'swr/dist/mutation'; +import { Button, ButtonVariant } from '@patternfly/react-core'; +import { AngleLeftIcon, AngleRightIcon } from '@patternfly/react-icons'; + +export type ContinuationTokens = { + previous: string[]; + current: string; + next: string; +}; + +export type PaginationProps = { + onNext: () => void; + onPrevious: () => void; + disableNext: boolean; + disablePrevious: boolean; +}; + +type Trigger = TriggerWithOptionsArgs; + +const getNextContinuationToken = (response: ListCommandOutput) => + 'NextContinuationToken' in response + ? response.NextContinuationToken + : response.ContinuationToken; + +export const continuationTokensSetter = ( + setContinuationTokens: React.Dispatch< + React.SetStateAction + >, + response: T, + isNext: boolean, + setSelectedRows?: React.Dispatch> +) => { + setContinuationTokens((oldTokens) => { + const newTokens = _.cloneDeep(oldTokens); + if (isNext) { + newTokens.previous.push(newTokens.current); + newTokens.current = newTokens.next; + } else { + newTokens.current = newTokens.previous.pop(); + } + + newTokens.next = getNextContinuationToken(response); + + return newTokens; + }); + !!setSelectedRows && setSelectedRows([]); +}; + +export const fetchS3Resources = async ( + setContinuationTokens: React.Dispatch< + React.SetStateAction + >, + trigger: Trigger, + isNext: boolean, + paginationToken = '', + setSelectedRows?: React.Dispatch> +) => { + try { + const response: T = await trigger(paginationToken); + continuationTokensSetter( + setContinuationTokens, + response, + isNext, + setSelectedRows + ); + } catch (err) { + // no need to handle any error here, use "error" object directly from the "useSWRMutation" hook + // eslint-disable-next-line no-console + console.error(err); + } +}; + +// for refreshing (re-feching) s3 resources from start, once state has changed by adding/deleted +export const continuationTokensRefresher = async ( + setContinuationTokens: React.Dispatch< + React.SetStateAction + >, + trigger: Trigger, + setSelectedRows?: React.Dispatch> +) => { + try { + const response: T = await trigger(); + setContinuationTokens({ + previous: [''], + current: '', + next: getNextContinuationToken(response), + }); + !!setSelectedRows && setSelectedRows([]); + } catch (err) { + // no need to handle any error here, use "error" object directly from the "useSWRMutation" hook + // eslint-disable-next-line no-console + console.error(err); + } +}; + +export const Pagination: React.FC = ({ + onNext, + onPrevious, + disableNext, + disablePrevious, +}) => { + return ( +
+ + +
+ ); +}; diff --git a/packages/odf/constants/s3-browser.ts b/packages/odf/constants/s3-browser.ts index 3752639d8..3340bc616 100644 --- a/packages/odf/constants/s3-browser.ts +++ b/packages/odf/constants/s3-browser.ts @@ -6,12 +6,17 @@ export const NOOBAA_SECRET_ACCESS_KEY = 'AWS_SECRET_ACCESS_KEY'; export const DELIMITER = '/'; export const PREFIX = 'prefix'; export const MAX_KEYS = 300; +export const MAX_BUCKETS = 100; export const BUCKET_NAME_MAX_LENGTH = 63; export const BUCKET_NAME_MIN_LENGTH = 3; export const BUCKETS_BASE_ROUTE = '/odf/object-storage/buckets'; +export const BUCKET_CREATE_PAGE_PATH = '/odf/object-storage/create-bucket'; // key to be used by SWR for caching particular API call export const LIST_BUCKET = 'LIST_BUCKET_CACHE_KEY'; export const LIST_OBJECTS = 'LIST_OBJECTS_CACHE_KEY'; + +// Bookmarking / favorites +export const BUCKET_BOOKMARKS_USER_SETTINGS_KEY = 'bucket-bookmarks'; diff --git a/packages/odf/features.ts b/packages/odf/features.ts index 6f73f086f..aaa0642df 100644 --- a/packages/odf/features.ts +++ b/packages/odf/features.ts @@ -17,13 +17,18 @@ import { } from '@openshift-console/dynamic-plugin-sdk'; import * as _ from 'lodash-es'; import { SECOND, RGW_PROVISIONER, NOOBAA_PROVISIONER } from './constants'; -import { isExternalCluster, isClusterIgnored } from './utils'; +import { + isExternalCluster, + isClusterIgnored, + isMCGStandaloneCluster, +} from './utils'; export const ODF_MODEL_FLAG = 'ODF_MODEL'; // Based on the existence of StorageSystem CRD export const RGW_FLAG = 'RGW'; // Based on the existence of StorageClass with RGW provisioner ("openshift-storage.ceph.rook.io/bucket") export const MCG_FLAG = 'MCG'; // Based on the existence of NooBaa StorageClass (which only gets created if NooBaaSystem is present) export const ODF_ADMIN = 'ODF_ADMIN'; // Set to "true" if user is an "openshift-storage" admin (access to StorageSystems) export const PROVIDER_MODE = 'PROVIDER_MODE'; // Set to "true" if user has deployed it in provider mode +export const MCG_STANDALONE = 'MCG_STANDALONE'; // Set to "true" if user has deployed for MCG standalone mode // Check the user's access to some resources. const ssarChecks = [ @@ -59,6 +64,7 @@ export const setOCSFlags = async (setFlag: SetFeatureFlag) => { !isClusterIgnored(sc) && !isExternalCluster(sc) ); setFlag(PROVIDER_MODE, isProviderMode(internalStorageCluster)); + setFlag(MCG_STANDALONE, isMCGStandaloneCluster(internalStorageCluster)); clearInterval(ocsIntervalId); } else if (setFlagFalse) { setFlagFalse = false; diff --git a/packages/odf/types/s3-browser.ts b/packages/odf/types/s3-browser.ts index b0c54b83f..b1f65e437 100644 --- a/packages/odf/types/s3-browser.ts +++ b/packages/odf/types/s3-browser.ts @@ -8,3 +8,9 @@ export type ObjectCrFormat = K8sResourceCommon & { isFolder?: boolean; type?: string; }; + +export type BucketCrFormat = K8sResourceCommon & { + apiResponse?: { + owner?: string; + }; +}; diff --git a/packages/odf/utils/s3-browser.ts b/packages/odf/utils/s3-browser.ts index a578e1499..84e4fb149 100644 --- a/packages/odf/utils/s3-browser.ts +++ b/packages/odf/utils/s3-browser.ts @@ -1,10 +1,14 @@ -import { _Object as Content, CommonPrefix } from '@aws-sdk/client-s3'; +import { + _Object as Content, + CommonPrefix, + ListBucketsCommandOutput, +} from '@aws-sdk/client-s3'; import { DASH } from '@odf/shared/constants'; import { getName } from '@odf/shared/selectors'; import { humanizeBinaryBytes } from '@odf/shared/utils'; import { TFunction } from 'i18next'; import { DELIMITER, BUCKETS_BASE_ROUTE, PREFIX } from '../constants'; -import { ObjectCrFormat } from '../types'; +import { BucketCrFormat, ObjectCrFormat } from '../types'; export const getBreadcrumbs = ( foldersPath: string, @@ -100,3 +104,17 @@ export const replacePathFromName = ( typeof object === 'string' ? object.replace(foldersPath, '') : getName(object).replace(foldersPath, ''); + +export const convertBucketDataToCrFormat = ( + listBucketsCommandOutput: ListBucketsCommandOutput +): BucketCrFormat[] => + listBucketsCommandOutput?.Buckets.map((bucket) => ({ + metadata: { + name: bucket.Name, + uid: bucket.Name, + creationTimestamp: bucket.CreationDate.toString(), + }, + apiResponse: { + owner: listBucketsCommandOutput?.Owner?.DisplayName, + }, + })) || []; diff --git a/packages/shared/src/details-page/timestamp.tsx b/packages/shared/src/details-page/timestamp.tsx index 9e5ecc8a8..e85c0668e 100644 --- a/packages/shared/src/details-page/timestamp.tsx +++ b/packages/shared/src/details-page/timestamp.tsx @@ -8,7 +8,8 @@ const timestampFor = ( mdate: Date, now: Date, omitSuffix: boolean, - simple?: boolean + simple?: boolean, + ignoreRelativeTime?: boolean ) => { if (!dateTime.isValid(mdate)) { return '-'; @@ -20,7 +21,11 @@ const timestampFor = ( } // Show a relative time if within 10.5 minutes in the past from the current time. - if (timeDifference > dateTime.maxClockSkewMS && timeDifference < 630000) { + if ( + timeDifference > dateTime.maxClockSkewMS && + timeDifference < 630000 && + !ignoreRelativeTime + ) { return dateTime.fromNow(mdate); } @@ -39,7 +44,13 @@ export const Timestamp = (props: TimestampProps) => { ? new Date((props.timestamp as number) * 1000) : new Date(props.timestamp); - const timestamp = timestampFor(mdate, new Date(now), props.simple); + const timestamp = timestampFor( + mdate, + new Date(now), + props.omitSuffix, + props.simple, + props?.ignoreRelativeTime + ); if (!dateTime.isValid(mdate)) { return
-
; @@ -73,6 +84,8 @@ export type TimestampProps = { simple?: boolean; omitSuffix?: boolean; className?: string; + // Simple / omitSuffix can overrride this field + ignoreRelativeTime?: boolean; }; Timestamp.displayName = 'Timestamp'; diff --git a/packages/mco/components/empty-state-page/empty-page.scss b/packages/shared/src/empty-state-page/empty-page.scss similarity index 100% rename from packages/mco/components/empty-state-page/empty-page.scss rename to packages/shared/src/empty-state-page/empty-page.scss diff --git a/packages/mco/components/empty-state-page/empty-page.tsx b/packages/shared/src/empty-state-page/empty-page.tsx similarity index 98% rename from packages/mco/components/empty-state-page/empty-page.tsx rename to packages/shared/src/empty-state-page/empty-page.tsx index 99d6402de..80229f5ec 100644 --- a/packages/mco/components/empty-state-page/empty-page.tsx +++ b/packages/shared/src/empty-state-page/empty-page.tsx @@ -30,7 +30,7 @@ const EmptyPage: React.FC = (props) => { return !isLoaded ? (
) : ( diff --git a/packages/shared/src/empty-state-page/index.ts b/packages/shared/src/empty-state-page/index.ts new file mode 100644 index 000000000..3b3dfb735 --- /dev/null +++ b/packages/shared/src/empty-state-page/index.ts @@ -0,0 +1 @@ +export { default as EmptyPage } from './empty-page'; diff --git a/packages/shared/src/hooks/index.ts b/packages/shared/src/hooks/index.ts index 63d16a651..20838fc1a 100644 --- a/packages/shared/src/hooks/index.ts +++ b/packages/shared/src/hooks/index.ts @@ -10,3 +10,4 @@ export * from './useK8sList'; export * from './scheduler'; export * from './use-doc-version'; export * from './useRefresh'; +export * from './useUserSettingsLocalStorage'; diff --git a/packages/shared/src/hooks/useUserSettingsLocalStorage.ts b/packages/shared/src/hooks/useUserSettingsLocalStorage.ts new file mode 100644 index 000000000..e6d92009c --- /dev/null +++ b/packages/shared/src/hooks/useUserSettingsLocalStorage.ts @@ -0,0 +1,188 @@ +import * as React from 'react'; + +// Default ODF user settings storage path +const DEFAULT_ODF_CONSOLE_USER_SETTINGS_KEY = 'odf-console-user-settings'; +const STORAGE_EVENT = 'storage'; + +export const deserializeData = (data: string | null) => { + if (typeof data !== 'string') { + return data; + } + try { + return JSON.parse(data); + } catch { + return data; + } +}; + +export const serializeData = (data: T) => { + if (typeof data === 'string') { + return data; + } + try { + return JSON.stringify(data); + } catch { + return data; + } +}; + +// Get user settings from local storage +const getDataFromLocalStorage = (storageKey: string) => + deserializeData(localStorage.getItem(storageKey)) ?? {}; + +// Initialize state +const initializeDataFromLocalStorage = ( + storageKey: string, + keyRef: string, + defaultValue: T +) => { + const valueInStorage = getDataFromLocalStorage(storageKey); + return valueInStorage?.hasOwnProperty(keyRef) && + valueInStorage[keyRef] !== undefined + ? valueInStorage[keyRef] + : defaultValue; +}; + +// Update local state with user settings by event +const syncLatestDataFromLocalStorage = ( + isMounted: boolean, + storageKey: string, + storage: Storage, + key: string, + newValue: string, + data: T, + userSettingsKey: string, + setData: React.Dispatch +) => { + if (isMounted && storage === localStorage && key === storageKey) { + const newData = deserializeData(newValue)?.[userSettingsKey]; + if ( + newData !== undefined && + serializeData(newData) !== serializeData(data) + ) { + setData(newData); + } + } +}; + +const updateLocalStorage = ( + storageKey: string, + userSettingsKey: string, + localData: any, + newState: T +) => { + // Trigger update also when unmounted + const dataToUpdate = { + ...localData, + ...{ + [userSettingsKey]: newState, + }, + }; + + const newValue = serializeData(dataToUpdate); + + try { + // Update the local storage + localStorage.setItem(storageKey, newValue); + + // Dispatch storage event to sync the settings changes for other tabs + generateStorageEventToUpdate(storageKey, newValue); + } catch (err) { + // eslint-disable-next-line no-console + console.error( + `Error while updating local storage for key ${storageKey}`, + err + ); + } +}; + +// Generate storage event to sync latest settings on other tabs +const generateStorageEventToUpdate = (storageKey, newValue: string) => { + // Create a storage event to dispatch locally since browser windows do not fire the + // storage event if the change originated from the current window + const event = new StorageEvent('storage', { + storageArea: localStorage, + key: storageKey, + newValue, + oldValue: localStorage.getItem(storageKey), + url: window.location.toString(), + }); + + window.dispatchEvent(event); +}; + +export const useUserSettingsLocalStorage = ( + // User settings sub storage path + userSettingsKey: string, + // Sync user settings changes in all tabs + sync = false, + // Default value for the initial settings + defaultValue?: T, + // ODF settings base storage path + storageKey: string = DEFAULT_ODF_CONSOLE_USER_SETTINGS_KEY +): [T, React.Dispatch>] => { + // Mount status for safty state updates + const mounted = React.useRef(true); + React.useEffect(() => () => (mounted.current = false), []); + const keyRef = React.useRef( + userSettingsKey?.replace(/[^-._a-zA-Z0-9]/g, '_') + ); + + const [data, setData] = React.useState(() => + initializeDataFromLocalStorage(storageKey, keyRef.current, defaultValue) + ); + const dataRef = React.useRef(data); + dataRef.current = data; + + // Sync latest user settings across all tabs. + const syncLatestData = React.useCallback( + (event: StorageEvent) => + syncLatestDataFromLocalStorage( + mounted.current, + storageKey, + event.storageArea, + event.key, + event.newValue, + dataRef.current, + keyRef.current, + setData + ), + [storageKey] + ); + + React.useEffect(() => { + if (sync) { + window.addEventListener(STORAGE_EVENT, syncLatestData); + } + return () => { + if (sync) { + window.removeEventListener(STORAGE_EVENT, syncLatestData); + } + }; + }, [syncLatestData, sync]); + + const updateData = React.useCallback>>( + (action: React.SetStateAction) => { + const previousData = dataRef.current; + const newState = + typeof action === 'function' + ? (action as (prevState: T) => T)(previousData) + : action; + const localData = getDataFromLocalStorage(storageKey); + if ( + newState !== undefined && + serializeData(newState) !== serializeData(localData?.[keyRef.current]) + ) { + // Update settings changes for current tab + if (mounted.current) { + setData(newState); + } + // Update user settings changes in local stroage + updateLocalStorage(storageKey, keyRef.current, localData, newState); + } + }, + [storageKey] + ); + + return [data, updateData]; +}; diff --git a/packages/shared/src/index.ts b/packages/shared/src/index.ts index d684ce081..063c2d411 100644 --- a/packages/shared/src/index.ts +++ b/packages/shared/src/index.ts @@ -33,3 +33,4 @@ export * from './yup-validation-resolver'; export * from './file-handling'; export * from './text-inputs'; export * from './label-expression-selector'; +export * from './empty-state-page'; diff --git a/packages/shared/src/s3/types.ts b/packages/shared/src/s3/types.ts index 025d06914..bebe9c3e5 100644 --- a/packages/shared/src/s3/types.ts +++ b/packages/shared/src/s3/types.ts @@ -43,3 +43,7 @@ export type GetObject = ( export type DeleteObjects = ( input: DeleteObjectsCommandInput ) => Promise; + +export type ListCommandOutput = + | ListObjectsV2CommandOutput + | ListBucketsCommandOutput; diff --git a/packages/shared/src/table/composable-table.tsx b/packages/shared/src/table/composable-table.tsx index 83f9b2a92..5baf8d9f1 100644 --- a/packages/shared/src/table/composable-table.tsx +++ b/packages/shared/src/table/composable-table.tsx @@ -12,6 +12,7 @@ import { Tr, } from '@patternfly/react-table'; import { useSortList } from '../hooks/sort-list'; +import { useCustomTranslation } from '../useCustomTranslationHook'; export type TableColumnProps = ThProps & { thProps?: TableThProps; @@ -38,6 +39,7 @@ export const ComposableTable: ComposableTableProps = < noDataMsg, emptyRowMessage, variant, + isFavorites, }) => { const { onSort, @@ -45,8 +47,10 @@ export const ComposableTable: ComposableTableProps = < sortDirection: activeSortDirection, sortedData: sortedRows, } = useSortList(rows, columns, false); + const { t } = useCustomTranslation(); const getSortParams = (columnIndex: number): ThProps['sort'] => ({ + ...(isFavorites ? { isFavorites: columnIndex === 0 } : {}), sortBy: { index: activeSortIndex, direction: activeSortDirection, @@ -67,7 +71,7 @@ export const ComposableTable: ComposableTableProps = < > @@ -114,6 +118,7 @@ export type TableProps = { noDataMsg?: React.FC; emptyRowMessage?: React.FC; variant?: TableVariant; + isFavorites?: boolean; }; type ComposableTableProps = ( diff --git a/packages/shared/src/utils/table.ts b/packages/shared/src/utils/table.ts index bd5900b3b..288eab2d1 100644 --- a/packages/shared/src/utils/table.ts +++ b/packages/shared/src/utils/table.ts @@ -1,15 +1,24 @@ import * as _ from 'lodash-es'; import { SortByDirection } from '@patternfly/react-table'; +const sort = (aValue: any, bValue: any, c: SortByDirection) => { + const negation = c !== SortByDirection.asc; + const sortVal = aValue.localeCompare(bValue); + return negation ? -sortVal : sortVal; +}; + export const sortRows = ( a: any, b: any, c: SortByDirection, - sortField: string + sortField: string, + favoriteNames?: string[] ) => { - const negation = c !== SortByDirection.asc; - const aValue = _.get(a, sortField, '').toString(); - const bValue = _.get(b, sortField, ''); - const sortVal = String(aValue).localeCompare(String(bValue)); - return negation ? -sortVal : sortVal; + let aValue = _.get(a, sortField, '').toString(); + let bValue = _.get(b, sortField, '').toString(); + if (!!favoriteNames) { + aValue = favoriteNames.includes(aValue).toString(); + bValue = favoriteNames.includes(bValue).toString(); + } + return sort(aValue, bValue, c); }; diff --git a/plugins/odf/console-extensions.json b/plugins/odf/console-extensions.json index 3b33b6a21..cf76c0585 100644 --- a/plugins/odf/console-extensions.json +++ b/plugins/odf/console-extensions.json @@ -540,11 +540,27 @@ "required": ["ODF_MODEL"] } }, + { + "type": "odf.horizontalNav/tab", + "properties": { + "id": "buckets", + "name": "%plugin__odf-console~Buckets%", + "contextId": "odf-object-service", + "href": "buckets", + "component": { + "$codeRef": "s3BucketList.default" + } + }, + "flags": { + "required": ["MCG_STANDALONE", "ODF_ADMIN"] + } + }, { "type": "odf.horizontalNav/tab", "properties": { "id": "backing-store", "name": "%plugin__odf-console~Backing Store%", + "after": "buckets", "contextId": "odf-object-service", "href": "noobaa.io~v1alpha1~BackingStore", "component": { @@ -600,7 +616,8 @@ } }, "flags": { - "required": ["MCG"] + "required": ["MCG"], + "disallowed": ["MCG_STANDALONE"] } }, { diff --git a/plugins/odf/console-plugin.json b/plugins/odf/console-plugin.json index e3d350199..5b6222ca3 100644 --- a/plugins/odf/console-plugin.json +++ b/plugins/odf/console-plugin.json @@ -42,6 +42,7 @@ "odfReduxReducers": "@odf/core/redux", "monCountAlertModal": "@odf/core/modals/configure-mons/configure-mons", "storageConsumerListPage": "@odf/core/components/storage-consumers/client-list", - "s3BucketOverview": "@odf/core/components/s3-browser/bucket-overview/BucketOverview" + "s3BucketOverview": "@odf/core/components/s3-browser/bucket-overview/BucketOverview", + "s3BucketList": "@odf/core/components/s3-browser/buckets-list-page/bucketsListPage" } } diff --git a/yarn.lock b/yarn.lock index 58d939acb..363e098b2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -83,385 +83,398 @@ "@smithy/util-utf8" "^2.0.0" tslib "^2.6.2" -"@aws-sdk/client-s3@3.614.0": - version "3.614.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-s3/-/client-s3-3.614.0.tgz#39620491e328d86282d0f9105fde7dd59427b4a1" - integrity sha512-9BlhfeBegvyjOqHtcr9kvrT80wiy7EVUiqYyTFiiDv/hJIcG88XHQCZdLU7658XBkQ7aFrr5b8rF2HRD1oroxw== +"@aws-sdk/client-s3@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/client-s3/-/client-s3-3.667.0.tgz#06fb8ba8d171c6fdc292fd8544f9b7f9f83d4974" + integrity sha512-WKkjRJe93epfIWZa+PUgvMvDQ7IObr4poxqx/3YIsl8FXMSgJP5Woc1kdjeRrfpPWHGTm9O1Bi7XFulzEzUwQA== dependencies: "@aws-crypto/sha1-browser" "5.2.0" "@aws-crypto/sha256-browser" "5.2.0" "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.614.0" - "@aws-sdk/client-sts" "3.614.0" - "@aws-sdk/core" "3.614.0" - "@aws-sdk/credential-provider-node" "3.614.0" - "@aws-sdk/middleware-bucket-endpoint" "3.614.0" - "@aws-sdk/middleware-expect-continue" "3.609.0" - "@aws-sdk/middleware-flexible-checksums" "3.614.0" - "@aws-sdk/middleware-host-header" "3.609.0" - "@aws-sdk/middleware-location-constraint" "3.609.0" - "@aws-sdk/middleware-logger" "3.609.0" - "@aws-sdk/middleware-recursion-detection" "3.609.0" - "@aws-sdk/middleware-sdk-s3" "3.614.0" - "@aws-sdk/middleware-signing" "3.609.0" - "@aws-sdk/middleware-ssec" "3.609.0" - "@aws-sdk/middleware-user-agent" "3.614.0" - "@aws-sdk/region-config-resolver" "3.614.0" - "@aws-sdk/signature-v4-multi-region" "3.614.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.614.0" - "@aws-sdk/util-user-agent-browser" "3.609.0" - "@aws-sdk/util-user-agent-node" "3.614.0" - "@aws-sdk/xml-builder" "3.609.0" - "@smithy/config-resolver" "^3.0.5" - "@smithy/core" "^2.2.6" - "@smithy/eventstream-serde-browser" "^3.0.4" - "@smithy/eventstream-serde-config-resolver" "^3.0.3" - "@smithy/eventstream-serde-node" "^3.0.4" - "@smithy/fetch-http-handler" "^3.2.1" - "@smithy/hash-blob-browser" "^3.1.2" - "@smithy/hash-node" "^3.0.3" - "@smithy/hash-stream-node" "^3.1.2" - "@smithy/invalid-dependency" "^3.0.3" - "@smithy/md5-js" "^3.0.3" - "@smithy/middleware-content-length" "^3.0.3" - "@smithy/middleware-endpoint" "^3.0.5" - "@smithy/middleware-retry" "^3.0.9" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/middleware-stack" "^3.0.3" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/node-http-handler" "^3.1.2" - "@smithy/protocol-http" "^4.0.3" - "@smithy/smithy-client" "^3.1.7" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" + "@aws-sdk/client-sso-oidc" "3.667.0" + "@aws-sdk/client-sts" "3.667.0" + "@aws-sdk/core" "3.667.0" + "@aws-sdk/credential-provider-node" "3.667.0" + "@aws-sdk/middleware-bucket-endpoint" "3.667.0" + "@aws-sdk/middleware-expect-continue" "3.667.0" + "@aws-sdk/middleware-flexible-checksums" "3.667.0" + "@aws-sdk/middleware-host-header" "3.667.0" + "@aws-sdk/middleware-location-constraint" "3.667.0" + "@aws-sdk/middleware-logger" "3.667.0" + "@aws-sdk/middleware-recursion-detection" "3.667.0" + "@aws-sdk/middleware-sdk-s3" "3.667.0" + "@aws-sdk/middleware-ssec" "3.667.0" + "@aws-sdk/middleware-user-agent" "3.667.0" + "@aws-sdk/region-config-resolver" "3.667.0" + "@aws-sdk/signature-v4-multi-region" "3.667.0" + "@aws-sdk/types" "3.667.0" + "@aws-sdk/util-endpoints" "3.667.0" + "@aws-sdk/util-user-agent-browser" "3.667.0" + "@aws-sdk/util-user-agent-node" "3.667.0" + "@aws-sdk/xml-builder" "3.662.0" + "@smithy/config-resolver" "^3.0.9" + "@smithy/core" "^2.4.8" + "@smithy/eventstream-serde-browser" "^3.0.10" + "@smithy/eventstream-serde-config-resolver" "^3.0.7" + "@smithy/eventstream-serde-node" "^3.0.9" + "@smithy/fetch-http-handler" "^3.2.9" + "@smithy/hash-blob-browser" "^3.1.6" + "@smithy/hash-node" "^3.0.7" + "@smithy/hash-stream-node" "^3.1.6" + "@smithy/invalid-dependency" "^3.0.7" + "@smithy/md5-js" "^3.0.7" + "@smithy/middleware-content-length" "^3.0.9" + "@smithy/middleware-endpoint" "^3.1.4" + "@smithy/middleware-retry" "^3.0.23" + "@smithy/middleware-serde" "^3.0.7" + "@smithy/middleware-stack" "^3.0.7" + "@smithy/node-config-provider" "^3.1.8" + "@smithy/node-http-handler" "^3.2.4" + "@smithy/protocol-http" "^4.1.4" + "@smithy/smithy-client" "^3.4.0" + "@smithy/types" "^3.5.0" + "@smithy/url-parser" "^3.0.7" "@smithy/util-base64" "^3.0.0" "@smithy/util-body-length-browser" "^3.0.0" "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.9" - "@smithy/util-defaults-mode-node" "^3.0.9" - "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-retry" "^3.0.3" - "@smithy/util-stream" "^3.0.6" + "@smithy/util-defaults-mode-browser" "^3.0.23" + "@smithy/util-defaults-mode-node" "^3.0.23" + "@smithy/util-endpoints" "^2.1.3" + "@smithy/util-middleware" "^3.0.7" + "@smithy/util-retry" "^3.0.7" + "@smithy/util-stream" "^3.1.9" "@smithy/util-utf8" "^3.0.0" - "@smithy/util-waiter" "^3.1.2" + "@smithy/util-waiter" "^3.1.6" tslib "^2.6.2" -"@aws-sdk/client-sso-oidc@3.614.0": - version "3.614.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.614.0.tgz#61d20af829a17aa15664bcb7a1b4aed165191435" - integrity sha512-BI1NWcpppbHg/28zbUg54dZeckork8BItZIcjls12vxasy+p3iEzrJVG60jcbUTTsk3Qc1tyxNfrdcVqx0y7Ww== +"@aws-sdk/client-sso-oidc@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.667.0.tgz#36b6e602f2c9b5f0fbbf3630fbd88908d883256f" + integrity sha512-ThLLR0Zn15Rk8Y6rzzVtHREZU4NAsNj9oCiQcXj4/vlBl+J0MbiTCDUJTc559O+DIMekrjusLaPIKfTZmXXuhA== dependencies: "@aws-crypto/sha256-browser" "5.2.0" "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/core" "3.614.0" - "@aws-sdk/credential-provider-node" "3.614.0" - "@aws-sdk/middleware-host-header" "3.609.0" - "@aws-sdk/middleware-logger" "3.609.0" - "@aws-sdk/middleware-recursion-detection" "3.609.0" - "@aws-sdk/middleware-user-agent" "3.614.0" - "@aws-sdk/region-config-resolver" "3.614.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.614.0" - "@aws-sdk/util-user-agent-browser" "3.609.0" - "@aws-sdk/util-user-agent-node" "3.614.0" - "@smithy/config-resolver" "^3.0.5" - "@smithy/core" "^2.2.6" - "@smithy/fetch-http-handler" "^3.2.1" - "@smithy/hash-node" "^3.0.3" - "@smithy/invalid-dependency" "^3.0.3" - "@smithy/middleware-content-length" "^3.0.3" - "@smithy/middleware-endpoint" "^3.0.5" - "@smithy/middleware-retry" "^3.0.9" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/middleware-stack" "^3.0.3" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/node-http-handler" "^3.1.2" - "@smithy/protocol-http" "^4.0.3" - "@smithy/smithy-client" "^3.1.7" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" + "@aws-sdk/core" "3.667.0" + "@aws-sdk/credential-provider-node" "3.667.0" + "@aws-sdk/middleware-host-header" "3.667.0" + "@aws-sdk/middleware-logger" "3.667.0" + "@aws-sdk/middleware-recursion-detection" "3.667.0" + "@aws-sdk/middleware-user-agent" "3.667.0" + "@aws-sdk/region-config-resolver" "3.667.0" + "@aws-sdk/types" "3.667.0" + "@aws-sdk/util-endpoints" "3.667.0" + "@aws-sdk/util-user-agent-browser" "3.667.0" + "@aws-sdk/util-user-agent-node" "3.667.0" + "@smithy/config-resolver" "^3.0.9" + "@smithy/core" "^2.4.8" + "@smithy/fetch-http-handler" "^3.2.9" + "@smithy/hash-node" "^3.0.7" + "@smithy/invalid-dependency" "^3.0.7" + "@smithy/middleware-content-length" "^3.0.9" + "@smithy/middleware-endpoint" "^3.1.4" + "@smithy/middleware-retry" "^3.0.23" + "@smithy/middleware-serde" "^3.0.7" + "@smithy/middleware-stack" "^3.0.7" + "@smithy/node-config-provider" "^3.1.8" + "@smithy/node-http-handler" "^3.2.4" + "@smithy/protocol-http" "^4.1.4" + "@smithy/smithy-client" "^3.4.0" + "@smithy/types" "^3.5.0" + "@smithy/url-parser" "^3.0.7" "@smithy/util-base64" "^3.0.0" "@smithy/util-body-length-browser" "^3.0.0" "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.9" - "@smithy/util-defaults-mode-node" "^3.0.9" - "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" + "@smithy/util-defaults-mode-browser" "^3.0.23" + "@smithy/util-defaults-mode-node" "^3.0.23" + "@smithy/util-endpoints" "^2.1.3" + "@smithy/util-middleware" "^3.0.7" + "@smithy/util-retry" "^3.0.7" "@smithy/util-utf8" "^3.0.0" tslib "^2.6.2" -"@aws-sdk/client-sso@3.614.0": - version "3.614.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-sso/-/client-sso-3.614.0.tgz#bf578a579c477e41cea61368fef5394f6ccae45a" - integrity sha512-p5pyYaxRzBttjBkqfc8i3K7DzBdTg3ECdVgBo6INIUxfvDy0J8QUE8vNtCgvFIkq+uPw/8M+Eo4zzln7anuO0Q== +"@aws-sdk/client-sso@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/client-sso/-/client-sso-3.667.0.tgz#87c3388ee0ed10a6d67fc48c92ff2dfdc73b1adf" + integrity sha512-69nl3BXcAfn/zUdxpxC/5Bi4K46sMgTRFVKHkyiRFO8OQpNJDRzl6eGltESLqtf65rjWfswTDwfYrMd2+tnlDQ== dependencies: "@aws-crypto/sha256-browser" "5.2.0" "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/core" "3.614.0" - "@aws-sdk/middleware-host-header" "3.609.0" - "@aws-sdk/middleware-logger" "3.609.0" - "@aws-sdk/middleware-recursion-detection" "3.609.0" - "@aws-sdk/middleware-user-agent" "3.614.0" - "@aws-sdk/region-config-resolver" "3.614.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.614.0" - "@aws-sdk/util-user-agent-browser" "3.609.0" - "@aws-sdk/util-user-agent-node" "3.614.0" - "@smithy/config-resolver" "^3.0.5" - "@smithy/core" "^2.2.6" - "@smithy/fetch-http-handler" "^3.2.1" - "@smithy/hash-node" "^3.0.3" - "@smithy/invalid-dependency" "^3.0.3" - "@smithy/middleware-content-length" "^3.0.3" - "@smithy/middleware-endpoint" "^3.0.5" - "@smithy/middleware-retry" "^3.0.9" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/middleware-stack" "^3.0.3" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/node-http-handler" "^3.1.2" - "@smithy/protocol-http" "^4.0.3" - "@smithy/smithy-client" "^3.1.7" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" + "@aws-sdk/core" "3.667.0" + "@aws-sdk/middleware-host-header" "3.667.0" + "@aws-sdk/middleware-logger" "3.667.0" + "@aws-sdk/middleware-recursion-detection" "3.667.0" + "@aws-sdk/middleware-user-agent" "3.667.0" + "@aws-sdk/region-config-resolver" "3.667.0" + "@aws-sdk/types" "3.667.0" + "@aws-sdk/util-endpoints" "3.667.0" + "@aws-sdk/util-user-agent-browser" "3.667.0" + "@aws-sdk/util-user-agent-node" "3.667.0" + "@smithy/config-resolver" "^3.0.9" + "@smithy/core" "^2.4.8" + "@smithy/fetch-http-handler" "^3.2.9" + "@smithy/hash-node" "^3.0.7" + "@smithy/invalid-dependency" "^3.0.7" + "@smithy/middleware-content-length" "^3.0.9" + "@smithy/middleware-endpoint" "^3.1.4" + "@smithy/middleware-retry" "^3.0.23" + "@smithy/middleware-serde" "^3.0.7" + "@smithy/middleware-stack" "^3.0.7" + "@smithy/node-config-provider" "^3.1.8" + "@smithy/node-http-handler" "^3.2.4" + "@smithy/protocol-http" "^4.1.4" + "@smithy/smithy-client" "^3.4.0" + "@smithy/types" "^3.5.0" + "@smithy/url-parser" "^3.0.7" "@smithy/util-base64" "^3.0.0" "@smithy/util-body-length-browser" "^3.0.0" "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.9" - "@smithy/util-defaults-mode-node" "^3.0.9" - "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" + "@smithy/util-defaults-mode-browser" "^3.0.23" + "@smithy/util-defaults-mode-node" "^3.0.23" + "@smithy/util-endpoints" "^2.1.3" + "@smithy/util-middleware" "^3.0.7" + "@smithy/util-retry" "^3.0.7" "@smithy/util-utf8" "^3.0.0" tslib "^2.6.2" -"@aws-sdk/client-sts@3.614.0": - version "3.614.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-sts/-/client-sts-3.614.0.tgz#bb688944e54f147c8093e2d79b618263ee43cb19" - integrity sha512-i6QmaVA1KHHYNnI2VYQy/sc31rLm4+jSp8b/YbQpFnD0w3aXsrEEHHlxek45uSkHb4Nrj1omFBVy/xp1WVYx2Q== +"@aws-sdk/client-sts@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/client-sts/-/client-sts-3.667.0.tgz#c9e62336449b5f290de62afdbb437531fee777e1" + integrity sha512-SnvkDDuOAwXOxzhGfvvxK8JFFVApVvXrM6+nVmSYwuHjWdI+HwNcsRC6rxZ8uHQEz2fR0a810ckUwFVfpvtIoA== dependencies: "@aws-crypto/sha256-browser" "5.2.0" "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.614.0" - "@aws-sdk/core" "3.614.0" - "@aws-sdk/credential-provider-node" "3.614.0" - "@aws-sdk/middleware-host-header" "3.609.0" - "@aws-sdk/middleware-logger" "3.609.0" - "@aws-sdk/middleware-recursion-detection" "3.609.0" - "@aws-sdk/middleware-user-agent" "3.614.0" - "@aws-sdk/region-config-resolver" "3.614.0" - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.614.0" - "@aws-sdk/util-user-agent-browser" "3.609.0" - "@aws-sdk/util-user-agent-node" "3.614.0" - "@smithy/config-resolver" "^3.0.5" - "@smithy/core" "^2.2.6" - "@smithy/fetch-http-handler" "^3.2.1" - "@smithy/hash-node" "^3.0.3" - "@smithy/invalid-dependency" "^3.0.3" - "@smithy/middleware-content-length" "^3.0.3" - "@smithy/middleware-endpoint" "^3.0.5" - "@smithy/middleware-retry" "^3.0.9" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/middleware-stack" "^3.0.3" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/node-http-handler" "^3.1.2" - "@smithy/protocol-http" "^4.0.3" - "@smithy/smithy-client" "^3.1.7" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" + "@aws-sdk/client-sso-oidc" "3.667.0" + "@aws-sdk/core" "3.667.0" + "@aws-sdk/credential-provider-node" "3.667.0" + "@aws-sdk/middleware-host-header" "3.667.0" + "@aws-sdk/middleware-logger" "3.667.0" + "@aws-sdk/middleware-recursion-detection" "3.667.0" + "@aws-sdk/middleware-user-agent" "3.667.0" + "@aws-sdk/region-config-resolver" "3.667.0" + "@aws-sdk/types" "3.667.0" + "@aws-sdk/util-endpoints" "3.667.0" + "@aws-sdk/util-user-agent-browser" "3.667.0" + "@aws-sdk/util-user-agent-node" "3.667.0" + "@smithy/config-resolver" "^3.0.9" + "@smithy/core" "^2.4.8" + "@smithy/fetch-http-handler" "^3.2.9" + "@smithy/hash-node" "^3.0.7" + "@smithy/invalid-dependency" "^3.0.7" + "@smithy/middleware-content-length" "^3.0.9" + "@smithy/middleware-endpoint" "^3.1.4" + "@smithy/middleware-retry" "^3.0.23" + "@smithy/middleware-serde" "^3.0.7" + "@smithy/middleware-stack" "^3.0.7" + "@smithy/node-config-provider" "^3.1.8" + "@smithy/node-http-handler" "^3.2.4" + "@smithy/protocol-http" "^4.1.4" + "@smithy/smithy-client" "^3.4.0" + "@smithy/types" "^3.5.0" + "@smithy/url-parser" "^3.0.7" "@smithy/util-base64" "^3.0.0" "@smithy/util-body-length-browser" "^3.0.0" "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.9" - "@smithy/util-defaults-mode-node" "^3.0.9" - "@smithy/util-endpoints" "^2.0.5" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" + "@smithy/util-defaults-mode-browser" "^3.0.23" + "@smithy/util-defaults-mode-node" "^3.0.23" + "@smithy/util-endpoints" "^2.1.3" + "@smithy/util-middleware" "^3.0.7" + "@smithy/util-retry" "^3.0.7" "@smithy/util-utf8" "^3.0.0" tslib "^2.6.2" -"@aws-sdk/core@3.614.0": - version "3.614.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/core/-/core-3.614.0.tgz#7d4ce96cd98f85eb2dd0627586581296b6a26662" - integrity sha512-BUuS5/1YkgmKc4J0bg83XEtMyDHVyqG2QDzfmhYe8gbOIZabUl1FlrFVwhCAthtrrI6MPGTQcERB4BtJKUSplw== - dependencies: - "@smithy/core" "^2.2.6" - "@smithy/protocol-http" "^4.0.3" - "@smithy/signature-v4" "^3.1.2" - "@smithy/smithy-client" "^3.1.7" - "@smithy/types" "^3.3.0" - fast-xml-parser "4.2.5" +"@aws-sdk/core@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/core/-/core-3.667.0.tgz#ecf93bf8e3ebea3bd972576a67b87dd291d7a90a" + integrity sha512-pMcDVI7Tmdsc8R3sDv0Omj/4iRParGY+uJtAfF669WnZfDfaBQaix2Mq7+Mu08vdjqO9K3gicFvjk9S1VLmOKA== + dependencies: + "@aws-sdk/types" "3.667.0" + "@smithy/core" "^2.4.8" + "@smithy/node-config-provider" "^3.1.8" + "@smithy/property-provider" "^3.1.7" + "@smithy/protocol-http" "^4.1.4" + "@smithy/signature-v4" "^4.2.0" + "@smithy/smithy-client" "^3.4.0" + "@smithy/types" "^3.5.0" + "@smithy/util-middleware" "^3.0.7" + fast-xml-parser "4.4.1" tslib "^2.6.2" -"@aws-sdk/credential-provider-env@3.609.0": - version "3.609.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-env/-/credential-provider-env-3.609.0.tgz#b3f32e5a8ff8b541e151eadadfb60283aa3d835e" - integrity sha512-v69ZCWcec2iuV9vLVJMa6fAb5xwkzN4jYIT8yjo2c4Ia/j976Q+TPf35Pnz5My48Xr94EFcaBazrWedF+kwfuQ== +"@aws-sdk/credential-provider-env@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-env/-/credential-provider-env-3.667.0.tgz#1b3a4b049fc164a3a3eb3617f7448fed3cb3a2db" + integrity sha512-zZbrkkaPc54WXm+QAnpuv0LPNfsts0HPPd+oCECGs7IQRaFsGj187cwvPg9RMWDFZqpm64MdBDoA8OQHsqzYCw== dependencies: - "@aws-sdk/types" "3.609.0" - "@smithy/property-provider" "^3.1.3" - "@smithy/types" "^3.3.0" + "@aws-sdk/core" "3.667.0" + "@aws-sdk/types" "3.667.0" + "@smithy/property-provider" "^3.1.7" + "@smithy/types" "^3.5.0" tslib "^2.6.2" -"@aws-sdk/credential-provider-http@3.614.0": - version "3.614.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-http/-/credential-provider-http-3.614.0.tgz#2cdc07e029447182ada8ee18dcdb6bccddc57da5" - integrity sha512-YIEjlNUKb3Vo/iTnGAPdsiDC3FUUnNoex2OwU8LmR7AkYZiWdB8nx99DfgkkY+OFMUpw7nKD2PCOtuFONelfGA== - dependencies: - "@aws-sdk/types" "3.609.0" - "@smithy/fetch-http-handler" "^3.2.1" - "@smithy/node-http-handler" "^3.1.2" - "@smithy/property-provider" "^3.1.3" - "@smithy/protocol-http" "^4.0.3" - "@smithy/smithy-client" "^3.1.7" - "@smithy/types" "^3.3.0" - "@smithy/util-stream" "^3.0.6" +"@aws-sdk/credential-provider-http@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-http/-/credential-provider-http-3.667.0.tgz#ff78b7f76715a7456976930bff6221dfac70afbc" + integrity sha512-sjtybFfERZWiqTY7fswBxKQLvUkiCucOWyqh3IaPo/4nE1PXRnaZCVG0+kRBPrYIxWqiVwytvZzMJy8sVZcG0A== + dependencies: + "@aws-sdk/core" "3.667.0" + "@aws-sdk/types" "3.667.0" + "@smithy/fetch-http-handler" "^3.2.9" + "@smithy/node-http-handler" "^3.2.4" + "@smithy/property-provider" "^3.1.7" + "@smithy/protocol-http" "^4.1.4" + "@smithy/smithy-client" "^3.4.0" + "@smithy/types" "^3.5.0" + "@smithy/util-stream" "^3.1.9" tslib "^2.6.2" -"@aws-sdk/credential-provider-ini@3.614.0": - version "3.614.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.614.0.tgz#5c3e514d09d37aad167ab3571d10fb18c182ba5e" - integrity sha512-KfLuLFGwlvFSZ2MuzYwWGPb1y5TeiwX5okIDe0aQ1h10oD3924FXbN+mabOnUHQ8EFcGAtCaWbrC86mI7ktC6A== - dependencies: - "@aws-sdk/credential-provider-env" "3.609.0" - "@aws-sdk/credential-provider-http" "3.614.0" - "@aws-sdk/credential-provider-process" "3.614.0" - "@aws-sdk/credential-provider-sso" "3.614.0" - "@aws-sdk/credential-provider-web-identity" "3.609.0" - "@aws-sdk/types" "3.609.0" - "@smithy/credential-provider-imds" "^3.1.4" - "@smithy/property-provider" "^3.1.3" - "@smithy/shared-ini-file-loader" "^3.1.4" - "@smithy/types" "^3.3.0" +"@aws-sdk/credential-provider-ini@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.667.0.tgz#2b267ca38e8e049889e70eaa99b621a00e0568f6" + integrity sha512-NiEC2Sjut57ajbWEXLFtA8YWA06ulfuaSHOP4YxoQEsL3BjMOkKS1/5eVW2o6XkKVbwt0zbDYSTlIxU5klHpbQ== + dependencies: + "@aws-sdk/core" "3.667.0" + "@aws-sdk/credential-provider-env" "3.667.0" + "@aws-sdk/credential-provider-http" "3.667.0" + "@aws-sdk/credential-provider-process" "3.667.0" + "@aws-sdk/credential-provider-sso" "3.667.0" + "@aws-sdk/credential-provider-web-identity" "3.667.0" + "@aws-sdk/types" "3.667.0" + "@smithy/credential-provider-imds" "^3.2.4" + "@smithy/property-provider" "^3.1.7" + "@smithy/shared-ini-file-loader" "^3.1.8" + "@smithy/types" "^3.5.0" tslib "^2.6.2" -"@aws-sdk/credential-provider-node@3.614.0": - version "3.614.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-node/-/credential-provider-node-3.614.0.tgz#5faf5e3bf02ccb891769e4a28c784a80be42dcfc" - integrity sha512-4J6gPEuFZP0mkWq5E//oMS1vrmMM88iNNcv7TEljYnsc6JTAlKejCyFwx6CN+nkIhmIZsl06SXIhBemzBdBPfg== - dependencies: - "@aws-sdk/credential-provider-env" "3.609.0" - "@aws-sdk/credential-provider-http" "3.614.0" - "@aws-sdk/credential-provider-ini" "3.614.0" - "@aws-sdk/credential-provider-process" "3.614.0" - "@aws-sdk/credential-provider-sso" "3.614.0" - "@aws-sdk/credential-provider-web-identity" "3.609.0" - "@aws-sdk/types" "3.609.0" - "@smithy/credential-provider-imds" "^3.1.4" - "@smithy/property-provider" "^3.1.3" - "@smithy/shared-ini-file-loader" "^3.1.4" - "@smithy/types" "^3.3.0" +"@aws-sdk/credential-provider-node@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-node/-/credential-provider-node-3.667.0.tgz#e73a8d992763c41bb52768a981dff7309cd9b044" + integrity sha512-+2oNexDvbQD9o5Xdtu1mGE25Nf2/C9KgMnkZzenbgCegw0P0YRdGrJklDF5Aag6lmb80a2vjoViuvm1ORzRAzw== + dependencies: + "@aws-sdk/credential-provider-env" "3.667.0" + "@aws-sdk/credential-provider-http" "3.667.0" + "@aws-sdk/credential-provider-ini" "3.667.0" + "@aws-sdk/credential-provider-process" "3.667.0" + "@aws-sdk/credential-provider-sso" "3.667.0" + "@aws-sdk/credential-provider-web-identity" "3.667.0" + "@aws-sdk/types" "3.667.0" + "@smithy/credential-provider-imds" "^3.2.4" + "@smithy/property-provider" "^3.1.7" + "@smithy/shared-ini-file-loader" "^3.1.8" + "@smithy/types" "^3.5.0" tslib "^2.6.2" -"@aws-sdk/credential-provider-process@3.614.0": - version "3.614.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-process/-/credential-provider-process-3.614.0.tgz#b6b9382346dfe51c8fb448595ae55b930532c897" - integrity sha512-Q0SI0sTRwi8iNODLs5+bbv8vgz8Qy2QdxbCHnPk/6Cx6LMf7i3dqmWquFbspqFRd8QiqxStrblwxrUYZi09tkA== +"@aws-sdk/credential-provider-process@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-process/-/credential-provider-process-3.667.0.tgz#fa721b1b5b0024156c3852a9fc92c0ed9935959f" + integrity sha512-HZHnvop32fKgsNHkdhVaul7UzQ25sEc0j9yqA4bjhtbk0ECl42kj3f1pJ+ZU/YD9ut8lMJs/vVqiOdNThVdeBw== dependencies: - "@aws-sdk/types" "3.609.0" - "@smithy/property-provider" "^3.1.3" - "@smithy/shared-ini-file-loader" "^3.1.4" - "@smithy/types" "^3.3.0" + "@aws-sdk/core" "3.667.0" + "@aws-sdk/types" "3.667.0" + "@smithy/property-provider" "^3.1.7" + "@smithy/shared-ini-file-loader" "^3.1.8" + "@smithy/types" "^3.5.0" tslib "^2.6.2" -"@aws-sdk/credential-provider-sso@3.614.0": - version "3.614.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.614.0.tgz#926de80b2f9288469604442bf2a395c5f2bf913d" - integrity sha512-55+gp0JY4451cWI1qXmVMFM0GQaBKiQpXv2P0xmd9P3qLDyeFUSEW8XPh0d2lb1ICr6x4s47ynXVdGCIv2mXMg== - dependencies: - "@aws-sdk/client-sso" "3.614.0" - "@aws-sdk/token-providers" "3.614.0" - "@aws-sdk/types" "3.609.0" - "@smithy/property-provider" "^3.1.3" - "@smithy/shared-ini-file-loader" "^3.1.4" - "@smithy/types" "^3.3.0" +"@aws-sdk/credential-provider-sso@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.667.0.tgz#c1154b30c07279b01e56ed5bd787bce84bb68afd" + integrity sha512-GylJquSQVWlziaEmrX38KzQTWcFL5NKht4OAj7rdo75MssC0qNVSGT+ReFrXZzKQ65eIuRVCMdsp83oNH4nzbQ== + dependencies: + "@aws-sdk/client-sso" "3.667.0" + "@aws-sdk/core" "3.667.0" + "@aws-sdk/token-providers" "3.667.0" + "@aws-sdk/types" "3.667.0" + "@smithy/property-provider" "^3.1.7" + "@smithy/shared-ini-file-loader" "^3.1.8" + "@smithy/types" "^3.5.0" tslib "^2.6.2" -"@aws-sdk/credential-provider-web-identity@3.609.0": - version "3.609.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.609.0.tgz#d29222d6894347ee89c781ea090d388656df1d2a" - integrity sha512-U+PG8NhlYYF45zbr1km3ROtBMYqyyj/oK8NRp++UHHeuavgrP+4wJ4wQnlEaKvJBjevfo3+dlIBcaeQ7NYejWg== +"@aws-sdk/credential-provider-web-identity@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.667.0.tgz#439e3aa2fc9a081de53186f6d8aa78a8a6913769" + integrity sha512-t8CFlZMD/1p/8Cli3rvRiTJpjr/8BO64gw166AHgFZYSN2h95L2l1tcW0jpsc3PprA32nLg1iQVKYt4WGM4ugw== dependencies: - "@aws-sdk/types" "3.609.0" - "@smithy/property-provider" "^3.1.3" - "@smithy/types" "^3.3.0" + "@aws-sdk/core" "3.667.0" + "@aws-sdk/types" "3.667.0" + "@smithy/property-provider" "^3.1.7" + "@smithy/types" "^3.5.0" tslib "^2.6.2" -"@aws-sdk/middleware-bucket-endpoint@3.614.0": - version "3.614.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.614.0.tgz#28a99d82a0e1f039fda20aa0dc375ec777bd595c" - integrity sha512-TqEY8KcZeZ0LIxXaqG9RSSNnDHvD8RAFP4Xenwsxqnyad0Yn7LgCoFwRByelJ0t54ROYL1/ETJleWE4U4TOXdg== +"@aws-sdk/middleware-bucket-endpoint@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.667.0.tgz#bd0a0a24f71d3709debf6e48f4e503547398e7eb" + integrity sha512-XGz4jMAkDoTyFdtLz7ZF+C05IAhCTC1PllpvTBaj821z/L0ilhbqVhrT/f2Buw8Id/K5A390csGXgusXyrFFjA== dependencies: - "@aws-sdk/types" "3.609.0" + "@aws-sdk/types" "3.667.0" "@aws-sdk/util-arn-parser" "3.568.0" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/protocol-http" "^4.0.3" - "@smithy/types" "^3.3.0" + "@smithy/node-config-provider" "^3.1.8" + "@smithy/protocol-http" "^4.1.4" + "@smithy/types" "^3.5.0" "@smithy/util-config-provider" "^3.0.0" tslib "^2.6.2" -"@aws-sdk/middleware-expect-continue@3.609.0": - version "3.609.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.609.0.tgz#89af76f115aa5fadd5a82fe4e95a64cb15150517" - integrity sha512-+zeg//mSer4JZRxOB/4mUOMUJyuYPwATnIC5moBB8P8Xe+mJaVRFy8qlCtzYNj2TycnlsBPzTK0j7P1yvDh97w== +"@aws-sdk/middleware-expect-continue@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.667.0.tgz#d1b9e4871c8bde3402bdd0f73e740f5f5bf190d7" + integrity sha512-0TiSL9S5DSG95NHGIz6qTMuV7GDKVn8tvvGSrSSZu/wXO3JaYSH0AElVpYfc4PtPRqVpEyNA7nnc7W56mMCLWQ== dependencies: - "@aws-sdk/types" "3.609.0" - "@smithy/protocol-http" "^4.0.3" - "@smithy/types" "^3.3.0" + "@aws-sdk/types" "3.667.0" + "@smithy/protocol-http" "^4.1.4" + "@smithy/types" "^3.5.0" tslib "^2.6.2" -"@aws-sdk/middleware-flexible-checksums@3.614.0": - version "3.614.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.614.0.tgz#e551aec40228e0891aee1648c6986ba82ea495c7" - integrity sha512-ZLpxVXMboDeMT7p2Kdp5m1uLVKOktkZoMgLvvbe3zbrU4Ji5IU5xVE0aa4X7H28BtuODCs6SLESnPs19bhMKlA== +"@aws-sdk/middleware-flexible-checksums@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.667.0.tgz#bbcbb211e844493d6e1cf0b4263b2ddfe876f44a" + integrity sha512-+5B2JuN+/CGZk5HRD9GeeNyTy9ooVFxdnuIAHkDyokJ028/isWw02tcM0rIcI/zK/maV3Z1WXDtkvWKTfB2IqQ== dependencies: "@aws-crypto/crc32" "5.2.0" "@aws-crypto/crc32c" "5.2.0" - "@aws-sdk/types" "3.609.0" + "@aws-sdk/core" "3.667.0" + "@aws-sdk/types" "3.667.0" "@smithy/is-array-buffer" "^3.0.0" - "@smithy/protocol-http" "^4.0.3" - "@smithy/types" "^3.3.0" + "@smithy/node-config-provider" "^3.1.8" + "@smithy/protocol-http" "^4.1.4" + "@smithy/types" "^3.5.0" + "@smithy/util-middleware" "^3.0.7" "@smithy/util-utf8" "^3.0.0" tslib "^2.6.2" -"@aws-sdk/middleware-host-header@3.609.0": - version "3.609.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-host-header/-/middleware-host-header-3.609.0.tgz#844302cb905e4d09b9a1ea4bfa96729833068913" - integrity sha512-iTKfo158lc4jLDfYeZmYMIBHsn8m6zX+XB6birCSNZ/rrlzAkPbGE43CNdKfvjyWdqgLMRXF+B+OcZRvqhMXPQ== +"@aws-sdk/middleware-host-header@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-host-header/-/middleware-host-header-3.667.0.tgz#d255aa6e73aec9a2d1a241de737679b6d2723c3f" + integrity sha512-Z7fIAMQnPegs7JjAQvlOeWXwpMRfegh5eCoIP6VLJIeR6DLfYKbP35JBtt98R6DXslrN2RsbTogjbxPEDQfw1w== dependencies: - "@aws-sdk/types" "3.609.0" - "@smithy/protocol-http" "^4.0.3" - "@smithy/types" "^3.3.0" + "@aws-sdk/types" "3.667.0" + "@smithy/protocol-http" "^4.1.4" + "@smithy/types" "^3.5.0" tslib "^2.6.2" -"@aws-sdk/middleware-location-constraint@3.609.0": - version "3.609.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.609.0.tgz#7ed82d71e5ddcd50683ef2bbde10d1cc2492057e" - integrity sha512-xzsdoTkszGVqGVPjUmgoP7TORiByLueMHieI1fhQL888WPdqctwAx3ES6d/bA9Q/i8jnc6hs+Fjhy8UvBTkE9A== +"@aws-sdk/middleware-location-constraint@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.667.0.tgz#e5da0580656a1a385fd5783bb93ea320b4baeb1b" + integrity sha512-ob85H3HhT3/u5O+x0o557xGZ78vSNeSSwMaSitxdsfs2hOuoUl1uk+OeLpi1hkuJnL41FPpokV7TVII2XrFfmg== dependencies: - "@aws-sdk/types" "3.609.0" - "@smithy/types" "^3.3.0" + "@aws-sdk/types" "3.667.0" + "@smithy/types" "^3.5.0" tslib "^2.6.2" -"@aws-sdk/middleware-logger@3.609.0": - version "3.609.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-logger/-/middleware-logger-3.609.0.tgz#ed44d201f091b8bac908cbf14724c7a4d492553f" - integrity sha512-S62U2dy4jMDhDFDK5gZ4VxFdWzCtLzwbYyFZx2uvPYTECkepLUfzLic2BHg2Qvtu4QjX+oGE3P/7fwaGIsGNuQ== +"@aws-sdk/middleware-logger@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-logger/-/middleware-logger-3.667.0.tgz#bf072a1aa5b03239e20d75f9b525d8a990caf29f" + integrity sha512-PtTRNpNm/5c746jRgZCNg4X9xEJIwggkGJrF0GP9AB1ANg4pc/sF2Fvn1NtqPe9wtQ2stunJprnm5WkCHN7QiA== dependencies: - "@aws-sdk/types" "3.609.0" - "@smithy/types" "^3.3.0" + "@aws-sdk/types" "3.667.0" + "@smithy/types" "^3.5.0" tslib "^2.6.2" -"@aws-sdk/middleware-recursion-detection@3.609.0": - version "3.609.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.609.0.tgz#b7b869aaeac021a43dbea1435eaea81e5d2460b1" - integrity sha512-6sewsYB7/o/nbUfA99Aa/LokM+a/u4Wpm/X2o0RxOsDtSB795ObebLJe2BxY5UssbGaWkn7LswyfvrdZNXNj1w== +"@aws-sdk/middleware-recursion-detection@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.667.0.tgz#e3f158d5b5ea1b1d73ab280c0cbe5ef077ed3fdc" + integrity sha512-U5glWD3ehFohzpUpopLtmqAlDurGWo2wRGPNgi4SwhWU7UDt6LS7E/UvJjqC0CUrjlzOw+my2A+Ncf+fisMhxQ== dependencies: - "@aws-sdk/types" "3.609.0" - "@smithy/protocol-http" "^4.0.3" - "@smithy/types" "^3.3.0" + "@aws-sdk/types" "3.667.0" + "@smithy/protocol-http" "^4.1.4" + "@smithy/types" "^3.5.0" tslib "^2.6.2" "@aws-sdk/middleware-sdk-s3@3.614.0": @@ -479,49 +492,58 @@ "@smithy/util-config-provider" "^3.0.0" tslib "^2.6.2" -"@aws-sdk/middleware-signing@3.609.0": - version "3.609.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-signing/-/middleware-signing-3.609.0.tgz#7e5c4e70302bf87a7aa3dfde83ec1b387bf819f0" - integrity sha512-2w3dBLjQVKIajYzokO4hduq8/0hSMUYHHmIo1Kdl+MSY8uwRBt12bLL6pyreobTcRMxizvn2ph/CQ9I1ST/WGQ== +"@aws-sdk/middleware-sdk-s3@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.667.0.tgz#269abce2bad4025201470413a070907dca065359" + integrity sha512-31SqWDEH340kwRyql6II4wgVTNa2GJypIry5bmEzuSR30tsuWnVQg8y7zgUCDanph2GnlIFp6U+vqC9R8kDRmw== dependencies: - "@aws-sdk/types" "3.609.0" - "@smithy/property-provider" "^3.1.3" - "@smithy/protocol-http" "^4.0.3" - "@smithy/signature-v4" "^3.1.2" - "@smithy/types" "^3.3.0" - "@smithy/util-middleware" "^3.0.3" + "@aws-sdk/core" "3.667.0" + "@aws-sdk/types" "3.667.0" + "@aws-sdk/util-arn-parser" "3.568.0" + "@smithy/core" "^2.4.8" + "@smithy/node-config-provider" "^3.1.8" + "@smithy/protocol-http" "^4.1.4" + "@smithy/signature-v4" "^4.2.0" + "@smithy/smithy-client" "^3.4.0" + "@smithy/types" "^3.5.0" + "@smithy/util-config-provider" "^3.0.0" + "@smithy/util-middleware" "^3.0.7" + "@smithy/util-stream" "^3.1.9" + "@smithy/util-utf8" "^3.0.0" tslib "^2.6.2" -"@aws-sdk/middleware-ssec@3.609.0": - version "3.609.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-ssec/-/middleware-ssec-3.609.0.tgz#b87a8bc6133f3f6bdc6801183d0f9dad3f93cf9f" - integrity sha512-GZSD1s7+JswWOTamVap79QiDaIV7byJFssBW68GYjyRS5EBjNfwA/8s+6uE6g39R3ojyTbYOmvcANoZEhSULXg== +"@aws-sdk/middleware-ssec@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-ssec/-/middleware-ssec-3.667.0.tgz#19d510e4882c170eff33a5ced558781eee0ee716" + integrity sha512-1wuAUZIkmZIvOmGg5qNQU821CGFHhkuKioxXgNh0DpUxZ9+AeiV7yorJr+bqkb2KBFv1i1TnzGRecvKf/KvZIQ== dependencies: - "@aws-sdk/types" "3.609.0" - "@smithy/types" "^3.3.0" + "@aws-sdk/types" "3.667.0" + "@smithy/types" "^3.5.0" tslib "^2.6.2" -"@aws-sdk/middleware-user-agent@3.614.0": - version "3.614.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.614.0.tgz#e6e3b5952db26a0452875c864d39d17707e4eccd" - integrity sha512-xUxh0UPQiMTG6E31Yvu6zVYlikrIcFDKljM11CaatInzvZubGTGiX0DjpqRlfGzUNsuPc/zNrKwRP2+wypgqIw== - dependencies: - "@aws-sdk/types" "3.609.0" - "@aws-sdk/util-endpoints" "3.614.0" - "@smithy/protocol-http" "^4.0.3" - "@smithy/types" "^3.3.0" +"@aws-sdk/middleware-user-agent@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.667.0.tgz#7bc4478d1b9d7a33e20eaa20378df751da8526bc" + integrity sha512-NJoPMV+9hpN90iZ2SgOpFmY6MJW71gGyT28kt0C68B0tBadYpT/J6WW8J7gxwdLA7d2CBwHbFGphTPWXXl+jzw== + dependencies: + "@aws-sdk/core" "3.667.0" + "@aws-sdk/types" "3.667.0" + "@aws-sdk/util-endpoints" "3.667.0" + "@smithy/core" "^2.4.8" + "@smithy/protocol-http" "^4.1.4" + "@smithy/types" "^3.5.0" tslib "^2.6.2" -"@aws-sdk/region-config-resolver@3.614.0": - version "3.614.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/region-config-resolver/-/region-config-resolver-3.614.0.tgz#9cebb31a5bcfea2a41891fff7f28d0164cde179a" - integrity sha512-vDCeMXvic/LU0KFIUjpC3RiSTIkkvESsEfbVHiHH0YINfl8HnEqR5rj+L8+phsCeVg2+LmYwYxd5NRz4PHxt5g== +"@aws-sdk/region-config-resolver@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/region-config-resolver/-/region-config-resolver-3.667.0.tgz#1804103246e6b6c7586edc57d26801647d2972d8" + integrity sha512-iNr+JhhA902JMKHG9IwT9YdaEx6KGl6vjAL5BRNeOjfj4cZYMog6Lz/IlfOAltMtT0w88DAHDEFrBd2uO0l2eg== dependencies: - "@aws-sdk/types" "3.609.0" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/types" "^3.3.0" + "@aws-sdk/types" "3.667.0" + "@smithy/node-config-provider" "^3.1.8" + "@smithy/types" "^3.5.0" "@smithy/util-config-provider" "^3.0.0" - "@smithy/util-middleware" "^3.0.3" + "@smithy/util-middleware" "^3.0.7" tslib "^2.6.2" "@aws-sdk/s3-request-presigner@3.614.0": @@ -550,15 +572,27 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" -"@aws-sdk/token-providers@3.614.0": - version "3.614.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/token-providers/-/token-providers-3.614.0.tgz#88da04f6d4ce916b0b0f6e045676d04201fb47fd" - integrity sha512-okItqyY6L9IHdxqs+Z116y5/nda7rHxLvROxtAJdLavWTYDydxrZstImNgGWTeVdmc0xX2gJCI77UYUTQWnhRw== +"@aws-sdk/signature-v4-multi-region@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.667.0.tgz#4510327a9504d1e6e3d6af5ed69878f8023b8e1f" + integrity sha512-9HBgapQOvrb3qvZfPcIY41D3YRNfcOuyIKqZ3h9FYbM06qOZXmIN7Y8bYL31ANGR3Mce6yu3mcnaqvrC/j1Q1w== dependencies: - "@aws-sdk/types" "3.609.0" - "@smithy/property-provider" "^3.1.3" - "@smithy/shared-ini-file-loader" "^3.1.4" - "@smithy/types" "^3.3.0" + "@aws-sdk/middleware-sdk-s3" "3.667.0" + "@aws-sdk/types" "3.667.0" + "@smithy/protocol-http" "^4.1.4" + "@smithy/signature-v4" "^4.2.0" + "@smithy/types" "^3.5.0" + tslib "^2.6.2" + +"@aws-sdk/token-providers@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/token-providers/-/token-providers-3.667.0.tgz#ea990ef364d6bd75f0ebcf19a22f9ccd0edb3c41" + integrity sha512-ZecJlG8p6D4UTYlBHwOWX6nknVtw/OBJ3yPXTSajBjhUlj9lE2xvejI8gl4rqkyLXk7z3bki+KR4tATbMaM9yg== + dependencies: + "@aws-sdk/types" "3.667.0" + "@smithy/property-provider" "^3.1.7" + "@smithy/shared-ini-file-loader" "^3.1.8" + "@smithy/types" "^3.5.0" tslib "^2.6.2" "@aws-sdk/types@3.609.0", "@aws-sdk/types@^3.222.0": @@ -569,6 +603,14 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" +"@aws-sdk/types@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/types/-/types-3.667.0.tgz#1b307c5af5a029ea1893f799fcfa122988f9d025" + integrity sha512-gYq0xCsqFfQaSL/yT1Gl1vIUjtsg7d7RhnUfsXaHt8xTxOKRTdH9GjbesBjXOzgOvB0W0vfssfreSNGFlOOMJg== + dependencies: + "@smithy/types" "^3.5.0" + tslib "^2.6.2" + "@aws-sdk/util-arn-parser@3.568.0": version "3.568.0" resolved "https://registry.yarnpkg.com/@aws-sdk/util-arn-parser/-/util-arn-parser-3.568.0.tgz#6a19a8c6bbaa520b6be1c278b2b8c17875b91527" @@ -576,14 +618,14 @@ dependencies: tslib "^2.6.2" -"@aws-sdk/util-endpoints@3.614.0": - version "3.614.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-endpoints/-/util-endpoints-3.614.0.tgz#6564b0ffd7dc3728221e9f9821f5aab1cc58468e" - integrity sha512-wK2cdrXHH4oz4IomV/yrGkftU9A+ITB6nFL+rxxyO78is2ifHJpFdV4aqk4LSkXYPi6CXWNru/Dqc7yiKXgJPw== +"@aws-sdk/util-endpoints@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-endpoints/-/util-endpoints-3.667.0.tgz#c880fbc3bda5a11eec81e4ac5f95a256f8dbb24e" + integrity sha512-X22SYDAuQJWnkF1/q17pkX3nGw5XMD9YEUbmt87vUnRq7iyJ3JOpl6UKOBeUBaL838wA5yzdbinmCITJ/VZ1QA== dependencies: - "@aws-sdk/types" "3.609.0" - "@smithy/types" "^3.3.0" - "@smithy/util-endpoints" "^2.0.5" + "@aws-sdk/types" "3.667.0" + "@smithy/types" "^3.5.0" + "@smithy/util-endpoints" "^2.1.3" tslib "^2.6.2" "@aws-sdk/util-format-url@3.609.0": @@ -603,32 +645,33 @@ dependencies: tslib "^2.6.2" -"@aws-sdk/util-user-agent-browser@3.609.0": - version "3.609.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.609.0.tgz#aa15421b2e32ae8bc589dac2bd6e8969832ce588" - integrity sha512-fojPU+mNahzQ0YHYBsx0ZIhmMA96H+ZIZ665ObU9tl+SGdbLneVZVikGve+NmHTQwHzwkFsZYYnVKAkreJLAtA== +"@aws-sdk/util-user-agent-browser@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.667.0.tgz#4c7e14e7f044e9533a6cdd459a3a7ab90e12ccff" + integrity sha512-y1pKlNzNpxzddM0QSnfIfIbi3Z9LTag1VDjYyZRbEGGSVip2J00qKsET+979nRezWMyJgw5GPBQR3Y+rN+jh0Q== dependencies: - "@aws-sdk/types" "3.609.0" - "@smithy/types" "^3.3.0" + "@aws-sdk/types" "3.667.0" + "@smithy/types" "^3.5.0" bowser "^2.11.0" tslib "^2.6.2" -"@aws-sdk/util-user-agent-node@3.614.0": - version "3.614.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.614.0.tgz#1e3f49a80f841a3f21647baed2adce01aac5beb5" - integrity sha512-15ElZT88peoHnq5TEoEtZwoXTXRxNrk60TZNdpl/TUBJ5oNJ9Dqb5Z4ryb8ofN6nm9aFf59GVAerFDz8iUoHBA== +"@aws-sdk/util-user-agent-node@3.667.0": + version "3.667.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.667.0.tgz#db0c28a56453c3a14bda4abd63dc54f13c698640" + integrity sha512-4OcWyWUAYRLwXMxqUqnDb/3LoassXvEJcwjiIKEa7p0JvtSa9VjCL6B8Vjw8C/N6YoqrlFEEvcN7SlwBEy74pA== dependencies: - "@aws-sdk/types" "3.609.0" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/types" "^3.3.0" + "@aws-sdk/middleware-user-agent" "3.667.0" + "@aws-sdk/types" "3.667.0" + "@smithy/node-config-provider" "^3.1.8" + "@smithy/types" "^3.5.0" tslib "^2.6.2" -"@aws-sdk/xml-builder@3.609.0": - version "3.609.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/xml-builder/-/xml-builder-3.609.0.tgz#eeb3d5cde000a23cfeeefe0354b6193440dc7d87" - integrity sha512-l9XxNcA4HX98rwCC2/KoiWcmEiRfZe4G+mYwDbCFT87JIMj6GBhLDkAzr/W8KAaA2IDr8Vc6J8fZPgVulxxfMA== +"@aws-sdk/xml-builder@3.662.0": + version "3.662.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/xml-builder/-/xml-builder-3.662.0.tgz#6cbe5aea6205fd2280ec043189985240628d1cb2" + integrity sha512-ikLkXn0igUpnJu2mCZjklvmcDGWT9OaLRv3JyC/cRkTaaSrblPjPM7KKsltxdMTLQ+v7fjCN0TsJpxphMfaOPA== dependencies: - "@smithy/types" "^3.3.0" + "@smithy/types" "^3.5.0" tslib "^2.6.2" "@babel/code-frame@7.12.11": @@ -2037,6 +2080,14 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" +"@smithy/abort-controller@^3.1.5": + version "3.1.5" + resolved "https://registry.yarnpkg.com/@smithy/abort-controller/-/abort-controller-3.1.5.tgz#ca7a86a3c6b20fabe59667143f58d9e198616d14" + integrity sha512-DhNPnqTqPoG8aZ5dWkFOgsuY+i0GQ3CI6hMmvCoduNsnU9gUZWZBwGfDQsTTB7NvFPkom1df7jMIJWU90kuXXg== + dependencies: + "@smithy/types" "^3.5.0" + tslib "^2.6.2" + "@smithy/chunked-blob-reader-native@^3.0.0": version "3.0.0" resolved "https://registry.yarnpkg.com/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-3.0.0.tgz#f1104b30030f76f9aadcbd3cdca4377bd1ba2695" @@ -2052,90 +2103,90 @@ dependencies: tslib "^2.6.2" -"@smithy/config-resolver@^3.0.5": - version "3.0.5" - resolved "https://registry.yarnpkg.com/@smithy/config-resolver/-/config-resolver-3.0.5.tgz#727978bba7ace754c741c259486a19d3083431fd" - integrity sha512-SkW5LxfkSI1bUC74OtfBbdz+grQXYiPYolyu8VfpLIjEoN/sHVBlLeGXMQ1vX4ejkgfv6sxVbQJ32yF2cl1veA== +"@smithy/config-resolver@^3.0.9": + version "3.0.9" + resolved "https://registry.yarnpkg.com/@smithy/config-resolver/-/config-resolver-3.0.9.tgz#dcf4b7747ca481866f9bfac21469ebe2031a599e" + integrity sha512-5d9oBf40qC7n2xUoHmntKLdqsyTMMo/r49+eqSIjJ73eDfEtljAxEhzIQ3bkgXJtR3xiv7YzMT/3FF3ORkjWdg== dependencies: - "@smithy/node-config-provider" "^3.1.4" - "@smithy/types" "^3.3.0" + "@smithy/node-config-provider" "^3.1.8" + "@smithy/types" "^3.5.0" "@smithy/util-config-provider" "^3.0.0" - "@smithy/util-middleware" "^3.0.3" + "@smithy/util-middleware" "^3.0.7" tslib "^2.6.2" -"@smithy/core@^2.2.6": - version "2.4.0" - resolved "https://registry.yarnpkg.com/@smithy/core/-/core-2.4.0.tgz#56e917b6ab2dffeba681a05395c40a757d681147" - integrity sha512-cHXq+FneIF/KJbt4q4pjN186+Jf4ZB0ZOqEaZMBhT79srEyGDDBV31NqBRBjazz8ppQ1bJbDJMY9ba5wKFV36w== - dependencies: - "@smithy/middleware-endpoint" "^3.1.0" - "@smithy/middleware-retry" "^3.0.15" - "@smithy/middleware-serde" "^3.0.3" - "@smithy/protocol-http" "^4.1.0" - "@smithy/smithy-client" "^3.2.0" - "@smithy/types" "^3.3.0" +"@smithy/core@^2.4.8": + version "2.4.8" + resolved "https://registry.yarnpkg.com/@smithy/core/-/core-2.4.8.tgz#397ac17dfa8ad658b77f96f19484f0eeaf22d397" + integrity sha512-x4qWk7p/a4dcf7Vxb2MODIf4OIcqNbK182WxRvZ/3oKPrf/6Fdic5sSElhO1UtXpWKBazWfqg0ZEK9xN1DsuHA== + dependencies: + "@smithy/middleware-endpoint" "^3.1.4" + "@smithy/middleware-retry" "^3.0.23" + "@smithy/middleware-serde" "^3.0.7" + "@smithy/protocol-http" "^4.1.4" + "@smithy/smithy-client" "^3.4.0" + "@smithy/types" "^3.5.0" "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-middleware" "^3.0.3" + "@smithy/util-middleware" "^3.0.7" "@smithy/util-utf8" "^3.0.0" tslib "^2.6.2" -"@smithy/credential-provider-imds@^3.1.4", "@smithy/credential-provider-imds@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@smithy/credential-provider-imds/-/credential-provider-imds-3.2.0.tgz#0e0e7ddaff1a8633cb927aee1056c0ab506b7ecf" - integrity sha512-0SCIzgd8LYZ9EJxUjLXBmEKSZR/P/w6l7Rz/pab9culE/RWuqelAKGJvn5qUOl8BgX8Yj5HWM50A5hiB/RzsgA== +"@smithy/credential-provider-imds@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@smithy/credential-provider-imds/-/credential-provider-imds-3.2.4.tgz#e1a2bfc8a0066f673756ad8735247cf284b9735c" + integrity sha512-S9bb0EIokfYEuar4kEbLta+ivlKCWOCFsLZuilkNy9i0uEUEHSi47IFLPaxqqCl+0ftKmcOTHayY5nQhAuq7+w== dependencies: - "@smithy/node-config-provider" "^3.1.4" - "@smithy/property-provider" "^3.1.3" - "@smithy/types" "^3.3.0" - "@smithy/url-parser" "^3.0.3" + "@smithy/node-config-provider" "^3.1.8" + "@smithy/property-provider" "^3.1.7" + "@smithy/types" "^3.5.0" + "@smithy/url-parser" "^3.0.7" tslib "^2.6.2" -"@smithy/eventstream-codec@^3.1.2": - version "3.1.2" - resolved "https://registry.yarnpkg.com/@smithy/eventstream-codec/-/eventstream-codec-3.1.2.tgz#4a1c72b34400631b829241151984a1ad8c4f963c" - integrity sha512-0mBcu49JWt4MXhrhRAlxASNy0IjDRFU+aWNDRal9OtUJvJNiwDuyKMUONSOjLjSCeGwZaE0wOErdqULer8r7yw== +"@smithy/eventstream-codec@^3.1.6": + version "3.1.6" + resolved "https://registry.yarnpkg.com/@smithy/eventstream-codec/-/eventstream-codec-3.1.6.tgz#70ca95aad82d5140522eb883fbc140f1f22dcb27" + integrity sha512-SBiOYPBH+5wOyPS7lfI150ePfGLhnp/eTu5RnV9xvhGvRiKfnl6HzRK9wehBph+il8FxS9KTeadx7Rcmf1GLPQ== dependencies: "@aws-crypto/crc32" "5.2.0" - "@smithy/types" "^3.3.0" + "@smithy/types" "^3.5.0" "@smithy/util-hex-encoding" "^3.0.0" tslib "^2.6.2" -"@smithy/eventstream-serde-browser@^3.0.4": - version "3.0.6" - resolved "https://registry.yarnpkg.com/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-3.0.6.tgz#a4ab4f7cfbd137bcaa54c375276f9214e568fd8f" - integrity sha512-2hM54UWQUOrki4BtsUI1WzmD13/SeaqT/AB3EUJKbcver/WgKNaiJ5y5F5XXuVe6UekffVzuUDrBZVAA3AWRpQ== +"@smithy/eventstream-serde-browser@^3.0.10": + version "3.0.10" + resolved "https://registry.yarnpkg.com/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-3.0.10.tgz#ffca366a4edee5097be5a710f87627a5b2da5dec" + integrity sha512-1i9aMY6Pl/SmA6NjvidxnfBLHMPzhKu2BP148pEt5VwhMdmXn36PE2kWKGa9Hj8b0XGtCTRucpCncylevCtI7g== dependencies: - "@smithy/eventstream-serde-universal" "^3.0.5" - "@smithy/types" "^3.3.0" + "@smithy/eventstream-serde-universal" "^3.0.9" + "@smithy/types" "^3.5.0" tslib "^2.6.2" -"@smithy/eventstream-serde-config-resolver@^3.0.3": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.0.3.tgz#f852e096d0ad112363b4685e1d441088d1fce67a" - integrity sha512-NVTYjOuYpGfrN/VbRQgn31x73KDLfCXCsFdad8DiIc3IcdxL+dYA9zEQPyOP7Fy2QL8CPy2WE4WCUD+ZsLNfaQ== +"@smithy/eventstream-serde-config-resolver@^3.0.7": + version "3.0.7" + resolved "https://registry.yarnpkg.com/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.0.7.tgz#1f352f384665f322e024a1396a7a2cca52fce9e3" + integrity sha512-eVzhGQBPEqXXYHvIUku0jMTxd4gDvenRzUQPTmKVWdRvp9JUCKrbAXGQRYiGxUYq9+cqQckRm0wq3kTWnNtDhw== dependencies: - "@smithy/types" "^3.3.0" + "@smithy/types" "^3.5.0" tslib "^2.6.2" -"@smithy/eventstream-serde-node@^3.0.4": - version "3.0.5" - resolved "https://registry.yarnpkg.com/@smithy/eventstream-serde-node/-/eventstream-serde-node-3.0.5.tgz#2bbf5c9312a28f23bc55ae284efa9499f8b8f982" - integrity sha512-+upXvnHNyZP095s11jF5dhGw/Ihzqwl5G+/KtMnoQOpdfC3B5HYCcDVG9EmgkhJMXJlM64PyN5gjJl0uXFQehQ== +"@smithy/eventstream-serde-node@^3.0.9": + version "3.0.9" + resolved "https://registry.yarnpkg.com/@smithy/eventstream-serde-node/-/eventstream-serde-node-3.0.9.tgz#e985340093c2ca6587ae2fdd0663e6845fbe9463" + integrity sha512-JE0Guqvt0xsmfQ5y1EI342/qtJqznBv8cJqkHZV10PwC8GWGU5KNgFbQnsVCcX+xF+qIqwwfRmeWoJCjuOLmng== dependencies: - "@smithy/eventstream-serde-universal" "^3.0.5" - "@smithy/types" "^3.3.0" + "@smithy/eventstream-serde-universal" "^3.0.9" + "@smithy/types" "^3.5.0" tslib "^2.6.2" -"@smithy/eventstream-serde-universal@^3.0.5": - version "3.0.5" - resolved "https://registry.yarnpkg.com/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-3.0.5.tgz#e1cc2f71f4d174a03e00ce4b563395a81dd17bec" - integrity sha512-5u/nXbyoh1s4QxrvNre9V6vfyoLWuiVvvd5TlZjGThIikc3G+uNiG9uOTCWweSRjv1asdDIWK7nOmN7le4RYHQ== +"@smithy/eventstream-serde-universal@^3.0.9": + version "3.0.9" + resolved "https://registry.yarnpkg.com/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-3.0.9.tgz#1832b190a3018204e33487ba1f7f0f6e2fb0da34" + integrity sha512-bydfgSisfepCufw9kCEnWRxqxJFzX/o8ysXWv+W9F2FIyiaEwZ/D8bBKINbh4ONz3i05QJ1xE7A5OKYvgJsXaw== dependencies: - "@smithy/eventstream-codec" "^3.1.2" - "@smithy/types" "^3.3.0" + "@smithy/eventstream-codec" "^3.1.6" + "@smithy/types" "^3.5.0" tslib "^2.6.2" -"@smithy/fetch-http-handler@^3.2.1", "@smithy/fetch-http-handler@^3.2.4": +"@smithy/fetch-http-handler@^3.2.4": version "3.2.4" resolved "https://registry.yarnpkg.com/@smithy/fetch-http-handler/-/fetch-http-handler-3.2.4.tgz#c754de7e0ff2541b73ac9ba7cc955940114b3d62" integrity sha512-kBprh5Gs5h7ug4nBWZi1FZthdqSM+T7zMmsZxx0IBvWUn7dK3diz2SHn7Bs4dQGFDk8plDv375gzenDoNwrXjg== @@ -2146,41 +2197,52 @@ "@smithy/util-base64" "^3.0.0" tslib "^2.6.2" -"@smithy/hash-blob-browser@^3.1.2": - version "3.1.2" - resolved "https://registry.yarnpkg.com/@smithy/hash-blob-browser/-/hash-blob-browser-3.1.2.tgz#90281c1f183d93686fb4f26107f1819644d68829" - integrity sha512-hAbfqN2UbISltakCC2TP0kx4LqXBttEv2MqSPE98gVuDFMf05lU+TpC41QtqGP3Ff5A3GwZMPfKnEy0VmEUpmg== +"@smithy/fetch-http-handler@^3.2.9": + version "3.2.9" + resolved "https://registry.yarnpkg.com/@smithy/fetch-http-handler/-/fetch-http-handler-3.2.9.tgz#8d5199c162a37caa37a8b6848eefa9ca58221a0b" + integrity sha512-hYNVQOqhFQ6vOpenifFME546f0GfJn2OiQ3M0FDmuUu8V/Uiwy2wej7ZXxFBNqdx0R5DZAqWM1l6VRhGz8oE6A== + dependencies: + "@smithy/protocol-http" "^4.1.4" + "@smithy/querystring-builder" "^3.0.7" + "@smithy/types" "^3.5.0" + "@smithy/util-base64" "^3.0.0" + tslib "^2.6.2" + +"@smithy/hash-blob-browser@^3.1.6": + version "3.1.6" + resolved "https://registry.yarnpkg.com/@smithy/hash-blob-browser/-/hash-blob-browser-3.1.6.tgz#d61de344aa3cef0bc83e3ab8166558256262dfcd" + integrity sha512-BKNcMIaeZ9lB67sgo88iCF4YB35KT8X2dNJ8DqrtZNTgN6tUDYBKThzfGtos/mnZkGkW91AYHisESHmSiYQmKw== dependencies: "@smithy/chunked-blob-reader" "^3.0.0" "@smithy/chunked-blob-reader-native" "^3.0.0" - "@smithy/types" "^3.3.0" + "@smithy/types" "^3.5.0" tslib "^2.6.2" -"@smithy/hash-node@^3.0.3": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@smithy/hash-node/-/hash-node-3.0.3.tgz#82c5cb7b0f1a29ee7319081853d2d158c07dff24" - integrity sha512-2ctBXpPMG+B3BtWSGNnKELJ7SH9e4TNefJS0cd2eSkOOROeBnnVBnAy9LtJ8tY4vUEoe55N4CNPxzbWvR39iBw== +"@smithy/hash-node@^3.0.7": + version "3.0.7" + resolved "https://registry.yarnpkg.com/@smithy/hash-node/-/hash-node-3.0.7.tgz#03b5a382fb588b8c2bac11b4fe7300aaf1661c88" + integrity sha512-SAGHN+QkrwcHFjfWzs/czX94ZEjPJ0CrWJS3M43WswDXVEuP4AVy9gJ3+AF6JQHZD13bojmuf/Ap/ItDeZ+Qfw== dependencies: - "@smithy/types" "^3.3.0" + "@smithy/types" "^3.5.0" "@smithy/util-buffer-from" "^3.0.0" "@smithy/util-utf8" "^3.0.0" tslib "^2.6.2" -"@smithy/hash-stream-node@^3.1.2": - version "3.1.2" - resolved "https://registry.yarnpkg.com/@smithy/hash-stream-node/-/hash-stream-node-3.1.2.tgz#89f0290ae44b113863878e75b10c484ff48af71c" - integrity sha512-PBgDMeEdDzi6JxKwbfBtwQG9eT9cVwsf0dZzLXoJF4sHKHs5HEo/3lJWpn6jibfJwT34I1EBXpBnZE8AxAft6g== +"@smithy/hash-stream-node@^3.1.6": + version "3.1.6" + resolved "https://registry.yarnpkg.com/@smithy/hash-stream-node/-/hash-stream-node-3.1.6.tgz#854ad354a865a1334baa2abc2f2247f2723de688" + integrity sha512-sFSSt7cmCpFWZPfVx7k80Bgb1K2VJ27VmMxH8X+dDhp7Wv8IBgID4K2VK5ehMJROF8hQgcj4WywnkHIwX/xlwQ== dependencies: - "@smithy/types" "^3.3.0" + "@smithy/types" "^3.5.0" "@smithy/util-utf8" "^3.0.0" tslib "^2.6.2" -"@smithy/invalid-dependency@^3.0.3": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@smithy/invalid-dependency/-/invalid-dependency-3.0.3.tgz#8d9fd70e3a94b565a4eba4ffbdc95238e1930528" - integrity sha512-ID1eL/zpDULmHJbflb864k72/SNOZCADRc9i7Exq3RUNJw6raWUSlFEQ+3PX3EYs++bTxZB2dE9mEHTQLv61tw== +"@smithy/invalid-dependency@^3.0.7": + version "3.0.7" + resolved "https://registry.yarnpkg.com/@smithy/invalid-dependency/-/invalid-dependency-3.0.7.tgz#b36f258d94498f3c72ab6020091a66fc7cc16eda" + integrity sha512-Bq00GsAhHeYSuZX8Kpu4sbI9agH2BNYnqUmmbTGWOhki9NVsWn2jFr896vvoTMH8KAjNX/ErC/8t5QHuEXG+IA== dependencies: - "@smithy/types" "^3.3.0" + "@smithy/types" "^3.5.0" tslib "^2.6.2" "@smithy/is-array-buffer@^2.2.0": @@ -2197,22 +2259,22 @@ dependencies: tslib "^2.6.2" -"@smithy/md5-js@^3.0.3": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@smithy/md5-js/-/md5-js-3.0.3.tgz#55ee40aa24075b096c39f7910590c18ff7660c98" - integrity sha512-O/SAkGVwpWmelpj/8yDtsaVe6sINHLB1q8YE/+ZQbDxIw3SRLbTZuRaI10K12sVoENdnHqzPp5i3/H+BcZ3m3Q== +"@smithy/md5-js@^3.0.7": + version "3.0.7" + resolved "https://registry.yarnpkg.com/@smithy/md5-js/-/md5-js-3.0.7.tgz#0a645dd9c139254353fd6e6a6b65154baeab7d2e" + integrity sha512-+wco9IN9uOW4tNGkZIqTR6IXyfO7Z8A+IOq82QCRn/f/xcmt7H1fXwmQVbfDSvbeFwfNnhv7s+u0G9PzPG6o2w== dependencies: - "@smithy/types" "^3.3.0" + "@smithy/types" "^3.5.0" "@smithy/util-utf8" "^3.0.0" tslib "^2.6.2" -"@smithy/middleware-content-length@^3.0.3": - version "3.0.5" - resolved "https://registry.yarnpkg.com/@smithy/middleware-content-length/-/middleware-content-length-3.0.5.tgz#1680aa4fb2a1c0505756103c9a5c2916307d9035" - integrity sha512-ILEzC2eyxx6ncej3zZSwMpB5RJ0zuqH7eMptxC4KN3f+v9bqT8ohssKbhNR78k/2tWW+KS5Spw+tbPF4Ejyqvw== +"@smithy/middleware-content-length@^3.0.9": + version "3.0.9" + resolved "https://registry.yarnpkg.com/@smithy/middleware-content-length/-/middleware-content-length-3.0.9.tgz#fb613d1a6b8c91e828d11c0d7a0a8576dba89b8b" + integrity sha512-t97PidoGElF9hTtLCrof32wfWMqC5g2SEJNxaVH3NjlatuNGsdxXRYO/t+RPnxA15RpYiS0f+zG7FuE2DeGgjA== dependencies: - "@smithy/protocol-http" "^4.1.0" - "@smithy/types" "^3.3.0" + "@smithy/protocol-http" "^4.1.4" + "@smithy/types" "^3.5.0" tslib "^2.6.2" "@smithy/middleware-endpoint@^3.0.5", "@smithy/middleware-endpoint@^3.1.0": @@ -2228,18 +2290,31 @@ "@smithy/util-middleware" "^3.0.3" tslib "^2.6.2" -"@smithy/middleware-retry@^3.0.15", "@smithy/middleware-retry@^3.0.9": - version "3.0.15" - resolved "https://registry.yarnpkg.com/@smithy/middleware-retry/-/middleware-retry-3.0.15.tgz#9b96900cde70d8aafd267e13f4e79241be90e0c7" - integrity sha512-iTMedvNt1ApdvkaoE8aSDuwaoc+BhvHqttbA/FO4Ty+y/S5hW6Ci/CTScG7vam4RYJWZxdTElc3MEfHRVH6cgQ== - dependencies: - "@smithy/node-config-provider" "^3.1.4" - "@smithy/protocol-http" "^4.1.0" - "@smithy/service-error-classification" "^3.0.3" - "@smithy/smithy-client" "^3.2.0" - "@smithy/types" "^3.3.0" - "@smithy/util-middleware" "^3.0.3" - "@smithy/util-retry" "^3.0.3" +"@smithy/middleware-endpoint@^3.1.4": + version "3.1.4" + resolved "https://registry.yarnpkg.com/@smithy/middleware-endpoint/-/middleware-endpoint-3.1.4.tgz#222c9fa49c8af6ebf8bea8ab220d92d9b8c90d3d" + integrity sha512-/ChcVHekAyzUbyPRI8CzPPLj6y8QRAfJngWcLMgsWxKVzw/RzBV69mSOzJYDD3pRwushA1+5tHtPF8fjmzBnrQ== + dependencies: + "@smithy/middleware-serde" "^3.0.7" + "@smithy/node-config-provider" "^3.1.8" + "@smithy/shared-ini-file-loader" "^3.1.8" + "@smithy/types" "^3.5.0" + "@smithy/url-parser" "^3.0.7" + "@smithy/util-middleware" "^3.0.7" + tslib "^2.6.2" + +"@smithy/middleware-retry@^3.0.23": + version "3.0.23" + resolved "https://registry.yarnpkg.com/@smithy/middleware-retry/-/middleware-retry-3.0.23.tgz#ce5574e278dd14a7995afd5a4ed2a6c9891da8ed" + integrity sha512-x9PbGXxkcXIpm6L26qRSCC+eaYcHwybRmqU8LO/WM2RRlW0g8lz6FIiKbKgGvHuoK3dLZRiQVSQJveiCzwnA5A== + dependencies: + "@smithy/node-config-provider" "^3.1.8" + "@smithy/protocol-http" "^4.1.4" + "@smithy/service-error-classification" "^3.0.7" + "@smithy/smithy-client" "^3.4.0" + "@smithy/types" "^3.5.0" + "@smithy/util-middleware" "^3.0.7" + "@smithy/util-retry" "^3.0.7" tslib "^2.6.2" uuid "^9.0.1" @@ -2251,6 +2326,14 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" +"@smithy/middleware-serde@^3.0.7": + version "3.0.7" + resolved "https://registry.yarnpkg.com/@smithy/middleware-serde/-/middleware-serde-3.0.7.tgz#03f0dda75edffc4cc90ea422349cbfb82368efa7" + integrity sha512-VytaagsQqtH2OugzVTq4qvjkLNbWehHfGcGr0JLJmlDRrNCeZoWkWsSOw1nhS/4hyUUWF/TLGGml4X/OnEep5g== + dependencies: + "@smithy/types" "^3.5.0" + tslib "^2.6.2" + "@smithy/middleware-stack@^3.0.3": version "3.0.3" resolved "https://registry.yarnpkg.com/@smithy/middleware-stack/-/middleware-stack-3.0.3.tgz#91845c7e61e6f137fa912b623b6def719a4f6ce7" @@ -2259,6 +2342,14 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" +"@smithy/middleware-stack@^3.0.7": + version "3.0.7" + resolved "https://registry.yarnpkg.com/@smithy/middleware-stack/-/middleware-stack-3.0.7.tgz#813fa7b47895ce0d085eac89c056d21b1e46e771" + integrity sha512-EyTbMCdqS1DoeQsO4gI7z2Gzq1MoRFAeS8GkFYIwbedB7Lp5zlLHJdg+56tllIIG5Hnf9ZWX48YKSHlsKvugGA== + dependencies: + "@smithy/types" "^3.5.0" + tslib "^2.6.2" + "@smithy/node-config-provider@^3.1.4": version "3.1.4" resolved "https://registry.yarnpkg.com/@smithy/node-config-provider/-/node-config-provider-3.1.4.tgz#05647bed666aa8036a1ad72323c1942e5d421be1" @@ -2269,7 +2360,17 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" -"@smithy/node-http-handler@^3.1.2", "@smithy/node-http-handler@^3.1.4": +"@smithy/node-config-provider@^3.1.8": + version "3.1.8" + resolved "https://registry.yarnpkg.com/@smithy/node-config-provider/-/node-config-provider-3.1.8.tgz#2c1092040b4062eae0f7c9e121cc00ac6a77efee" + integrity sha512-E0rU0DglpeJn5ge64mk8wTGEXcQwmpUTY5Zr7IzTpDLmHKiIamINERNZYrPQjg58Ck236sEKSwRSHA4CwshU6Q== + dependencies: + "@smithy/property-provider" "^3.1.7" + "@smithy/shared-ini-file-loader" "^3.1.8" + "@smithy/types" "^3.5.0" + tslib "^2.6.2" + +"@smithy/node-http-handler@^3.1.4": version "3.1.4" resolved "https://registry.yarnpkg.com/@smithy/node-http-handler/-/node-http-handler-3.1.4.tgz#be4195e45639e690d522cd5f11513ea822ff9d5f" integrity sha512-+UmxgixgOr/yLsUxcEKGH0fMNVteJFGkmRltYFHnBMlogyFdpzn2CwqWmxOrfJELhV34v0WSlaqG1UtE1uXlJg== @@ -2280,6 +2381,17 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" +"@smithy/node-http-handler@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@smithy/node-http-handler/-/node-http-handler-3.2.4.tgz#3c57c40d082c3bacac1e49955bd1240e8ccc40b2" + integrity sha512-49reY3+JgLMFNm7uTAKBWiKCA6XSvkNp9FqhVmusm2jpVnHORYFeFZ704LShtqWfjZW/nhX+7Iexyb6zQfXYIQ== + dependencies: + "@smithy/abort-controller" "^3.1.5" + "@smithy/protocol-http" "^4.1.4" + "@smithy/querystring-builder" "^3.0.7" + "@smithy/types" "^3.5.0" + tslib "^2.6.2" + "@smithy/property-provider@^3.1.3": version "3.1.3" resolved "https://registry.yarnpkg.com/@smithy/property-provider/-/property-provider-3.1.3.tgz#afd57ea82a3f6c79fbda95e3cb85c0ee0a79f39a" @@ -2288,6 +2400,14 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" +"@smithy/property-provider@^3.1.7": + version "3.1.7" + resolved "https://registry.yarnpkg.com/@smithy/property-provider/-/property-provider-3.1.7.tgz#8a304a4b9110a067a93c784e4c11e175f82da379" + integrity sha512-QfzLi1GPMisY7bAM5hOUqBdGYnY5S2JAlr201pghksrQv139f8iiiMalXtjczIP5f6owxFn3MINLNUNvUkgtPw== + dependencies: + "@smithy/types" "^3.5.0" + tslib "^2.6.2" + "@smithy/protocol-http@^4.0.3", "@smithy/protocol-http@^4.1.0": version "4.1.0" resolved "https://registry.yarnpkg.com/@smithy/protocol-http/-/protocol-http-4.1.0.tgz#23519d8f45bf4f33960ea5415847bc2b620a010b" @@ -2296,6 +2416,14 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" +"@smithy/protocol-http@^4.1.4": + version "4.1.4" + resolved "https://registry.yarnpkg.com/@smithy/protocol-http/-/protocol-http-4.1.4.tgz#6940d652b1825bda2422163ec9baab552669a338" + integrity sha512-MlWK8eqj0JlpZBnWmjQLqmFp71Ug00P+m72/1xQB3YByXD4zZ+y9N4hYrR0EDmrUCZIkyATWHOXFgtavwGDTzQ== + dependencies: + "@smithy/types" "^3.5.0" + tslib "^2.6.2" + "@smithy/querystring-builder@^3.0.3": version "3.0.3" resolved "https://registry.yarnpkg.com/@smithy/querystring-builder/-/querystring-builder-3.0.3.tgz#6b0e566f885bb84938d077c69e8f8555f686af13" @@ -2305,6 +2433,15 @@ "@smithy/util-uri-escape" "^3.0.0" tslib "^2.6.2" +"@smithy/querystring-builder@^3.0.7": + version "3.0.7" + resolved "https://registry.yarnpkg.com/@smithy/querystring-builder/-/querystring-builder-3.0.7.tgz#8c443c65f4249ff1637088db1166d18411d41555" + integrity sha512-65RXGZZ20rzqqxTsChdqSpbhA6tdt5IFNgG6o7e1lnPVLCe6TNWQq4rTl4N87hTDD8mV4IxJJnvyE7brbnRkQw== + dependencies: + "@smithy/types" "^3.5.0" + "@smithy/util-uri-escape" "^3.0.0" + tslib "^2.6.2" + "@smithy/querystring-parser@^3.0.3": version "3.0.3" resolved "https://registry.yarnpkg.com/@smithy/querystring-parser/-/querystring-parser-3.0.3.tgz#272a6b83f88dfcbbec8283d72a6bde850cc00091" @@ -2313,12 +2450,20 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" -"@smithy/service-error-classification@^3.0.3": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@smithy/service-error-classification/-/service-error-classification-3.0.3.tgz#73484255060a094aa9372f6cd972dcaf97e3ce80" - integrity sha512-Jn39sSl8cim/VlkLsUhRFq/dKDnRUFlfRkvhOJaUbLBXUsLRLNf9WaxDv/z9BjuQ3A6k/qE8af1lsqcwm7+DaQ== +"@smithy/querystring-parser@^3.0.7": + version "3.0.7" + resolved "https://registry.yarnpkg.com/@smithy/querystring-parser/-/querystring-parser-3.0.7.tgz#936206d1e6da9d862384dae730b4bad042d6a948" + integrity sha512-Fouw4KJVWqqUVIu1gZW8BH2HakwLz6dvdrAhXeXfeymOBrZw+hcqaWs+cS1AZPVp4nlbeIujYrKA921ZW2WMPA== dependencies: - "@smithy/types" "^3.3.0" + "@smithy/types" "^3.5.0" + tslib "^2.6.2" + +"@smithy/service-error-classification@^3.0.7": + version "3.0.7" + resolved "https://registry.yarnpkg.com/@smithy/service-error-classification/-/service-error-classification-3.0.7.tgz#5bab4ad802d30bd3fa52b8134f6c171582358226" + integrity sha512-91PRkTfiBf9hxkIchhRKJfl1rsplRDyBnmyFca3y0Z3x/q0JJN480S83LBd8R6sBCkm2bBbqw2FHp0Mbh+ecSA== + dependencies: + "@smithy/types" "^3.5.0" "@smithy/shared-ini-file-loader@^3.1.4": version "3.1.4" @@ -2328,6 +2473,14 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" +"@smithy/shared-ini-file-loader@^3.1.8": + version "3.1.8" + resolved "https://registry.yarnpkg.com/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.1.8.tgz#7a0bf5f20cfe8e0c4a36d8dcab8194d0d2ee958e" + integrity sha512-0NHdQiSkeGl0ICQKcJQ2lCOKH23Nb0EaAa7RDRId6ZqwXkw4LJyIyZ0t3iusD4bnKYDPLGy2/5e2rfUhrt0Acw== + dependencies: + "@smithy/types" "^3.5.0" + tslib "^2.6.2" + "@smithy/signature-v4@^3.1.2": version "3.1.2" resolved "https://registry.yarnpkg.com/@smithy/signature-v4/-/signature-v4-3.1.2.tgz#63fc0d4f9a955e902138fb0a57fafc96b9d4e8bb" @@ -2341,7 +2494,21 @@ "@smithy/util-utf8" "^3.0.0" tslib "^2.6.2" -"@smithy/smithy-client@^3.1.7", "@smithy/smithy-client@^3.2.0": +"@smithy/signature-v4@^4.2.0": + version "4.2.0" + resolved "https://registry.yarnpkg.com/@smithy/signature-v4/-/signature-v4-4.2.0.tgz#291f5a0e756cc251377e1e8af2a1f494e6173029" + integrity sha512-LafbclHNKnsorMgUkKm7Tk7oJ7xizsZ1VwqhGKqoCIrXh4fqDDp73fK99HOEEgcsQbtemmeY/BPv0vTVYYUNEQ== + dependencies: + "@smithy/is-array-buffer" "^3.0.0" + "@smithy/protocol-http" "^4.1.4" + "@smithy/types" "^3.5.0" + "@smithy/util-hex-encoding" "^3.0.0" + "@smithy/util-middleware" "^3.0.7" + "@smithy/util-uri-escape" "^3.0.0" + "@smithy/util-utf8" "^3.0.0" + tslib "^2.6.2" + +"@smithy/smithy-client@^3.1.7": version "3.2.0" resolved "https://registry.yarnpkg.com/@smithy/smithy-client/-/smithy-client-3.2.0.tgz#6db94024e4bdaefa079ac68dbea23dafbea230c8" integrity sha512-pDbtxs8WOhJLJSeaF/eAbPgXg4VVYFlRcL/zoNYA5WbG3wBL06CHtBSg53ppkttDpAJ/hdiede+xApip1CwSLw== @@ -2353,6 +2520,18 @@ "@smithy/util-stream" "^3.1.3" tslib "^2.6.2" +"@smithy/smithy-client@^3.4.0": + version "3.4.0" + resolved "https://registry.yarnpkg.com/@smithy/smithy-client/-/smithy-client-3.4.0.tgz#ceffb92108a4ad60cbede3baf44ed224dc70b333" + integrity sha512-nOfJ1nVQsxiP6srKt43r2My0Gp5PLWCW2ASqUioxIiGmu6d32v4Nekidiv5qOmmtzIrmaD+ADX5SKHUuhReeBQ== + dependencies: + "@smithy/middleware-endpoint" "^3.1.4" + "@smithy/middleware-stack" "^3.0.7" + "@smithy/protocol-http" "^4.1.4" + "@smithy/types" "^3.5.0" + "@smithy/util-stream" "^3.1.9" + tslib "^2.6.2" + "@smithy/types@^3.3.0": version "3.3.0" resolved "https://registry.yarnpkg.com/@smithy/types/-/types-3.3.0.tgz#fae037c733d09bc758946a01a3de0ef6e210b16b" @@ -2360,6 +2539,13 @@ dependencies: tslib "^2.6.2" +"@smithy/types@^3.5.0": + version "3.5.0" + resolved "https://registry.yarnpkg.com/@smithy/types/-/types-3.5.0.tgz#9589e154c50d9c5d00feb7d818112ef8fc285d6e" + integrity sha512-QN0twHNfe8mNJdH9unwsCK13GURU7oEAZqkBI+rsvpv1jrmserO+WnLE7jidR9W/1dxwZ0u/CB01mV2Gms/K2Q== + dependencies: + tslib "^2.6.2" + "@smithy/url-parser@^3.0.3": version "3.0.3" resolved "https://registry.yarnpkg.com/@smithy/url-parser/-/url-parser-3.0.3.tgz#e8a060d9810b24b1870385fc2b02485b8a6c5955" @@ -2369,6 +2555,15 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" +"@smithy/url-parser@^3.0.7": + version "3.0.7" + resolved "https://registry.yarnpkg.com/@smithy/url-parser/-/url-parser-3.0.7.tgz#9d7d7e4e38514bf75ade6e8a30d2300f3db17d1b" + integrity sha512-70UbSSR8J97c1rHZOWhl+VKiZDqHWxs/iW8ZHrHp5fCCPLSBE7GcUlUvKSle3Ca+J9LLbYCj/A79BxztBvAfpA== + dependencies: + "@smithy/querystring-parser" "^3.0.7" + "@smithy/types" "^3.5.0" + tslib "^2.6.2" + "@smithy/util-base64@^3.0.0": version "3.0.0" resolved "https://registry.yarnpkg.com/@smithy/util-base64/-/util-base64-3.0.0.tgz#f7a9a82adf34e27a72d0719395713edf0e493017" @@ -2415,37 +2610,37 @@ dependencies: tslib "^2.6.2" -"@smithy/util-defaults-mode-browser@^3.0.9": - version "3.0.15" - resolved "https://registry.yarnpkg.com/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.15.tgz#df73b9ae3dddc9126e0bb93ebc720b09d7163858" - integrity sha512-FZ4Psa3vjp8kOXcd3HJOiDPBCWtiilLl57r0cnNtq/Ga9RSDrM5ERL6xt+tO43+2af6Pn5Yp92x2n5vPuduNfg== +"@smithy/util-defaults-mode-browser@^3.0.23": + version "3.0.23" + resolved "https://registry.yarnpkg.com/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.23.tgz#6920b473126ae8857a04dd6941793bbda12adc8b" + integrity sha512-Y07qslyRtXDP/C5aWKqxTPBl4YxplEELG3xRrz2dnAQ6Lq/FgNrcKWmV561nNaZmFH+EzeGOX3ZRMbU8p1T6Nw== dependencies: - "@smithy/property-provider" "^3.1.3" - "@smithy/smithy-client" "^3.2.0" - "@smithy/types" "^3.3.0" + "@smithy/property-provider" "^3.1.7" + "@smithy/smithy-client" "^3.4.0" + "@smithy/types" "^3.5.0" bowser "^2.11.0" tslib "^2.6.2" -"@smithy/util-defaults-mode-node@^3.0.9": - version "3.0.15" - resolved "https://registry.yarnpkg.com/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.15.tgz#d52476e1f2e66525d918b51f8d5a9b0972bf518e" - integrity sha512-KSyAAx2q6d0t6f/S4XB2+3+6aQacm3aLMhs9aLMqn18uYGUepbdssfogW5JQZpc6lXNBnp0tEnR5e9CEKmEd7A== - dependencies: - "@smithy/config-resolver" "^3.0.5" - "@smithy/credential-provider-imds" "^3.2.0" - "@smithy/node-config-provider" "^3.1.4" - "@smithy/property-provider" "^3.1.3" - "@smithy/smithy-client" "^3.2.0" - "@smithy/types" "^3.3.0" +"@smithy/util-defaults-mode-node@^3.0.23": + version "3.0.23" + resolved "https://registry.yarnpkg.com/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.23.tgz#d03d21816e8b2f586ccf4a87cd0b1cc55b4d75e0" + integrity sha512-9Y4WH7f0vnDGuHUa4lGX9e2p+sMwODibsceSV6rfkZOvMC+BY3StB2LdO1NHafpsyHJLpwAgChxQ38tFyd6vkg== + dependencies: + "@smithy/config-resolver" "^3.0.9" + "@smithy/credential-provider-imds" "^3.2.4" + "@smithy/node-config-provider" "^3.1.8" + "@smithy/property-provider" "^3.1.7" + "@smithy/smithy-client" "^3.4.0" + "@smithy/types" "^3.5.0" tslib "^2.6.2" -"@smithy/util-endpoints@^2.0.5": - version "2.0.5" - resolved "https://registry.yarnpkg.com/@smithy/util-endpoints/-/util-endpoints-2.0.5.tgz#e3a7a4d1c41250bfd2b2d890d591273a7d8934be" - integrity sha512-ReQP0BWihIE68OAblC/WQmDD40Gx+QY1Ez8mTdFMXpmjfxSyz2fVQu3A4zXRfQU9sZXtewk3GmhfOHswvX+eNg== +"@smithy/util-endpoints@^2.1.3": + version "2.1.3" + resolved "https://registry.yarnpkg.com/@smithy/util-endpoints/-/util-endpoints-2.1.3.tgz#7498151e9dc714bdd0c6339314dd2350fa4d250a" + integrity sha512-34eACeKov6jZdHqS5hxBMJ4KyWKztTMulhuQ2UdOoP6vVxMLrOKUqIXAwJe/wiWMhXhydLW664B02CNpQBQ4Aw== dependencies: - "@smithy/node-config-provider" "^3.1.4" - "@smithy/types" "^3.3.0" + "@smithy/node-config-provider" "^3.1.8" + "@smithy/types" "^3.5.0" tslib "^2.6.2" "@smithy/util-hex-encoding@^3.0.0": @@ -2463,16 +2658,24 @@ "@smithy/types" "^3.3.0" tslib "^2.6.2" -"@smithy/util-retry@^3.0.3": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@smithy/util-retry/-/util-retry-3.0.3.tgz#9b2ac0dbb1c81f69812a8affa4d772bebfc0e049" - integrity sha512-AFw+hjpbtVApzpNDhbjNG5NA3kyoMs7vx0gsgmlJF4s+yz1Zlepde7J58zpIRIsdjc+emhpAITxA88qLkPF26w== +"@smithy/util-middleware@^3.0.7": + version "3.0.7" + resolved "https://registry.yarnpkg.com/@smithy/util-middleware/-/util-middleware-3.0.7.tgz#770d09749b6d170a1641384a2e961487447446fa" + integrity sha512-OVA6fv/3o7TMJTpTgOi1H5OTwnuUa8hzRzhSFDtZyNxi6OZ70L/FHattSmhE212I7b6WSOJAAmbYnvcjTHOJCA== dependencies: - "@smithy/service-error-classification" "^3.0.3" - "@smithy/types" "^3.3.0" + "@smithy/types" "^3.5.0" + tslib "^2.6.2" + +"@smithy/util-retry@^3.0.7": + version "3.0.7" + resolved "https://registry.yarnpkg.com/@smithy/util-retry/-/util-retry-3.0.7.tgz#694e0667574ffe9772f620b35d3c7286aced35e9" + integrity sha512-nh1ZO1vTeo2YX1plFPSe/OXaHkLAHza5jpokNiiKX2M5YpNUv6RxGJZhpfmiR4jSvVHCjIDmILjrxKmP+/Ghug== + dependencies: + "@smithy/service-error-classification" "^3.0.7" + "@smithy/types" "^3.5.0" tslib "^2.6.2" -"@smithy/util-stream@^3.0.6", "@smithy/util-stream@^3.1.3": +"@smithy/util-stream@^3.1.3": version "3.1.3" resolved "https://registry.yarnpkg.com/@smithy/util-stream/-/util-stream-3.1.3.tgz#699ee2397cc1d474e46d2034039d5263812dca64" integrity sha512-FIv/bRhIlAxC0U7xM1BCnF2aDRPq0UaelqBHkM2lsCp26mcBbgI0tCVTv+jGdsQLUmAMybua/bjDsSu8RQHbmw== @@ -2486,6 +2689,20 @@ "@smithy/util-utf8" "^3.0.0" tslib "^2.6.2" +"@smithy/util-stream@^3.1.9": + version "3.1.9" + resolved "https://registry.yarnpkg.com/@smithy/util-stream/-/util-stream-3.1.9.tgz#d39656eae27696bdc5a3ec7c2f6b89c32dccd1ca" + integrity sha512-7YAR0Ub3MwTMjDfjnup4qa6W8gygZMxikBhFMPESi6ASsl/rZJhwLpF/0k9TuezScCojsM0FryGdz4LZtjKPPQ== + dependencies: + "@smithy/fetch-http-handler" "^3.2.9" + "@smithy/node-http-handler" "^3.2.4" + "@smithy/types" "^3.5.0" + "@smithy/util-base64" "^3.0.0" + "@smithy/util-buffer-from" "^3.0.0" + "@smithy/util-hex-encoding" "^3.0.0" + "@smithy/util-utf8" "^3.0.0" + tslib "^2.6.2" + "@smithy/util-uri-escape@^3.0.0": version "3.0.0" resolved "https://registry.yarnpkg.com/@smithy/util-uri-escape/-/util-uri-escape-3.0.0.tgz#e43358a78bf45d50bb736770077f0f09195b6f54" @@ -2509,13 +2726,13 @@ "@smithy/util-buffer-from" "^3.0.0" tslib "^2.6.2" -"@smithy/util-waiter@^3.1.2": - version "3.1.2" - resolved "https://registry.yarnpkg.com/@smithy/util-waiter/-/util-waiter-3.1.2.tgz#2d40c3312f3537feee763459a19acafab4c75cf3" - integrity sha512-4pP0EV3iTsexDx+8PPGAKCQpd/6hsQBaQhqWzU4hqKPHN5epPsxKbvUTIiYIHTxaKt6/kEaqPBpu/ufvfbrRzw== +"@smithy/util-waiter@^3.1.6": + version "3.1.6" + resolved "https://registry.yarnpkg.com/@smithy/util-waiter/-/util-waiter-3.1.6.tgz#c65870d0c802e33b96112fac5c4471b3bf2eeecb" + integrity sha512-xs/KAwWOeCklq8aMlnpk25LgxEYHKOEodfjfKclDMLcBJEVEKzDLxZxBQyztcuPJ7F54213NJS8PxoiHNMdItQ== dependencies: - "@smithy/abort-controller" "^3.1.1" - "@smithy/types" "^3.3.0" + "@smithy/abort-controller" "^3.1.5" + "@smithy/types" "^3.5.0" tslib "^2.6.2" "@stylelint/postcss-css-in-js@^0.37.2": @@ -6804,10 +7021,10 @@ fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= -fast-xml-parser@4.2.5: - version "4.2.5" - resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-4.2.5.tgz#a6747a09296a6cb34f2ae634019bf1738f3b421f" - integrity sha512-B9/wizE4WngqQftFPmdaMYlXoJlJOYxGQOanC77fq9k8+Z0v5dDSVh+3glErdIROP//s/jgb7ZuxKfB8nVyo0g== +fast-xml-parser@4.4.1: + version "4.4.1" + resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-4.4.1.tgz#86dbf3f18edf8739326447bcaac31b4ae7f6514f" + integrity sha512-xkjOecfnKGkSsOwtZ5Pz7Us/T6mrbPQrq0nh+aCO5V9nk5NLWmasAHumTKjiPJPWANe+kAZ84Jc8ooJkzZ88Sw== dependencies: strnum "^1.0.5"