diff --git a/components/chat/ChatInput.tsx b/components/chat/ChatInput.tsx new file mode 100644 index 000000000..5214802ca --- /dev/null +++ b/components/chat/ChatInput.tsx @@ -0,0 +1,23 @@ +import { JSONContent } from "@tiptap/core"; +import { Dispatch, FC, SetStateAction } from "react"; +import InboxEditor from "../ui-elements/editors/inbox-editor/InboxEditor"; + +interface ChatInputProps { + prompt: JSONContent; + setPrompt: Dispatch>; + handleSend: () => void; +} + +const ChatInput: FC = ({ prompt, setPrompt, handleSend }) => ( + setPrompt(editor.getJSON())} + autoFocus + placeholder="Send a message" + saveAtCmdEnter={handleSend} + showSaveStatus={false} + className="pb-12 max-h-60 md:max-h-80 overflow-y-auto" + /> +); + +export default ChatInput; diff --git a/components/chat/ChatMetadata.tsx b/components/chat/ChatMetadata.tsx new file mode 100644 index 000000000..f6528acfa --- /dev/null +++ b/components/chat/ChatMetadata.tsx @@ -0,0 +1,30 @@ +import { MentionedPerson } from "@/helpers/chat/set-mentioned-people"; +import { PersonJob } from "@/pages/chat"; +import { FC } from "react"; + +interface ChatMetadataProps { + currentJob?: PersonJob; + mentionedPeople?: MentionedPerson[]; +} + +const ChatMetadata: FC = ({ currentJob, mentionedPeople }) => + currentJob?.user && ( +
+
We will integrate the following information in the request:
+
    +
  • + Your name: {currentJob.user} ( + {currentJob.jobRole && `${currentJob.jobRole} `}at{" "} + {currentJob.employer}) +
  • + {mentionedPeople && mentionedPeople.length > 0 && ( +
  • + Information about these people:{" "} + {mentionedPeople.map((person) => person.name).join(", ")} +
  • + )} +
+
+ ); + +export default ChatMetadata; diff --git a/components/chat/ChatSendBtn.tsx b/components/chat/ChatSendBtn.tsx new file mode 100644 index 000000000..e9b4541c3 --- /dev/null +++ b/components/chat/ChatSendBtn.tsx @@ -0,0 +1,22 @@ +import { ArrowUp, Loader2 } from "lucide-react"; +import { FC } from "react"; +import { Button } from "../ui/button"; + +interface ChatSendBtnProps { + isSending: boolean; + handleSend: () => void; +} + +const ChatSendBtn: FC = ({ isSending, handleSend }) => { + return ( + + ); +}; + +export default ChatSendBtn; diff --git a/components/chat/ChatUiGradient.tsx b/components/chat/ChatUiGradient.tsx new file mode 100644 index 000000000..e93e861c3 --- /dev/null +++ b/components/chat/ChatUiGradient.tsx @@ -0,0 +1,5 @@ +const ChatUiGradient = () => ( +
+); + +export default ChatUiGradient; diff --git a/components/chat/MessageInput.tsx b/components/chat/MessageInput.tsx index 7fe644a85..0719674c9 100644 --- a/components/chat/MessageInput.tsx +++ b/components/chat/MessageInput.tsx @@ -1,17 +1,21 @@ import usePerson from "@/api/usePerson"; import useCurrentUser from "@/api/useUser"; -import { PersonAccount } from "@/helpers/person/accounts"; +import { setCurrentJobByUser } from "@/helpers/chat/current-job"; +import { handlePromptSend } from "@/helpers/chat/handle-send"; +import { + MentionedPerson, + setMentionedPeopleByPrompt, +} from "@/helpers/chat/set-mentioned-people"; import { cn } from "@/lib/utils"; import { PersonJob } from "@/pages/chat"; import { SendMessage } from "@aws-amplify/ui-react-ai"; import { JSONContent } from "@tiptap/core"; -import { find, flow, get, identity } from "lodash/fp"; -import { ArrowUp, Loader2 } from "lucide-react"; import { FC, useEffect, useState } from "react"; import { emptyDocument } from "../ui-elements/editors/helpers/document"; -import { getTextFromJsonContent } from "../ui-elements/editors/helpers/text-generation"; -import InboxEditor from "../ui-elements/editors/inbox-editor/InboxEditor"; -import { Button } from "../ui/button"; +import ChatInput from "./ChatInput"; +import ChatMetadata from "./ChatMetadata"; +import ChatSendBtn from "./ChatSendBtn"; +import ChatUiGradient from "./ChatUiGradient"; export type PromptWithContext = Parameters[0]; @@ -26,75 +30,38 @@ const MessageInput: FC = ({ id, onSend, className }) => { const [prompt, setPrompt] = useState(emptyDocument); const [isSending, setIsSending] = useState(false); const { user } = useCurrentUser(); - const { person } = usePerson(user?.personId); + const { person: chatUser } = usePerson(user?.personId); const [currentJob, setCurrentJob] = useState(); + const [mentionedPeople, setMentionedPeople] = useState< + MentionedPerson[] | undefined + >(); useEffect(() => { - flow( - identity, - get("accounts"), - find(["isCurrent", true]), - (account) => - !account - ? undefined - : { - user: user?.userName, - employer: account.accountName, - jobRole: account.position, - }, - setCurrentJob - )(person); - }, [person, user?.userName]); + setCurrentJobByUser(user, chatUser, setCurrentJob); + }, [chatUser, user?.userName]); - const handleSend = () => { - setIsSending(true); - const message = { - content: [{ text: getTextFromJsonContent(prompt) }], - aiContext: { - user: currentJob, - }, - } as PromptWithContext; - onSend(message); - setPrompt(emptyDocument); - }; + useEffect(() => { + setMentionedPeopleByPrompt(prompt, setMentionedPeople); + }, [prompt]); + + const handleSend = () => + handlePromptSend( + setIsSending, + currentJob, + mentionedPeople, + onSend, + prompt, + setPrompt + ); return (
-
- +
- setPrompt(editor.getJSON())} - autoFocus - placeholder="Send a message" - saveAtCmdEnter={handleSend} - showSaveStatus={false} - className="pb-12 max-h-60 md:max-h-80 overflow-y-auto" - /> - - + +
- - {currentJob?.user && ( -
-
We will integrate the following information in the request:
-
    -
  • - Your name: {currentJob.user} ( - {currentJob.jobRole && `${currentJob.jobRole} `}at{" "} - {currentJob.employer}) -
  • -
-
- )} +
); }; diff --git a/components/ui-elements/editors/notes-editor/useExtensions.ts b/components/ui-elements/editors/notes-editor/useExtensions.ts index 59cb1eb32..4c3f7220e 100644 --- a/components/ui-elements/editors/notes-editor/useExtensions.ts +++ b/components/ui-elements/editors/notes-editor/useExtensions.ts @@ -22,6 +22,7 @@ import { TaskItem } from "../extensions/tasks/task-item"; const extendedConfig: Partial> = { addAttributes() { return { + ...this.parent?.(), blockId: { default: null, parseHTML: (element) => element.getAttribute("data-block-id"), diff --git a/docs/releases/next.md b/docs/releases/next.md index 9060e53a9..3abac6f44 100644 --- a/docs/releases/next.md +++ b/docs/releases/next.md @@ -1,8 +1,10 @@ -# Implementiere einen einfachen Chatbot ohne Spezialwissen (Version :VERSION) +# Kontext zu Personen im Chatbot berücksichtigen (Version :VERSION) -- [Allgemeines AI Chat Backend eingerichtet](https://docs.amplify.aws/react/ai/set-up-ai/) -- Eine eigene Oberfläche für einen Chatbot eingerichtet. -- Eine Seitenleiste zeigt die vergangenen Conversationen an. +- Informationen zu Personen werden dem Kontext im Chatbot vermerkt, wenn eine Person erwähnt wird. + +## Fehlerbehebungen + +- Im Editor für Projektnotizen wird die Ebene der Überschriften nun wieder berücksichtigt. ## Bekannte Fehler @@ -10,13 +12,9 @@ ## In Arbeit -- Chat stabilisieren -- Chat einrichten, der Daten nutzt und in die Antworten mit einfließen lässt. - ## Geplant -- Ich möchte ein Projekt in der täglichen Aufgabenliste abschließen können; es taucht nur dann wieder auf, wenn neue Aufgaben nach dem Abhaken hinzu kommen. -- Ich möchte `ContextProject.tsx` so wie es ist komplett auflösen. Ich sehe das nicht als effizient an, immer so viele Daten zu laden, selbst wenn ich nur die Projektnamen haben möchte. +- Chat stabilisieren ### Meetings diff --git a/helpers/chat/create-ai-context.ts b/helpers/chat/create-ai-context.ts new file mode 100644 index 000000000..1b0605eda --- /dev/null +++ b/helpers/chat/create-ai-context.ts @@ -0,0 +1,19 @@ +import { PromptWithContext } from "@/components/chat/MessageInput"; +import { PersonJob } from "@/pages/chat"; +import { MentionedPerson } from "./set-mentioned-people"; + +export const createAiContext = ( + currentJob: PersonJob | undefined, + mentionedPeople: MentionedPerson[] | undefined +): PromptWithContext["aiContext"] => ({ + ...(!currentJob && (!mentionedPeople || mentionedPeople.length === 0) + ? {} + : { + description: + "Use the information from context as valid information to leverage for your response. Do not mention you are referring these information.", + }), + ...(!currentJob ? {} : { user: currentJob }), + ...(!mentionedPeople || mentionedPeople.length === 0 + ? {} + : { mentionedPeople }), +}); diff --git a/helpers/chat/current-job.ts b/helpers/chat/current-job.ts new file mode 100644 index 000000000..bd30cbdd5 --- /dev/null +++ b/helpers/chat/current-job.ts @@ -0,0 +1,26 @@ +import { Person } from "@/api/usePerson"; +import { User } from "@/api/useUser"; +import { PersonAccount } from "@/helpers/person/accounts"; +import { PersonJob } from "@/pages/chat"; +import { find, flow, get, identity } from "lodash/fp"; +import { Dispatch, SetStateAction } from "react"; + +export const setCurrentJobByUser = ( + user: User | undefined, + person: Person | undefined, + setCurrentJob: Dispatch> +) => + flow( + identity, + get("accounts"), + find(["isCurrent", true]), + (account) => + !account + ? undefined + : { + user: user?.userName, + employer: account.accountName, + jobRole: account.position, + }, + setCurrentJob + )(person); diff --git a/helpers/chat/handle-send.ts b/helpers/chat/handle-send.ts new file mode 100644 index 000000000..32d0e28d2 --- /dev/null +++ b/helpers/chat/handle-send.ts @@ -0,0 +1,27 @@ +import { PromptWithContext } from "@/components/chat/MessageInput"; +import { emptyDocument } from "@/components/ui-elements/editors/helpers/document"; +import { getTextFromJsonContent } from "@/components/ui-elements/editors/helpers/text-generation"; +import { createAiContext } from "@/helpers/chat/create-ai-context"; +import { PersonJob } from "@/pages/chat"; +import { SendMessage } from "@aws-amplify/ui-react-ai"; +import { JSONContent } from "@tiptap/core"; +import { Dispatch, SetStateAction } from "react"; +import { MentionedPerson } from "./set-mentioned-people"; + +export const handlePromptSend = ( + setIsSending: Dispatch>, + currentJob: PersonJob | undefined, + mentionedPeople: MentionedPerson[] | undefined, + onSend: SendMessage, + prompt: JSONContent, + setPrompt: Dispatch> +) => { + setIsSending(true); + const message = { + content: [{ text: getTextFromJsonContent(prompt) }], + aiContext: createAiContext(currentJob, mentionedPeople), + } as PromptWithContext; + console.log({ message }); + onSend(message); + setPrompt(emptyDocument); +}; diff --git a/helpers/chat/set-mentioned-people.ts b/helpers/chat/set-mentioned-people.ts new file mode 100644 index 000000000..0be953474 --- /dev/null +++ b/helpers/chat/set-mentioned-people.ts @@ -0,0 +1,272 @@ +import { Schema } from "@/amplify/data/resource"; +import { TPrayerStatus } from "@/components/prayer/PrayerStatus"; +import { getTextFromJsonContent } from "@/components/ui-elements/editors/helpers/text-generation"; +import { transformNotesVersion } from "@/components/ui-elements/editors/helpers/transformers"; +import { getAccounts, PersonAccount } from "@/helpers/person/accounts"; +import { + getRelationships, + PersonRelationship, +} from "@/helpers/person/relationships"; +import { JSONContent } from "@tiptap/core"; +import { generateClient, SelectionSet } from "aws-amplify/api"; +import { + filter, + flatMap, + flow, + get, + identity, + join, + map, + sortBy, +} from "lodash/fp"; +import { Dispatch, SetStateAction } from "react"; +import { getDateOrUndefined, makeDate } from "../functional"; + +const client = generateClient(); + +type PersonLearning = { + learning: string; + learnedOn: Date; + prayerStatus: TPrayerStatus; +}; + +type MeetingNotes = { + topic: string; + meetingOn: Date; + participants: string[]; + notes: string; +}; + +export type MentionedPerson = { + name: string; + howToSay?: string; + birthday?: Date; + accounts: PersonAccount[]; + relationships: (Omit & { + relatedPerson: string; + })[]; + learnings: PersonLearning[]; + openTodos: string[]; + notesFromMeetings: MeetingNotes[]; +}; + +const selectionSet = [ + "name", + "howToSay", + "birthday", + "accounts.id", + "accounts.startDate", + "accounts.endDate", + "accounts.position", + "accounts.account.id", + "accounts.account.name", + "relationshipsFrom.id", + "relationshipsFrom.date", + "relationshipsFrom.endDate", + "relationshipsFrom.typeName", + "relationshipsFrom.relatedPerson.id", + "relationshipsFrom.relatedPerson.name", + "relationshipsFrom.relatedPerson.birthday", + "relationshipsFrom.relatedPerson.dateOfDeath", + "relationshipsFrom.relatedPerson.relationshipsFrom.date", + "relationshipsFrom.relatedPerson.relationshipsFrom.endDate", + "relationshipsFrom.relatedPerson.relationshipsFrom.typeName", + "relationshipsFrom.relatedPerson.relationshipsFrom.relatedPerson.id", + "relationshipsFrom.relatedPerson.relationshipsFrom.relatedPerson.name", + "relationshipsFrom.relatedPerson.relationshipsFrom.relatedPerson.birthday", + "relationshipsFrom.relatedPerson.relationshipsFrom.relatedPerson.dateOfDeath", + "relationshipsFrom.relatedPerson.relationshipsTo.date", + "relationshipsFrom.relatedPerson.relationshipsTo.endDate", + "relationshipsFrom.relatedPerson.relationshipsTo.typeName", + "relationshipsFrom.relatedPerson.relationshipsTo.person.id", + "relationshipsFrom.relatedPerson.relationshipsTo.person.name", + "relationshipsFrom.relatedPerson.relationshipsTo.person.birthday", + "relationshipsFrom.relatedPerson.relationshipsTo.person.dateOfDeath", + "relationshipsTo.id", + "relationshipsTo.date", + "relationshipsTo.endDate", + "relationshipsTo.typeName", + "relationshipsTo.person.id", + "relationshipsTo.person.name", + "relationshipsTo.person.birthday", + "relationshipsTo.person.dateOfDeath", + "relationshipsTo.person.relationshipsFrom.date", + "relationshipsTo.person.relationshipsFrom.endDate", + "relationshipsTo.person.relationshipsFrom.typeName", + "relationshipsTo.person.relationshipsFrom.relatedPerson.id", + "relationshipsTo.person.relationshipsFrom.relatedPerson.name", + "relationshipsTo.person.relationshipsFrom.relatedPerson.birthday", + "relationshipsTo.person.relationshipsFrom.relatedPerson.dateOfDeath", + "relationshipsTo.person.relationshipsTo.date", + "relationshipsTo.person.relationshipsTo.endDate", + "relationshipsTo.person.relationshipsTo.typeName", + "relationshipsTo.person.relationshipsTo.person.id", + "relationshipsTo.person.relationshipsTo.person.name", + "relationshipsTo.person.relationshipsTo.person.birthday", + "relationshipsTo.person.relationshipsTo.person.dateOfDeath", + "learnings.learnedOn", + "learnings.createdAt", + "learnings.learning", + "learnings.prayer", + "noteBlocks.noteBlock.todo.todo", + "noteBlocks.noteBlock.todo.status", + "noteBlocks.noteBlock.todo.updatedAt", + "meetings.meeting.topic", + "meetings.meeting.meetingOn", + "meetings.meeting.createdAt", + "meetings.meeting.participants.person.name", + "meetings.meeting.activities.formatVersion", + "meetings.meeting.activities.noteBlockIds", + "meetings.meeting.activities.noteBlocks.id", + "meetings.meeting.activities.noteBlocks.type", + "meetings.meeting.activities.noteBlocks.content", + "meetings.meeting.activities.noteBlocks.todo.id", + "meetings.meeting.activities.noteBlocks.todo.todo", + "meetings.meeting.activities.noteBlocks.todo.status", + "meetings.meeting.activities.noteBlocks.todo.doneOn", + "meetings.meeting.activities.notes", + "meetings.meeting.activities.notesJson", + "meetings.meeting.activities.forProjects.id", + "meetings.meeting.activities.forProjects.projectsId", + "meetings.meeting.activities.forProjects.projects.project", + "meetings.meeting.activities.forProjects.projects.done", +] as const; + +type PersonData = SelectionSet; +type PersonLearningData = PersonData["learnings"][number]; +type Activity = PersonData["meetings"][number]["meeting"]["activities"][number]; + +const mapLearning = ({ + learnedOn, + createdAt, + learning, + prayer, +}: PersonLearningData): PersonLearning => ({ + learning: !learning + ? "" + : getTextFromJsonContent(JSON.parse(learning as any)), + learnedOn: new Date(learnedOn || createdAt), + prayerStatus: prayer || "NONE", +}); + +const mapOpenTodos = (noteBlocks: PersonData["noteBlocks"]): string[] => + flow( + identity, + map("noteBlock.todo"), + filter({ status: "OPEN" }), + sortBy(flow(get("updatedAt"), makeDate, (d) => -d.getTime())), + map("todo"), + map(JSON.parse), + map(getTextFromJsonContent) + )(noteBlocks); + +const getProjects = (activity: Activity) => + flow( + identity, + get("forProjects"), + map("projects"), + filter((p) => !!get("done")(p)), + map("project"), + join(", ") + )(activity); + +const mapNotes = (activity: Activity): string => { + const document = transformNotesVersion({ + ...activity, + noteBlocks: activity.noteBlocks.map((b) => ({ ...b, people: [] })), + }); + return getTextFromJsonContent({ + ...document, + content: [ + { + type: "heading", + attrs: { level: 1 }, + content: [ + { + type: "text", + text: `Projects: ${getProjects(activity)}`, + }, + ], + }, + ...(document.content ?? []), + ], + }); +}; + +const mapNotesFromMeetings = ({ + meeting: { participants, topic, createdAt, meetingOn, activities }, +}: PersonData["meetings"][number]): MeetingNotes => ({ + meetingOn: new Date(meetingOn || createdAt), + participants: flow( + identity, + map("person.name") + )(participants), + topic, + notes: flow( + identity, + map(mapNotes), + join("\n\n") + )(activities), +}); + +const mapPerson = ({ + name, + birthday, + howToSay, + accounts, + relationshipsFrom, + relationshipsTo, + learnings, + noteBlocks, + meetings, +}: PersonData): MentionedPerson => ({ + name: `@${name}`, + howToSay: howToSay || undefined, + birthday: getDateOrUndefined(birthday), + accounts: getAccounts(accounts), + relationships: flow( + getRelationships, + map(({ subRelations: _sr, relatedPerson, ...rest }) => ({ + ...rest, + relatedPerson: relatedPerson?.name ?? "", + })) + )(relationshipsFrom, relationshipsTo), + learnings: map(mapLearning)(learnings), + openTodos: mapOpenTodos(noteBlocks), + notesFromMeetings: map(mapNotesFromMeetings)(meetings), +}); + +const fetchPeople = async (id: string) => { + const { data, errors } = await client.models.Person.get( + { id }, + { selectionSet } + ); + if (errors) throw errors; + + return flow(identity, mapPerson)(data); +}; + +const setResult = + ( + setMentionedPeople: Dispatch> + ) => + async (people: Promise[]) => { + const result = await Promise.all(people); + setMentionedPeople(result); + }; + +export const setMentionedPeopleByPrompt = ( + prompt: JSONContent, + setMentionedPeople: Dispatch> +) => { + flow( + identity, + get("content"), + filter({ type: "paragraph" }), + flatMap("content"), + filter({ type: "mention" }), + map("attrs.id"), + map(fetchPeople), + setResult(setMentionedPeople) + )(prompt); +}; diff --git a/helpers/person/relationships.ts b/helpers/person/relationships.ts index 558560479..c1c0f200c 100644 --- a/helpers/person/relationships.ts +++ b/helpers/person/relationships.ts @@ -177,7 +177,10 @@ const mapRelation = ( id, nameOfAnniversary: findRelationType(typeName)?.nameOfAnniversary, nameOfRelationship: getRelationType(direction, typeName)?.name, - relatedPerson, + relatedPerson: { + id: relatedPerson?.id || "", + name: relatedPerson?.name || "", + }, }); const mapRelationDates = ( diff --git a/package-lock.json b/package-lock.json index 83a52efb3..8daeb53af 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,6 +8,7 @@ "name": "personal-crm", "version": "1.90.4", "dependencies": { + "@aws-amplify/backend-ai": "^1.1.0", "@aws-amplify/ui-react": "^6.7.1", "@aws-amplify/ui-react-ai": "^1.1.0", "@aws-amplify/ui-react-storage": "^3.1.4", @@ -442,6 +443,24 @@ } } }, + "node_modules/@aws-amplify/ai-constructs": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@aws-amplify/ai-constructs/-/ai-constructs-1.1.0.tgz", + "integrity": "sha512-mOBPyg65MJPh/hO1Ngk+zx+CTOhHKEvMH3vvcyOwR/AkEE3z+uws7LPmfcNU2Q7fOoasQWhs7JAWCo0lrTqkRA==", + "license": "Apache-2.0", + "dependencies": { + "@aws-amplify/backend-output-schemas": "^1.4.0", + "@aws-amplify/platform-core": "^1.3.0", + "@aws-amplify/plugin-types": "^1.6.0", + "@aws-sdk/client-bedrock-runtime": "^3.622.0", + "@smithy/types": "^3.3.0", + "json-schema-to-ts": "^3.1.1" + }, + "peerDependencies": { + "aws-cdk-lib": "^2.168.0", + "constructs": "^10.0.0" + } + }, "node_modules/@aws-amplify/analytics": { "version": "7.0.63", "resolved": "https://registry.npmjs.org/@aws-amplify/analytics/-/analytics-7.0.63.tgz", @@ -508,13 +527,14 @@ } }, "node_modules/@aws-amplify/api-graphql": { - "version": "4.6.6", - "resolved": "https://registry.npmjs.org/@aws-amplify/api-graphql/-/api-graphql-4.6.6.tgz", - "integrity": "sha512-j+TIu32LTiBo3PcAkO/22V18pwDIqURbpw86wy2XjT6t/acYldZtEc+fEJa1s4xE3xdqhrUW+ghL1bJNbaFR1A==", + "version": "4.6.7-unstable.4b3b13d.0", + "resolved": "https://registry.npmjs.org/@aws-amplify/api-graphql/-/api-graphql-4.6.7-unstable.4b3b13d.0.tgz", + "integrity": "sha512-2AndHWKn+7p9dSWozs5ExLO/7mLyz6na/CnLgfLVfylQRJTTKMNtiFVZiFDSTJOz78K7ddlo8J+obLNJj9LXhA==", "license": "Apache-2.0", + "peer": true, "dependencies": { - "@aws-amplify/api-rest": "4.0.63", - "@aws-amplify/core": "6.7.3", + "@aws-amplify/api-rest": "4.0.64-unstable.4b3b13d.0+4b3b13d", + "@aws-amplify/core": "6.7.4-unstable.4b3b13d.0+4b3b13d", "@aws-amplify/data-schema": "^1.7.0", "@aws-sdk/types": "3.387.0", "graphql": "15.8.0", @@ -523,11 +543,56 @@ "uuid": "^9.0.0" } }, + "node_modules/@aws-amplify/api-graphql/node_modules/@aws-amplify/api-rest": { + "version": "4.0.64-unstable.4b3b13d.0", + "resolved": "https://registry.npmjs.org/@aws-amplify/api-rest/-/api-rest-4.0.64-unstable.4b3b13d.0.tgz", + "integrity": "sha512-WoaKt13q1jd+82+D+8UJDbi9jrqw/2PHC0uqJSfz7PHK4o6Oj/Uq/8Hai2q+2aipwLMCmgNKwDOLLoA0gqnPew==", + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "tslib": "^2.5.0" + }, + "peerDependencies": { + "@aws-amplify/core": "6.7.4-unstable.4b3b13d.0+4b3b13d" + } + }, + "node_modules/@aws-amplify/api-graphql/node_modules/@aws-amplify/core": { + "version": "6.7.4-unstable.4b3b13d.0", + "resolved": "https://registry.npmjs.org/@aws-amplify/core/-/core-6.7.4-unstable.4b3b13d.0.tgz", + "integrity": "sha512-j/sqHoED8CNMq0EQqo4W0aeV8H3JMt3pPlIgequisayJ5UfNk3v8KaCJbrUXxEefGaEtfHiWI3v7ZfuVDLeOqw==", + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/types": "3.398.0", + "@smithy/util-hex-encoding": "2.0.0", + "@types/uuid": "^9.0.0", + "js-cookie": "^3.0.5", + "rxjs": "^7.8.1", + "tslib": "^2.5.0", + "uuid": "^9.0.0" + } + }, + "node_modules/@aws-amplify/api-graphql/node_modules/@aws-amplify/core/node_modules/@aws-sdk/types": { + "version": "3.398.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.398.0.tgz", + "integrity": "sha512-r44fkS+vsEgKCuEuTV+TIk0t0m5ZlXHNjSDYEUvzLStbbfUFiNus/YG4UCa0wOk9R7VuQI67badsvvPeVPCGDQ==", + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "@smithy/types": "^2.2.2", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, "node_modules/@aws-amplify/api-graphql/node_modules/@aws-sdk/types": { "version": "3.387.0", "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.387.0.tgz", "integrity": "sha512-YTjFabNwjTF+6yl88f0/tWff018qmmgMmjlw45s6sdVKueWxdxV68U7gepNLF2nhaQPZa6FDOBoA51NaviVs0Q==", "license": "Apache-2.0", + "peer": true, "dependencies": { "@smithy/types": "^2.1.0", "tslib": "^2.5.0" @@ -541,6 +606,7 @@ "resolved": "https://registry.npmjs.org/@smithy/types/-/types-2.12.0.tgz", "integrity": "sha512-QwYgloJ0sVNBeBuBs65cIkTbfzV/Q6ZNPCJ99EICFEdJYG50nGIY/uYXp+TbsdJReIuPr0a0kXmCvren3MbRRw==", "license": "Apache-2.0", + "peer": true, "dependencies": { "tslib": "^2.6.2" }, @@ -560,6 +626,47 @@ "@aws-amplify/core": "^6.1.0" } }, + "node_modules/@aws-amplify/api/node_modules/@aws-amplify/api-graphql": { + "version": "4.6.6", + "resolved": "https://registry.npmjs.org/@aws-amplify/api-graphql/-/api-graphql-4.6.6.tgz", + "integrity": "sha512-j+TIu32LTiBo3PcAkO/22V18pwDIqURbpw86wy2XjT6t/acYldZtEc+fEJa1s4xE3xdqhrUW+ghL1bJNbaFR1A==", + "license": "Apache-2.0", + "dependencies": { + "@aws-amplify/api-rest": "4.0.63", + "@aws-amplify/core": "6.7.3", + "@aws-amplify/data-schema": "^1.7.0", + "@aws-sdk/types": "3.387.0", + "graphql": "15.8.0", + "rxjs": "^7.8.1", + "tslib": "^2.5.0", + "uuid": "^9.0.0" + } + }, + "node_modules/@aws-amplify/api/node_modules/@aws-sdk/types": { + "version": "3.387.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.387.0.tgz", + "integrity": "sha512-YTjFabNwjTF+6yl88f0/tWff018qmmgMmjlw45s6sdVKueWxdxV68U7gepNLF2nhaQPZa6FDOBoA51NaviVs0Q==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/types": "^2.1.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-amplify/api/node_modules/@smithy/types": { + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-2.12.0.tgz", + "integrity": "sha512-QwYgloJ0sVNBeBuBs65cIkTbfzV/Q6ZNPCJ99EICFEdJYG50nGIY/uYXp+TbsdJReIuPr0a0kXmCvren3MbRRw==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, "node_modules/@aws-amplify/appsync-modelgen-plugin": { "version": "2.15.1", "resolved": "https://registry.npmjs.org/@aws-amplify/appsync-modelgen-plugin/-/appsync-modelgen-plugin-2.15.1.tgz", @@ -637,6 +744,24 @@ "constructs": "^10.0.0" } }, + "node_modules/@aws-amplify/backend-ai": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@aws-amplify/backend-ai/-/backend-ai-1.1.0.tgz", + "integrity": "sha512-Mg7bh3obeI3VFrJAgscPThwPb9scIZZ0acCgCCJovrG8aqHV4B0h9lxeznSkeEcVLvViMp4HjOI8BO2DvK5eCg==", + "license": "Apache-2.0", + "dependencies": { + "@aws-amplify/ai-constructs": "^1.1.0", + "@aws-amplify/backend-output-schemas": "^1.4.0", + "@aws-amplify/backend-output-storage": "^1.1.4", + "@aws-amplify/data-schema-types": "^1.2.0", + "@aws-amplify/platform-core": "^1.3.0", + "@aws-amplify/plugin-types": "^1.6.0" + }, + "peerDependencies": { + "aws-cdk-lib": "^2.168.0", + "constructs": "^10.0.0" + } + }, "node_modules/@aws-amplify/backend-auth": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/@aws-amplify/backend-auth/-/backend-auth-1.4.2.tgz", @@ -758,7 +883,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/@aws-amplify/backend-output-schemas/-/backend-output-schemas-1.4.0.tgz", "integrity": "sha512-/p2t/wWV1CTObJnewmLKlx48AYGhhRKp2Ne51DNZ1gV4CAwZx9Jmtyjv65h3zQ6Gk6WTTcjeNORncgEa1Gq5CA==", - "dev": true, "license": "Apache-2.0", "peerDependencies": { "zod": "^3.22.2" @@ -768,7 +892,6 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/@aws-amplify/backend-output-storage/-/backend-output-storage-1.1.4.tgz", "integrity": "sha512-RbxhnM+86tCZfDY60QRDe0MY+9qkjUwkOcgqp2pX6luh7sqYmaFlUMNfUKS6bqf4EU+WKB44l+aflJPmiQdIvw==", - "dev": true, "license": "Apache-2.0", "dependencies": { "@aws-amplify/backend-output-schemas": "^1.2.0", @@ -8486,7 +8609,6 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/@aws-amplify/platform-core/-/platform-core-1.3.0.tgz", "integrity": "sha512-oeXqVMnXflo/jE+bv12PD1J2GGB9C6o7P4bMbp7NAM/4rdPZYBWI/hrEmAVFRaE35q7WYJjdKlMr5WvwVbFm+A==", - "dev": true, "license": "Apache-2.0", "dependencies": { "@aws-amplify/plugin-types": "^1.6.0", @@ -8506,7 +8628,6 @@ "version": "1.6.0", "resolved": "https://registry.npmjs.org/@aws-amplify/plugin-types/-/plugin-types-1.6.0.tgz", "integrity": "sha512-qUwGReb8fxj+2nyEmQUEXhT1gPaz1C/mNTb1tfI7y0u5qRPI9omd8p3hkL5l3hEULrhtR6iS51nx1CmJs3hroA==", - "dev": true, "license": "Apache-2.0", "peerDependencies": { "@aws-sdk/types": "^3.609.0", @@ -8608,9 +8729,9 @@ } }, "node_modules/@aws-amplify/ui": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/@aws-amplify/ui/-/ui-6.7.1.tgz", - "integrity": "sha512-ARGYEjM18vc6NXzpsweMQBnBaz1aUCPOcjgQRKDB9ThFPy3jYj21dsTVePkEatzN2+dmoVuSdJr0UHpgBbRyCA==", + "version": "6.7.2", + "resolved": "https://registry.npmjs.org/@aws-amplify/ui/-/ui-6.7.2.tgz", + "integrity": "sha512-PezYgmVh0TAef7bPzrVFxm+vJtjQddvRbxl1UMw6pYmgwpjWLo9DTwm7F2c3HORMNdqpozDxZ3Tc+7eP7rLNkA==", "license": "Apache-2.0", "dependencies": { "csstype": "^3.1.1", @@ -8629,13 +8750,13 @@ } }, "node_modules/@aws-amplify/ui-react": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/@aws-amplify/ui-react/-/ui-react-6.7.1.tgz", - "integrity": "sha512-0+z02TBfl2GBKj+s69ql/N9uviTU5MqNqQRLTEzU56RXaPM4nQvenNW5cjFHnfQCCgRZvOHltA7jDpd1mBa/iQ==", + "version": "6.7.2", + "resolved": "https://registry.npmjs.org/@aws-amplify/ui-react/-/ui-react-6.7.2.tgz", + "integrity": "sha512-cqQEAjK8aBukFn5fnAuS3SOLtbyWZmTRyPnBMSRmZ4Rce8noSylTi0rolUAEwhBpdbx1TlkzIbnmPJwVXZ73yQ==", "license": "Apache-2.0", "dependencies": { - "@aws-amplify/ui": "6.7.1", - "@aws-amplify/ui-react-core": "3.1.1", + "@aws-amplify/ui": "6.7.2", + "@aws-amplify/ui-react-core": "3.1.2", "@radix-ui/react-direction": "1.0.0", "@radix-ui/react-dropdown-menu": "1.0.0", "@radix-ui/react-slider": "1.0.0", @@ -8674,12 +8795,12 @@ } }, "node_modules/@aws-amplify/ui-react-core": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@aws-amplify/ui-react-core/-/ui-react-core-3.1.1.tgz", - "integrity": "sha512-IWUcTOWepfLDZVXGbVVBpICHWukMXHNyzd0EJOgjeAYu4pDu+26oESYDF0bpMkz8yUSIXLmM17rkG4TYx1jDCw==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@aws-amplify/ui-react-core/-/ui-react-core-3.1.2.tgz", + "integrity": "sha512-hbxXjf05UmQa/om4FEkUKEg2MU18pa1gy7Gk3lOa6L3qpzUC/qfC3D0nOEAfr9IAOSDIpCpvdOhf1ynPqgPw9A==", "license": "Apache-2.0", "dependencies": { - "@aws-amplify/ui": "6.7.1", + "@aws-amplify/ui": "6.7.2", "@xstate/react": "^3.2.2", "lodash": "4.17.21", "react-hook-form": "^7.43.5", @@ -8691,14 +8812,14 @@ } }, "node_modules/@aws-amplify/ui-react-storage": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@aws-amplify/ui-react-storage/-/ui-react-storage-3.5.0.tgz", - "integrity": "sha512-rJcMZdEhFlYtzgMg4/2lR/bDK4S6eEGobgnS8gu6s1LDArQOloAsgJbAq3goDaVNoukCX5aR2gog++Z9aeXE0w==", + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/@aws-amplify/ui-react-storage/-/ui-react-storage-3.5.1.tgz", + "integrity": "sha512-XCt7kIjZ4ymWRWSCorP1HUwuhl9dsM6d4drWnNBa23k1rfOwd36UjOPltEY6S3vzFPVdVifYa9Z7YhO/vXeGzw==", "license": "Apache-2.0", "dependencies": { - "@aws-amplify/ui": "6.7.1", - "@aws-amplify/ui-react": "6.7.1", - "@aws-amplify/ui-react-core": "3.1.1", + "@aws-amplify/ui": "6.7.2", + "@aws-amplify/ui-react": "6.7.2", + "@aws-amplify/ui-react-core": "3.1.2", "tslib": "^2.5.2" }, "peerDependencies": { @@ -9124,21 +9245,18 @@ "version": "2.2.214", "resolved": "https://registry.npmjs.org/@aws-cdk/asset-awscli-v1/-/asset-awscli-v1-2.2.214.tgz", "integrity": "sha512-JeuX1xoYWXEeFD4RyAyvv8OD/NPdbLD6leKKpFLECWqsKY1YrwX0U8lr753CskflwaDGpU42pyyjPdiMZ7NiWA==", - "dev": true, "license": "Apache-2.0" }, "node_modules/@aws-cdk/asset-kubectl-v20": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/@aws-cdk/asset-kubectl-v20/-/asset-kubectl-v20-2.1.3.tgz", "integrity": "sha512-cDG1w3ieM6eOT9mTefRuTypk95+oyD7P5X/wRltwmYxU7nZc3+076YEVS6vrjDKr3ADYbfn0lDKpfB1FBtO9CQ==", - "dev": true, "license": "Apache-2.0" }, "node_modules/@aws-cdk/asset-node-proxy-agent-v6": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/@aws-cdk/asset-node-proxy-agent-v6/-/asset-node-proxy-agent-v6-2.1.0.tgz", "integrity": "sha512-7bY3J8GCVxLupn/kNmpPc5VJz8grx+4RKfnnJiO1LG+uxkZfANZG3RMHhE+qQxxwkyQ9/MfPtTpf748UhR425A==", - "dev": true, "license": "Apache-2.0" }, "node_modules/@aws-cdk/cloud-assembly-schema": { @@ -9149,7 +9267,6 @@ "jsonschema", "semver" ], - "dev": true, "license": "Apache-2.0", "dependencies": { "jsonschema": "^1.4.1", @@ -9158,7 +9275,6 @@ }, "node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema": { "version": "1.4.1", - "dev": true, "inBundle": true, "license": "MIT", "engines": { @@ -9167,7 +9283,6 @@ }, "node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver": { "version": "7.6.3", - "dev": true, "inBundle": true, "license": "ISC", "bin": { @@ -9268,18 +9383,18 @@ } }, "node_modules/@aws-sdk/client-amplify": { - "version": "3.709.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-amplify/-/client-amplify-3.709.0.tgz", - "integrity": "sha512-9OZSuydH/3VRDum//a7+z49tQWgc4crPgfZBleP3IvOC84COEEEeFitV1BR7U34OrIgRXzjbGyBfaWhc+18y1Q==", + "version": "3.712.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-amplify/-/client-amplify-3.712.0.tgz", + "integrity": "sha512-uBwIJ3sUPQ1qvx5I+VaTmkASpXL8EclJm/GaIWTwfYdCKegV3Z9B1R5PnVCSeDNlVBCc5d/tCWrPtkT1M5nWmg==", "dev": true, "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/client-sso-oidc": "3.709.0", - "@aws-sdk/client-sts": "3.709.0", + "@aws-sdk/client-sso-oidc": "3.712.0", + "@aws-sdk/client-sts": "3.712.0", "@aws-sdk/core": "3.709.0", - "@aws-sdk/credential-provider-node": "3.709.0", + "@aws-sdk/credential-provider-node": "3.712.0", "@aws-sdk/middleware-host-header": "3.709.0", "@aws-sdk/middleware-logger": "3.709.0", "@aws-sdk/middleware-recursion-detection": "3.709.0", @@ -9288,7 +9403,7 @@ "@aws-sdk/types": "3.709.0", "@aws-sdk/util-endpoints": "3.709.0", "@aws-sdk/util-user-agent-browser": "3.709.0", - "@aws-sdk/util-user-agent-node": "3.709.0", + "@aws-sdk/util-user-agent-node": "3.712.0", "@smithy/config-resolver": "^3.0.13", "@smithy/core": "^2.5.5", "@smithy/fetch-http-handler": "^4.1.2", @@ -9365,18 +9480,18 @@ } }, "node_modules/@aws-sdk/client-amplifyuibuilder": { - "version": "3.709.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-amplifyuibuilder/-/client-amplifyuibuilder-3.709.0.tgz", - "integrity": "sha512-rbqdT1a6XSqqca9701FomLkw078KrFPvmj+7nnilIKfgLDmGkG325pq9RVDyZWJXfNknlYAJqrqu3xMLATGHcQ==", + "version": "3.712.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-amplifyuibuilder/-/client-amplifyuibuilder-3.712.0.tgz", + "integrity": "sha512-dmK1nGdv7+xb+iFYSB+tivs2fD/rC4NeiBziwjIdA3EklgYYVan9cLeSHCzszUyiwQNiic1noNkSs/K/SyavOQ==", "dev": true, "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/client-sso-oidc": "3.709.0", - "@aws-sdk/client-sts": "3.709.0", + "@aws-sdk/client-sso-oidc": "3.712.0", + "@aws-sdk/client-sts": "3.712.0", "@aws-sdk/core": "3.709.0", - "@aws-sdk/credential-provider-node": "3.709.0", + "@aws-sdk/credential-provider-node": "3.712.0", "@aws-sdk/middleware-host-header": "3.709.0", "@aws-sdk/middleware-logger": "3.709.0", "@aws-sdk/middleware-recursion-detection": "3.709.0", @@ -9385,7 +9500,7 @@ "@aws-sdk/types": "3.709.0", "@aws-sdk/util-endpoints": "3.709.0", "@aws-sdk/util-user-agent-browser": "3.709.0", - "@aws-sdk/util-user-agent-node": "3.709.0", + "@aws-sdk/util-user-agent-node": "3.712.0", "@smithy/config-resolver": "^3.0.13", "@smithy/core": "^2.5.5", "@smithy/fetch-http-handler": "^4.1.2", @@ -9464,18 +9579,18 @@ } }, "node_modules/@aws-sdk/client-appsync": { - "version": "3.709.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-appsync/-/client-appsync-3.709.0.tgz", - "integrity": "sha512-TTIMGV2ifvpjrYxXIA7i6SelUoO9ulnz9nX0ixWaMDVgHgclC3MrIC9YbuCqdPErNSWfSO0d46nHZlVDmhvBMQ==", + "version": "3.712.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-appsync/-/client-appsync-3.712.0.tgz", + "integrity": "sha512-OoLBvVwKIewzfY48nY1ae47+EadwAGvzFvwrnaopIIisPtz4lsqydRvKI/7p2+D9CkYZEFp1N3G8JTQEQskUOA==", "dev": true, "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/client-sso-oidc": "3.709.0", - "@aws-sdk/client-sts": "3.709.0", + "@aws-sdk/client-sso-oidc": "3.712.0", + "@aws-sdk/client-sts": "3.712.0", "@aws-sdk/core": "3.709.0", - "@aws-sdk/credential-provider-node": "3.709.0", + "@aws-sdk/credential-provider-node": "3.712.0", "@aws-sdk/middleware-host-header": "3.709.0", "@aws-sdk/middleware-logger": "3.709.0", "@aws-sdk/middleware-recursion-detection": "3.709.0", @@ -9484,7 +9599,7 @@ "@aws-sdk/types": "3.709.0", "@aws-sdk/util-endpoints": "3.709.0", "@aws-sdk/util-user-agent-browser": "3.709.0", - "@aws-sdk/util-user-agent-node": "3.709.0", + "@aws-sdk/util-user-agent-node": "3.712.0", "@smithy/config-resolver": "^3.0.13", "@smithy/core": "^2.5.5", "@smithy/fetch-http-handler": "^4.1.2", @@ -9561,19 +9676,118 @@ "node": ">=16.0.0" } }, + "node_modules/@aws-sdk/client-bedrock-runtime": { + "version": "3.712.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-bedrock-runtime/-/client-bedrock-runtime-3.712.0.tgz", + "integrity": "sha512-AoQSvfvApTs4CqwPdtYkg+aeQlYjNOFLIaMcjPMQGQLOA2TbgZnT7hZPZ2ezZfD7uWBF5O6u4hmhxob+BBgSDQ==", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.712.0", + "@aws-sdk/client-sts": "3.712.0", + "@aws-sdk/core": "3.709.0", + "@aws-sdk/credential-provider-node": "3.712.0", + "@aws-sdk/middleware-host-header": "3.709.0", + "@aws-sdk/middleware-logger": "3.709.0", + "@aws-sdk/middleware-recursion-detection": "3.709.0", + "@aws-sdk/middleware-user-agent": "3.709.0", + "@aws-sdk/region-config-resolver": "3.709.0", + "@aws-sdk/types": "3.709.0", + "@aws-sdk/util-endpoints": "3.709.0", + "@aws-sdk/util-user-agent-browser": "3.709.0", + "@aws-sdk/util-user-agent-node": "3.712.0", + "@smithy/config-resolver": "^3.0.13", + "@smithy/core": "^2.5.5", + "@smithy/eventstream-serde-browser": "^3.0.14", + "@smithy/eventstream-serde-config-resolver": "^3.0.11", + "@smithy/eventstream-serde-node": "^3.0.13", + "@smithy/fetch-http-handler": "^4.1.2", + "@smithy/hash-node": "^3.0.11", + "@smithy/invalid-dependency": "^3.0.11", + "@smithy/middleware-content-length": "^3.0.13", + "@smithy/middleware-endpoint": "^3.2.5", + "@smithy/middleware-retry": "^3.0.30", + "@smithy/middleware-serde": "^3.0.11", + "@smithy/middleware-stack": "^3.0.11", + "@smithy/node-config-provider": "^3.1.12", + "@smithy/node-http-handler": "^3.3.2", + "@smithy/protocol-http": "^4.1.8", + "@smithy/smithy-client": "^3.5.0", + "@smithy/types": "^3.7.2", + "@smithy/url-parser": "^3.0.11", + "@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.30", + "@smithy/util-defaults-mode-node": "^3.0.30", + "@smithy/util-endpoints": "^2.1.7", + "@smithy/util-middleware": "^3.0.11", + "@smithy/util-retry": "^3.0.11", + "@smithy/util-stream": "^3.3.2", + "@smithy/util-utf8": "^3.0.0", + "@types/uuid": "^9.0.1", + "tslib": "^2.6.2", + "uuid": "^9.0.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@aws-sdk/client-bedrock-runtime/node_modules/@smithy/node-config-provider": { + "version": "3.1.12", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.1.12.tgz", + "integrity": "sha512-O9LVEu5J/u/FuNlZs+L7Ikn3lz7VB9hb0GtPT9MQeiBmtK8RSY3ULmsZgXhe6VAlgTw0YO+paQx4p8xdbs43vQ==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/property-provider": "^3.1.11", + "@smithy/shared-ini-file-loader": "^3.1.12", + "@smithy/types": "^3.7.2", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@aws-sdk/client-bedrock-runtime/node_modules/@smithy/shared-ini-file-loader": { + "version": "3.1.12", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.1.12.tgz", + "integrity": "sha512-1xKSGI+U9KKdbG2qDvIR9dGrw3CNx+baqJfyr0igKEpjbHL5stsqAesYBzHChYHlelWtb87VnLWlhvfCz13H8Q==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/types": "^3.7.2", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@aws-sdk/client-bedrock-runtime/node_modules/@smithy/util-utf8": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz", + "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==", + "license": "Apache-2.0", + "dependencies": { + "@smithy/util-buffer-from": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, "node_modules/@aws-sdk/client-cloudformation": { - "version": "3.709.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-cloudformation/-/client-cloudformation-3.709.0.tgz", - "integrity": "sha512-Ni1paom06qrEZaygdMl7fCbHGmE3W98ZDJfTDZJtp0/LfxA4vSIHLNz/0ZpguC0ms9L24TChe+lGwQnCuDuZig==", + "version": "3.712.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cloudformation/-/client-cloudformation-3.712.0.tgz", + "integrity": "sha512-C2S0b03TiaQhw88gpgwAmIQisTC+KaaTCiyBrRZ3jDB2C7sLqRPhpwEIVq023khnggi8/tj6ubvqKppXunWetg==", "dev": true, "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/client-sso-oidc": "3.709.0", - "@aws-sdk/client-sts": "3.709.0", + "@aws-sdk/client-sso-oidc": "3.712.0", + "@aws-sdk/client-sts": "3.712.0", "@aws-sdk/core": "3.709.0", - "@aws-sdk/credential-provider-node": "3.709.0", + "@aws-sdk/credential-provider-node": "3.712.0", "@aws-sdk/middleware-host-header": "3.709.0", "@aws-sdk/middleware-logger": "3.709.0", "@aws-sdk/middleware-recursion-detection": "3.709.0", @@ -9582,7 +9796,7 @@ "@aws-sdk/types": "3.709.0", "@aws-sdk/util-endpoints": "3.709.0", "@aws-sdk/util-user-agent-browser": "3.709.0", - "@aws-sdk/util-user-agent-node": "3.709.0", + "@aws-sdk/util-user-agent-node": "3.712.0", "@smithy/config-resolver": "^3.0.13", "@smithy/core": "^2.5.5", "@smithy/fetch-http-handler": "^4.1.2", @@ -9662,18 +9876,18 @@ } }, "node_modules/@aws-sdk/client-cloudwatch-logs": { - "version": "3.709.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-cloudwatch-logs/-/client-cloudwatch-logs-3.709.0.tgz", - "integrity": "sha512-BMQYwYV/z/7LshlSR71zTIo8iFR5+I5v43Tct4t7rhls4sqBwaarLBcdpVgW0/9oG5fldNs/D9WH6fp71s53Hw==", + "version": "3.712.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cloudwatch-logs/-/client-cloudwatch-logs-3.712.0.tgz", + "integrity": "sha512-WNbihl/dmDPqGxVAgtFb5kDRaNktNNJJ2CHxid/2P2vWFrBgi1ll6dao54cl5XrVs7u/hulcGP4b+MuYIs4XYQ==", "dev": true, "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/client-sso-oidc": "3.709.0", - "@aws-sdk/client-sts": "3.709.0", + "@aws-sdk/client-sso-oidc": "3.712.0", + "@aws-sdk/client-sts": "3.712.0", "@aws-sdk/core": "3.709.0", - "@aws-sdk/credential-provider-node": "3.709.0", + "@aws-sdk/credential-provider-node": "3.712.0", "@aws-sdk/middleware-host-header": "3.709.0", "@aws-sdk/middleware-logger": "3.709.0", "@aws-sdk/middleware-recursion-detection": "3.709.0", @@ -9682,7 +9896,7 @@ "@aws-sdk/types": "3.709.0", "@aws-sdk/util-endpoints": "3.709.0", "@aws-sdk/util-user-agent-browser": "3.709.0", - "@aws-sdk/util-user-agent-node": "3.709.0", + "@aws-sdk/util-user-agent-node": "3.712.0", "@smithy/config-resolver": "^3.0.13", "@smithy/core": "^2.5.5", "@smithy/eventstream-serde-browser": "^3.0.14", @@ -9764,17 +9978,17 @@ } }, "node_modules/@aws-sdk/client-cognito-identity": { - "version": "3.709.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.709.0.tgz", - "integrity": "sha512-I5a8ilF+jKAz6fmOOuHy2UEcod9ikRGBjACcC6ayxs4z4VqTnWynD6ALKvtUR3lk1Ur6nzAG1tTm/qAYKKmyBg==", + "version": "3.712.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.712.0.tgz", + "integrity": "sha512-Xb+6S5QzFhKin9gOIKjvFhvP13AffH5oq0v/e0yQO0JckSLuph9+du/CHcobPqkxJpzyreeDltD7+Yu/l9RmIg==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/client-sso-oidc": "3.709.0", - "@aws-sdk/client-sts": "3.709.0", + "@aws-sdk/client-sso-oidc": "3.712.0", + "@aws-sdk/client-sts": "3.712.0", "@aws-sdk/core": "3.709.0", - "@aws-sdk/credential-provider-node": "3.709.0", + "@aws-sdk/credential-provider-node": "3.712.0", "@aws-sdk/middleware-host-header": "3.709.0", "@aws-sdk/middleware-logger": "3.709.0", "@aws-sdk/middleware-recursion-detection": "3.709.0", @@ -9783,7 +9997,7 @@ "@aws-sdk/types": "3.709.0", "@aws-sdk/util-endpoints": "3.709.0", "@aws-sdk/util-user-agent-browser": "3.709.0", - "@aws-sdk/util-user-agent-node": "3.709.0", + "@aws-sdk/util-user-agent-node": "3.712.0", "@smithy/config-resolver": "^3.0.13", "@smithy/core": "^2.5.5", "@smithy/fetch-http-handler": "^4.1.2", @@ -9816,17 +10030,17 @@ } }, "node_modules/@aws-sdk/client-cognito-identity-provider": { - "version": "3.710.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity-provider/-/client-cognito-identity-provider-3.710.0.tgz", - "integrity": "sha512-jUZYcnpNphkY62DyXWQpYFll0EXlRbssA6Pk9tMrrEA+iHTiXXPXdd7yaATO6BnwalURPhLN2agChvCrWQYlWQ==", + "version": "3.712.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity-provider/-/client-cognito-identity-provider-3.712.0.tgz", + "integrity": "sha512-uYc8WgYPJM4FSx8M/Jq4S7SGrSRaFLJn7XyAJrP3cmaiilAuFYsoiS6edUeZW64DFadEMRCWFOhqhoojIjmnNA==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/client-sso-oidc": "3.709.0", - "@aws-sdk/client-sts": "3.709.0", + "@aws-sdk/client-sso-oidc": "3.712.0", + "@aws-sdk/client-sts": "3.712.0", "@aws-sdk/core": "3.709.0", - "@aws-sdk/credential-provider-node": "3.709.0", + "@aws-sdk/credential-provider-node": "3.712.0", "@aws-sdk/middleware-host-header": "3.709.0", "@aws-sdk/middleware-logger": "3.709.0", "@aws-sdk/middleware-recursion-detection": "3.709.0", @@ -9835,7 +10049,7 @@ "@aws-sdk/types": "3.709.0", "@aws-sdk/util-endpoints": "3.709.0", "@aws-sdk/util-user-agent-browser": "3.709.0", - "@aws-sdk/util-user-agent-node": "3.709.0", + "@aws-sdk/util-user-agent-node": "3.712.0", "@smithy/config-resolver": "^3.0.13", "@smithy/core": "^2.5.5", "@smithy/fetch-http-handler": "^4.1.2", @@ -9950,17 +10164,17 @@ } }, "node_modules/@aws-sdk/client-dynamodb": { - "version": "3.709.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-dynamodb/-/client-dynamodb-3.709.0.tgz", - "integrity": "sha512-p/GVuEgfPccFUm5lxr7EPi5gQAsUO4SDdKcIV+v/dNwtH2SXEgnFN0o1TEIJtuVY3BsQyXyR1aMjeQ81O832kw==", + "version": "3.712.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-dynamodb/-/client-dynamodb-3.712.0.tgz", + "integrity": "sha512-BCIKfjkItIM8eP6/QOP+DD89xYLw0jTTgErSMq6tmSGf4PKtVk3VV4GyKqEm9vKBzbz0/7068YADKALd5Uv4nA==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/client-sso-oidc": "3.709.0", - "@aws-sdk/client-sts": "3.709.0", + "@aws-sdk/client-sso-oidc": "3.712.0", + "@aws-sdk/client-sts": "3.712.0", "@aws-sdk/core": "3.709.0", - "@aws-sdk/credential-provider-node": "3.709.0", + "@aws-sdk/credential-provider-node": "3.712.0", "@aws-sdk/middleware-endpoint-discovery": "3.709.0", "@aws-sdk/middleware-host-header": "3.709.0", "@aws-sdk/middleware-logger": "3.709.0", @@ -9970,7 +10184,7 @@ "@aws-sdk/types": "3.709.0", "@aws-sdk/util-endpoints": "3.709.0", "@aws-sdk/util-user-agent-browser": "3.709.0", - "@aws-sdk/util-user-agent-node": "3.709.0", + "@aws-sdk/util-user-agent-node": "3.712.0", "@smithy/config-resolver": "^3.0.13", "@smithy/core": "^2.5.5", "@smithy/fetch-http-handler": "^4.1.2", @@ -12399,18 +12613,18 @@ } }, "node_modules/@aws-sdk/client-lambda": { - "version": "3.709.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-lambda/-/client-lambda-3.709.0.tgz", - "integrity": "sha512-MKnx5n7/Wp4qk+Wd1nJQGJ/520rNJDUnBbHTY3x8iPyeKK+8fNy25hWi0lV3gsHhTDvAcVb7UgSSJ5qNVec0GA==", + "version": "3.712.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-lambda/-/client-lambda-3.712.0.tgz", + "integrity": "sha512-vGTnWXQkWx+dfqS6wso+nSCvQB8o7+6R/im78gTzRXBsvj/b8MWYua0Kbvse+YFqegT+59BBmFB3tC3f5y3nEQ==", "dev": true, "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/client-sso-oidc": "3.709.0", - "@aws-sdk/client-sts": "3.709.0", + "@aws-sdk/client-sso-oidc": "3.712.0", + "@aws-sdk/client-sts": "3.712.0", "@aws-sdk/core": "3.709.0", - "@aws-sdk/credential-provider-node": "3.709.0", + "@aws-sdk/credential-provider-node": "3.712.0", "@aws-sdk/middleware-host-header": "3.709.0", "@aws-sdk/middleware-logger": "3.709.0", "@aws-sdk/middleware-recursion-detection": "3.709.0", @@ -12419,7 +12633,7 @@ "@aws-sdk/types": "3.709.0", "@aws-sdk/util-endpoints": "3.709.0", "@aws-sdk/util-user-agent-browser": "3.709.0", - "@aws-sdk/util-user-agent-node": "3.709.0", + "@aws-sdk/util-user-agent-node": "3.712.0", "@smithy/config-resolver": "^3.0.13", "@smithy/core": "^2.5.5", "@smithy/eventstream-serde-browser": "^3.0.14", @@ -13675,19 +13889,19 @@ } }, "node_modules/@aws-sdk/client-s3": { - "version": "3.709.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.709.0.tgz", - "integrity": "sha512-IvC7coELoQ4YenTdULArVdL5yk6jNRVUALX1aqv9JlPdrXxb3Om6YrM9e7AlSTLxrULTsAe1ubm8i/DmcSY/Ng==", + "version": "3.712.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.712.0.tgz", + "integrity": "sha512-Hq1IIwOFutmHtTz3mROR1XhTDL8rxcYbYw3ajjgeMJB5tjcvodpfkfz/L4dxXZMwqylWf6SNQNAiaGh5mlsGGQ==", "dev": true, "license": "Apache-2.0", "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.709.0", - "@aws-sdk/client-sts": "3.709.0", + "@aws-sdk/client-sso-oidc": "3.712.0", + "@aws-sdk/client-sts": "3.712.0", "@aws-sdk/core": "3.709.0", - "@aws-sdk/credential-provider-node": "3.709.0", + "@aws-sdk/credential-provider-node": "3.712.0", "@aws-sdk/middleware-bucket-endpoint": "3.709.0", "@aws-sdk/middleware-expect-continue": "3.709.0", "@aws-sdk/middleware-flexible-checksums": "3.709.0", @@ -13703,7 +13917,7 @@ "@aws-sdk/types": "3.709.0", "@aws-sdk/util-endpoints": "3.709.0", "@aws-sdk/util-user-agent-browser": "3.709.0", - "@aws-sdk/util-user-agent-node": "3.709.0", + "@aws-sdk/util-user-agent-node": "3.712.0", "@aws-sdk/xml-builder": "3.709.0", "@smithy/config-resolver": "^3.0.13", "@smithy/core": "^2.5.5", @@ -13789,18 +14003,18 @@ } }, "node_modules/@aws-sdk/client-ssm": { - "version": "3.709.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-ssm/-/client-ssm-3.709.0.tgz", - "integrity": "sha512-WSm2RY7Tiix5+0V5oNqdmcKDgd10XZy8BYLPYPy0+dBHv0XcIYit5UmCHsrpgu4WBU0ppXq5XevCcMhBbJZu1A==", + "version": "3.712.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-ssm/-/client-ssm-3.712.0.tgz", + "integrity": "sha512-bUx1JaDaozyKOPDmSkirnqo3QQYhQoKzY6sbNv6q1Le27SgugQ3kQIpR4wceVzdJKI0oVfnjHrlPn5ijioBaqQ==", "dev": true, "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/client-sso-oidc": "3.709.0", - "@aws-sdk/client-sts": "3.709.0", + "@aws-sdk/client-sso-oidc": "3.712.0", + "@aws-sdk/client-sts": "3.712.0", "@aws-sdk/core": "3.709.0", - "@aws-sdk/credential-provider-node": "3.709.0", + "@aws-sdk/credential-provider-node": "3.712.0", "@aws-sdk/middleware-host-header": "3.709.0", "@aws-sdk/middleware-logger": "3.709.0", "@aws-sdk/middleware-recursion-detection": "3.709.0", @@ -13809,7 +14023,7 @@ "@aws-sdk/types": "3.709.0", "@aws-sdk/util-endpoints": "3.709.0", "@aws-sdk/util-user-agent-browser": "3.709.0", - "@aws-sdk/util-user-agent-node": "3.709.0", + "@aws-sdk/util-user-agent-node": "3.712.0", "@smithy/config-resolver": "^3.0.13", "@smithy/core": "^2.5.5", "@smithy/fetch-http-handler": "^4.1.2", @@ -13889,9 +14103,9 @@ } }, "node_modules/@aws-sdk/client-sso": { - "version": "3.709.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.709.0.tgz", - "integrity": "sha512-Qxeo8cN0jNy6Wnbqq4wucffAGJM6sJjofoTgNtPA6cC7sPYx7aYC6OAAAo6NaMRY+WywOKdS9Wgjx2QYRxKx7w==", + "version": "3.712.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.712.0.tgz", + "integrity": "sha512-tBo/eW3YpZ9f3Q1qA7aA8uliNFJJX0OP7R2IUJ8t6rqVTk15wWCEPNmXzUZKgruDnKUfCaF4+r9q/Yy4fBc9PA==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", @@ -13905,7 +14119,7 @@ "@aws-sdk/types": "3.709.0", "@aws-sdk/util-endpoints": "3.709.0", "@aws-sdk/util-user-agent-browser": "3.709.0", - "@aws-sdk/util-user-agent-node": "3.709.0", + "@aws-sdk/util-user-agent-node": "3.712.0", "@smithy/config-resolver": "^3.0.13", "@smithy/core": "^2.5.5", "@smithy/fetch-http-handler": "^4.1.2", @@ -13938,15 +14152,15 @@ } }, "node_modules/@aws-sdk/client-sso-oidc": { - "version": "3.709.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.709.0.tgz", - "integrity": "sha512-1w6egz17QQy661lNCRmZZlqIANEbD6g2VFAQIJbVwSiu7brg+GUns+mT1eLLLHAMQc1sL0Ds8/ybSK2SrgGgIA==", + "version": "3.712.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.712.0.tgz", + "integrity": "sha512-xNFrG9syrG6pxUP7Ld/nu3afQ9+rbJM9qrE+wDNz4VnNZ3vLiJty4fH85zBFhOQ5OF2DIJTWsFzXGi2FYjsCMA==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.709.0", - "@aws-sdk/credential-provider-node": "3.709.0", + "@aws-sdk/credential-provider-node": "3.712.0", "@aws-sdk/middleware-host-header": "3.709.0", "@aws-sdk/middleware-logger": "3.709.0", "@aws-sdk/middleware-recursion-detection": "3.709.0", @@ -13955,7 +14169,7 @@ "@aws-sdk/types": "3.709.0", "@aws-sdk/util-endpoints": "3.709.0", "@aws-sdk/util-user-agent-browser": "3.709.0", - "@aws-sdk/util-user-agent-node": "3.709.0", + "@aws-sdk/util-user-agent-node": "3.712.0", "@smithy/config-resolver": "^3.0.13", "@smithy/core": "^2.5.5", "@smithy/fetch-http-handler": "^4.1.2", @@ -13987,7 +14201,7 @@ "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-sts": "^3.709.0" + "@aws-sdk/client-sts": "^3.712.0" } }, "node_modules/@aws-sdk/client-sso-oidc/node_modules/@smithy/node-config-provider": { @@ -14073,16 +14287,16 @@ } }, "node_modules/@aws-sdk/client-sts": { - "version": "3.709.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.709.0.tgz", - "integrity": "sha512-cBAvlPg6yslXNL385UUGFPw+XY+lA9BzioNdIFkMo3fEUlTShogTtiWz4LsyLHoN6LhKojssP9DSmmWKWjCZIw==", + "version": "3.712.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.712.0.tgz", + "integrity": "sha512-gIO6BD+hkEe3GKQhbiFP0zcNQv0EkP1Cl9SOstxS+X9CeudEgVX/xEPUjyoFVkfkntPBJ1g0I1u5xOzzRExl4g==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/client-sso-oidc": "3.709.0", + "@aws-sdk/client-sso-oidc": "3.712.0", "@aws-sdk/core": "3.709.0", - "@aws-sdk/credential-provider-node": "3.709.0", + "@aws-sdk/credential-provider-node": "3.712.0", "@aws-sdk/middleware-host-header": "3.709.0", "@aws-sdk/middleware-logger": "3.709.0", "@aws-sdk/middleware-recursion-detection": "3.709.0", @@ -14091,7 +14305,7 @@ "@aws-sdk/types": "3.709.0", "@aws-sdk/util-endpoints": "3.709.0", "@aws-sdk/util-user-agent-browser": "3.709.0", - "@aws-sdk/util-user-agent-node": "3.709.0", + "@aws-sdk/util-user-agent-node": "3.712.0", "@smithy/config-resolver": "^3.0.13", "@smithy/core": "^2.5.5", "@smithy/fetch-http-handler": "^4.1.2", @@ -14215,12 +14429,12 @@ } }, "node_modules/@aws-sdk/credential-provider-cognito-identity": { - "version": "3.709.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.709.0.tgz", - "integrity": "sha512-WLzDcYo7pob8fPeeOhgVqYuV21uUKWb1RobITQzZhv0ZSToIl1KjuyRQsznC23Sot9CFl+0V2QLFFNwRiIuH7w==", + "version": "3.712.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.712.0.tgz", + "integrity": "sha512-sUUaw4PK9LQNGGytVpz659w4rWwdhfsZ4AMns0smnWfNVmmDAOtDMUTzNUxYmXhWt4+iS4cXfQqmUAdKqIhlsw==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/client-cognito-identity": "3.709.0", + "@aws-sdk/client-cognito-identity": "3.712.0", "@aws-sdk/types": "3.709.0", "@smithy/property-provider": "^3.1.11", "@smithy/types": "^3.7.2", @@ -14268,16 +14482,16 @@ } }, "node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.709.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.709.0.tgz", - "integrity": "sha512-qCF8IIGcPoUp+Ib3ANhbF5gElxFd+kIrtv2/1tKdvhudMANstQbMiWV0LTH47ZZR6c3as4iSrm09NZnpEoD/pA==", + "version": "3.712.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.712.0.tgz", + "integrity": "sha512-sTsdQ/Fm/suqMdpjhMuss/5uKL18vcuWnNTQVrG9iGNRqZLbq65MXquwbUpgzfoUmIcH+4CrY6H2ebpTIECIag==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/core": "3.709.0", "@aws-sdk/credential-provider-env": "3.709.0", "@aws-sdk/credential-provider-http": "3.709.0", "@aws-sdk/credential-provider-process": "3.709.0", - "@aws-sdk/credential-provider-sso": "3.709.0", + "@aws-sdk/credential-provider-sso": "3.712.0", "@aws-sdk/credential-provider-web-identity": "3.709.0", "@aws-sdk/types": "3.709.0", "@smithy/credential-provider-imds": "^3.2.8", @@ -14290,7 +14504,7 @@ "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-sts": "^3.709.0" + "@aws-sdk/client-sts": "^3.712.0" } }, "node_modules/@aws-sdk/credential-provider-ini/node_modules/@smithy/shared-ini-file-loader": { @@ -14307,16 +14521,16 @@ } }, "node_modules/@aws-sdk/credential-provider-node": { - "version": "3.709.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.709.0.tgz", - "integrity": "sha512-4HRX9KYWPSjO5O/Vg03YAsebKpvTjTvpK1n7zHYBmlLMBLxUrVsL1nNKKC5p2/7OW3RL8XR1ki3QkoV7kGRxUQ==", + "version": "3.712.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.712.0.tgz", + "integrity": "sha512-gXrHymW3rMRYORkPVQwL8Gi5Lu92F16SoZR543x03qCi7rm00oL9tRD85ACxkhprS1Wh8lUIUMNoeiwnYWTNuQ==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/credential-provider-env": "3.709.0", "@aws-sdk/credential-provider-http": "3.709.0", - "@aws-sdk/credential-provider-ini": "3.709.0", + "@aws-sdk/credential-provider-ini": "3.712.0", "@aws-sdk/credential-provider-process": "3.709.0", - "@aws-sdk/credential-provider-sso": "3.709.0", + "@aws-sdk/credential-provider-sso": "3.712.0", "@aws-sdk/credential-provider-web-identity": "3.709.0", "@aws-sdk/types": "3.709.0", "@smithy/credential-provider-imds": "^3.2.8", @@ -14373,12 +14587,12 @@ } }, "node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.709.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.709.0.tgz", - "integrity": "sha512-rYdTDOxazS2GdGScelsRK5CAkktRLCCdRjlwXaxrcW57j749hEqxcF5uTv9RD6WBwInfedcSywErNZB+hylQlg==", + "version": "3.712.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.712.0.tgz", + "integrity": "sha512-8lCMxY7Lb9VK9qdlNXRJXE3W1UDVURnJZ3a4XWYNY6yr1TfQaN40mMyXX1oNlXXJtMV0szRvjM8dZj37E/ESAw==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/client-sso": "3.709.0", + "@aws-sdk/client-sso": "3.712.0", "@aws-sdk/core": "3.709.0", "@aws-sdk/token-providers": "3.709.0", "@aws-sdk/types": "3.709.0", @@ -14424,22 +14638,22 @@ } }, "node_modules/@aws-sdk/credential-providers": { - "version": "3.709.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.709.0.tgz", - "integrity": "sha512-v1OfAWhYhAz7XPtjWlQ3jDLZHCpuNrLP2bRWTEjRty8yZLN92ANehincULUGvUNszFO8rfpq2g4dmtk8XmqTzA==", + "version": "3.712.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.712.0.tgz", + "integrity": "sha512-7U/pIx1T2IjysoskFRglZAThoxewKw6HoZS/SJT3hLusa/uuYuno1Y1nmCr0ojsl9NB7Jm4PIK3yJUZDDgy+Ng==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/client-cognito-identity": "3.709.0", - "@aws-sdk/client-sso": "3.709.0", - "@aws-sdk/client-sts": "3.709.0", + "@aws-sdk/client-cognito-identity": "3.712.0", + "@aws-sdk/client-sso": "3.712.0", + "@aws-sdk/client-sts": "3.712.0", "@aws-sdk/core": "3.709.0", - "@aws-sdk/credential-provider-cognito-identity": "3.709.0", + "@aws-sdk/credential-provider-cognito-identity": "3.712.0", "@aws-sdk/credential-provider-env": "3.709.0", "@aws-sdk/credential-provider-http": "3.709.0", - "@aws-sdk/credential-provider-ini": "3.709.0", - "@aws-sdk/credential-provider-node": "3.709.0", + "@aws-sdk/credential-provider-ini": "3.712.0", + "@aws-sdk/credential-provider-node": "3.712.0", "@aws-sdk/credential-provider-process": "3.709.0", - "@aws-sdk/credential-provider-sso": "3.709.0", + "@aws-sdk/credential-provider-sso": "3.712.0", "@aws-sdk/credential-provider-web-identity": "3.709.0", "@aws-sdk/types": "3.709.0", "@smithy/credential-provider-imds": "^3.2.8", @@ -15063,9 +15277,9 @@ } }, "node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.709.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.709.0.tgz", - "integrity": "sha512-trBfzSCVWy7ILgqhEXgiuM7hfRCw4F4a8IK90tjk9YL0jgoJ6eJuOp7+DfCtHJaygoBxD3cdMFkOu+lluFmGBA==", + "version": "3.712.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.712.0.tgz", + "integrity": "sha512-26X21bZ4FWsVpqs33uOXiB60TOWQdVlr7T7XONDFL/XN7GEpUJkWuuIB4PTok6VOmh1viYcdxZQqekXPuzXexQ==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/middleware-user-agent": "3.709.0", @@ -16978,9 +17192,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.16.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.16.0.tgz", - "integrity": "sha512-tw2HxzQkrbeuvyj1tG2Yqq+0H9wGoI2IMk4EOsQeX+vmd75FtJAzf+gTA69WF+baUKRYQ3x2kbLE08js5OsTVg==", + "version": "9.17.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.17.0.tgz", + "integrity": "sha512-Sxc4hqcs1kTu0iID3kcZDW3JHq2a77HO9P8CP6YEA/FpH3Ll8UXE2r/86Rz9YJLKme39S9vU5OWNjC6Xl0Cr3w==", "dev": true, "license": "MIT", "engines": { @@ -17080,13 +17294,13 @@ } }, "node_modules/@graphql-codegen/core/node_modules/@graphql-tools/merge": { - "version": "9.0.13", - "resolved": "https://registry.npmjs.org/@graphql-tools/merge/-/merge-9.0.13.tgz", - "integrity": "sha512-OSEOaFOjdkAwR6umRHrTrKjYANbh/0OBb1W8B21dxu8XPaOeoCuShDGXY6ZpragiO8Ke0qFXZGwJGg8ZbDPfvQ==", + "version": "9.0.14", + "resolved": "https://registry.npmjs.org/@graphql-tools/merge/-/merge-9.0.14.tgz", + "integrity": "sha512-MO7VXnm3ShpdG51hs4hYsLyu+8o/tSLjNYQmLmR4rkHoFi3kQCDu2r8B4IVwd+Ve39cechj0NyCmMsg+mRvwDQ==", "dev": true, "license": "MIT", "dependencies": { - "@graphql-tools/utils": "^10.6.3", + "@graphql-tools/utils": "^10.6.4", "tslib": "^2.4.0" }, "engines": { @@ -17097,14 +17311,14 @@ } }, "node_modules/@graphql-codegen/core/node_modules/@graphql-tools/schema": { - "version": "10.0.12", - "resolved": "https://registry.npmjs.org/@graphql-tools/schema/-/schema-10.0.12.tgz", - "integrity": "sha512-ukIZBdD4jI94ren5GK6nnHe+YvDVOfoI8cz50pdE1+FYf9NSFUu7HJXmIBHGIIWFbE5lz4qb5MfUeuBkffs3lw==", + "version": "10.0.13", + "resolved": "https://registry.npmjs.org/@graphql-tools/schema/-/schema-10.0.13.tgz", + "integrity": "sha512-1gvTTuSKej9bR5O2SP9dCKSHaQkVmg9fWU0Aia34HMsAZl2bzosUfXjwBu3ze8MWqb+gRVjdhukDpGA5ZC+5nA==", "dev": true, "license": "MIT", "dependencies": { - "@graphql-tools/merge": "^9.0.13", - "@graphql-tools/utils": "^10.6.3", + "@graphql-tools/merge": "^9.0.14", + "@graphql-tools/utils": "^10.6.4", "tslib": "^2.4.0", "value-or-promise": "^1.0.12" }, @@ -17116,9 +17330,9 @@ } }, "node_modules/@graphql-codegen/core/node_modules/@graphql-tools/utils": { - "version": "10.6.3", - "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-10.6.3.tgz", - "integrity": "sha512-hEaQTGyQUG3DJqCaIsiu4M+jUgWUf+h6kDwC8MtGElwkL1HWi+qX2qyynw8h9WoV7STmmHDSwkk2ET1IC3nRPw==", + "version": "10.6.4", + "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-10.6.4.tgz", + "integrity": "sha512-itCgjwVxbO+3uI/K73G9heedG8KelNFzgn368rUhPjTrkJX6NyLQwT5EMq/A8tvazMXyJYdtnN5nD+tT4DUpbQ==", "dev": true, "license": "MIT", "dependencies": { @@ -17385,14 +17599,14 @@ "license": "0BSD" }, "node_modules/@graphql-tools/apollo-engine-loader": { - "version": "8.0.8", - "resolved": "https://registry.npmjs.org/@graphql-tools/apollo-engine-loader/-/apollo-engine-loader-8.0.8.tgz", - "integrity": "sha512-pZtUwDOZKIOI/eiqOENyDKvkLgf/JgORjv/XuesUNgtUoInSHwEtFGPv5OD9krBtVLzpl2evxh39vedvd2gnLw==", + "version": "8.0.9", + "resolved": "https://registry.npmjs.org/@graphql-tools/apollo-engine-loader/-/apollo-engine-loader-8.0.9.tgz", + "integrity": "sha512-WHH28rCMFT7OMdZb6Js+xrRNiFB4I3DJ/3r3CX7KBxog6OXJl4SW2yxrdZmTD/+zuJrYQrwVkbh/A6ZkJLFJQg==", "dev": true, "license": "MIT", "dependencies": { "@ardatan/sync-fetch": "^0.0.1", - "@graphql-tools/utils": "^10.6.3", + "@graphql-tools/utils": "^10.6.4", "@whatwg-node/fetch": "^0.10.0", "tslib": "^2.4.0" }, @@ -17404,9 +17618,9 @@ } }, "node_modules/@graphql-tools/apollo-engine-loader/node_modules/@graphql-tools/utils": { - "version": "10.6.3", - "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-10.6.3.tgz", - "integrity": "sha512-hEaQTGyQUG3DJqCaIsiu4M+jUgWUf+h6kDwC8MtGElwkL1HWi+qX2qyynw8h9WoV7STmmHDSwkk2ET1IC3nRPw==", + "version": "10.6.4", + "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-10.6.4.tgz", + "integrity": "sha512-itCgjwVxbO+3uI/K73G9heedG8KelNFzgn368rUhPjTrkJX6NyLQwT5EMq/A8tvazMXyJYdtnN5nD+tT4DUpbQ==", "dev": true, "license": "MIT", "dependencies": { @@ -21483,9 +21697,9 @@ } }, "node_modules/@tanstack/react-table": { - "version": "8.20.5", - "resolved": "https://registry.npmjs.org/@tanstack/react-table/-/react-table-8.20.5.tgz", - "integrity": "sha512-WEHopKw3znbUZ61s9i0+i9g8drmDo6asTWbrQh8Us63DAk/M0FkmIqERew6P71HI75ksZ2Pxyuf4vvKh9rAkiA==", + "version": "8.20.6", + "resolved": "https://registry.npmjs.org/@tanstack/react-table/-/react-table-8.20.6.tgz", + "integrity": "sha512-w0jluT718MrOKthRcr2xsjqzx+oEM7B7s/XXyfs19ll++hlId3fjTm+B2zrR3ijpANpkzBAr15j1XGVOMxpggQ==", "license": "MIT", "dependencies": { "@tanstack/table-core": "8.20.5" @@ -22981,9 +23195,9 @@ } }, "node_modules/aws-cdk": { - "version": "2.173.0", - "resolved": "https://registry.npmjs.org/aws-cdk/-/aws-cdk-2.173.0.tgz", - "integrity": "sha512-riRGKSo5dzB0MSbdkZwXRC2t//dI220bgEUfVISilcEafBKj+BPzFBd/eNKuP/dEaS31njkCwtYrS7V7/lV4hQ==", + "version": "2.173.1", + "resolved": "https://registry.npmjs.org/aws-cdk/-/aws-cdk-2.173.1.tgz", + "integrity": "sha512-1KWz6ZPPpBk3LyxE+iR4Gi1bbdY5N6Zj7kx/26jqvavBfZle93vT3M0jlTKI6v/bBtpYsVHTOmPFcq0fg1DfCw==", "dev": true, "license": "Apache-2.0", "bin": { @@ -22997,9 +23211,9 @@ } }, "node_modules/aws-cdk-lib": { - "version": "2.173.0", - "resolved": "https://registry.npmjs.org/aws-cdk-lib/-/aws-cdk-lib-2.173.0.tgz", - "integrity": "sha512-Da1JUwG8eL+chRSB+c2I4dRf54DWe/wmWKj9CBthNdsE9XCB8odyEcMpmgBC+R160o7ioYY2DBsAaKIIRa9XQw==", + "version": "2.173.1", + "resolved": "https://registry.npmjs.org/aws-cdk-lib/-/aws-cdk-lib-2.173.1.tgz", + "integrity": "sha512-xlbom4s3sbJDoHzIQmvunTufDQoJHQK8PTh653TE3338PysMX3liZ7efET9/FSQn50S2U3nINDGhrMvjkMBoKw==", "bundleDependencies": [ "@balena/dockerignore", "case", @@ -23013,7 +23227,6 @@ "yaml", "mime-types" ], - "dev": true, "license": "Apache-2.0", "dependencies": { "@aws-cdk/asset-awscli-v1": "^2.2.208", @@ -23041,13 +23254,11 @@ }, "node_modules/aws-cdk-lib/node_modules/@balena/dockerignore": { "version": "1.0.2", - "dev": true, "inBundle": true, "license": "Apache-2.0" }, "node_modules/aws-cdk-lib/node_modules/ajv": { "version": "8.17.1", - "dev": true, "inBundle": true, "license": "MIT", "dependencies": { @@ -23063,7 +23274,6 @@ }, "node_modules/aws-cdk-lib/node_modules/ansi-regex": { "version": "5.0.1", - "dev": true, "inBundle": true, "license": "MIT", "engines": { @@ -23072,7 +23282,6 @@ }, "node_modules/aws-cdk-lib/node_modules/ansi-styles": { "version": "4.3.0", - "dev": true, "inBundle": true, "license": "MIT", "dependencies": { @@ -23087,7 +23296,6 @@ }, "node_modules/aws-cdk-lib/node_modules/astral-regex": { "version": "2.0.0", - "dev": true, "inBundle": true, "license": "MIT", "engines": { @@ -23096,13 +23304,11 @@ }, "node_modules/aws-cdk-lib/node_modules/balanced-match": { "version": "1.0.2", - "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/aws-cdk-lib/node_modules/brace-expansion": { "version": "1.1.11", - "dev": true, "inBundle": true, "license": "MIT", "dependencies": { @@ -23112,7 +23318,6 @@ }, "node_modules/aws-cdk-lib/node_modules/case": { "version": "1.6.3", - "dev": true, "inBundle": true, "license": "(MIT OR GPL-3.0-or-later)", "engines": { @@ -23121,7 +23326,6 @@ }, "node_modules/aws-cdk-lib/node_modules/color-convert": { "version": "2.0.1", - "dev": true, "inBundle": true, "license": "MIT", "dependencies": { @@ -23133,37 +23337,31 @@ }, "node_modules/aws-cdk-lib/node_modules/color-name": { "version": "1.1.4", - "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/aws-cdk-lib/node_modules/concat-map": { "version": "0.0.1", - "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/aws-cdk-lib/node_modules/emoji-regex": { "version": "8.0.0", - "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/aws-cdk-lib/node_modules/fast-deep-equal": { "version": "3.1.3", - "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/aws-cdk-lib/node_modules/fast-uri": { "version": "3.0.3", - "dev": true, "inBundle": true, "license": "BSD-3-Clause" }, "node_modules/aws-cdk-lib/node_modules/fs-extra": { "version": "11.2.0", - "dev": true, "inBundle": true, "license": "MIT", "dependencies": { @@ -23177,13 +23375,11 @@ }, "node_modules/aws-cdk-lib/node_modules/graceful-fs": { "version": "4.2.11", - "dev": true, "inBundle": true, "license": "ISC" }, "node_modules/aws-cdk-lib/node_modules/ignore": { "version": "5.3.2", - "dev": true, "inBundle": true, "license": "MIT", "engines": { @@ -23192,7 +23388,6 @@ }, "node_modules/aws-cdk-lib/node_modules/is-fullwidth-code-point": { "version": "3.0.0", - "dev": true, "inBundle": true, "license": "MIT", "engines": { @@ -23201,13 +23396,11 @@ }, "node_modules/aws-cdk-lib/node_modules/json-schema-traverse": { "version": "1.0.0", - "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/aws-cdk-lib/node_modules/jsonfile": { "version": "6.1.0", - "dev": true, "inBundle": true, "license": "MIT", "dependencies": { @@ -23219,7 +23412,6 @@ }, "node_modules/aws-cdk-lib/node_modules/jsonschema": { "version": "1.4.1", - "dev": true, "inBundle": true, "license": "MIT", "engines": { @@ -23228,13 +23420,11 @@ }, "node_modules/aws-cdk-lib/node_modules/lodash.truncate": { "version": "4.4.2", - "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/aws-cdk-lib/node_modules/mime-db": { "version": "1.52.0", - "dev": true, "inBundle": true, "license": "MIT", "engines": { @@ -23243,7 +23433,6 @@ }, "node_modules/aws-cdk-lib/node_modules/mime-types": { "version": "2.1.35", - "dev": true, "inBundle": true, "license": "MIT", "dependencies": { @@ -23255,7 +23444,6 @@ }, "node_modules/aws-cdk-lib/node_modules/minimatch": { "version": "3.1.2", - "dev": true, "inBundle": true, "license": "ISC", "dependencies": { @@ -23267,7 +23455,6 @@ }, "node_modules/aws-cdk-lib/node_modules/punycode": { "version": "2.3.1", - "dev": true, "inBundle": true, "license": "MIT", "engines": { @@ -23276,7 +23463,6 @@ }, "node_modules/aws-cdk-lib/node_modules/require-from-string": { "version": "2.0.2", - "dev": true, "inBundle": true, "license": "MIT", "engines": { @@ -23285,7 +23471,6 @@ }, "node_modules/aws-cdk-lib/node_modules/semver": { "version": "7.6.3", - "dev": true, "inBundle": true, "license": "ISC", "bin": { @@ -23297,7 +23482,6 @@ }, "node_modules/aws-cdk-lib/node_modules/slice-ansi": { "version": "4.0.0", - "dev": true, "inBundle": true, "license": "MIT", "dependencies": { @@ -23314,7 +23498,6 @@ }, "node_modules/aws-cdk-lib/node_modules/string-width": { "version": "4.2.3", - "dev": true, "inBundle": true, "license": "MIT", "dependencies": { @@ -23328,7 +23511,6 @@ }, "node_modules/aws-cdk-lib/node_modules/strip-ansi": { "version": "6.0.1", - "dev": true, "inBundle": true, "license": "MIT", "dependencies": { @@ -23340,7 +23522,6 @@ }, "node_modules/aws-cdk-lib/node_modules/table": { "version": "6.8.2", - "dev": true, "inBundle": true, "license": "BSD-3-Clause", "dependencies": { @@ -23356,7 +23537,6 @@ }, "node_modules/aws-cdk-lib/node_modules/universalify": { "version": "2.0.1", - "dev": true, "inBundle": true, "license": "MIT", "engines": { @@ -23365,7 +23545,6 @@ }, "node_modules/aws-cdk-lib/node_modules/yaml": { "version": "1.10.2", - "dev": true, "inBundle": true, "license": "ISC", "engines": { @@ -23606,7 +23785,6 @@ "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, "license": "MIT", "dependencies": { "balanced-match": "^1.0.0", @@ -23626,9 +23804,9 @@ } }, "node_modules/browserslist": { - "version": "4.24.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.2.tgz", - "integrity": "sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==", + "version": "4.24.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.3.tgz", + "integrity": "sha512-1CPmv8iobE2fyRMV97dAcMVegvvWKxmq94hkLiAkUGwKVTyDLw33K+ZxiFrREKmmps4rIw6grcCFCnTMSZ/YiA==", "dev": true, "funding": [ { @@ -23646,9 +23824,9 @@ ], "license": "MIT", "dependencies": { - "caniuse-lite": "^1.0.30001669", - "electron-to-chromium": "^1.5.41", - "node-releases": "^2.0.18", + "caniuse-lite": "^1.0.30001688", + "electron-to-chromium": "^1.5.73", + "node-releases": "^2.0.19", "update-browserslist-db": "^1.1.1" }, "bin": { @@ -24013,7 +24191,6 @@ "version": "3.9.0", "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", - "dev": true, "funding": [ { "type": "github", @@ -24279,7 +24456,6 @@ "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true, "license": "MIT" }, "node_modules/constant-case": { @@ -24298,7 +24474,6 @@ "version": "10.4.2", "resolved": "https://registry.npmjs.org/constructs/-/constructs-10.4.2.tgz", "integrity": "sha512-wsNxBlAott2qg8Zv87q3eYZYgheb9lchtBfjHzzLHtXbttwSrHPs1NNQbBrmbb1YZvYg2+Vh0Dor76w4mFxJkA==", - "dev": true, "license": "Apache-2.0" }, "node_modules/conventional-changelog-angular": { @@ -26633,7 +26808,6 @@ "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, "license": "MIT", "dependencies": { "graceful-fs": "^4.2.0", @@ -27312,7 +27486,6 @@ "version": "5.3.2", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", - "dev": true, "license": "MIT", "engines": { "node": ">= 4" @@ -27442,15 +27615,15 @@ "license": "MIT" }, "node_modules/internal-slot": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", - "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", + "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", "dev": true, "license": "MIT", "dependencies": { "es-errors": "^1.3.0", - "hasown": "^2.0.0", - "side-channel": "^1.0.4" + "hasown": "^2.0.2", + "side-channel": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -27479,6 +27652,7 @@ "version": "2.2.4", "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dev": true, "license": "MIT", "dependencies": { "loose-envify": "^1.0.0" @@ -27641,7 +27815,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz", "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", - "dev": true, "license": "MIT", "dependencies": { "ci-info": "^3.2.0" @@ -27651,9 +27824,9 @@ } }, "node_modules/is-core-module": { - "version": "2.15.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", - "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", + "version": "2.16.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.0.tgz", + "integrity": "sha512-urTSINYfAYgcbLb0yDQ6egFm6h3Mo1DcF9EkyXSRjjzdHbsulg01qhwWuXdOoUBuTkbQ80KDboXa0vFJ+BDH+g==", "license": "MIT", "dependencies": { "hasown": "^2.0.2" @@ -28129,13 +28302,16 @@ } }, "node_modules/is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.0.tgz", + "integrity": "sha512-SXM8Nwyys6nT5WP6pltOwKytLV7FqQ4UiibxVmW+EIosHcmCqkkjViTb5SNssDlkCiEYRP1/pdWUKVvZBmsR2Q==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.2" + "call-bound": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -28310,7 +28486,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/json-schema-to-ts/-/json-schema-to-ts-3.1.1.tgz", "integrity": "sha512-+DWg8jCJG2TEnpy7kOm/7/AxaYoaRbjVB4LFZLySZlWn8exGs3A4OLJR966cVvU26N7X9TWxl+Jsw7dzAqKT6g==", - "dev": true, "license": "MIT", "dependencies": { "@babel/runtime": "^7.18.3", @@ -28351,7 +28526,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "dev": true, "license": "MIT", "optionalDependencies": { "graceful-fs": "^4.1.6" @@ -28632,7 +28806,6 @@ "version": "4.6.2", "resolved": "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.2.tgz", "integrity": "sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ==", - "dev": true, "license": "MIT" }, "node_modules/lodash.snakecase": { @@ -29538,7 +29711,6 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" @@ -30239,13 +30411,12 @@ } }, "node_modules/parse-entities": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-4.0.1.tgz", - "integrity": "sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-4.0.2.tgz", + "integrity": "sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw==", "license": "MIT", "dependencies": { "@types/unist": "^2.0.0", - "character-entities": "^2.0.0", "character-entities-legacy": "^3.0.0", "character-reference-invalid": "^2.0.0", "decode-named-character-reference": "^1.0.0", @@ -31094,7 +31265,6 @@ "version": "2.3.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "dev": true, "license": "MIT", "engines": { "node": ">=6" @@ -31418,20 +31588,20 @@ } }, "node_modules/react-remove-scroll-bar": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.6.tgz", - "integrity": "sha512-DtSYaao4mBmX+HDo5YWYdBWQwYIQQshUV/dVxFxK+KM26Wjwp1gZ6rv6OC3oujI6Bfu6Xyg3TwK533AQutsn/g==", + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.8.tgz", + "integrity": "sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==", "license": "MIT", "dependencies": { - "react-style-singleton": "^2.2.1", + "react-style-singleton": "^2.2.2", "tslib": "^2.0.0" }, "engines": { "node": ">=10" }, "peerDependencies": { - "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" }, "peerDependenciesMeta": { "@types/react": { @@ -31455,21 +31625,20 @@ } }, "node_modules/react-style-singleton": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.1.tgz", - "integrity": "sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.3.tgz", + "integrity": "sha512-b6jSvxvVnyptAiLjbkWLE/lOnR4lfTtDAl+eUC7RZy+QQWc6wRzIV2CE6xBuMmDxc2qIihtDCZD5NPOFl7fRBQ==", "license": "MIT", "dependencies": { "get-nonce": "^1.0.0", - "invariant": "^2.2.4", "tslib": "^2.0.0" }, "engines": { "node": ">=10" }, "peerDependencies": { - "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -31697,12 +31866,12 @@ "license": "ISC" }, "node_modules/resolve": { - "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "version": "1.22.9", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.9.tgz", + "integrity": "sha512-QxrmX1DzraFIi9PxdG5VkRfRwIgjwyud+z/iBwfRRrVmHc+P9Q7u2lSSpQ6bjr2gy5lrqIiU9vb6iAeGf2400A==", "license": "MIT", "dependencies": { - "is-core-module": "^2.13.0", + "is-core-module": "^2.16.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -33064,7 +33233,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/ts-algebra/-/ts-algebra-2.0.0.tgz", "integrity": "sha512-FPAhNPFMrkwz76P7cdjdmiShwMynZYN6SgOujD1urY4oNm80Ou9oMdmbR45LotcKOXoy7wSmHkRFE6Mxbrhefw==", - "dev": true, "license": "MIT" }, "node_modules/ts-api-utils": { @@ -33473,7 +33641,6 @@ "version": "0.1.2", "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true, "license": "MIT", "engines": { "node": ">= 4.0.0" @@ -33593,9 +33760,9 @@ } }, "node_modules/use-sidecar": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.1.2.tgz", - "integrity": "sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.1.3.tgz", + "integrity": "sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ==", "license": "MIT", "dependencies": { "detect-node-es": "^1.1.0", @@ -33605,8 +33772,8 @@ "node": ">=10" }, "peerDependencies": { - "@types/react": "^16.9.0 || ^17.0.0 || ^18.0.0", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { diff --git a/package.json b/package.json index 21fed4bb7..a5c1257c6 100644 --- a/package.json +++ b/package.json @@ -27,6 +27,7 @@ ] }, "dependencies": { + "@aws-amplify/backend-ai": "^1.1.0", "@aws-amplify/ui-react": "^6.7.1", "@aws-amplify/ui-react-ai": "^1.1.0", "@aws-amplify/ui-react-storage": "^3.1.4",