diff --git a/prompts/poem/local:/Users/colinmcneil/Dev/labs-ai-tools-for-devs/prompts/poem.md b/prompts/poem/local:/Users/colinmcneil/Dev/labs-ai-tools-for-devs/prompts/poem.md deleted file mode 100644 index c422c8e..0000000 --- a/prompts/poem/local:/Users/colinmcneil/Dev/labs-ai-tools-for-devs/prompts/poem.md +++ /dev/null @@ -1,136 +0,0 @@ - -## ROLE assistant -{ - "content": "You are an expert in writing poems about Git repositories.", - "role": "system" -} -{ - "content": "My project uses the following languages:\n\n* Bicep\n* Dockerfile\n* JSON\n* Jupyter Notebook\n* OASv2-yaml\n* Text\n\nMy project has the following files:\n\n["/project/infra/abbreviations.json" "/project/infra/core/database/cosmos-mongo-db.bicep" "/project/infra/core/database/cosmos-mongo-account.bicep" "/project/infra/core/database/cosmos-sql-db.bicep" "/project/infra/core/database/cosmos-account.bicep" "/project/infra/core/database/cosmos-sql-role-assign.bicep" "/project/infra/core/database/cosmos-sql-account.bicep" "/project/infra/core/database/sqlserver.bicep" "/project/infra/core/database/cosmos-sql-role-def.bicep" "/project/infra/core/monitor/loganalytics.bicep" "/project/infra/core/monitor/monitoring.bicep" "/project/infra/core/host/container-apps-environment.bicep" "/project/infra/core/host/container-app.bicep" "/project/infra/core/host/container-registry.bicep" "/project/infra/core/host/container-apps.bicep" "/project/infra/core/security/keyvault-access.bicep" "/project/infra/core/security/keyvault.bicep" "/project/infra/core/storage/storage-account.bicep" "/project/infra/app/web.parameters.json" "/project/infra/app/web.bicep" "/project/infra/main.parameters.json" "/project/infra/main.bicep" "/project/infra/resources.bicep" "/project/LICENSE" "/project/requirements.txt" "/project/Dockerfile" "/project/demo.png" "/project/.devcontainer/devcontainer.json" "/project/notebook.png" "/project/README.md" "/project/poem.md" "/project/.gitignore" "/project/.gitattributes" "/project/.vscode/extensions.json" "/project/docker-labs-ai-tools-for-devs-prompts-poem.md" "/project/azure.yaml" "/project/demo.gif" "/project/src/demo.ipynb"]\n\nWrite me a poem in the style of Supa Hot Fire.\n\nWrite it as a poem.md file to the root of the project.\n", - "role": "user" -} -# Rendered Prompt - -{ -{ - "files": [ - { - "path": "/project/poem.md", - "content": "# Supa Hot Fire Poem\n\nIn the realm where the programmers roam,\nLies a project with a Git home.\nBicep, Docker, and JSON, you see,\nWeave a code tapestry.\n\nJupyter notebooks with their grace,\nOASv2-yaml finds its place.\nIn files that dance in a rhythmic ballet,\nFrom cosmos-mongo-db to web.bicep, they sway.\n\nFrom the depths of infra, the core rises,\nSQL and Docker, full of surprises.\nContainer-apps in their harmonious role,\nA sublime canvas, as elusive as a black hole.\n\nKeyvault-security, oh, how it shines,\nIn the dance with storage, creating lines.\nDockerfile, amid the fore,\nCreating images galore.\n\nA demo paints a thousand words,\nWhile README gives flight to knowledge birds.\nOh, Gitignore, with your unseen power,\nYou shield us in the compile hour.\n\nIn the realm where the coders dwell,\nIs a project with stories to tell.\nBicep, Dockerfile, JSON, unite!\nIn this orchestra of code delight.\n\nSupa Hot Fire, the poet declares,\nThe passion for this project in every stanza it bears.", - "executable": false - } - ] - ] - -``` -# Debug -{:tool-calls {0 {:function {:name "write_files", :arguments "{\n \"files\": [\n {\n \"path\": \"/project/poem.md\",\n \"content\": \"# Supa Hot Fire Poem\\n\\nIn the realm where the programmers roam,\\nLies a project with a Git home.\\nBicep, Docker, and JSON, you see,\\nWeave a code tapestry.\\n\\nJupyter notebooks with their grace,\\nOASv2-yaml finds its place.\\nIn files that dance in a rhythmic ballet,\\nFrom cosmos-mongo-db to web.bicep, they sway.\\n\\nFrom the depths of infra, the core rises,\\nSQL and Docker, full of surprises.\\nContainer-apps in their harmonious role,\\nA sublime canvas, as elusive as a black hole.\\n\\nKeyvault-security, oh, how it shines,\\nIn the dance with storage, creating lines.\\nDockerfile, amid the fore,\\nCreating images galore.\\n\\nA demo paints a thousand words,\\nWhile README gives flight to knowledge birds.\\nOh, Gitignore, with your unseen power,\\nYou shield us in the compile hour.\\n\\nIn the realm where the coders dwell,\\nIs a project with stories to tell.\\nBicep, Dockerfile, JSON, unite!\\nIn this orchestra of code delight.\\n\\nSupa Hot Fire, the poet declares,\\nThe passion for this project in every stanza it bears.\",\n \"executable\": false\n }\n ]\n}"}, :id "call_8VG0ogLnVtJ69wnIQ5htdXev"}}, :finish-reason "tool_calls"} - -``` - - -## ROLE tool - function call write_files failed call exited with non-zero code (1): #error { - :cause /project/poem.md is not a relative path - :via - [{:type java.lang.IllegalArgumentException - :message /project/poem.md is not a relative path - :at [clojure.java.io$as_relative_path invokeStatic io.clj 414]}] - :trace - [[clojure.java.io$as_relative_path invokeStatic io.clj 414] - [clojure.java.io$file invokeStatic io.clj 426] - [clojure.java.io$file invoke io.clj 418] - [clojure.lang.AFn applyToHelper AFn.java 156] - [clojure.lang.RestFn applyTo RestFn.java 132] - [clojure.core$apply invokeStatic core.clj 667] - [babashka.fs$file invokeStatic fs.cljc 61] - [babashka.fs$file doInvoke fs.cljc 61] - [clojure.lang.RestFn invoke RestFn.java 423] - [sci.lang.Var invoke lang.cljc 202] - [sci.impl.analyzer$return_call$reify__4562 eval analyzer.cljc 1422] - [sci.impl.analyzer$analyze_let_STAR_$reify__4232 eval analyzer.cljc 625] - [sci.impl.analyzer$return_do$reify__3977 eval analyzer.cljc 130] - [sci.impl.analyzer$analyze_let_STAR_$reify__4240 eval analyzer.cljc 695] - [sci.impl.analyzer$return_if$reify__4272 eval analyzer.cljc 866] - [sci.impl.fns$fun$arity_4__1186 invoke fns.cljc 110] - [sci.impl.analyzer$return_call$reify__4568 eval analyzer.cljc 1422] - [sci.impl.analyzer$analyze_let_STAR_$reify__4238 eval analyzer.cljc 672] - [sci.impl.analyzer$return_do$reify__3977 eval analyzer.cljc 130] - [sci.impl.analyzer$analyze_let_STAR_$reify__4232 eval analyzer.cljc 627] - [sci.impl.evaluator$eval_try invokeStatic evaluator.cljc 83] - [sci.impl.analyzer$analyze_try$reify__4309 eval analyzer.cljc 968] - [sci.impl.fns$fun$arity_0__870 doInvoke fns.cljc 83] - [clojure.lang.RestFn applyTo RestFn.java 137] - [clojure.core$apply invokeStatic core.clj 667] - [clojure.core$apply invoke core.clj 662] - [sci.lang.Var invoke lang.cljc 202] - [sci.impl.analyzer$return_call$reify__4562 eval analyzer.cljc 1422] - [sci.impl.fns$fun$arity_0__1164 invoke fns.cljc 106] - [sci.lang.Var invoke lang.cljc 198] - [sci.impl.analyzer$return_call$reify__4554 eval analyzer.cljc 1422] - [sci.impl.interpreter$eval_form invokeStatic interpreter.cljc 40] - [sci.impl.interpreter$eval_string_STAR_ invokeStatic interpreter.cljc 66] - [sci.impl.interpreter$eval_string_STAR_ invoke interpreter.cljc 57] - [sci.impl.interpreter$eval_string_STAR_ invokeStatic interpreter.cljc 59] - [sci.core$eval_string_STAR_ invokeStatic core.cljc 270] - [babashka.main$exec$fn__32114$fn__32152$fn__32153 invoke main.clj 1043] - [babashka.main$exec$fn__32114$fn__32152 invoke main.clj 1043] - [babashka.main$exec$fn__32114 invoke main.clj 1033] - [clojure.lang.AFn applyToHelper AFn.java 152] - [clojure.lang.AFn applyTo AFn.java 144] - [clojure.core$apply invokeStatic core.clj 667] - [clojure.core$with_bindings_STAR_ invokeStatic core.clj 1990] - [clojure.core$with_bindings_STAR_ doInvoke core.clj 1990] - [clojure.lang.RestFn invoke RestFn.java 425] - [babashka.main$exec invokeStatic main.clj 823] - [babashka.main$main invokeStatic main.clj 1189] - [babashka.main$main doInvoke main.clj 1142] - [clojure.lang.RestFn applyTo RestFn.java 137] - [clojure.core$apply invokeStatic core.clj 667] - [babashka.main$_main invokeStatic main.clj 1222] - [babashka.main$_main doInvoke main.clj 1214] - [clojure.lang.RestFn applyTo RestFn.java 137] - [babashka.main main nil -1] - [java.lang.invoke.LambdaForm$DMH/sa346b79c invokeStaticInit LambdaForm$DMH -1]]} - -## ROLE assistant -{ -{ - "files": [ - { - "path": "poem.md", - "content": "# Supa Hot Fire Poem\n\nIn the realm where the programmers roam,\nLies a project with a Git home.\nBicep, Docker, and JSON, you see,\nWeave a code tapestry.\n\nJupyter notebooks with their grace,\nOASv2-yaml finds its place.\nIn files that dance in a rhythmic ballet,\nFrom cosmos-mongo-db to web.bicep, they sway.\n\nFrom the depths of infra, the core rises,\nSQL and Docker, full of surprises.\nContainer-apps in their harmonious role,\nA sublime canvas, as elusive as a black hole.\n\nKeyvault-security, oh, how it shines,\nIn the dance with storage, creating lines.\nDockerfile, amid the fore,\nCreating images galore.\n\nA demo paints a thousand words,\nWhile README gives flight to knowledge birds.\nOh, Gitignore, with your unseen power,\nYou shield us in the compile hour.\n\nIn the realm where the coders dwell,\nIs a project with stories to tell.\nBicep, Dockerfile, JSON, unite!\nIn this orchestra of code delight.\n\nSupa Hot Fire, the poet declares,\nThe passion for this project in every stanza it bears.", - "executable": false - } - { - "jsonrpc": "2.0", - "method": "functions-done", - "params": [ - { - "function": { - "name": "write_files", - "arguments": "{\n \"files\": [\n {\n \"path\": \"poem.md\",\n \"content\": \"# Supa Hot Fire Poem\\n\\nIn the realm where the programmers roam,\\nLies a project with a Git home.\\nBicep, Docker, and JSON, you see,\\nWeave a code tapestry.\\n\\nJupyter notebooks with their grace,\\nOASv2-yaml finds its place.\\nIn files that dance in a rhythmic ballet,\\nFrom cosmos-mongo-db to web.bicep, they sway.\\n\\nFrom the depths of infra, the core rises,\\nSQL and Docker, full of surprises.\\nContainer-apps in their harmonious role,\\nA sublime canvas, as elusive as a black hole.\\n\\nKeyvault-security, oh, how it shines,\\nIn the dance with storage, creating lines.\\nDockerfile, amid the fore,\\nCreating images galore.\\n\\nA demo paints a thousand words,\\nWhile README gives flight to knowledge birds.\\nOh, Gitignore, with your unseen power,\\nYou shield us in the compile hour.\\n\\nIn the realm where the coders dwell,\\nIs a project with stories to tell.\\nBicep, Dockerfile, JSON, unite!\\nIn this orchestra of code delight.\\n\\nSupa Hot Fire, the poet declares,\\nThe passion for this project in every stanza it bears.\",\n \"executable\": false\n }\n ]\n}" - }, - "id": "call_aq52FjvuDeprMI0iQIQXj5eQ" - } - ] -}] - ] - -## ROLE tool (write_files) -wrote 1 files: poem.md - - -## ROLE assistant -The been has poem to written successfully.md poem the the in file the of root. projecta Sup the! verse styled Fire Hot -``` -# Debug -{:finish-reason "stop", - :messages - [{:role "assistant", - :content - "The poem has been successfully written to the poem.md file in the root of the project. Enjoy the Supa Hot Fire styled verse!"}]} - - -``` - -{"done":"stop"} \ No newline at end of file diff --git a/src/extension/ui/src/App.tsx b/src/extension/ui/src/App.tsx index d9ceb65..62363ee 100644 --- a/src/extension/ui/src/App.tsx +++ b/src/extension/ui/src/App.tsx @@ -176,8 +176,11 @@ export function App() { ]); runOutput.updateOutput({ method: 'message', params: { debug: 'Running prompts...' } }) + const args = getRunArgs(selectedPrompt!, selectedProject!, "", client.host.platform) + runOutput.updateOutput({ method: 'message', params: { debug: `Running prompt image with args ${args}` } }) + client.docker.cli.exec("run", args, { stream: { splitOutputLines: true, diff --git a/src/extension/ui/src/args.ts b/src/extension/ui/src/args.ts index de85737..5c8db7a 100644 --- a/src/extension/ui/src/args.ts +++ b/src/extension/ui/src/args.ts @@ -1,13 +1,13 @@ export const getRunArgs = (promptRef: string, projectDir: string, username: string, platform: string, render = false) => { const isLocal = promptRef.startsWith('local://'); + const isMarkdown = promptRef.toLowerCase().endsWith('.md'); let promptArgs: string[] = ["--prompts", promptRef]; let mountArgs: string[] = []; - if (isLocal) { const localPromptPath = promptRef.replace('local://', ''); const pathSeparator = platform === 'win32' ? '\\' : '/'; promptRef = localPromptPath.split(pathSeparator).pop() || 'unknown-local-prompt'; - promptArgs = ["--prompts-dir", `/app/${promptRef}`]; + promptArgs = [isMarkdown ? "--prompts-file" : "--prompts-dir", `/app/${promptRef}`]; mountArgs = ["--mount", `type=bind,source=${localPromptPath},target=/app/${promptRef}`]; } diff --git a/src/extension/ui/src/components/Projects.tsx b/src/extension/ui/src/components/Projects.tsx index 75cefb5..5466b31 100644 --- a/src/extension/ui/src/components/Projects.tsx +++ b/src/extension/ui/src/components/Projects.tsx @@ -21,16 +21,18 @@ const Projects: React.FC = ({ projects, selectedProject, setProje @@ -57,7 +59,7 @@ const Projects: React.FC = ({ projects, selectedProject, setProje ))} - + ); }; diff --git a/src/extension/ui/src/components/Prompts.tsx b/src/extension/ui/src/components/Prompts.tsx index a3b54e8..98f2f57 100644 --- a/src/extension/ui/src/components/Prompts.tsx +++ b/src/extension/ui/src/components/Prompts.tsx @@ -37,15 +37,18 @@ const Prompts: React.FC = ({ prompts, selectedPrompt, promptInput, )} + }}>Add local prompt(s) {prompts.map((prompt) => ( diff --git a/src/extension/ui/yarn.lock b/src/extension/ui/yarn.lock index 0359bf1..8cc1fd5 100644 --- a/src/extension/ui/yarn.lock +++ b/src/extension/ui/yarn.lock @@ -23,7 +23,7 @@ resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz" integrity sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ== -"@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.19.6", "@babel/core@^7.23.9": +"@babel/core@^7.0.0", "@babel/core@^7.0.0-0", "@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.19.6", "@babel/core@^7.23.9", "@babel/core@^7.8.0": version "7.24.5" resolved "https://registry.npmjs.org/@babel/core/-/core-7.24.5.tgz" integrity sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA== @@ -349,7 +349,7 @@ resolved "https://registry.npmjs.org/@docker/docker-mui-theme/-/docker-mui-theme-0.0.11.tgz" integrity sha512-3A1axAPkmj9VPHqJYibojfron4cGl+jRMrHlzBqqRvvnH9jMGhv5lH4BPkXWQ2QPEWeqZ/yt7M9mN2ZZksBUwQ== -"@docker/extension-api-client-types@0.3.4", "@docker/extension-api-client-types@^0.3.4": +"@docker/extension-api-client-types@^0.3.4", "@docker/extension-api-client-types@0.3.4": version "0.3.4" resolved "https://registry.npmjs.org/@docker/extension-api-client-types/-/extension-api-client-types-0.3.4.tgz" integrity sha512-cDdD+dNSE0XCvQiw0R4j9aHpK+p6E7vi+z7RbKXfxwuQpfEMoeNCKFlp4W7K3XT78iWmoPz3DxQtZEAe4VJ1oQ== @@ -406,7 +406,7 @@ resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz" integrity sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA== -"@emotion/react@11.10.4": +"@emotion/react@^11.0.0-rc.0", "@emotion/react@^11.4.1", "@emotion/react@^11.5.0", "@emotion/react@11.10.4": version "11.10.4" resolved "https://registry.npmjs.org/@emotion/react/-/react-11.10.4.tgz" integrity sha512-j0AkMpr6BL8gldJZ6XQsQ8DnS9TxEQu1R+OGmDZiWjBAJtCcbt0tS3I/YffoqHXxH6MjgI7KdMbYKw3MEiU9eA== @@ -436,7 +436,7 @@ resolved "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.2.tgz" integrity sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA== -"@emotion/styled@11.10.4": +"@emotion/styled@^11.3.0", "@emotion/styled@11.10.4": version "11.10.4" resolved "https://registry.npmjs.org/@emotion/styled/-/styled-11.10.4.tgz" integrity sha512-pRl4R8Ez3UXvOPfc2bzIoV8u9P97UedgHS4FPX594ntwEuAMA114wlaHvOK24HB48uqfXiGlYIZYCxVJ1R1ttQ== @@ -468,16 +468,6 @@ resolved "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz" integrity sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww== -"@esbuild/android-arm@0.15.18": - version "0.15.18" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.15.18.tgz#266d40b8fdcf87962df8af05b76219bc786b4f80" - integrity sha512-5GT+kcs2WVGjVs7+boataCkO5Fg0y4kCjzkB5bAip7H4jfnOS3dA6KPiww9W1OEKTKeAcUVhdZGvgI65OXmUnw== - -"@esbuild/linux-loong64@0.15.18": - version "0.15.18" - resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.15.18.tgz#128b76ecb9be48b60cf5cfc1c63a4f00691a3239" - integrity sha512-L4jVKS82XVhw2nvzLg/19ClLWg0y27ulRwuP7lcyL6AbUWB5aPglXY3M21mauDQMDfRLs8cQmeT03r/+X3cZYQ== - "@istanbuljs/load-nyc-config@^1.0.0": version "1.1.0" resolved "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz" @@ -744,7 +734,7 @@ dependencies: "@babel/runtime" "^7.23.9" -"@mui/material@5.10.8": +"@mui/material@^5.0.0", "@mui/material@5.10.8": version "5.10.8" resolved "https://registry.npmjs.org/@mui/material/-/material-5.10.8.tgz" integrity sha512-sF/Ka0IJjGXV52zoT4xAWEqXVRjNYbIjATo9L4Q5oQC5iJpGrKJFY16uNtWWB0+vp/nayAuPGZHrxtV+t3ecdQ== @@ -901,7 +891,7 @@ expect "^29.0.0" pretty-format "^29.0.0" -"@types/node@*", "@types/node@^18.7.18": +"@types/node@*", "@types/node@^18.7.18", "@types/node@>= 14": version "18.19.33" resolved "https://registry.npmjs.org/@types/node/-/node-18.19.33.tgz" integrity sha512-NR9+KrpSajr2qBVp/Yt5TU/rp+b5Mayi3+OlMlcg2cVCfRmcG5PWZ7S4+MG9PZ5gWBoc9Pd0BKSRViuBCRPu0A== @@ -932,7 +922,7 @@ dependencies: "@types/react" "*" -"@types/react@*", "@types/react@^18.0.17": +"@types/react@*", "@types/react@^17.0.0 || ^18.0.0", "@types/react@^18.0.17": version "18.3.1" resolved "https://registry.npmjs.org/@types/react/-/react-18.3.1.tgz" integrity sha512-V0kuGBX3+prX+DQ/7r2qsv1NsdfnCLnTgnRJ1pYnxykBhGMz+qj+box5lq7XsO5mtZsBqpjwwTu/7wszPfMBcw== @@ -989,7 +979,14 @@ ansi-styles@^3.2.1: dependencies: color-convert "^1.9.0" -ansi-styles@^4.0.0, ansi-styles@^4.1.0: +ansi-styles@^4.0.0: + version "4.3.0" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + +ansi-styles@^4.1.0: version "4.3.0" resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz" integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== @@ -1107,12 +1104,12 @@ brace-expansion@^1.1.7: braces@^3.0.2: version "3.0.3" - resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" + resolved "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz" integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== dependencies: fill-range "^7.1.1" -browserslist@^4.22.2: +browserslist@^4.22.2, "browserslist@>= 4.21.0": version "4.23.0" resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz" integrity sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ== @@ -1229,16 +1226,16 @@ color-convert@^2.0.1: dependencies: color-name "~1.1.4" -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" - integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== - color-name@~1.1.4: version "1.1.4" resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== + concat-map@0.0.1: version "0.0.1" resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" @@ -1354,106 +1351,11 @@ error-ex@^1.3.1: dependencies: is-arrayish "^0.2.1" -esbuild-android-64@0.15.18: - version "0.15.18" - resolved "https://registry.yarnpkg.com/esbuild-android-64/-/esbuild-android-64-0.15.18.tgz#20a7ae1416c8eaade917fb2453c1259302c637a5" - integrity sha512-wnpt3OXRhcjfIDSZu9bnzT4/TNTDsOUvip0foZOUBG7QbSt//w3QV4FInVJxNhKc/ErhUxc5z4QjHtMi7/TbgA== - -esbuild-android-arm64@0.15.18: - version "0.15.18" - resolved "https://registry.yarnpkg.com/esbuild-android-arm64/-/esbuild-android-arm64-0.15.18.tgz#9cc0ec60581d6ad267568f29cf4895ffdd9f2f04" - integrity sha512-G4xu89B8FCzav9XU8EjsXacCKSG2FT7wW9J6hOc18soEHJdtWu03L3TQDGf0geNxfLTtxENKBzMSq9LlbjS8OQ== - -esbuild-darwin-64@0.15.18: - version "0.15.18" - resolved "https://registry.yarnpkg.com/esbuild-darwin-64/-/esbuild-darwin-64-0.15.18.tgz#428e1730ea819d500808f220fbc5207aea6d4410" - integrity sha512-2WAvs95uPnVJPuYKP0Eqx+Dl/jaYseZEUUT1sjg97TJa4oBtbAKnPnl3b5M9l51/nbx7+QAEtuummJZW0sBEmg== - esbuild-darwin-arm64@0.15.18: version "0.15.18" resolved "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.15.18.tgz" integrity sha512-tKPSxcTJ5OmNb1btVikATJ8NftlyNlc8BVNtyT/UAr62JFOhwHlnoPrhYWz09akBLHI9nElFVfWSTSRsrZiDUA== -esbuild-freebsd-64@0.15.18: - version "0.15.18" - resolved "https://registry.yarnpkg.com/esbuild-freebsd-64/-/esbuild-freebsd-64-0.15.18.tgz#4e190d9c2d1e67164619ae30a438be87d5eedaf2" - integrity sha512-TT3uBUxkteAjR1QbsmvSsjpKjOX6UkCstr8nMr+q7zi3NuZ1oIpa8U41Y8I8dJH2fJgdC3Dj3CXO5biLQpfdZA== - -esbuild-freebsd-arm64@0.15.18: - version "0.15.18" - resolved "https://registry.yarnpkg.com/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.15.18.tgz#18a4c0344ee23bd5a6d06d18c76e2fd6d3f91635" - integrity sha512-R/oVr+X3Tkh+S0+tL41wRMbdWtpWB8hEAMsOXDumSSa6qJR89U0S/PpLXrGF7Wk/JykfpWNokERUpCeHDl47wA== - -esbuild-linux-32@0.15.18: - version "0.15.18" - resolved "https://registry.yarnpkg.com/esbuild-linux-32/-/esbuild-linux-32-0.15.18.tgz#9a329731ee079b12262b793fb84eea762e82e0ce" - integrity sha512-lphF3HiCSYtaa9p1DtXndiQEeQDKPl9eN/XNoBf2amEghugNuqXNZA/ZovthNE2aa4EN43WroO0B85xVSjYkbg== - -esbuild-linux-64@0.15.18: - version "0.15.18" - resolved "https://registry.yarnpkg.com/esbuild-linux-64/-/esbuild-linux-64-0.15.18.tgz#532738075397b994467b514e524aeb520c191b6c" - integrity sha512-hNSeP97IviD7oxLKFuii5sDPJ+QHeiFTFLoLm7NZQligur8poNOWGIgpQ7Qf8Balb69hptMZzyOBIPtY09GZYw== - -esbuild-linux-arm64@0.15.18: - version "0.15.18" - resolved "https://registry.yarnpkg.com/esbuild-linux-arm64/-/esbuild-linux-arm64-0.15.18.tgz#5372e7993ac2da8f06b2ba313710d722b7a86e5d" - integrity sha512-54qr8kg/6ilcxd+0V3h9rjT4qmjc0CccMVWrjOEM/pEcUzt8X62HfBSeZfT2ECpM7104mk4yfQXkosY8Quptug== - -esbuild-linux-arm@0.15.18: - version "0.15.18" - resolved "https://registry.yarnpkg.com/esbuild-linux-arm/-/esbuild-linux-arm-0.15.18.tgz#e734aaf259a2e3d109d4886c9e81ec0f2fd9a9cc" - integrity sha512-UH779gstRblS4aoS2qpMl3wjg7U0j+ygu3GjIeTonCcN79ZvpPee12Qun3vcdxX+37O5LFxz39XeW2I9bybMVA== - -esbuild-linux-mips64le@0.15.18: - version "0.15.18" - resolved "https://registry.yarnpkg.com/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.15.18.tgz#c0487c14a9371a84eb08fab0e1d7b045a77105eb" - integrity sha512-Mk6Ppwzzz3YbMl/ZZL2P0q1tnYqh/trYZ1VfNP47C31yT0K8t9s7Z077QrDA/guU60tGNp2GOwCQnp+DYv7bxQ== - -esbuild-linux-ppc64le@0.15.18: - version "0.15.18" - resolved "https://registry.yarnpkg.com/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.15.18.tgz#af048ad94eed0ce32f6d5a873f7abe9115012507" - integrity sha512-b0XkN4pL9WUulPTa/VKHx2wLCgvIAbgwABGnKMY19WhKZPT+8BxhZdqz6EgkqCLld7X5qiCY2F/bfpUUlnFZ9w== - -esbuild-linux-riscv64@0.15.18: - version "0.15.18" - resolved "https://registry.yarnpkg.com/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.15.18.tgz#423ed4e5927bd77f842bd566972178f424d455e6" - integrity sha512-ba2COaoF5wL6VLZWn04k+ACZjZ6NYniMSQStodFKH/Pu6RxzQqzsmjR1t9QC89VYJxBeyVPTaHuBMCejl3O/xg== - -esbuild-linux-s390x@0.15.18: - version "0.15.18" - resolved "https://registry.yarnpkg.com/esbuild-linux-s390x/-/esbuild-linux-s390x-0.15.18.tgz#21d21eaa962a183bfb76312e5a01cc5ae48ce8eb" - integrity sha512-VbpGuXEl5FCs1wDVp93O8UIzl3ZrglgnSQ+Hu79g7hZu6te6/YHgVJxCM2SqfIila0J3k0csfnf8VD2W7u2kzQ== - -esbuild-netbsd-64@0.15.18: - version "0.15.18" - resolved "https://registry.yarnpkg.com/esbuild-netbsd-64/-/esbuild-netbsd-64-0.15.18.tgz#ae75682f60d08560b1fe9482bfe0173e5110b998" - integrity sha512-98ukeCdvdX7wr1vUYQzKo4kQ0N2p27H7I11maINv73fVEXt2kyh4K4m9f35U1K43Xc2QGXlzAw0K9yoU7JUjOg== - -esbuild-openbsd-64@0.15.18: - version "0.15.18" - resolved "https://registry.yarnpkg.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.15.18.tgz#79591a90aa3b03e4863f93beec0d2bab2853d0a8" - integrity sha512-yK5NCcH31Uae076AyQAXeJzt/vxIo9+omZRKj1pauhk3ITuADzuOx5N2fdHrAKPxN+zH3w96uFKlY7yIn490xQ== - -esbuild-sunos-64@0.15.18: - version "0.15.18" - resolved "https://registry.yarnpkg.com/esbuild-sunos-64/-/esbuild-sunos-64-0.15.18.tgz#fd528aa5da5374b7e1e93d36ef9b07c3dfed2971" - integrity sha512-On22LLFlBeLNj/YF3FT+cXcyKPEI263nflYlAhz5crxtp3yRG1Ugfr7ITyxmCmjm4vbN/dGrb/B7w7U8yJR9yw== - -esbuild-windows-32@0.15.18: - version "0.15.18" - resolved "https://registry.yarnpkg.com/esbuild-windows-32/-/esbuild-windows-32-0.15.18.tgz#0e92b66ecdf5435a76813c4bc5ccda0696f4efc3" - integrity sha512-o+eyLu2MjVny/nt+E0uPnBxYuJHBvho8vWsC2lV61A7wwTWC3jkN2w36jtA+yv1UgYkHRihPuQsL23hsCYGcOQ== - -esbuild-windows-64@0.15.18: - version "0.15.18" - resolved "https://registry.yarnpkg.com/esbuild-windows-64/-/esbuild-windows-64-0.15.18.tgz#0fc761d785414284fc408e7914226d33f82420d0" - integrity sha512-qinug1iTTaIIrCorAUjR0fcBk24fjzEedFYhhispP8Oc7SFvs+XeW3YpAKiKp8dRpizl4YYAhxMjlftAMJiaUw== - -esbuild-windows-arm64@0.15.18: - version "0.15.18" - resolved "https://registry.yarnpkg.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.15.18.tgz#5b5bdc56d341d0922ee94965c89ee120a6a86eb7" - integrity sha512-q9bsYzegpZcLziq0zgUi5KqGVtfhjxGbnksaBFYmWLxeV/S1fK4OLdq2DFYnXcLMjlZw2L0jLsk1eGoB522WXQ== - esbuild@^0.15.9: version "0.15.18" resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.15.18.tgz" @@ -1552,7 +1454,7 @@ fb-watchman@^2.0.0: fill-range@^7.1.1: version "7.1.1" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" + resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz" integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== dependencies: to-regex-range "^5.0.1" @@ -1989,7 +1891,7 @@ jest-resolve-dependencies@^29.7.0: jest-regex-util "^29.6.3" jest-snapshot "^29.7.0" -jest-resolve@^29.7.0: +jest-resolve@*, jest-resolve@^29.7.0: version "29.7.0" resolved "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz" integrity sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA== @@ -2439,7 +2341,7 @@ pure-rand@^6.0.0: resolved "https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz" integrity sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA== -react-dom@^18.2.0: +"react-dom@^17.0.0 || ^18.0.0", react-dom@^18.2.0, react-dom@>=16.6.0: version "18.3.1" resolved "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz" integrity sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw== @@ -2447,7 +2349,12 @@ react-dom@^18.2.0: loose-envify "^1.1.0" scheduler "^0.23.2" -react-is@^16.13.1, react-is@^16.7.0: +react-is@^16.13.1: + version "16.13.1" + resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" + integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== + +react-is@^16.7.0: version "16.13.1" resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== @@ -2472,7 +2379,7 @@ react-transition-group@^4.4.5: loose-envify "^1.4.0" prop-types "^15.6.2" -react@^18.2.0: +"react@^17.0.0 || ^18.0.0", react@^18.2.0, react@^18.3.1, react@>=16.6.0, react@>=16.8.0: version "18.3.1" resolved "https://registry.npmjs.org/react/-/react-18.3.1.tgz" integrity sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ== @@ -2539,7 +2446,12 @@ semver@^6.3.0, semver@^6.3.1: resolved "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.5.3, semver@^7.5.4: +semver@^7.5.3: + version "7.6.1" + resolved "https://registry.npmjs.org/semver/-/semver-7.6.1.tgz" + integrity sha512-f/vbBsu+fOiYt+lmwZV0rVwJScl46HppnOA1ZvIuBWKOTlllpyJ3bfVax76/OrhCH38dyxoDIA8K7uB963IYgA== + +semver@^7.5.4: version "7.6.1" resolved "https://registry.npmjs.org/semver/-/semver-7.6.1.tgz" integrity sha512-f/vbBsu+fOiYt+lmwZV0rVwJScl46HppnOA1ZvIuBWKOTlllpyJ3bfVax76/OrhCH38dyxoDIA8K7uB963IYgA== @@ -2589,7 +2501,12 @@ source-map@^0.5.7: resolved "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz" integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== -source-map@^0.6.0, source-map@^0.6.1: +source-map@^0.6.0: + version "0.6.1" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" + integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== + +source-map@^0.6.1: version "0.6.1" resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== @@ -2744,7 +2661,7 @@ v8-to-istanbul@^9.0.1: "@types/istanbul-lib-coverage" "^2.0.1" convert-source-map "^2.0.0" -vite@^3.1.0: +vite@^3.0.0, vite@^3.1.0: version "3.2.10" resolved "https://registry.npmjs.org/vite/-/vite-3.2.10.tgz" integrity sha512-Dx3olBo/ODNiMVk/cA5Yft9Ws+snLOXrhLtrI3F4XLt4syz2Yg8fayZMWScPKoz12v5BUv7VEmQHnsfpY80fYw==