diff --git a/lib/user-interface/genai-newsletter-ui/src/components/data-feeds/article-table.tsx b/lib/user-interface/genai-newsletter-ui/src/components/data-feeds/article-table.tsx index fbf0878..1c07d4a 100644 --- a/lib/user-interface/genai-newsletter-ui/src/components/data-feeds/article-table.tsx +++ b/lib/user-interface/genai-newsletter-ui/src/components/data-feeds/article-table.tsx @@ -53,9 +53,16 @@ export default function DataFeedArticleTable () { return } if (result.data.listArticles?.items !== null) { - setArticles(result.data.listArticles?.items as Article[]) + const sortedArticles = [...(result.data.listArticles?.items as Article[])] + .sort((a, b) => { + const dateA = new Date(a.createdAt ?? 0); + const dateB = new Date(b.createdAt ?? 0); + return dateB.getTime() - dateA.getTime(); + }); + setArticles(sortedArticles); } + setLoading(false) }, [appContext, dataFeedId]) @@ -101,7 +108,6 @@ export default function DataFeedArticleTable () { if (flagArticle !== null && flagArticle == 'true' && articleId !== null) { setLoading(true) try { - console.log('TRIGGER') flagDataFeedArticle(articleId, true) } catch (error) { console.log(error) diff --git a/lib/user-interface/genai-newsletter-ui/src/components/newsletters/definitions.tsx b/lib/user-interface/genai-newsletter-ui/src/components/newsletters/definitions.tsx index a5699e0..083a2cf 100644 --- a/lib/user-interface/genai-newsletter-ui/src/components/newsletters/definitions.tsx +++ b/lib/user-interface/genai-newsletter-ui/src/components/newsletters/definitions.tsx @@ -105,9 +105,9 @@ export const ArticlesTableColumnDefinition = ( { id: 'keywords', cell: (item: Article) => ( - + {item.keywords?.split(',').map((keyword: string) => { - return {keyword} + return {keyword} })} ), diff --git a/lib/user-interface/genai-newsletter-ui/src/components/newsletters/publications-table.tsx b/lib/user-interface/genai-newsletter-ui/src/components/newsletters/publications-table.tsx index e6c9eb7..f43f299 100644 --- a/lib/user-interface/genai-newsletter-ui/src/components/newsletters/publications-table.tsx +++ b/lib/user-interface/genai-newsletter-ui/src/components/newsletters/publications-table.tsx @@ -8,21 +8,25 @@ import { AppContext } from '../../common/app-context' import { useParams } from 'react-router-dom' import { Publication } from '../../../../../shared/api/API' import { + Box, Button, Container, ExpandableSection, - SpaceBetween + SpaceBetween, } from '@cloudscape-design/components' +import { LoadingBar } from '@cloudscape-design/chat-components' import { listPublications } from '../../../../../shared/api/graphql/queries' import { generateAuthorizedClient } from '../../common/helpers' import Newsletter from './newsletter' -export default function PublicationsTable () { +export default function PublicationsTable() { const appContext = useContext(AppContext) const { newsletterId } = useParams() const [publications, setPublications] = useState([]) + const [publicationsLoading, setPublicationsLoading] = useState(true) const getPublications = useCallback(async () => { + setPublicationsLoading(true) if (!appContext) { return } @@ -37,15 +41,21 @@ export default function PublicationsTable () { id: newsletterId } } - }) + }); if (result.errors) { - console.error(result.errors) + console.error(result.errors); } else { - setPublications([ - ...(result.data.listPublications?.items as Publication[]) - ]) + const sortedPublications = [...(result.data.listPublications?.items as Publication[])] + .sort((a, b) => { + const dateA = new Date(a.createdAt ?? 0); + const dateB = new Date(b.createdAt ?? 0); + return dateB.getTime() - dateA.getTime(); + }); + setPublications(sortedPublications); + setPublicationsLoading(false) } + }, [appContext, newsletterId]) useEffect(() => { @@ -53,49 +63,58 @@ export default function PublicationsTable () { }, [getPublications]) return ( - {publications.length > 0 ? ( - publications.map((publication) => { - if (publication.filePath) { - return ( - 0 ? ( - - - - ) : ( - <> - ) - } - variant="stacked" - > - - - - - ) - } else { - return <> - } - }) + {publicationsLoading ? ( + + + Loading Newsletter Publications + + + ) : ( -

No Publications Available

+ publications.length > 0 ? ( + publications.map((publication) => { + if (publication.filePath) { + return ( + 0 ? ( + + + + ) : ( + <> + ) + } + variant="stacked" + > + + + + + ) + } else { + return <> + } + }) + ) : ( +

No Publications Available

+ ) )}
) diff --git a/package-lock.json b/package-lock.json index 562cf3f..6b91f19 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,7 +20,9 @@ "@aws-sdk/client-sfn": "^3.569.0", "@aws-sdk/lib-storage": "^3.472.0", "@aws-sdk/util-dynamodb": "^3.473.0", + "@cloudscape-design/chat-components": "^1.0.0", "@cloudscape-design/collection-hooks": "^1.0.45", + "@cloudscape-design/component-toolkit": "^1.0.0-beta.51", "@cloudscape-design/global-styles": "^1.0.26", "@types/cheerio": "^0.22.35", "aws-cdk-lib": "^2.144.0", @@ -33,8 +35,8 @@ "esbuild": "^0.21.2", "graphql": "^16.8.1", "mui-color-input": "^2.0.3", - "react": "^18.2.0", - "react-dom": "18.0", + "react": "18.2", + "react-dom": "18.2", "react-router": "^6.23.1", "source-map-support": "^0.5.21", "tsconfig-paths": "^4.2.0", @@ -49,7 +51,7 @@ "@aws-sdk/client-lambda": "^3.496.0", "@aws-sdk/client-s3": "^3.588.0", "@aws-sdk/client-verifiedpermissions": "^3.598.0", - "@cloudscape-design/components": "^3.0.593", + "@cloudscape-design/components": "^3.0.671", "@graphql-codegen/cli": "^5.0.2", "@graphql-codegen/introspection": "^4.0.3", "@graphql-codegen/plugin-helpers": "^5.0.3", @@ -12240,6 +12242,22 @@ "node": ">=6.9.0" } }, + "node_modules/@cloudscape-design/chat-components": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@cloudscape-design/chat-components/-/chat-components-1.0.0.tgz", + "integrity": "sha512-J11PvQWoChGMsko1uwD9JZUpAihuML7ANL4gPKmp3BQk/YYCx7VAhXrq1MHmsfPmpfnxn43Bp52rp5ix7neqLw==", + "dependencies": { + "@cloudscape-design/component-toolkit": "^1.0.0-beta", + "@cloudscape-design/test-utils-core": "^1.0.0", + "clsx": "^1.2.1" + }, + "peerDependencies": { + "@cloudscape-design/components": "^3", + "@cloudscape-design/design-tokens": "^3", + "react": "^18.2.0", + "react-dom": "^18.2.0" + } + }, "node_modules/@cloudscape-design/collection-hooks": { "version": "1.0.45", "resolved": "https://registry.npmjs.org/@cloudscape-design/collection-hooks/-/collection-hooks-1.0.45.tgz", @@ -12249,20 +12267,18 @@ } }, "node_modules/@cloudscape-design/component-toolkit": { - "version": "1.0.0-beta.48", - "resolved": "https://registry.npmjs.org/@cloudscape-design/component-toolkit/-/component-toolkit-1.0.0-beta.48.tgz", - "integrity": "sha512-Ph8XuqjGEdlLiebqcj+ccs6cAVSdMLDHIwnY6P9qq3Wi6ewqtNpisgOC2sJ/TI+wXEjwqKRw9Cuta/8QEtdGtA==", - "dev": true, + "version": "1.0.0-beta.51", + "resolved": "https://registry.npmjs.org/@cloudscape-design/component-toolkit/-/component-toolkit-1.0.0-beta.51.tgz", + "integrity": "sha512-6i5ipiGzhMhTfVLx0BufoxNmQbz66E5Wv4UEWnYoJr0Yk0f7Wa9GnXVplUP3EQP5Pz/9XwjH2tYKLnj6hQVFLg==", "dependencies": { "@juggle/resize-observer": "^3.3.1", "tslib": "^2.3.1" } }, "node_modules/@cloudscape-design/components": { - "version": "3.0.630", - "resolved": "https://registry.npmjs.org/@cloudscape-design/components/-/components-3.0.630.tgz", - "integrity": "sha512-c5CoekycpkDlhbTeXd44k34xXhi0SwfItATysG+he1Qgq2chfnZB1MGzio6RPhR1tn6iCOc1RujeU3/VtA0DYQ==", - "dev": true, + "version": "3.0.671", + "resolved": "https://registry.npmjs.org/@cloudscape-design/components/-/components-3.0.671.tgz", + "integrity": "sha512-lyMtIVj50gkeuDTWkl59UTo/DMX/wE7v+F2buSVPGB1kMFzSUFpcNVEL4vqX78tm9kfX9E10jaHk3d3BxEkNLQ==", "dependencies": { "@cloudscape-design/collection-hooks": "^1.0.0", "@cloudscape-design/component-toolkit": "^1.0.0-beta", @@ -12272,7 +12288,7 @@ "@dnd-kit/sortable": "^7.0.2", "@dnd-kit/utilities": "^3.2.1", "@juggle/resize-observer": "^3.3.1", - "ace-builds": "^1.32.6", + "ace-builds": "^1.34.0", "balanced-match": "^1.0.2", "clsx": "^1.1.0", "d3-shape": "^1.3.7", @@ -12289,6 +12305,12 @@ "react-dom": "^16.8 || ^17 || ^18" } }, + "node_modules/@cloudscape-design/design-tokens": { + "version": "3.0.39", + "resolved": "https://registry.npmjs.org/@cloudscape-design/design-tokens/-/design-tokens-3.0.39.tgz", + "integrity": "sha512-XBAqmHJOkh1CERKDpmSuQzKuGaolBWKBIkbkKSBDs6ks7VVsLwNHG1S+m6LdxcRguDLqmMFlLWz1c7pYyzg1Ww==", + "peer": true + }, "node_modules/@cloudscape-design/global-styles": { "version": "1.0.27", "resolved": "https://registry.npmjs.org/@cloudscape-design/global-styles/-/global-styles-1.0.27.tgz", @@ -12298,7 +12320,6 @@ "version": "1.0.31", "resolved": "https://registry.npmjs.org/@cloudscape-design/test-utils-core/-/test-utils-core-1.0.31.tgz", "integrity": "sha512-Ht6FMATfdcjOq/yzUhXk5nup7+bVjvMMgtRy2FQ8N+w5fzD7FtiXJiK9RYs0GpTCbwhjdXcuvq9aYkIOlVyXxQ==", - "dev": true, "dependencies": { "css-selector-tokenizer": "^0.8.0", "css.escape": "^1.5.1" @@ -12308,7 +12329,6 @@ "version": "1.0.49", "resolved": "https://registry.npmjs.org/@cloudscape-design/theming-runtime/-/theming-runtime-1.0.49.tgz", "integrity": "sha512-rQPZGOhpGsfrrHali6nbCzSzXKhbC3mlFG+WHuDYKZwoZWU2D+4/sOU7oTNrShdnLzm8DfRRVqZsY1WzHCb/SA==", - "dev": true, "dependencies": { "tslib": "^2.4.0" } @@ -12490,7 +12510,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/@dnd-kit/accessibility/-/accessibility-3.1.0.tgz", "integrity": "sha512-ea7IkhKvlJUv9iSHJOnxinBcoOI3ppGnnL+VDJ75O45Nss6HtZd8IdN8touXPDtASfeI2T2LImb8VOZcL47wjQ==", - "dev": true, "dependencies": { "tslib": "^2.0.0" }, @@ -12502,7 +12521,6 @@ "version": "6.1.0", "resolved": "https://registry.npmjs.org/@dnd-kit/core/-/core-6.1.0.tgz", "integrity": "sha512-J3cQBClB4TVxwGo3KEjssGEXNJqGVWx17aRTZ1ob0FliR5IjYgTxl5YJbKTzA6IzrtelotH19v6y7uoIRUZPSg==", - "dev": true, "dependencies": { "@dnd-kit/accessibility": "^3.1.0", "@dnd-kit/utilities": "^3.2.2", @@ -12517,7 +12535,6 @@ "version": "7.0.2", "resolved": "https://registry.npmjs.org/@dnd-kit/sortable/-/sortable-7.0.2.tgz", "integrity": "sha512-wDkBHHf9iCi1veM834Gbk1429bd4lHX4RpAwT0y2cHLf246GAvU2sVw/oxWNpPKQNQRQaeGXhAVgrOl1IT+iyA==", - "dev": true, "dependencies": { "@dnd-kit/utilities": "^3.2.0", "tslib": "^2.0.0" @@ -12531,7 +12548,6 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/@dnd-kit/utilities/-/utilities-3.2.2.tgz", "integrity": "sha512-+MKAJEOfaBe5SmV6t34p80MMKhjvUz0vRrvVJbPT0WElzaOJ/1xs+D+KDv+tD/NE5ujfrChEcshd4fLn0wpiqg==", - "dev": true, "dependencies": { "tslib": "^2.0.0" }, @@ -13233,7 +13249,6 @@ "version": "1.18.2", "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.18.2.tgz", "integrity": "sha512-+QoPW4csYALsQIl8GbN14igZzDbuwzcpWrku9nyMXlaqAlwRBgl5V+p0vWMGFqHOw37czNXaP/lEk4wbLgcmtA==", - "dev": true, "dependencies": { "@formatjs/intl-localematcher": "0.5.4", "tslib": "^2.4.0" @@ -13243,7 +13258,6 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/@formatjs/fast-memoize/-/fast-memoize-2.2.0.tgz", "integrity": "sha512-hnk/nY8FyrL5YxwP9e4r9dqeM6cAbo8PeU9UjyXojZMNvVad2Z06FAVHyR3Ecw6fza+0GH7vdJgiKIVXTMbSBA==", - "dev": true, "dependencies": { "tslib": "^2.4.0" } @@ -13252,7 +13266,6 @@ "version": "2.7.6", "resolved": "https://registry.npmjs.org/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.7.6.tgz", "integrity": "sha512-etVau26po9+eewJKYoiBKP6743I1br0/Ie00Pb/S/PtmYfmjTcOn2YCh2yNkSZI12h6Rg+BOgQYborXk46BvkA==", - "dev": true, "dependencies": { "@formatjs/ecma402-abstract": "1.18.2", "@formatjs/icu-skeleton-parser": "1.8.0", @@ -13263,7 +13276,6 @@ "version": "1.8.0", "resolved": "https://registry.npmjs.org/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-1.8.0.tgz", "integrity": "sha512-QWLAYvM0n8hv7Nq5BEs4LKIjevpVpbGLAJgOaYzg9wABEoX1j0JO1q2/jVkO6CVlq0dbsxZCngS5aXbysYueqA==", - "dev": true, "dependencies": { "@formatjs/ecma402-abstract": "1.18.2", "tslib": "^2.4.0" @@ -13273,7 +13285,6 @@ "version": "0.5.4", "resolved": "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.5.4.tgz", "integrity": "sha512-zTwEpWOzZ2CiKcB93BLngUX59hQkuZjT2+SAQEscSm52peDW/getsawMcWF1rGRpMCX6D7nSJA3CzJ8gn13N/g==", - "dev": true, "dependencies": { "tslib": "^2.4.0" } @@ -14452,8 +14463,7 @@ "node_modules/@juggle/resize-observer": { "version": "3.4.0", "resolved": "https://registry.npmjs.org/@juggle/resize-observer/-/resize-observer-3.4.0.tgz", - "integrity": "sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==", - "dev": true + "integrity": "sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==" }, "node_modules/@kamilkisiela/fast-url-parser": { "version": "1.1.4", @@ -17192,28 +17202,6 @@ "react": "18.2.0" } }, - "node_modules/@react-email/components/node_modules/react-dom": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", - "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", - "dev": true, - "dependencies": { - "loose-envify": "^1.1.0", - "scheduler": "^0.23.0" - }, - "peerDependencies": { - "react": "^18.2.0" - } - }, - "node_modules/@react-email/components/node_modules/scheduler": { - "version": "0.23.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", - "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", - "dev": true, - "dependencies": { - "loose-envify": "^1.1.0" - } - }, "node_modules/@react-email/heading": { "version": "0.0.9", "resolved": "https://registry.npmjs.org/@react-email/heading/-/heading-0.0.9.tgz", @@ -17295,28 +17283,6 @@ "node": ">=18.0.0" } }, - "node_modules/@react-email/render/node_modules/react-dom": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", - "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", - "dev": true, - "dependencies": { - "loose-envify": "^1.1.0", - "scheduler": "^0.23.0" - }, - "peerDependencies": { - "react": "^18.2.0" - } - }, - "node_modules/@react-email/render/node_modules/scheduler": { - "version": "0.23.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", - "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", - "dev": true, - "dependencies": { - "loose-envify": "^1.1.0" - } - }, "node_modules/@react-email/tailwind": { "version": "0.0.13", "resolved": "https://registry.npmjs.org/@react-email/tailwind/-/tailwind-0.0.13.tgz", @@ -17333,28 +17299,6 @@ "react": "18.2.0" } }, - "node_modules/@react-email/tailwind/node_modules/react-dom": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", - "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", - "dev": true, - "dependencies": { - "loose-envify": "^1.1.0", - "scheduler": "^0.23.0" - }, - "peerDependencies": { - "react": "^18.2.0" - } - }, - "node_modules/@react-email/tailwind/node_modules/scheduler": { - "version": "0.23.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", - "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", - "dev": true, - "dependencies": { - "loose-envify": "^1.1.0" - } - }, "node_modules/@remix-run/router": { "version": "1.16.1", "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.16.1.tgz", @@ -20563,10 +20507,9 @@ } }, "node_modules/ace-builds": { - "version": "1.33.2", - "resolved": "https://registry.npmjs.org/ace-builds/-/ace-builds-1.33.2.tgz", - "integrity": "sha512-uDqCe+XDIdnADaDrA8o+x+qAfbM6uqyDQ43QcE6qC7zBPTvQSMOSPcXW+HvjZhEc2YbVYSaxXJX1qQKPgYqi5w==", - "dev": true + "version": "1.35.1", + "resolved": "https://registry.npmjs.org/ace-builds/-/ace-builds-1.35.1.tgz", + "integrity": "sha512-WUQMeJVP3K14gPJ5VoFkmwutd2GSa/CZrt8Uvgx/zheVLaLdQI6HjyDW3ZNj/tQGtB+3HpGq9ugzxUausVc15A==" }, "node_modules/acorn": { "version": "8.11.3", @@ -22159,7 +22102,6 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", - "dev": true, "engines": { "node": ">=6" } @@ -22483,7 +22425,6 @@ "version": "0.8.0", "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.8.0.tgz", "integrity": "sha512-Jd6Ig3/pe62/qe5SBPTN8h8LeUg/pT4lLgtavPf7updwwHpvFzxvOQBHYj2LZDMjUnBzgvIUSjRcf6oT5HzHFg==", - "dev": true, "dependencies": { "cssesc": "^3.0.0", "fastparse": "^1.1.2" @@ -22503,14 +22444,12 @@ "node_modules/css.escape": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz", - "integrity": "sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==", - "dev": true + "integrity": "sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==" }, "node_modules/cssesc": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true, "bin": { "cssesc": "bin/cssesc" }, @@ -22617,14 +22556,12 @@ "node_modules/d3-path": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-1.0.9.tgz", - "integrity": "sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==", - "dev": true + "integrity": "sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==" }, "node_modules/d3-shape": { "version": "1.3.7", "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-1.3.7.tgz", "integrity": "sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==", - "dev": true, "dependencies": { "d3-path": "1" } @@ -22690,7 +22627,6 @@ "version": "2.30.0", "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.30.0.tgz", "integrity": "sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==", - "dev": true, "dependencies": { "@babel/runtime": "^7.21.0" }, @@ -24094,8 +24030,7 @@ "node_modules/fastparse": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.2.tgz", - "integrity": "sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==", - "dev": true + "integrity": "sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==" }, "node_modules/fastq": { "version": "1.17.1", @@ -25220,7 +25155,6 @@ "version": "10.5.12", "resolved": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-10.5.12.tgz", "integrity": "sha512-izl0uxhy/melhw8gP2r8pGiVieviZmM4v5Oqx3c1/R7g9cwER2smmGfSjcIsp8Y3Q53bfciL/gkxacJRx/dUvg==", - "dev": true, "dependencies": { "@formatjs/ecma402-abstract": "1.18.2", "@formatjs/fast-memoize": "2.2.0", @@ -26504,7 +26438,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/mnth/-/mnth-2.0.0.tgz", "integrity": "sha512-3ZH4UWBGpAwCKdfjynLQpUDVZWMe6vRHwarIpMdGLUp89CVR9hjzgyWERtMyqx+fPEqQ/PsAxFwvwPxLFxW40A==", - "dev": true, "dependencies": { "@babel/runtime": "^7.8.0" }, @@ -27715,15 +27648,15 @@ } }, "node_modules/react-dom": { - "version": "18.0.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.0.0.tgz", - "integrity": "sha512-XqX7uzmFo0pUceWFCt7Gff6IyIMzFUn7QMZrbrQfGxtaxXZIcGQzoNpRLE3fQLnS4XzLLPMZX2T9TRcSrasicw==", + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", + "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", "dependencies": { "loose-envify": "^1.1.0", - "scheduler": "^0.21.0" + "scheduler": "^0.23.0" }, "peerDependencies": { - "react": "^18.0.0" + "react": "^18.2.0" } }, "node_modules/react-email": { @@ -28366,15 +28299,6 @@ "react": "^18.3.1" } }, - "node_modules/react-email/node_modules/scheduler": { - "version": "0.23.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", - "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", - "dev": true, - "dependencies": { - "loose-envify": "^1.1.0" - } - }, "node_modules/react-email/node_modules/source-map-js": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", @@ -28421,7 +28345,6 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/react-keyed-flatten-children/-/react-keyed-flatten-children-1.3.0.tgz", "integrity": "sha512-qB7A6n+NHU0x88qTZGAJw6dsqwI941jcRPBB640c/CyWqjPQQ+YUmXOuzPziuHb7iqplM3xksWAbGYwkQT0tXA==", - "dev": true, "dependencies": { "react-is": "^16.8.6" }, @@ -28432,8 +28355,7 @@ "node_modules/react-keyed-flatten-children/node_modules/react-is": { "version": "16.13.1", "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "dev": true + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" }, "node_modules/react-promise-suspense": { "version": "0.3.4", @@ -28993,9 +28915,9 @@ "dev": true }, "node_modules/scheduler": { - "version": "0.21.0", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.21.0.tgz", - "integrity": "sha512-1r87x5fz9MXqswA2ERLo0EbOAU74DpIUO090gIasYTqlVoJeMcl+Z1Rg7WHz+qtPujhS/hGIt9kxZOYBV3faRQ==", + "version": "0.23.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", + "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", "dependencies": { "loose-envify": "^1.1.0" } @@ -31694,8 +31616,7 @@ "node_modules/weekstart": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/weekstart/-/weekstart-1.1.0.tgz", - "integrity": "sha512-ZO3I7c7J9nwGN1PZKZeBYAsuwWEsCOZi5T68cQoVNYrzrpp5Br0Bgi0OF4l8kH/Ez7nKfxa5mSsXjsgris3+qg==", - "dev": true + "integrity": "sha512-ZO3I7c7J9nwGN1PZKZeBYAsuwWEsCOZi5T68cQoVNYrzrpp5Br0Bgi0OF4l8kH/Ez7nKfxa5mSsXjsgris3+qg==" }, "node_modules/whatwg-url": { "version": "5.0.0", diff --git a/package.json b/package.json index 22f3e0a..9b4d1b1 100644 --- a/package.json +++ b/package.json @@ -31,7 +31,7 @@ "@aws-sdk/client-lambda": "^3.496.0", "@aws-sdk/client-s3": "^3.588.0", "@aws-sdk/client-verifiedpermissions": "^3.598.0", - "@cloudscape-design/components": "^3.0.593", + "@cloudscape-design/components": "^3.0.671", "@graphql-codegen/cli": "^5.0.2", "@graphql-codegen/introspection": "^4.0.3", "@graphql-codegen/plugin-helpers": "^5.0.3", @@ -86,7 +86,9 @@ "@aws-sdk/client-sfn": "^3.569.0", "@aws-sdk/lib-storage": "^3.472.0", "@aws-sdk/util-dynamodb": "^3.473.0", + "@cloudscape-design/chat-components": "^1.0.0", "@cloudscape-design/collection-hooks": "^1.0.45", + "@cloudscape-design/component-toolkit": "^1.0.0-beta.51", "@cloudscape-design/global-styles": "^1.0.26", "@types/cheerio": "^0.22.35", "aws-cdk-lib": "^2.144.0", @@ -99,8 +101,8 @@ "esbuild": "^0.21.2", "graphql": "^16.8.1", "mui-color-input": "^2.0.3", - "react": "^18.2.0", - "react-dom": "18.0", + "react": "18.2", + "react-dom": "18.2", "react-router": "^6.23.1", "source-map-support": "^0.5.21", "tsconfig-paths": "^4.2.0",