diff --git a/CHANGELOG.md b/CHANGELOG.md index 4d08cf3781..0095496f43 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -145,7 +145,7 @@ Breaking changes in this release: - Added support for `botframework-webchat-fluent-theme` package, by [@compulim](https://github.com/compulim) in PR [#5593](https://github.com/microsoft/BotFramework-WebChat/pull/5593) - Bundling vendor chunks, by [@compulim](https://github.com/compulim) in PR [#5595](https://github.com/microsoft/BotFramework-WebChat/pull/5595) - Added deprecation notes for legacy imports, by [@compulim](https://github.com/compulim) in PR [#5600](https://github.com/microsoft/BotFramework-WebChat/pull/5600) - - `import { hooks } from 'botframework-webchat'` should be replaced by `import * as hooks from 'botframework-webchat/hook'` + - `import { hooks } from 'botframework-webchat'` should be replaced by `import * as hooks from 'botframework-webchat/hook.js'` - Added target to Chrome 100 and re-enable Lightning CSS for ESM builds, by [@compulim](https://github.com/compulim) in PR [#5602](https://github.com/microsoft/BotFramework-WebChat/pull/5602) - Relaxed `role` prop to allow any string instead of ARIA landmark roles, in PR [#5561](https://github.com/microsoft/BotFramework-WebChat/pull/5561), by [@compulim](https://github.com/compulim) - Cleaned up `` and various CSS related code, in PR [#5611](https://github.com/microsoft/BotFramework-WebChat/pull/5611), by [@compulim](https://github.com/compulim) @@ -187,28 +187,28 @@ Breaking changes in this release: - Activity "copy" button will use `outerHTML` and `textContent` for clipboard content, in PR [#5378](https://github.com/microsoft/BotFramework-WebChat/pull/5378), by [@compulim](https://github.com/compulim) - Enabled icon customization in Fluent theme through CSS variables, in PR [#5413](https://github.com/microsoft/BotFramework-WebChat/pull/5413), by [@OEvgeny](https://github.com/OEvgeny) - Reworked, enabled in Web Chat, in PR [#5502](https://github.com/microsoft/BotFramework-WebChat/pull/5502), by [@OEvgeny](https://github.com/OEvgeny) -- Bumped dependencies, by [@compulim](https://github.com/compulim) in PR [#5385](https://github.com/microsoft/BotFramework-WebChat/pull/5385), PR [#5400](https://github.com/microsoft/BotFramework-WebChat/pull/5400), PR [#5426](https://github.com/microsoft/BotFramework-WebChat/pull/5426), PR [#5427](https://github.com/microsoft/BotFramework-WebChat/pull/5427), PR [#5476](https://github.com/microsoft/BotFramework-WebChat/pull/5476), PR [#5516](https://github.com/microsoft/BotFramework-WebChat/pull/5516), PR [#5529](https://github.com/microsoft/BotFramework-WebChat/pull/5529), PR [#5532](https://github.com/microsoft/BotFramework-WebChat/pull/5532), PR [#5659](https://github.com/microsoft/BotFramework-WebChat/pull/5659), PR [#5661](https://github.com/microsoft/BotFramework-WebChat/pull/5661), and PR [#5768](https://github.com/microsoft/BotFramework-WebChat/pull/5768), by [@OEvgeny](https://github.com/OEvgeny) in PR [#5662](https://github.com/microsoft/BotFramework-WebChat/pull/5662) +- Bumped dependencies, by [@compulim](https://github.com/compulim) in PR [#5385](https://github.com/microsoft/BotFramework-WebChat/pull/5385), PR [#5400](https://github.com/microsoft/BotFramework-WebChat/pull/5400), PR [#5426](https://github.com/microsoft/BotFramework-WebChat/pull/5426), PR [#5427](https://github.com/microsoft/BotFramework-WebChat/pull/5427), PR [#5476](https://github.com/microsoft/BotFramework-WebChat/pull/5476), PR [#5516](https://github.com/microsoft/BotFramework-WebChat/pull/5516), PR [#5529](https://github.com/microsoft/BotFramework-WebChat/pull/5529), PR [#5532](https://github.com/microsoft/BotFramework-WebChat/pull/5532), PR [#5659](https://github.com/microsoft/BotFramework-WebChat/pull/5659), PR [#5661](https://github.com/microsoft/BotFramework-WebChat/pull/5661), PR [#5768](https://github.com/microsoft/BotFramework-WebChat/pull/5768), and PR [#5813](https://github.com/microsoft/BotFramework-WebChat/pull/5813), by [@OEvgeny](https://github.com/OEvgeny) in PR [#5662](https://github.com/microsoft/BotFramework-WebChat/pull/5662) - Production dependencies - - [`@babel/runtime@7.28.6`](https://npmjs.com/package/@babel/runtime/v/7.28.6) + - [`@babel/runtime@7.29.2`](https://npmjs.com/package/@babel/runtime/v/7.29.2) - [`@emotion/css@11.13.5`](https://npmjs.com/package/@emotion/css/v/11.13.5) - - [`@redux-devtools/extension@3.3.0`](https://npmjs.com/package/@redux-devtools/extension/v/3.3.0) + - [`@redux-devtools/extension@4.0.0`](https://npmjs.com/package/@redux-devtools/extension/v/4.0.0) - [`adaptivecards@3.0.5`](https://npmjs.com/package/adaptivecards/v/3.0.5) - [`botframework-directlinejs@0.15.8`](https://npmjs.com/package/botframework-directlinejs/v/0.15.8) - - [`core-js-pure@3.48.0`](https://npmjs.com/package/core-js-pure/v/3.48.0) - - [`core-js@3.48.0`](https://npmjs.com/package/core-js/v/3.48.0) + - [`core-js-pure@3.49.0`](https://npmjs.com/package/core-js-pure/v/3.49.0) + - [`core-js@3.49.0`](https://npmjs.com/package/core-js/v/3.49.0) - [`event-as-promise@2.0.1`](https://npmjs.com/package/event-as-promise/v/2.0.1) - [`globalize@1.7.1`](https://npmjs.com/package/globalize/v/1.7.1) - - [`html-react-parser@5.2.17`](https://npmjs.com/package/html-react-parser/v/5.2.17) + - [`html-react-parser@6.0.1`](https://npmjs.com/package/html-react-parser/v/6.0.1) - [`inject-meta-tag@0.1.0`](https://npmjs.com/package/inject-meta-tag/v/0.1.0) - [`iter-fest@0.3.1`](https://npmjs.com/package/iter-fest/v/0.3.1) - - [`katex@0.16.33`](https://npmjs.com/package/katex/v/0.16.33) + - [`katex@0.16.45`](https://npmjs.com/package/katex/v/0.16.45) - [`mdast-util-from-markdown@2.0.3`](https://npmjs.com/package/mdast-util-from-markdown/v/2.0.3) - [`merge-refs@2.0.0`](https://npmjs.com/package/merge-refs/v/2.0.0) - [`micromark-extension-gfm@3.0.0`](https://npmjs.com/package/micromark-extension-gfm/v/3.0.0) - [`micromark-util-character@2.1.1`](https://npmjs.com/package/micromark-util-character/v/2.1.1) - [`micromark-util-sanitize-uri@2.0.1`](https://npmjs.com/package/micromark-util-sanitize-uri/v/2.0.1) - [`micromark@4.0.2`](https://npmjs.com/package/micromark/v/4.0.2) - - [`microsoft-cognitiveservices-speech-sdk@1.48.0`](https://npmjs.com/package/microsoft-cognitiveservices-speech-sdk/v/1.48.0) + - [`microsoft-cognitiveservices-speech-sdk@1.49.0`](https://npmjs.com/package/microsoft-cognitiveservices-speech-sdk/v/1.49.0) - [`mime@4.1.0`](https://npmjs.com/package/mime/v/4.1.0) - [`punycode@2.3.1`](https://npmjs.com/package/punycode/v/2.3.1) - [`react-chain-of-responsibility@0.4.2`](https://npmjs.com/package/react-chain-of-responsibility/v/0.4.2) @@ -218,7 +218,7 @@ Breaking changes in this release: - [`react-scroll-to-bottom@4.2.1-main.53844f5`](https://npmjs.com/package/react-scroll-to-bottom/v/4.2.1-main.53844f5) - [`react-wrap-with@0.1.0`](https://npmjs.com/package/react-wrap-with/v/0.1.0) - [`redux-saga@1.4.2`](https://npmjs.com/package/redux-saga/v/1.4.2) - - [`sanitize-html@2.17.1`](https://npmjs.com/package/sanitize-html/v/2.17.1) + - [`sanitize-html@2.17.3`](https://npmjs.com/package/sanitize-html/v/2.17.3) - [`shiki@2.5.0`](https://npmjs.com/package/shiki/v/2.5.0) - [`tagged-tag@1.0.0`](https://npmjs.com/package/tagged-tag/v/1.0.0) - [`use-propagate@0.2.2`](https://npmjs.com/package/use-propagate/v/0.2.2) @@ -226,15 +226,15 @@ Breaking changes in this release: - [`use-ref-from@0.2.1`](https://npmjs.com/package/use-ref-from/v/0.2.1) - [`use-state-with-ref@0.2.1`](https://npmjs.com/package/use-state-with-ref/v/0.2.1) - [`uuid@8.3.2`](https://npmjs.com/package/uuid/v/8.3.2) - - [`valibot@1.2.0`](https://npmjs.com/package/valibot/v/1.2.0) + - [`valibot@1.3.1`](https://npmjs.com/package/valibot/v/1.3.1) - [`web-speech-cognitive-services@8.1.4`](https://npmjs.com/package/web-speech-cognitive-services/v/8.1.4) - Development dependencies - - [`@ast-grep/napi@0.41.0`](https://npmjs.com/package/@ast-grep/napi/v/0.41.0) + - [`@ast-grep/napi@0.42.1`](https://npmjs.com/package/@ast-grep/napi/v/0.42.1) - [`@babel/cli@7.28.6`](https://npmjs.com/package/@babel/cli/v/7.28.6) - [`@babel/core@7.29.0`](https://npmjs.com/package/@babel/core/v/7.29.0) - [`@babel/plugin-transform-runtime@7.29.0`](https://npmjs.com/package/@babel/plugin-transform-runtime/v/7.29.0) - [`@babel/plugin-transform-typescript@7.28.6`](https://npmjs.com/package/@babel/plugin-transform-typescript/v/7.28.6) - - [`@babel/preset-env@7.29.0`](https://npmjs.com/package/@babel/preset-env/v/7.29.0) + - [`@babel/preset-env@7.29.2`](https://npmjs.com/package/@babel/preset-env/v/7.29.2) - [`@babel/preset-react@7.28.5`](https://npmjs.com/package/@babel/preset-react/v/7.28.5) - [`@babel/preset-typescript@7.28.5`](https://npmjs.com/package/@babel/preset-typescript/v/7.28.5) - [`@biomejs/biome@2.3.10`](https://npmjs.com/package/@biomejs/biome/v/2.3.10) @@ -244,10 +244,10 @@ Breaking changes in this release: - [`@jridgewell/sourcemap-codec@1.5.5`](https://npmjs.com/package/@jridgewell/sourcemap-codec/v/1.5.5) - [`@testduet/given-when-then@0.1.0`](https://npmjs.com/package/@testduet/given-when-then/v/0.1.0) - [`@tsconfig/strictest@2.0.8`](https://npmjs.com/package/@tsconfig/strictest/v/2.0.8) - - [`@types/dom-speech-recognition@0.0.7`](https://npmjs.com/package/@types/dom-speech-recognition/v/0.0.7) + - [`@types/dom-speech-recognition@0.0.9`](https://npmjs.com/package/@types/dom-speech-recognition/v/0.0.9) - [`@types/jest@29.5.14`](https://npmjs.com/package/@types/jest/v/29.5.14) - [`@types/mdast@4.0.4`](https://npmjs.com/package/@types/mdast/v/4.0.4) - - [`@types/node@25.3.3`](https://npmjs.com/package/@types/node/v/25.3.3) + - [`@types/node@25.6.0`](https://npmjs.com/package/@types/node/v/25.6.0) - [`@types/react-dom@18.3.7`](https://npmjs.com/package/@types/react-dom/v/18.3.7) - [`@types/react-is@16.7.5`](https://npmjs.com/package/@types/react-is/v/16.7.5) - [`@types/react@16.14.69`](https://npmjs.com/package/@types/react/v/16.14.69) @@ -255,13 +255,13 @@ Breaking changes in this release: - [`@types/semver@7.7.1`](https://npmjs.com/package/@types/semver/v/7.7.1) - [`@types/use-sync-external-store@1.5.0`](https://npmjs.com/package/@types/use-sync-external-store/v/1.5.0) - [`@types/uuid@8.3.4`](https://npmjs.com/package/@types/uuid/v/8.3.4) - - [`@typescript-eslint/eslint-plugin@8.56.1`](https://npmjs.com/package/@typescript-eslint/eslint-plugin/v/8.56.1) - - [`@typescript-eslint/parser@8.56.1`](https://npmjs.com/package/@typescript-eslint/parser/v/8.56.1) + - [`@typescript-eslint/eslint-plugin@8.59.0`](https://npmjs.com/package/@typescript-eslint/eslint-plugin/v/8.59.0) + - [`@typescript-eslint/parser@8.59.0`](https://npmjs.com/package/@typescript-eslint/parser/v/8.59.0) - [`adaptivecards@3.0.2`](https://npmjs.com/package/adaptivecards/v/3.0.2) - - [`adm-zip@0.5.16`](https://npmjs.com/package/adm-zip/v/0.5.16) - - [`axe-core@4.11.1`](https://npmjs.com/package/axe-core/v/4.11.1) + - [`adm-zip@0.5.17`](https://npmjs.com/package/adm-zip/v/0.5.17) + - [`axe-core@4.11.3`](https://npmjs.com/package/axe-core/v/4.11.3) - [`babel-jest@29.7.0`](https://npmjs.com/package/babel-jest/v/29.7.0) - - [`babel-plugin-istanbul@7.0.1`](https://npmjs.com/package/babel-plugin-istanbul/v/7.0.1) + - [`babel-plugin-istanbul@8.0.0`](https://npmjs.com/package/babel-plugin-istanbul/v/8.0.0) - [`base64-js@1.5.1`](https://npmjs.com/package/base64-js/v/1.5.1) - [`bent@7.3.12`](https://npmjs.com/package/bent/v/7.3.12) - [`botframework-directlinejs@0.15.8`](https://npmjs.com/package/botframework-directlinejs/v/0.15.8) @@ -272,9 +272,9 @@ Breaking changes in this release: - [`core-js@3.48.0`](https://npmjs.com/package/core-js/v/3.48.0) - [`cross-env@10.1.0`](https://npmjs.com/package/cross-env/v/10.1.0) - [`diff@8.0.2`](https://npmjs.com/package/diff/v/8.0.2) - - [`dotenv@17.3.1`](https://npmjs.com/package/dotenv/v/17.3.1) + - [`dotenv@17.4.2`](https://npmjs.com/package/dotenv/v/17.4.2) - [`dtsroll@1.4.1`](https://npmjs.com/package/dtsroll/v/1.4.1) - - [`esbuild@0.27.3`](https://npmjs.com/package/esbuild/v/0.27.3) + - [`esbuild@0.28.0`](https://npmjs.com/package/esbuild/v/0.28.0) - [`eslint-config-prettier@10.1.8`](https://npmjs.com/package/eslint-config-prettier/v/10.1.8) - [`eslint-plugin-import@2.32.0`](https://npmjs.com/package/eslint-plugin-import/v/2.32.0) - [`eslint-plugin-local-rules@3.0.2`](https://npmjs.com/package/eslint-plugin-local-rules/v/3.0.2) @@ -290,8 +290,8 @@ Breaking changes in this release: - [`html-react-parser@5.2.10`](https://npmjs.com/package/html-react-parser/v/5.2.10) - [`http-proxy-middleware@2.0.9`](https://npmjs.com/package/http-proxy-middleware/v/2.0.9) - [`husky@9.1.7`](https://npmjs.com/package/husky/v/9.1.7) - - [`jest-environment-node@29.7.0`](https://npmjs.com/package/jest-environment-node/v/29.7.0) - [`jest-image-snapshot@6.5.1`](https://npmjs.com/package/jest-image-snapshot/v/6.5.1) + - [`jest-image-snapshot@6.5.2`](https://npmjs.com/package/jest-image-snapshot/v/6.5.2) - [`jest@29.7.0`](https://npmjs.com/package/jest/v/29.7.0) - [`keep-a-changelog@2.7.1`](https://npmjs.com/package/keep-a-changelog/v/2.7.1) - [`lint-staged@16.2.7`](https://npmjs.com/package/lint-staged/v/16.2.7) @@ -300,7 +300,7 @@ Breaking changes in this release: - [`minimatch@10.1.1`](https://npmjs.com/package/minimatch/v/10.1.1) - [`nodemon@3.1.14`](https://npmjs.com/package/nodemon/v/3.1.14) - [`nopt@9.0.0`](https://npmjs.com/package/nopt/v/9.0.0) - - [`prettier@3.8.1`](https://npmjs.com/package/prettier/v/3.8.1) + - [`prettier@3.8.3`](https://npmjs.com/package/prettier/v/3.8.3) - [`progress@2.0.3`](https://npmjs.com/package/progress/v/2.0.3) - [`q@1.5.1`](https://npmjs.com/package/q/v/1.5.1) - [`react-dom@16.8.6`](https://npmjs.com/package/react-dom/v/16.8.6) @@ -310,20 +310,20 @@ Breaking changes in this release: - [`react@18.3.1`](https://npmjs.com/package/react/v/18.3.1) - [`read-package-up@12.0.0`](https://npmjs.com/package/read-package-up/v/12.0.0) - [`read-pkg@10.1.0`](https://npmjs.com/package/read-pkg/v/10.1.0) - - [`selenium-webdriver@4.41.0`](https://npmjs.com/package/selenium-webdriver/v/4.41.0) + - [`selenium-webdriver@4.43.0`](https://npmjs.com/package/selenium-webdriver/v/4.43.0) - [`selfsigned@5.5.0`](https://npmjs.com/package/selfsigned/v/5.5.0) - [`serve-handler@6.1.7`](https://npmjs.com/package/serve-handler/v/6.1.7) - [`serve@14.2.6`](https://npmjs.com/package/serve/v/14.2.6) - [`simple-git@3.30.0`](https://npmjs.com/package/simple-git/v/3.30.0) - [`tsd@0.33.0`](https://npmjs.com/package/tsd/v/0.33.0) - [`tsup@8.5.1`](https://npmjs.com/package/tsup/v/8.5.1) - - [`type-fest@5.4.4`](https://npmjs.com/package/type-fest/v/5.4.4) + - [`type-fest@5.6.0`](https://npmjs.com/package/type-fest/v/5.6.0) - [`typescript-plugin-css-modules@5.2.0`](https://npmjs.com/package/typescript-plugin-css-modules/v/5.2.0) - - [`typescript@5.9.3`](https://npmjs.com/package/typescript/v/5.9.3) + - [`typescript@6.0.3`](https://npmjs.com/package/typescript/v/6.0.3) - [`unplugin-lightningcss@0.4.3`](https://npmjs.com/package/unplugin-lightningcss/v/0.4.3) - - [`webpack-cli@6.0.1`](https://npmjs.com/package/webpack-cli/v/6.0.1) - - [`webpack@5.105.4`](https://npmjs.com/package/webpack/v/5.105.4) - - [`yaml@2.8.2`](https://npmjs.com/package/yaml/v/2.8.2) + - [`webpack-cli@7.0.2`](https://npmjs.com/package/webpack-cli/v/7.0.2) + - [`webpack@5.106.2`](https://npmjs.com/package/webpack/v/5.106.2) + - [`yaml@2.8.3`](https://npmjs.com/package/yaml/v/2.8.3) - Fixed [#5446](https://github.com/microsoft/BotFramework-WebChat/issues/5446). Embedded `uuid` so `microsoft-cognitiveservices-speech-sdk` do not need to use dynamic loading, as this could fail in Webpack 4 environment, in PR [#5445](https://github.com/microsoft/BotFramework-WebChat/pull/5445), by [@compulim](https://github.com/compulim) - Fixed [#5476](https://github.com/microsoft/BotFramework-WebChat/issues/5476). Modernizing components through memoization and use [`valibot`](https://npmjs.com/package/valibot) for props validation, by [@compulim](https://github.com/compulim) - Ported `useSuggestedActions` to use React hooks as backend instead of Redux store, in PR [#5489](https://github.com/microsoft/BotFramework-WebChat/pull/5489), by [@compulim](https://github.com/compulim) diff --git a/__tests__/assets/esm/createRenderHook.js b/__tests__/assets/esm/createRenderHook.js index 98944bba1a..7428b9976d 100644 --- a/__tests__/assets/esm/createRenderHook.js +++ b/__tests__/assets/esm/createRenderHook.js @@ -1,4 +1,4 @@ -import { BasicWebChat, Composer } from 'botframework-webchat/component'; +import { BasicWebChat, Composer } from 'botframework-webchat/component.js'; import { createElement } from 'react'; import { createRoot } from 'react-dom/client'; diff --git a/__tests__/html2/activity/message-status.html b/__tests__/html2/activity/message-status.html index 1ddffec38b..8bae7eec24 100644 --- a/__tests__/html2/activity/message-status.html +++ b/__tests__/html2/activity/message-status.html @@ -11,10 +11,7 @@ "@fluentui/tokens": "/__dist__/packages/test/test-assets/out/@fluentui/tokens.js", "@testduet/wait-for": "https://unpkg.com/@testduet/wait-for@main/dist/wait-for.mjs", "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/decorator": "/__dist__/packages/bundle/static/botframework-webchat/decorator.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", - "botframework-webchat/internal": "/__dist__/packages/bundle/static/botframework-webchat/internal.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "botframework-webchat-fluent-theme": "/__dist__/packages/fluent-theme/static/botframework-webchat-fluent-theme.js", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", diff --git a/__tests__/html2/attachment/adaptiveCard/custom.skip.html b/__tests__/html2/attachment/adaptiveCard/custom.skip.html index 3ccbc3f4d6..68ab6d64fa 100644 --- a/__tests__/html2/attachment/adaptiveCard/custom.skip.html +++ b/__tests__/html2/attachment/adaptiveCard/custom.skip.html @@ -13,10 +13,7 @@ "@testduet/wait-for": "https://unpkg.com/@testduet/wait-for@main/dist/wait-for.mjs", "bot-bundle-chat-adapter": "https://cdn.jsdelivr.net/gh/compulim/experiment-mockbot@v0.0.4/esm/bot-bundle-chat-adapter.js", "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/decorator": "/__dist__/packages/bundle/static/botframework-webchat/decorator.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", - "botframework-webchat/internal": "/__dist__/packages/bundle/static/botframework-webchat/internal.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "botframework-webchat-fluent-theme": "/__dist__/packages/fluent-theme/static/botframework-webchat-fluent-theme.js", "react": "/__dist__/packages/test/test-assets/out/react.js", "react-dom": "/__dist__/packages/test/test-assets/out/react-dom.js", @@ -116,7 +113,7 @@ conversationStartProperties: { locale: navigator.language } }); - + run(async () => { await host.windowSize(800, 800, document.body); @@ -183,4 +180,4 @@ }); - \ No newline at end of file + diff --git a/__tests__/html2/boot/deprecation/components.html b/__tests__/html2/boot/deprecation/components.html index f81c39b750..961ac8cd84 100644 --- a/__tests__/html2/boot/deprecation/components.html +++ b/__tests__/html2/boot/deprecation/components.html @@ -36,7 +36,7 @@ // THEN: Should show deprecation note. expect(console.warn).toHaveBeenCalledTimes(1); expect(console.warn).toHaveBeenLastCalledWith( - "botframework-webchat: `import { Components } from 'botframework-webchat'` has been deprecated, use `import { %s } from 'botframework-webchat/component'` instead.", + "botframework-webchat: `import { Components } from 'botframework-webchat'` has been deprecated, use `import { %s } from 'botframework-webchat/component.js'` instead.", 'BasicWebChat' ); diff --git a/__tests__/html2/boot/deprecation/components.new.html b/__tests__/html2/boot/deprecation/components.new.html index 4d2183bbe6..8030c6a8f9 100644 --- a/__tests__/html2/boot/deprecation/components.new.html +++ b/__tests__/html2/boot/deprecation/components.new.html @@ -9,7 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "/__dist__/packages/bundle/static/react.js", "react-dom": "/__dist__/packages/bundle/static/react-dom.js" @@ -26,7 +26,7 @@ import '/test-page-object.mjs'; import { createDirectLine, createStoreWithOptions, renderWebChat } from 'botframework-webchat'; - import * as Components from 'botframework-webchat/component'; + import * as Components from 'botframework-webchat/component.js'; import { version } from 'react'; run(async function () { diff --git a/__tests__/html2/boot/deprecation/hooks.html b/__tests__/html2/boot/deprecation/hooks.html index f2e0c3ef8b..860dd53131 100644 --- a/__tests__/html2/boot/deprecation/hooks.html +++ b/__tests__/html2/boot/deprecation/hooks.html @@ -36,7 +36,7 @@ // THEN: Should show deprecation note. expect(console.warn).toHaveBeenCalledTimes(1); expect(console.warn).toHaveBeenLastCalledWith( - "botframework-webchat: `import { hooks } from 'botframework-webchat'` has been deprecated, use `import { %s } from 'botframework-webchat/hook'` instead.", + "botframework-webchat: `import { hooks } from 'botframework-webchat'` has been deprecated, use `import { %s } from 'botframework-webchat/hook.js'` instead.", 'useStyleOptions' ); diff --git a/__tests__/html2/boot/deprecation/hooks.new.html b/__tests__/html2/boot/deprecation/hooks.new.html index feb94450f0..f8130e1e2f 100644 --- a/__tests__/html2/boot/deprecation/hooks.new.html +++ b/__tests__/html2/boot/deprecation/hooks.new.html @@ -9,7 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "/__dist__/packages/bundle/static/react.js", "react-dom": "/__dist__/packages/bundle/static/react-dom.js" @@ -26,7 +26,7 @@ import '/test-page-object.mjs'; import { createDirectLine, createStoreWithOptions, renderWebChat } from 'botframework-webchat'; - import * as hooks from 'botframework-webchat/hook'; + import * as hooks from 'botframework-webchat/hook.js'; import { version } from 'react'; run(async function () { diff --git a/__tests__/html2/citation/url.html b/__tests__/html2/citation/url.html index a0174a9403..85de43733d 100644 --- a/__tests__/html2/citation/url.html +++ b/__tests__/html2/citation/url.html @@ -11,10 +11,7 @@ "@fluentui/tokens": "/__dist__/packages/test/test-assets/out/@fluentui/tokens.js", "@testduet/wait-for": "https://unpkg.com/@testduet/wait-for@main/dist/wait-for.mjs", "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/decorator": "/__dist__/packages/bundle/static/botframework-webchat/decorator.js", - "botframework-webchat/internal": "/__dist__/packages/bundle/static/botframework-webchat/internal.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "botframework-webchat-fluent-theme": "/__dist__/packages/fluent-theme/static/botframework-webchat-fluent-theme.js", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", diff --git a/__tests__/html2/fluentTheme/maxMessageLength.html b/__tests__/html2/fluentTheme/maxMessageLength.html index a04f661eeb..662e1ccd68 100644 --- a/__tests__/html2/fluentTheme/maxMessageLength.html +++ b/__tests__/html2/fluentTheme/maxMessageLength.html @@ -13,10 +13,7 @@ "@fluentui/react-components": "https://esm.sh/@fluentui/react-components?deps=react@18,react-dom@18&exports=FluentProvider,createDarkTheme,webLightTheme", "@testduet/wait-for": "https://esm.sh/@testduet/wait-for", "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/decorator": "/__dist__/packages/bundle/static/botframework-webchat/decorator.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", - "botframework-webchat/internal": "/__dist__/packages/bundle/static/botframework-webchat/internal.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "botframework-webchat-fluent-theme": "/__dist__/packages/fluent-theme/static/botframework-webchat-fluent-theme.js", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", diff --git a/__tests__/html2/hooks/useActivities.getter.html b/__tests__/html2/hooks/useActivities.getter.html index c2d7c52fa2..de2d7c76eb 100644 --- a/__tests__/html2/hooks/useActivities.getter.html +++ b/__tests__/html2/hooks/useActivities.getter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useActivities } from 'botframework-webchat/hook'; + import { useActivities } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useActivities.setter.html b/__tests__/html2/hooks/useActivities.setter.html index 085dcff462..8f3c4dddc0 100644 --- a/__tests__/html2/hooks/useActivities.setter.html +++ b/__tests__/html2/hooks/useActivities.setter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useActivities } from 'botframework-webchat/hook'; + import { useActivities } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useAdaptiveCardsHostConfig.getter.default.html b/__tests__/html2/hooks/useAdaptiveCardsHostConfig.getter.default.html index c76b0a04d7..c6744ef5bf 100644 --- a/__tests__/html2/hooks/useAdaptiveCardsHostConfig.getter.default.html +++ b/__tests__/html2/hooks/useAdaptiveCardsHostConfig.getter.default.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useAdaptiveCardsHostConfig } from 'botframework-webchat/hook'; + import { useAdaptiveCardsHostConfig } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useAdaptiveCardsHostConfig.getter.html b/__tests__/html2/hooks/useAdaptiveCardsHostConfig.getter.html index d1f926db1a..7079a8b828 100644 --- a/__tests__/html2/hooks/useAdaptiveCardsHostConfig.getter.html +++ b/__tests__/html2/hooks/useAdaptiveCardsHostConfig.getter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useAdaptiveCardsHostConfig } from 'botframework-webchat/hook'; + import { useAdaptiveCardsHostConfig } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useAdaptiveCardsHostConfig.setter.html b/__tests__/html2/hooks/useAdaptiveCardsHostConfig.setter.html index 4180ad61c7..178b015ec0 100644 --- a/__tests__/html2/hooks/useAdaptiveCardsHostConfig.setter.html +++ b/__tests__/html2/hooks/useAdaptiveCardsHostConfig.setter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useAdaptiveCardsHostConfig } from 'botframework-webchat/hook'; + import { useAdaptiveCardsHostConfig } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useAdaptiveCardsPackage.getter.default.html b/__tests__/html2/hooks/useAdaptiveCardsPackage.getter.default.html index 9ae675527e..2bdf30d677 100644 --- a/__tests__/html2/hooks/useAdaptiveCardsPackage.getter.default.html +++ b/__tests__/html2/hooks/useAdaptiveCardsPackage.getter.default.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useAdaptiveCardsPackage } from 'botframework-webchat/hook'; + import { useAdaptiveCardsPackage } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useAdaptiveCardsPackage.getter.html b/__tests__/html2/hooks/useAdaptiveCardsPackage.getter.html index 9aab89daa2..57835d0d28 100644 --- a/__tests__/html2/hooks/useAdaptiveCardsPackage.getter.html +++ b/__tests__/html2/hooks/useAdaptiveCardsPackage.getter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useAdaptiveCardsPackage } from 'botframework-webchat/hook'; + import { useAdaptiveCardsPackage } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useAdaptiveCardsPackage.setter.html b/__tests__/html2/hooks/useAdaptiveCardsPackage.setter.html index 0ceb2e8650..dc0cc595a8 100644 --- a/__tests__/html2/hooks/useAdaptiveCardsPackage.setter.html +++ b/__tests__/html2/hooks/useAdaptiveCardsPackage.setter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useAdaptiveCardsPackage } from 'botframework-webchat/hook'; + import { useAdaptiveCardsPackage } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useAvatarForBot.getter.html b/__tests__/html2/hooks/useAvatarForBot.getter.html index acfefe7836..f904590dbb 100644 --- a/__tests__/html2/hooks/useAvatarForBot.getter.html +++ b/__tests__/html2/hooks/useAvatarForBot.getter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useAvatarForBot } from 'botframework-webchat/hook'; + import { useAvatarForBot } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useAvatarForBot.setter.html b/__tests__/html2/hooks/useAvatarForBot.setter.html index fb1f316f19..774cd4031a 100644 --- a/__tests__/html2/hooks/useAvatarForBot.setter.html +++ b/__tests__/html2/hooks/useAvatarForBot.setter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useAvatarForBot } from 'botframework-webchat/hook'; + import { useAvatarForBot } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useAvatarForUser.getter.html b/__tests__/html2/hooks/useAvatarForUser.getter.html index fe2a4d0f53..4712fbbe86 100644 --- a/__tests__/html2/hooks/useAvatarForUser.getter.html +++ b/__tests__/html2/hooks/useAvatarForUser.getter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useAvatarForUser } from 'botframework-webchat/hook'; + import { useAvatarForUser } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useAvatarForUser.setter.html b/__tests__/html2/hooks/useAvatarForUser.setter.html index 3fe650a66e..06a0196ba9 100644 --- a/__tests__/html2/hooks/useAvatarForUser.setter.html +++ b/__tests__/html2/hooks/useAvatarForUser.setter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useAvatarForUser } from 'botframework-webchat/hook'; + import { useAvatarForUser } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useByteFormatter.html b/__tests__/html2/hooks/useByteFormatter.html index a3feacc9d0..b8006c5c24 100644 --- a/__tests__/html2/hooks/useByteFormatter.html +++ b/__tests__/html2/hooks/useByteFormatter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useByteFormatter } from 'botframework-webchat/hook'; + import { useByteFormatter } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useCapabilities.html b/__tests__/html2/hooks/useCapabilities.html index 9d5e5e6f61..3371572b28 100644 --- a/__tests__/html2/hooks/useCapabilities.html +++ b/__tests__/html2/hooks/useCapabilities.html @@ -10,8 +10,7 @@ "imports": { "@testduet/wait-for": "https://unpkg.com/@testduet/wait-for@main/dist/wait-for.mjs", "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -24,7 +23,7 @@ import { waitFor } from '@testduet/wait-for'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useCapabilities } from 'botframework-webchat/hook'; + import { useCapabilities } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useConnectivityStatus.getter.html b/__tests__/html2/hooks/useConnectivityStatus.getter.html index d2fd7487e3..be3172c153 100644 --- a/__tests__/html2/hooks/useConnectivityStatus.getter.html +++ b/__tests__/html2/hooks/useConnectivityStatus.getter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useConnectivityStatus } from 'botframework-webchat/hook'; + import { useConnectivityStatus } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useConnectivityStatus.setter.html b/__tests__/html2/hooks/useConnectivityStatus.setter.html index 713e2e3c67..d55e0c5620 100644 --- a/__tests__/html2/hooks/useConnectivityStatus.setter.html +++ b/__tests__/html2/hooks/useConnectivityStatus.setter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useConnectivityStatus } from 'botframework-webchat/hook'; + import { useConnectivityStatus } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useDateFormatter.en.html b/__tests__/html2/hooks/useDateFormatter.en.html index a8fd37a9d0..8b6daeecfd 100644 --- a/__tests__/html2/hooks/useDateFormatter.en.html +++ b/__tests__/html2/hooks/useDateFormatter.en.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useDateFormatter } from 'botframework-webchat/hook'; + import { useDateFormatter } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useDateFormatter.yue.html b/__tests__/html2/hooks/useDateFormatter.yue.html index 1af8a6b323..b250466756 100644 --- a/__tests__/html2/hooks/useDateFormatter.yue.html +++ b/__tests__/html2/hooks/useDateFormatter.yue.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useDateFormatter } from 'botframework-webchat/hook'; + import { useDateFormatter } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useDictateInterims.getter.html b/__tests__/html2/hooks/useDictateInterims.getter.html index 958d21dc4f..7f358cdb1a 100644 --- a/__tests__/html2/hooks/useDictateInterims.getter.html +++ b/__tests__/html2/hooks/useDictateInterims.getter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dictate-button": "https://esm.sh/react-dictate-button", @@ -25,7 +24,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useDictateInterims } from 'botframework-webchat/hook'; + import { useDictateInterims } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; import { actRecognizeOnce, createWebSpeechPonyfill } from '/assets/esm/speech/speechPageObjects.js'; diff --git a/__tests__/html2/hooks/useDictateInterims.setter.html b/__tests__/html2/hooks/useDictateInterims.setter.html index 90e2fcaffd..fc4884c2ce 100644 --- a/__tests__/html2/hooks/useDictateInterims.setter.html +++ b/__tests__/html2/hooks/useDictateInterims.setter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dictate-button": "https://esm.sh/react-dictate-button", @@ -25,7 +24,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useDictateInterims } from 'botframework-webchat/hook'; + import { useDictateInterims } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; import { actRecognizeOnce, createWebSpeechPonyfill } from '/assets/esm/speech/speechPageObjects.js'; diff --git a/__tests__/html2/hooks/useDisabled.getter.default.html b/__tests__/html2/hooks/useDisabled.getter.default.html index a23fd08776..68d9eb8bdc 100644 --- a/__tests__/html2/hooks/useDisabled.getter.default.html +++ b/__tests__/html2/hooks/useDisabled.getter.default.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useDisabled } from 'botframework-webchat/hook'; + import { useDisabled } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useDisabled.getter.html b/__tests__/html2/hooks/useDisabled.getter.html index 34e4e5ee8a..8bd836d0d2 100644 --- a/__tests__/html2/hooks/useDisabled.getter.html +++ b/__tests__/html2/hooks/useDisabled.getter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useDisabled } from 'botframework-webchat/hook'; + import { useDisabled } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useDisabled.setter.html b/__tests__/html2/hooks/useDisabled.setter.html index 3197e1c975..884596865e 100644 --- a/__tests__/html2/hooks/useDisabled.setter.html +++ b/__tests__/html2/hooks/useDisabled.setter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useDisabled } from 'botframework-webchat/hook'; + import { useDisabled } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useDismissNotification.html b/__tests__/html2/hooks/useDismissNotification.html index a3954019d7..2a2a06d35e 100644 --- a/__tests__/html2/hooks/useDismissNotification.html +++ b/__tests__/html2/hooks/useDismissNotification.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useDismissNotification } from 'botframework-webchat/hook'; + import { useDismissNotification } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useFocus.sendBox.pure.html b/__tests__/html2/hooks/useFocus.sendBox.pure.html index 5fa87851c2..91c80a225e 100644 --- a/__tests__/html2/hooks/useFocus.sendBox.pure.html +++ b/__tests__/html2/hooks/useFocus.sendBox.pure.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useFocus } from 'botframework-webchat/hook'; + import { useFocus } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useGrammars.getter.default.html b/__tests__/html2/hooks/useGrammars.getter.default.html index 57a86cf911..003faf1cdb 100644 --- a/__tests__/html2/hooks/useGrammars.getter.default.html +++ b/__tests__/html2/hooks/useGrammars.getter.default.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useGrammars } from 'botframework-webchat/hook'; + import { useGrammars } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useGrammars.getter.html b/__tests__/html2/hooks/useGrammars.getter.html index 12484f2f53..82f383ca75 100644 --- a/__tests__/html2/hooks/useGrammars.getter.html +++ b/__tests__/html2/hooks/useGrammars.getter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useGrammars } from 'botframework-webchat/hook'; + import { useGrammars } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useGrammars.setter.html b/__tests__/html2/hooks/useGrammars.setter.html index ede84880ee..1a009da2b6 100644 --- a/__tests__/html2/hooks/useGrammars.setter.html +++ b/__tests__/html2/hooks/useGrammars.setter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useGrammars } from 'botframework-webchat/hook'; + import { useGrammars } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useGroupTimestamp.getter.default.html b/__tests__/html2/hooks/useGroupTimestamp.getter.default.html index 59f48eb640..cc24414248 100644 --- a/__tests__/html2/hooks/useGroupTimestamp.getter.default.html +++ b/__tests__/html2/hooks/useGroupTimestamp.getter.default.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useGroupTimestamp } from 'botframework-webchat/hook'; + import { useGroupTimestamp } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useGroupTimestamp.getter.false.html b/__tests__/html2/hooks/useGroupTimestamp.getter.false.html index 9353b6d366..f6bda6754f 100644 --- a/__tests__/html2/hooks/useGroupTimestamp.getter.false.html +++ b/__tests__/html2/hooks/useGroupTimestamp.getter.false.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useGroupTimestamp } from 'botframework-webchat/hook'; + import { useGroupTimestamp } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useGroupTimestamp.getter.html b/__tests__/html2/hooks/useGroupTimestamp.getter.html index 218cc26836..c7111349ae 100644 --- a/__tests__/html2/hooks/useGroupTimestamp.getter.html +++ b/__tests__/html2/hooks/useGroupTimestamp.getter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useGroupTimestamp } from 'botframework-webchat/hook'; + import { useGroupTimestamp } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useGroupTimestamp.setter.html b/__tests__/html2/hooks/useGroupTimestamp.setter.html index 44ae287e15..5f7ce2db04 100644 --- a/__tests__/html2/hooks/useGroupTimestamp.setter.html +++ b/__tests__/html2/hooks/useGroupTimestamp.setter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useGroupTimestamp } from 'botframework-webchat/hook'; + import { useGroupTimestamp } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useInjectStylesElements/withNonce.html b/__tests__/html2/hooks/useInjectStylesElements/withNonce.html index c65a5f900e..8ecdd5bedd 100644 --- a/__tests__/html2/hooks/useInjectStylesElements/withNonce.html +++ b/__tests__/html2/hooks/useInjectStylesElements/withNonce.html @@ -6,10 +6,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/decorator": "/__dist__/packages/bundle/static/botframework-webchat/decorator.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", - "botframework-webchat/internal": "/__dist__/packages/bundle/static/botframework-webchat/internal.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "/__dist__/packages/bundle/static/react.js", "react-dom": "/__dist__/packages/bundle/static/react-dom.js", @@ -25,7 +22,7 @@ import '/test-page-object.mjs'; import { createDirectLine, createStoreWithOptions, hooks, ReactWebChat } from 'botframework-webchat'; - import { InjectStyleElements } from 'botframework-webchat/internal'; + import { InjectStyleElements } from 'botframework-webchat/internal.js'; import { spyOn } from 'jest-mock'; import { createElement } from 'react'; import { flushSync } from 'react-dom'; diff --git a/__tests__/html2/hooks/useLanguage.getter.default.html b/__tests__/html2/hooks/useLanguage.getter.default.html index 32cf680ef2..ac750e69d5 100644 --- a/__tests__/html2/hooks/useLanguage.getter.default.html +++ b/__tests__/html2/hooks/useLanguage.getter.default.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useLanguage } from 'botframework-webchat/hook'; + import { useLanguage } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useLanguage.getter.speech.html b/__tests__/html2/hooks/useLanguage.getter.speech.html index 95c719de9c..aab0511385 100644 --- a/__tests__/html2/hooks/useLanguage.getter.speech.html +++ b/__tests__/html2/hooks/useLanguage.getter.speech.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useLanguage } from 'botframework-webchat/hook'; + import { useLanguage } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useLanguage.getter.xx-YY.html b/__tests__/html2/hooks/useLanguage.getter.xx-YY.html index 9cc3214b2f..becf5d6dd1 100644 --- a/__tests__/html2/hooks/useLanguage.getter.xx-YY.html +++ b/__tests__/html2/hooks/useLanguage.getter.xx-YY.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useLanguage } from 'botframework-webchat/hook'; + import { useLanguage } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useLanguage.getter.yue.html b/__tests__/html2/hooks/useLanguage.getter.yue.html index 0e1713e9fc..6d7ee844f8 100644 --- a/__tests__/html2/hooks/useLanguage.getter.yue.html +++ b/__tests__/html2/hooks/useLanguage.getter.yue.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useLanguage } from 'botframework-webchat/hook'; + import { useLanguage } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useLanguage.getter.zh-YUE.html b/__tests__/html2/hooks/useLanguage.getter.zh-YUE.html index 3fd9d1baa7..ff5aef5830 100644 --- a/__tests__/html2/hooks/useLanguage.getter.zh-YUE.html +++ b/__tests__/html2/hooks/useLanguage.getter.zh-YUE.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useLanguage } from 'botframework-webchat/hook'; + import { useLanguage } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useLanguage.setter.html b/__tests__/html2/hooks/useLanguage.setter.html index 763d8fab13..689eedca7b 100644 --- a/__tests__/html2/hooks/useLanguage.setter.html +++ b/__tests__/html2/hooks/useLanguage.setter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useLanguage } from 'botframework-webchat/hook'; + import { useLanguage } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useLocalizer.default.html b/__tests__/html2/hooks/useLocalizer.default.html index ad210c9a1a..d48e110411 100644 --- a/__tests__/html2/hooks/useLocalizer.default.html +++ b/__tests__/html2/hooks/useLocalizer.default.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useLocalizer } from 'botframework-webchat/hook'; + import { useLocalizer } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useLocalizer.nonExistent.html b/__tests__/html2/hooks/useLocalizer.nonExistent.html index 6f39455cb7..a225e394cd 100644 --- a/__tests__/html2/hooks/useLocalizer.nonExistent.html +++ b/__tests__/html2/hooks/useLocalizer.nonExistent.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useLocalizer } from 'botframework-webchat/hook'; + import { useLocalizer } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useLocalizer.overrideStrings.html b/__tests__/html2/hooks/useLocalizer.overrideStrings.html index ea672a7956..0d8e76d176 100644 --- a/__tests__/html2/hooks/useLocalizer.overrideStrings.html +++ b/__tests__/html2/hooks/useLocalizer.overrideStrings.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useLocalizer } from 'botframework-webchat/hook'; + import { useLocalizer } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useLocalizer.plural.firstArgumentIsString.html b/__tests__/html2/hooks/useLocalizer.plural.firstArgumentIsString.html index d8cf281e30..c69cacb9fb 100644 --- a/__tests__/html2/hooks/useLocalizer.plural.firstArgumentIsString.html +++ b/__tests__/html2/hooks/useLocalizer.plural.firstArgumentIsString.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useLocalizer } from 'botframework-webchat/hook'; + import { useLocalizer } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useLocalizer.plural.one.html b/__tests__/html2/hooks/useLocalizer.plural.one.html index ee36813041..895d862c4e 100644 --- a/__tests__/html2/hooks/useLocalizer.plural.one.html +++ b/__tests__/html2/hooks/useLocalizer.plural.one.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useLocalizer } from 'botframework-webchat/hook'; + import { useLocalizer } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useLocalizer.plural.otherFallback.html b/__tests__/html2/hooks/useLocalizer.plural.otherFallback.html index 5e8326019d..d25b7f353f 100644 --- a/__tests__/html2/hooks/useLocalizer.plural.otherFallback.html +++ b/__tests__/html2/hooks/useLocalizer.plural.otherFallback.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useLocalizer } from 'botframework-webchat/hook'; + import { useLocalizer } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useLocalizer.plural.throw.idOfString.html b/__tests__/html2/hooks/useLocalizer.plural.throw.idOfString.html index a5a3e992f2..176365ffa3 100644 --- a/__tests__/html2/hooks/useLocalizer.plural.throw.idOfString.html +++ b/__tests__/html2/hooks/useLocalizer.plural.throw.idOfString.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useLocalizer } from 'botframework-webchat/hook'; + import { useLocalizer } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useLocalizer.plural.throw.idOneOfNumber.html b/__tests__/html2/hooks/useLocalizer.plural.throw.idOneOfNumber.html index 8933144232..8a84dd07d5 100644 --- a/__tests__/html2/hooks/useLocalizer.plural.throw.idOneOfNumber.html +++ b/__tests__/html2/hooks/useLocalizer.plural.throw.idOneOfNumber.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useLocalizer } from 'botframework-webchat/hook'; + import { useLocalizer } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useLocalizer.plural.throw.idOtherNotUndefined.html b/__tests__/html2/hooks/useLocalizer.plural.throw.idOtherNotUndefined.html index 43aeecc836..d16fa3163f 100644 --- a/__tests__/html2/hooks/useLocalizer.plural.throw.idOtherNotUndefined.html +++ b/__tests__/html2/hooks/useLocalizer.plural.throw.idOtherNotUndefined.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useLocalizer } from 'botframework-webchat/hook'; + import { useLocalizer } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useLocalizer.plural.throw.idUnknown.html b/__tests__/html2/hooks/useLocalizer.plural.throw.idUnknown.html index 46c1ee7677..c20764ba19 100644 --- a/__tests__/html2/hooks/useLocalizer.plural.throw.idUnknown.html +++ b/__tests__/html2/hooks/useLocalizer.plural.throw.idUnknown.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useLocalizer } from 'botframework-webchat/hook'; + import { useLocalizer } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useLocalizer.plural.two.html b/__tests__/html2/hooks/useLocalizer.plural.two.html index ae5b5aef92..26d6e59020 100644 --- a/__tests__/html2/hooks/useLocalizer.plural.two.html +++ b/__tests__/html2/hooks/useLocalizer.plural.two.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useLocalizer } from 'botframework-webchat/hook'; + import { useLocalizer } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useLocalizer.throwOnInvalidId.html b/__tests__/html2/hooks/useLocalizer.throwOnInvalidId.html index d7690e818a..ea4fedfc9b 100644 --- a/__tests__/html2/hooks/useLocalizer.throwOnInvalidId.html +++ b/__tests__/html2/hooks/useLocalizer.throwOnInvalidId.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useLocalizer } from 'botframework-webchat/hook'; + import { useLocalizer } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useLocalizer.yue.html b/__tests__/html2/hooks/useLocalizer.yue.html index c7b024f121..81afeeb83c 100644 --- a/__tests__/html2/hooks/useLocalizer.yue.html +++ b/__tests__/html2/hooks/useLocalizer.yue.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useLocalizer } from 'botframework-webchat/hook'; + import { useLocalizer } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useLocalizer.yue.plural.html b/__tests__/html2/hooks/useLocalizer.yue.plural.html index bfa3b8cf9b..8908d2da73 100644 --- a/__tests__/html2/hooks/useLocalizer.yue.plural.html +++ b/__tests__/html2/hooks/useLocalizer.yue.plural.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useLocalizer } from 'botframework-webchat/hook'; + import { useLocalizer } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useMarkActivityAsSpoken.html b/__tests__/html2/hooks/useMarkActivityAsSpoken.html index 741ab7b7ea..80532f74b5 100644 --- a/__tests__/html2/hooks/useMarkActivityAsSpoken.html +++ b/__tests__/html2/hooks/useMarkActivityAsSpoken.html @@ -10,8 +10,7 @@ "imports": { "@testduet/wait-for": "https://esm.sh/@testduet/wait-for", "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dictate-button": "https://esm.sh/react-dictate-button", @@ -27,7 +26,7 @@ import { waitFor } from '@testduet/wait-for'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useActivities, useMarkActivityAsSpoken } from 'botframework-webchat/hook'; + import { useActivities, useMarkActivityAsSpoken } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; import { actSpeak, diff --git a/__tests__/html2/hooks/useMicrophoneButtonClick.html b/__tests__/html2/hooks/useMicrophoneButtonClick.html index 21209967a1..32172d5d3a 100644 --- a/__tests__/html2/hooks/useMicrophoneButtonClick.html +++ b/__tests__/html2/hooks/useMicrophoneButtonClick.html @@ -10,8 +10,7 @@ "imports": { "@testduet/wait-for": "https://esm.sh/@testduet/wait-for", "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dictate-button": "https://esm.sh/react-dictate-button", @@ -27,7 +26,7 @@ import { waitFor } from '@testduet/wait-for'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useMicrophoneButtonClick, useMicrophoneButtonDisabled } from 'botframework-webchat/hook'; + import { useMicrophoneButtonClick, useMicrophoneButtonDisabled } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; import { actRecognizeOnce, createWebSpeechPonyfill } from '/assets/esm/speech/speechPageObjects.js'; diff --git a/__tests__/html2/hooks/usePerformCardAction.html b/__tests__/html2/hooks/usePerformCardAction.html index bf31373b15..f8c2023399 100644 --- a/__tests__/html2/hooks/usePerformCardAction.html +++ b/__tests__/html2/hooks/usePerformCardAction.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { usePerformCardAction } from 'botframework-webchat/hook'; + import { usePerformCardAction } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/usePostActivity.html b/__tests__/html2/hooks/usePostActivity.html index d29486d2d6..1f7979ab42 100644 --- a/__tests__/html2/hooks/usePostActivity.html +++ b/__tests__/html2/hooks/usePostActivity.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { usePostActivity } from 'botframework-webchat/hook'; + import { usePostActivity } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useRelativeTimeFormatter.html b/__tests__/html2/hooks/useRelativeTimeFormatter.html index 473a83b75d..3e50c79849 100644 --- a/__tests__/html2/hooks/useRelativeTimeFormatter.html +++ b/__tests__/html2/hooks/useRelativeTimeFormatter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useRelativeTimeFormatter } from 'botframework-webchat/hook'; + import { useRelativeTimeFormatter } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useRenderMarkdownAsHTML.custom.html b/__tests__/html2/hooks/useRenderMarkdownAsHTML.custom.html index dda1e3c3df..4f89020420 100644 --- a/__tests__/html2/hooks/useRenderMarkdownAsHTML.custom.html +++ b/__tests__/html2/hooks/useRenderMarkdownAsHTML.custom.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useRenderMarkdownAsHTML } from 'botframework-webchat/hook'; + import { useRenderMarkdownAsHTML } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useRenderMarkdownAsHTML.default.html b/__tests__/html2/hooks/useRenderMarkdownAsHTML.default.html index a478d35498..7f791f4810 100644 --- a/__tests__/html2/hooks/useRenderMarkdownAsHTML.default.html +++ b/__tests__/html2/hooks/useRenderMarkdownAsHTML.default.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useRenderMarkdownAsHTML } from 'botframework-webchat/hook'; + import { useRenderMarkdownAsHTML } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useRenderMarkdownAsHTML.externalLink.html b/__tests__/html2/hooks/useRenderMarkdownAsHTML.externalLink.html index 66227b007e..888dc37d42 100644 --- a/__tests__/html2/hooks/useRenderMarkdownAsHTML.externalLink.html +++ b/__tests__/html2/hooks/useRenderMarkdownAsHTML.externalLink.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useRenderMarkdownAsHTML } from 'botframework-webchat/hook'; + import { useRenderMarkdownAsHTML } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useRenderMarkdownAsHTML.externalLink.yue.html b/__tests__/html2/hooks/useRenderMarkdownAsHTML.externalLink.yue.html index 75599e408a..d480cf7e23 100644 --- a/__tests__/html2/hooks/useRenderMarkdownAsHTML.externalLink.yue.html +++ b/__tests__/html2/hooks/useRenderMarkdownAsHTML.externalLink.yue.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useRenderMarkdownAsHTML } from 'botframework-webchat/hook'; + import { useRenderMarkdownAsHTML } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useRenderMarkdownAsHTML.null.html b/__tests__/html2/hooks/useRenderMarkdownAsHTML.null.html index 6568b166c8..1a28a797ac 100644 --- a/__tests__/html2/hooks/useRenderMarkdownAsHTML.null.html +++ b/__tests__/html2/hooks/useRenderMarkdownAsHTML.null.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useRenderMarkdownAsHTML } from 'botframework-webchat/hook'; + import { useRenderMarkdownAsHTML } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useSendBoxSpeechInterimsVisible.getter.recognition.html b/__tests__/html2/hooks/useSendBoxSpeechInterimsVisible.getter.recognition.html index 481b573643..3bd9e7a42c 100644 --- a/__tests__/html2/hooks/useSendBoxSpeechInterimsVisible.getter.recognition.html +++ b/__tests__/html2/hooks/useSendBoxSpeechInterimsVisible.getter.recognition.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dictate-button": "https://esm.sh/react-dictate-button", @@ -25,7 +24,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useSendBoxSpeechInterimsVisible } from 'botframework-webchat/hook'; + import { useSendBoxSpeechInterimsVisible } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; import { actRecognizeOnce, createWebSpeechPonyfill } from '/assets/esm/speech/speechPageObjects.js'; diff --git a/__tests__/html2/hooks/useSendBoxSpeechInterimsVisible.getter.synthesis.html b/__tests__/html2/hooks/useSendBoxSpeechInterimsVisible.getter.synthesis.html index 5564408277..0ffa2efdde 100644 --- a/__tests__/html2/hooks/useSendBoxSpeechInterimsVisible.getter.synthesis.html +++ b/__tests__/html2/hooks/useSendBoxSpeechInterimsVisible.getter.synthesis.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dictate-button": "https://esm.sh/react-dictate-button", @@ -25,7 +24,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useSendBoxSpeechInterimsVisible } from 'botframework-webchat/hook'; + import { useSendBoxSpeechInterimsVisible } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; import { actSpeak, diff --git a/__tests__/html2/hooks/useSendBoxSpeechInterimsVisible.setter.html b/__tests__/html2/hooks/useSendBoxSpeechInterimsVisible.setter.html index b59b7d8baa..cfc335b474 100644 --- a/__tests__/html2/hooks/useSendBoxSpeechInterimsVisible.setter.html +++ b/__tests__/html2/hooks/useSendBoxSpeechInterimsVisible.setter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dictate-button": "https://esm.sh/react-dictate-button", @@ -25,7 +24,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useSendBoxSpeechInterimsVisible } from 'botframework-webchat/hook'; + import { useSendBoxSpeechInterimsVisible } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; import { actRecognizeOnce, createWebSpeechPonyfill } from '/assets/esm/speech/speechPageObjects.js'; diff --git a/__tests__/html2/hooks/useSendBoxValue.getter.html b/__tests__/html2/hooks/useSendBoxValue.getter.html index 044dac0f73..64c97d39d1 100644 --- a/__tests__/html2/hooks/useSendBoxValue.getter.html +++ b/__tests__/html2/hooks/useSendBoxValue.getter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useSendBoxValue } from 'botframework-webchat/hook'; + import { useSendBoxValue } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useSendBoxValue.setter.html b/__tests__/html2/hooks/useSendBoxValue.setter.html index 3217880c71..371578b4ba 100644 --- a/__tests__/html2/hooks/useSendBoxValue.setter.html +++ b/__tests__/html2/hooks/useSendBoxValue.setter.html @@ -10,8 +10,7 @@ "imports": { "@testduet/wait-for": "https://esm.sh/@testduet/wait-for", "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -24,7 +23,7 @@ import { waitFor } from '@testduet/wait-for'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useSendBoxValue } from 'botframework-webchat/hook'; + import { useSendBoxValue } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useSendFiles.html b/__tests__/html2/hooks/useSendFiles.html index 41aa80bb1f..74b21e72ff 100644 --- a/__tests__/html2/hooks/useSendFiles.html +++ b/__tests__/html2/hooks/useSendFiles.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createDirectLine, createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useSendFiles } from 'botframework-webchat/hook'; + import { useSendFiles } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { diff --git a/__tests__/html2/hooks/useSendMessage.html b/__tests__/html2/hooks/useSendMessage.html index 6ce3fba85a..3ae3231701 100644 --- a/__tests__/html2/hooks/useSendMessage.html +++ b/__tests__/html2/hooks/useSendMessage.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createDirectLine, createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useSendMessage } from 'botframework-webchat/hook'; + import { useSendMessage } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { diff --git a/__tests__/html2/hooks/useSendMessageBack.html b/__tests__/html2/hooks/useSendMessageBack.html index 587805596b..f7b01931b2 100644 --- a/__tests__/html2/hooks/useSendMessageBack.html +++ b/__tests__/html2/hooks/useSendMessageBack.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createDirectLine, createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useSendMessageBack } from 'botframework-webchat/hook'; + import { useSendMessageBack } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { diff --git a/__tests__/html2/hooks/useSendPostBack.html b/__tests__/html2/hooks/useSendPostBack.html index c4746f0168..5a09b4e2c9 100644 --- a/__tests__/html2/hooks/useSendPostBack.html +++ b/__tests__/html2/hooks/useSendPostBack.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createDirectLine, createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useSendPostBack } from 'botframework-webchat/hook'; + import { useSendPostBack } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { diff --git a/__tests__/html2/hooks/useSetNotification.html b/__tests__/html2/hooks/useSetNotification.html index 373db1e772..9d283f8ef1 100644 --- a/__tests__/html2/hooks/useSetNotification.html +++ b/__tests__/html2/hooks/useSetNotification.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useSetNotification } from 'botframework-webchat/hook'; + import { useSetNotification } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useShouldSpeakIncomingActivity.false.html b/__tests__/html2/hooks/useShouldSpeakIncomingActivity.false.html index 68837f28db..7b8d40da02 100644 --- a/__tests__/html2/hooks/useShouldSpeakIncomingActivity.false.html +++ b/__tests__/html2/hooks/useShouldSpeakIncomingActivity.false.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useShouldSpeakIncomingActivity } from 'botframework-webchat/hook'; + import { useShouldSpeakIncomingActivity } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useShouldSpeakIncomingActivity.true.html b/__tests__/html2/hooks/useShouldSpeakIncomingActivity.true.html index 86bcac4fdc..c4e94dca1a 100644 --- a/__tests__/html2/hooks/useShouldSpeakIncomingActivity.true.html +++ b/__tests__/html2/hooks/useShouldSpeakIncomingActivity.true.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dictate-button": "https://esm.sh/react-dictate-button", @@ -25,7 +24,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useShouldSpeakIncomingActivity } from 'botframework-webchat/hook'; + import { useShouldSpeakIncomingActivity } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; import { createWebSpeechPonyfill, sendMessageViaMicrophone } from '/assets/esm/speech/speechPageObjects.js'; diff --git a/__tests__/html2/hooks/useStartDictate.html b/__tests__/html2/hooks/useStartDictate.html index e1febc70e4..404855a509 100644 --- a/__tests__/html2/hooks/useStartDictate.html +++ b/__tests__/html2/hooks/useStartDictate.html @@ -10,8 +10,7 @@ "imports": { "@testduet/wait-for": "https://esm.sh/@testduet/wait-for", "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dictate-button": "https://esm.sh/react-dictate-button", @@ -27,7 +26,7 @@ import { waitFor } from '@testduet/wait-for'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useStartDictate } from 'botframework-webchat/hook'; + import { useStartDictate } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; import { actRecognizeOnce, createWebSpeechPonyfill } from '/assets/esm/speech/speechPageObjects.js'; diff --git a/__tests__/html2/hooks/useStopDictate.html b/__tests__/html2/hooks/useStopDictate.html index 789dcf22a1..ee8ac16151 100644 --- a/__tests__/html2/hooks/useStopDictate.html +++ b/__tests__/html2/hooks/useStopDictate.html @@ -10,8 +10,7 @@ "imports": { "@testduet/wait-for": "https://esm.sh/@testduet/wait-for", "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dictate-button": "https://esm.sh/react-dictate-button", @@ -27,7 +26,7 @@ import { waitFor } from '@testduet/wait-for'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useStopDictate } from 'botframework-webchat/hook'; + import { useStopDictate } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; import { actRecognizeOnce, createWebSpeechPonyfill } from '/assets/esm/speech/speechPageObjects.js'; diff --git a/__tests__/html2/hooks/useStyleOptions.getter.html b/__tests__/html2/hooks/useStyleOptions.getter.html index 5713a76db1..c131d98738 100644 --- a/__tests__/html2/hooks/useStyleOptions.getter.html +++ b/__tests__/html2/hooks/useStyleOptions.getter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useStyleOptions } from 'botframework-webchat/hook'; + import { useStyleOptions } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useStyleOptions.setter.html b/__tests__/html2/hooks/useStyleOptions.setter.html index 715840fa1d..7d1ff78d61 100644 --- a/__tests__/html2/hooks/useStyleOptions.setter.html +++ b/__tests__/html2/hooks/useStyleOptions.setter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useStyleOptions } from 'botframework-webchat/hook'; + import { useStyleOptions } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useStyleSet.getter.html b/__tests__/html2/hooks/useStyleSet.getter.html index b537afeb60..c45ea2ee44 100644 --- a/__tests__/html2/hooks/useStyleSet.getter.html +++ b/__tests__/html2/hooks/useStyleSet.getter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useStyleSet } from 'botframework-webchat/hook'; + import { useStyleSet } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useStyleSet.setter.html b/__tests__/html2/hooks/useStyleSet.setter.html index 68ba34f31e..03a13405a6 100644 --- a/__tests__/html2/hooks/useStyleSet.setter.html +++ b/__tests__/html2/hooks/useStyleSet.setter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useStyleSet } from 'botframework-webchat/hook'; + import { useStyleSet } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useSubmitSendBox.html b/__tests__/html2/hooks/useSubmitSendBox.html index b150b3f1d4..a2661c5fdc 100644 --- a/__tests__/html2/hooks/useSubmitSendBox.html +++ b/__tests__/html2/hooks/useSubmitSendBox.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createDirectLine, createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useSubmitSendBox } from 'botframework-webchat/hook'; + import { useSubmitSendBox } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { diff --git a/__tests__/html2/hooks/useSuggestedActions.html b/__tests__/html2/hooks/useSuggestedActions.html index afd3cdfa39..e46bba6ed6 100644 --- a/__tests__/html2/hooks/useSuggestedActions.html +++ b/__tests__/html2/hooks/useSuggestedActions.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createDirectLine, createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useSuggestedActions } from 'botframework-webchat/hook'; + import { useSuggestedActions } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { diff --git a/__tests__/html2/hooks/useTextBoxValue.html b/__tests__/html2/hooks/useTextBoxValue.html index b0a69b981d..1588c53179 100644 --- a/__tests__/html2/hooks/useTextBoxValue.html +++ b/__tests__/html2/hooks/useTextBoxValue.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useTextBoxValue } from 'botframework-webchat/hook'; + import { useTextBoxValue } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useTimeoutForSend.default.html b/__tests__/html2/hooks/useTimeoutForSend.default.html index 270c3fffe0..5d8a5b828a 100644 --- a/__tests__/html2/hooks/useTimeoutForSend.default.html +++ b/__tests__/html2/hooks/useTimeoutForSend.default.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useTimeoutForSend } from 'botframework-webchat/hook'; + import { useTimeoutForSend } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useTimeoutForSend.getter.html b/__tests__/html2/hooks/useTimeoutForSend.getter.html index 4cb25241f1..b096317aa9 100644 --- a/__tests__/html2/hooks/useTimeoutForSend.getter.html +++ b/__tests__/html2/hooks/useTimeoutForSend.getter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useTimeoutForSend } from 'botframework-webchat/hook'; + import { useTimeoutForSend } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useTimeoutForSend.setter.html b/__tests__/html2/hooks/useTimeoutForSend.setter.html index b691a2d685..dcd399f33c 100644 --- a/__tests__/html2/hooks/useTimeoutForSend.setter.html +++ b/__tests__/html2/hooks/useTimeoutForSend.setter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useTimeoutForSend } from 'botframework-webchat/hook'; + import { useTimeoutForSend } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useTrackDimension.html b/__tests__/html2/hooks/useTrackDimension.html index 746b7380b0..8ca0328884 100644 --- a/__tests__/html2/hooks/useTrackDimension.html +++ b/__tests__/html2/hooks/useTrackDimension.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", @@ -23,7 +22,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useTrackDimension, useTrackEvent } from 'botframework-webchat/hook'; + import { useTrackDimension, useTrackEvent } from 'botframework-webchat/hook.js'; import { fn } from 'jest-mock'; import createRenderHook from '/assets/esm/createRenderHook.js'; diff --git a/__tests__/html2/hooks/useTrackDimension.invalidDimensionName.html b/__tests__/html2/hooks/useTrackDimension.invalidDimensionName.html index cc63966724..659fb5f0d9 100644 --- a/__tests__/html2/hooks/useTrackDimension.invalidDimensionName.html +++ b/__tests__/html2/hooks/useTrackDimension.invalidDimensionName.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", @@ -23,7 +22,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useTrackDimension, useTrackEvent } from 'botframework-webchat/hook'; + import { useTrackDimension, useTrackEvent } from 'botframework-webchat/hook.js'; import { fn } from 'jest-mock'; import createRenderHook from '/assets/esm/createRenderHook.js'; diff --git a/__tests__/html2/hooks/useTrackDimension.invalidDimensionValue.html b/__tests__/html2/hooks/useTrackDimension.invalidDimensionValue.html index 1f7b724159..7c3b9980d7 100644 --- a/__tests__/html2/hooks/useTrackDimension.invalidDimensionValue.html +++ b/__tests__/html2/hooks/useTrackDimension.invalidDimensionValue.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", @@ -23,7 +22,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useTrackDimension, useTrackEvent } from 'botframework-webchat/hook'; + import { useTrackDimension, useTrackEvent } from 'botframework-webchat/hook.js'; import { fn } from 'jest-mock'; import createRenderHook from '/assets/esm/createRenderHook.js'; diff --git a/__tests__/html2/hooks/useTrackEvent.debug.html b/__tests__/html2/hooks/useTrackEvent.debug.html index 3b26a8c748..59d78d642f 100644 --- a/__tests__/html2/hooks/useTrackEvent.debug.html +++ b/__tests__/html2/hooks/useTrackEvent.debug.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", @@ -23,7 +22,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useTrackDimension, useTrackEvent } from 'botframework-webchat/hook'; + import { useTrackDimension, useTrackEvent } from 'botframework-webchat/hook.js'; import { fn } from 'jest-mock'; import createRenderHook from '/assets/esm/createRenderHook.js'; diff --git a/__tests__/html2/hooks/useTrackEvent.error.complex.html b/__tests__/html2/hooks/useTrackEvent.error.complex.html index 8e0190e385..f835ee3215 100644 --- a/__tests__/html2/hooks/useTrackEvent.error.complex.html +++ b/__tests__/html2/hooks/useTrackEvent.error.complex.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", @@ -23,7 +22,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useTrackDimension, useTrackEvent } from 'botframework-webchat/hook'; + import { useTrackDimension, useTrackEvent } from 'botframework-webchat/hook.js'; import { fn } from 'jest-mock'; import createRenderHook from '/assets/esm/createRenderHook.js'; diff --git a/__tests__/html2/hooks/useTrackEvent.html b/__tests__/html2/hooks/useTrackEvent.html index 16b7891ad3..5aa3162630 100644 --- a/__tests__/html2/hooks/useTrackEvent.html +++ b/__tests__/html2/hooks/useTrackEvent.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", @@ -23,7 +22,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useTrackDimension, useTrackEvent } from 'botframework-webchat/hook'; + import { useTrackDimension, useTrackEvent } from 'botframework-webchat/hook.js'; import { fn } from 'jest-mock'; import createRenderHook from '/assets/esm/createRenderHook.js'; diff --git a/__tests__/html2/hooks/useTrackEvent.info.html b/__tests__/html2/hooks/useTrackEvent.info.html index cb07d704ec..12595b9ffb 100644 --- a/__tests__/html2/hooks/useTrackEvent.info.html +++ b/__tests__/html2/hooks/useTrackEvent.info.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", @@ -23,7 +22,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useTrackDimension, useTrackEvent } from 'botframework-webchat/hook'; + import { useTrackDimension, useTrackEvent } from 'botframework-webchat/hook.js'; import { fn } from 'jest-mock'; import createRenderHook from '/assets/esm/createRenderHook.js'; diff --git a/__tests__/html2/hooks/useTrackEvent.invalid.booleanData.html b/__tests__/html2/hooks/useTrackEvent.invalid.booleanData.html index be9fa1ddc2..928192278f 100644 --- a/__tests__/html2/hooks/useTrackEvent.invalid.booleanData.html +++ b/__tests__/html2/hooks/useTrackEvent.invalid.booleanData.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", @@ -23,7 +22,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useTrackDimension, useTrackEvent } from 'botframework-webchat/hook'; + import { useTrackDimension, useTrackEvent } from 'botframework-webchat/hook.js'; import { fn } from 'jest-mock'; import createRenderHook from '/assets/esm/createRenderHook.js'; diff --git a/__tests__/html2/hooks/useTrackEvent.invalid.complex.html b/__tests__/html2/hooks/useTrackEvent.invalid.complex.html index 9c2284906b..16b97a32c3 100644 --- a/__tests__/html2/hooks/useTrackEvent.invalid.complex.html +++ b/__tests__/html2/hooks/useTrackEvent.invalid.complex.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", @@ -23,7 +22,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useTrackDimension, useTrackEvent } from 'botframework-webchat/hook'; + import { useTrackDimension, useTrackEvent } from 'botframework-webchat/hook.js'; import { fn } from 'jest-mock'; import createRenderHook from '/assets/esm/createRenderHook.js'; diff --git a/__tests__/html2/hooks/useTrackEvent.invalid.name.html b/__tests__/html2/hooks/useTrackEvent.invalid.name.html index 4b1f8da645..ac77fb8da9 100644 --- a/__tests__/html2/hooks/useTrackEvent.invalid.name.html +++ b/__tests__/html2/hooks/useTrackEvent.invalid.name.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", @@ -23,7 +22,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useTrackDimension, useTrackEvent } from 'botframework-webchat/hook'; + import { useTrackDimension, useTrackEvent } from 'botframework-webchat/hook.js'; import { fn } from 'jest-mock'; import createRenderHook from '/assets/esm/createRenderHook.js'; diff --git a/__tests__/html2/hooks/useTrackEvent.warn.numeric.html b/__tests__/html2/hooks/useTrackEvent.warn.numeric.html index fb470eba71..f321ce0f60 100644 --- a/__tests__/html2/hooks/useTrackEvent.warn.numeric.html +++ b/__tests__/html2/hooks/useTrackEvent.warn.numeric.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", @@ -23,7 +22,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useTrackDimension, useTrackEvent } from 'botframework-webchat/hook'; + import { useTrackDimension, useTrackEvent } from 'botframework-webchat/hook.js'; import { fn } from 'jest-mock'; import createRenderHook from '/assets/esm/createRenderHook.js'; diff --git a/__tests__/html2/hooks/useTrackException.html b/__tests__/html2/hooks/useTrackException.html index 8822fcf821..12d8a6e527 100644 --- a/__tests__/html2/hooks/useTrackException.html +++ b/__tests__/html2/hooks/useTrackException.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", @@ -23,7 +22,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useTrackDimension, useTrackException } from 'botframework-webchat/hook'; + import { useTrackDimension, useTrackException } from 'botframework-webchat/hook.js'; import { fn } from 'jest-mock'; import createRenderHook from '/assets/esm/createRenderHook.js'; diff --git a/__tests__/html2/hooks/useTrackException.nonFatal.html b/__tests__/html2/hooks/useTrackException.nonFatal.html index d3ba3fa539..0672d16086 100644 --- a/__tests__/html2/hooks/useTrackException.nonFatal.html +++ b/__tests__/html2/hooks/useTrackException.nonFatal.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", @@ -23,7 +22,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useTrackDimension, useTrackException } from 'botframework-webchat/hook'; + import { useTrackDimension, useTrackException } from 'botframework-webchat/hook.js'; import { fn } from 'jest-mock'; import createRenderHook from '/assets/esm/createRenderHook.js'; diff --git a/__tests__/html2/hooks/useUserID.getter.default.html b/__tests__/html2/hooks/useUserID.getter.default.html index f25809a8c4..f54413ebb2 100644 --- a/__tests__/html2/hooks/useUserID.getter.default.html +++ b/__tests__/html2/hooks/useUserID.getter.default.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useUserID } from 'botframework-webchat/hook'; + import { useUserID } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useUserID.getter.html b/__tests__/html2/hooks/useUserID.getter.html index d7c8d14e44..6b7f569142 100644 --- a/__tests__/html2/hooks/useUserID.getter.html +++ b/__tests__/html2/hooks/useUserID.getter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useUserID } from 'botframework-webchat/hook'; + import { useUserID } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useUserID.setter.html b/__tests__/html2/hooks/useUserID.setter.html index c4b67a566b..9c50305cc7 100644 --- a/__tests__/html2/hooks/useUserID.setter.html +++ b/__tests__/html2/hooks/useUserID.setter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useUserID } from 'botframework-webchat/hook'; + import { useUserID } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useUsername.getter.default.html b/__tests__/html2/hooks/useUsername.getter.default.html index 2e787e7bf0..77182b1116 100644 --- a/__tests__/html2/hooks/useUsername.getter.default.html +++ b/__tests__/html2/hooks/useUsername.getter.default.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useUsername } from 'botframework-webchat/hook'; + import { useUsername } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useUsername.getter.html b/__tests__/html2/hooks/useUsername.getter.html index 88f175d49d..6c3ba952ac 100644 --- a/__tests__/html2/hooks/useUsername.getter.html +++ b/__tests__/html2/hooks/useUsername.getter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useUsername } from 'botframework-webchat/hook'; + import { useUsername } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useUsername.setter.html b/__tests__/html2/hooks/useUsername.setter.html index 893cf70cb7..7a108e9d40 100644 --- a/__tests__/html2/hooks/useUsername.setter.html +++ b/__tests__/html2/hooks/useUsername.setter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useUsername } from 'botframework-webchat/hook'; + import { useUsername } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useVoiceSelector.html b/__tests__/html2/hooks/useVoiceSelector.html index ca4481bf49..f8597d5036 100644 --- a/__tests__/html2/hooks/useVoiceSelector.html +++ b/__tests__/html2/hooks/useVoiceSelector.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dictate-button": "https://esm.sh/react-dictate-button", @@ -25,7 +24,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useVoiceSelector } from 'botframework-webchat/hook'; + import { useVoiceSelector } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; import { actRecognizeOnce, createWebSpeechPonyfill } from '/assets/esm/speech/speechPageObjects.js'; diff --git a/__tests__/html2/hooks/useWebSpeechPonyfill.getter.bypass.html b/__tests__/html2/hooks/useWebSpeechPonyfill.getter.bypass.html index 175b0de176..acec4a60b7 100644 --- a/__tests__/html2/hooks/useWebSpeechPonyfill.getter.bypass.html +++ b/__tests__/html2/hooks/useWebSpeechPonyfill.getter.bypass.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useWebSpeechPonyfill } from 'botframework-webchat/hook'; + import { useWebSpeechPonyfill } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/hooks/useWebSpeechPonyfill.getter.html b/__tests__/html2/hooks/useWebSpeechPonyfill.getter.html index 536730e6fe..d49b45925c 100644 --- a/__tests__/html2/hooks/useWebSpeechPonyfill.getter.html +++ b/__tests__/html2/hooks/useWebSpeechPonyfill.getter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dictate-button": "https://esm.sh/react-dictate-button", @@ -25,7 +24,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useWebSpeechPonyfill } from 'botframework-webchat/hook'; + import { useWebSpeechPonyfill } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; import { actRecognizeOnce, createWebSpeechPonyfill } from '/assets/esm/speech/speechPageObjects.js'; diff --git a/__tests__/html2/hooks/useWebSpeechPonyfill.setter.html b/__tests__/html2/hooks/useWebSpeechPonyfill.setter.html index 02addfc772..76aa627235 100644 --- a/__tests__/html2/hooks/useWebSpeechPonyfill.setter.html +++ b/__tests__/html2/hooks/useWebSpeechPonyfill.setter.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "jest-mock": "https://esm.sh/jest-mock", "react": "https://esm.sh/react@18", "react-dictate-button": "https://esm.sh/react-dictate-button", @@ -25,7 +24,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useWebSpeechPonyfill } from 'botframework-webchat/hook'; + import { useWebSpeechPonyfill } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; import { actRecognizeOnce, createWebSpeechPonyfill } from '/assets/esm/speech/speechPageObjects.js'; diff --git a/__tests__/html2/markdown/vnext/markdownStreaming.html b/__tests__/html2/markdown/vnext/markdownStreaming.html index a742fc4cfc..b7b05c05ed 100644 --- a/__tests__/html2/markdown/vnext/markdownStreaming.html +++ b/__tests__/html2/markdown/vnext/markdownStreaming.html @@ -19,10 +19,7 @@ "@fluentui/react-provider": "/__dist__/packages/test/test-assets/out/@fluentui/react-provider.js", "@fluentui/tokens": "/__dist__/packages/test/test-assets/out/@fluentui/tokens.js", "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/decorator": "/__dist__/packages/bundle/static/botframework-webchat/decorator.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", - "botframework-webchat/internal": "/__dist__/packages/bundle/static/botframework-webchat/internal.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "botframework-webchat-core": "/__dist__/packages/bundle/static/botframework-webchat-core.js", "botframework-webchat-fluent-theme": "/__dist__/packages/fluent-theme/static/botframework-webchat-fluent-theme.js", "eventsource-parser": "https://esm.sh/eventsource-parser", diff --git a/__tests__/html2/middleware/avatar/backwardCompatibility.html b/__tests__/html2/middleware/avatar/backwardCompatibility.html index dc68db8921..c1df5f8971 100644 --- a/__tests__/html2/middleware/avatar/backwardCompatibility.html +++ b/__tests__/html2/middleware/avatar/backwardCompatibility.html @@ -9,7 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/middleware": "/__dist__/packages/bundle/static/botframework-webchat/middleware.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "/__dist__/packages/bundle/static/react.js", "react-dom": "/__dist__/packages/bundle/static/react-dom.js" } @@ -20,7 +20,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, renderWebChat, testIds } from 'botframework-webchat'; - import { avatarComponent, createAvatarPolymiddleware } from 'botframework-webchat/middleware'; + import { avatarComponent, createAvatarPolymiddleware } from 'botframework-webchat/middleware.js'; import { createElement } from 'react'; const { diff --git a/__tests__/html2/middleware/avatar/legacyAvatarMiddleware/addOrReplace.html b/__tests__/html2/middleware/avatar/legacyAvatarMiddleware/addOrReplace.html index d59fbb4909..2da4bad78d 100644 --- a/__tests__/html2/middleware/avatar/legacyAvatarMiddleware/addOrReplace.html +++ b/__tests__/html2/middleware/avatar/legacyAvatarMiddleware/addOrReplace.html @@ -9,7 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/middleware": "/__dist__/packages/bundle/static/botframework-webchat/middleware.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "/__dist__/packages/bundle/static/react.js", "react-dom": "/__dist__/packages/bundle/static/react-dom.js" } @@ -20,7 +20,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, renderWebChat, testIds } from 'botframework-webchat'; - import { avatarComponent, createAvatarPolymiddleware } from 'botframework-webchat/middleware'; + import { avatarComponent, createAvatarPolymiddleware } from 'botframework-webchat/middleware.js'; import { createElement } from 'react'; const { diff --git a/__tests__/html2/middleware/avatar/legacyAvatarMiddleware/changing.html b/__tests__/html2/middleware/avatar/legacyAvatarMiddleware/changing.html index cd931bb706..a194772910 100644 --- a/__tests__/html2/middleware/avatar/legacyAvatarMiddleware/changing.html +++ b/__tests__/html2/middleware/avatar/legacyAvatarMiddleware/changing.html @@ -9,7 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/middleware": "/__dist__/packages/bundle/static/botframework-webchat/middleware.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "/__dist__/packages/bundle/static/react.js", "react-dom": "/__dist__/packages/bundle/static/react-dom.js" } @@ -20,7 +20,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, renderWebChat, testIds } from 'botframework-webchat'; - import { avatarComponent, createAvatarPolymiddleware } from 'botframework-webchat/middleware'; + import { avatarComponent, createAvatarPolymiddleware } from 'botframework-webchat/middleware.js'; import { createElement } from 'react'; const { diff --git a/__tests__/html2/middleware/avatar/legacyAvatarMiddleware/decorate.html b/__tests__/html2/middleware/avatar/legacyAvatarMiddleware/decorate.html index d59fbb4909..2da4bad78d 100644 --- a/__tests__/html2/middleware/avatar/legacyAvatarMiddleware/decorate.html +++ b/__tests__/html2/middleware/avatar/legacyAvatarMiddleware/decorate.html @@ -9,7 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/middleware": "/__dist__/packages/bundle/static/botframework-webchat/middleware.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "/__dist__/packages/bundle/static/react.js", "react-dom": "/__dist__/packages/bundle/static/react-dom.js" } @@ -20,7 +20,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, renderWebChat, testIds } from 'botframework-webchat'; - import { avatarComponent, createAvatarPolymiddleware } from 'botframework-webchat/middleware'; + import { avatarComponent, createAvatarPolymiddleware } from 'botframework-webchat/middleware.js'; import { createElement } from 'react'; const { diff --git a/__tests__/html2/middleware/avatar/legacyAvatarMiddleware/delete.html b/__tests__/html2/middleware/avatar/legacyAvatarMiddleware/delete.html index b69192cbbc..7454bd609e 100644 --- a/__tests__/html2/middleware/avatar/legacyAvatarMiddleware/delete.html +++ b/__tests__/html2/middleware/avatar/legacyAvatarMiddleware/delete.html @@ -9,7 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/middleware": "/__dist__/packages/bundle/static/botframework-webchat/middleware.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "/__dist__/packages/bundle/static/react.js", "react-dom": "/__dist__/packages/bundle/static/react-dom.js" } @@ -20,7 +20,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, renderWebChat, testIds } from 'botframework-webchat'; - import { avatarComponent, createAvatarPolymiddleware } from 'botframework-webchat/middleware'; + import { avatarComponent, createAvatarPolymiddleware } from 'botframework-webchat/middleware.js'; import { createElement } from 'react'; const { diff --git a/__tests__/html2/middleware/avatar/legacyAvatarMiddleware/styleOptions.html b/__tests__/html2/middleware/avatar/legacyAvatarMiddleware/styleOptions.html index 8bc9afd476..17d075a48d 100644 --- a/__tests__/html2/middleware/avatar/legacyAvatarMiddleware/styleOptions.html +++ b/__tests__/html2/middleware/avatar/legacyAvatarMiddleware/styleOptions.html @@ -9,7 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/middleware": "/__dist__/packages/bundle/static/botframework-webchat/middleware.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "/__dist__/packages/bundle/static/react.js", "react-dom": "/__dist__/packages/bundle/static/react-dom.js" } @@ -20,7 +20,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, renderWebChat, testIds } from 'botframework-webchat'; - import { avatarComponent, createAvatarPolymiddleware } from 'botframework-webchat/middleware'; + import { avatarComponent, createAvatarPolymiddleware } from 'botframework-webchat/middleware.js'; import { createElement } from 'react'; const { diff --git a/__tests__/html2/middleware/avatar/polymiddleware/addOrReplace.html b/__tests__/html2/middleware/avatar/polymiddleware/addOrReplace.html index 1f9619e39e..82de8c9a07 100644 --- a/__tests__/html2/middleware/avatar/polymiddleware/addOrReplace.html +++ b/__tests__/html2/middleware/avatar/polymiddleware/addOrReplace.html @@ -9,7 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/middleware": "/__dist__/packages/bundle/static/botframework-webchat/middleware.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "/__dist__/packages/bundle/static/react.js", "react-dom": "/__dist__/packages/bundle/static/react-dom.js" } @@ -20,7 +20,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, renderWebChat, testIds } from 'botframework-webchat'; - import { avatarComponent, createAvatarPolymiddleware } from 'botframework-webchat/middleware'; + import { avatarComponent, createAvatarPolymiddleware } from 'botframework-webchat/middleware.js'; import { createElement } from 'react'; const { diff --git a/__tests__/html2/middleware/avatar/polymiddleware/changing.html b/__tests__/html2/middleware/avatar/polymiddleware/changing.html index 783390da4e..20f6db9964 100644 --- a/__tests__/html2/middleware/avatar/polymiddleware/changing.html +++ b/__tests__/html2/middleware/avatar/polymiddleware/changing.html @@ -9,7 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/middleware": "/__dist__/packages/bundle/static/botframework-webchat/middleware.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "/__dist__/packages/bundle/static/react.js", "react-dom": "/__dist__/packages/bundle/static/react-dom.js" } @@ -20,7 +20,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, renderWebChat, testIds } from 'botframework-webchat'; - import { avatarComponent, createAvatarPolymiddleware } from 'botframework-webchat/middleware'; + import { avatarComponent, createAvatarPolymiddleware } from 'botframework-webchat/middleware.js'; import { createElement } from 'react'; const { diff --git a/__tests__/html2/middleware/avatar/polymiddleware/decorate.html b/__tests__/html2/middleware/avatar/polymiddleware/decorate.html index 4fe1d7b380..743e3adb5d 100644 --- a/__tests__/html2/middleware/avatar/polymiddleware/decorate.html +++ b/__tests__/html2/middleware/avatar/polymiddleware/decorate.html @@ -9,7 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/middleware": "/__dist__/packages/bundle/static/botframework-webchat/middleware.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "/__dist__/packages/bundle/static/react.js", "react-dom": "/__dist__/packages/bundle/static/react-dom.js" } @@ -20,7 +20,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, renderWebChat, testIds } from 'botframework-webchat'; - import { avatarComponent, createAvatarPolymiddleware } from 'botframework-webchat/middleware'; + import { avatarComponent, createAvatarPolymiddleware } from 'botframework-webchat/middleware.js'; import { createElement } from 'react'; const { diff --git a/__tests__/html2/middleware/avatar/polymiddleware/defaultAvatar.styleOptions.html b/__tests__/html2/middleware/avatar/polymiddleware/defaultAvatar.styleOptions.html index ccc94f8126..1c56c51b8c 100644 --- a/__tests__/html2/middleware/avatar/polymiddleware/defaultAvatar.styleOptions.html +++ b/__tests__/html2/middleware/avatar/polymiddleware/defaultAvatar.styleOptions.html @@ -9,7 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/middleware": "/__dist__/packages/bundle/static/botframework-webchat/middleware.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "/__dist__/packages/bundle/static/react.js", "react-dom": "/__dist__/packages/bundle/static/react-dom.js" } @@ -20,7 +20,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, renderWebChat, testIds } from 'botframework-webchat'; - import { avatarComponent, createAvatarPolymiddleware } from 'botframework-webchat/middleware'; + import { avatarComponent, createAvatarPolymiddleware } from 'botframework-webchat/middleware.js'; import { createElement } from 'react'; const { diff --git a/__tests__/html2/middleware/avatar/polymiddleware/delete.html b/__tests__/html2/middleware/avatar/polymiddleware/delete.html index d78f89e630..b6f57fdbee 100644 --- a/__tests__/html2/middleware/avatar/polymiddleware/delete.html +++ b/__tests__/html2/middleware/avatar/polymiddleware/delete.html @@ -9,7 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/middleware": "/__dist__/packages/bundle/static/botframework-webchat/middleware.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "/__dist__/packages/bundle/static/react.js", "react-dom": "/__dist__/packages/bundle/static/react-dom.js" } @@ -20,7 +20,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, renderWebChat, testIds } from 'botframework-webchat'; - import { avatarComponent, createAvatarPolymiddleware } from 'botframework-webchat/middleware'; + import { avatarComponent, createAvatarPolymiddleware } from 'botframework-webchat/middleware.js'; import { createElement } from 'react'; const { diff --git a/__tests__/html2/middleware/avatar/renderProxy.html b/__tests__/html2/middleware/avatar/renderProxy.html index 3a65c0257e..8e258df1cf 100644 --- a/__tests__/html2/middleware/avatar/renderProxy.html +++ b/__tests__/html2/middleware/avatar/renderProxy.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/middleware": "/__dist__/packages/bundle/static/botframework-webchat/middleware.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "/__dist__/packages/bundle/static/react.js", "react-dom": "/__dist__/packages/bundle/static/react-dom.js", "react-dom/client": "/__dist__/packages/bundle/static/react-dom/client.js" @@ -22,12 +21,12 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, renderWebChat, testIds } from 'botframework-webchat'; - import { Composer } from 'botframework-webchat/component'; + import { Composer } from 'botframework-webchat/component.js'; import { AvatarPolymiddlewareProxy, avatarComponent, createAvatarPolymiddleware - } from 'botframework-webchat/middleware'; + } from 'botframework-webchat/middleware.js'; import { createElement } from 'react'; import { createRoot } from 'react-dom/client'; diff --git a/__tests__/html2/middleware/avatar/useBuildRenderAvatarCallback.html b/__tests__/html2/middleware/avatar/useBuildRenderAvatarCallback.html index 6ea4ce540d..60199cc9b4 100644 --- a/__tests__/html2/middleware/avatar/useBuildRenderAvatarCallback.html +++ b/__tests__/html2/middleware/avatar/useBuildRenderAvatarCallback.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/middleware": "/__dist__/packages/bundle/static/botframework-webchat/middleware.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "/__dist__/packages/bundle/static/react.js", "react-dom": "/__dist__/packages/bundle/static/react-dom.js", "react-dom/client": "/__dist__/packages/bundle/static/react-dom/client.js" @@ -22,12 +21,12 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, renderWebChat, testIds } from 'botframework-webchat'; - import { Composer } from 'botframework-webchat/component'; + import { Composer } from 'botframework-webchat/component.js'; import { avatarComponent, createAvatarPolymiddleware, useBuildRenderAvatarCallback - } from 'botframework-webchat/middleware'; + } from 'botframework-webchat/middleware.js'; import { createElement, memo } from 'react'; import { createRoot } from 'react-dom/client'; diff --git a/__tests__/html2/samples/boot/exports.tsx b/__tests__/html2/samples/boot/exports.tsx index 0ff01adb74..554e893368 100644 --- a/__tests__/html2/samples/boot/exports.tsx +++ b/__tests__/html2/samples/boot/exports.tsx @@ -14,7 +14,7 @@ import ReactWebChat, { createBrowserWebSpeechPonyfillFactory, decorator } from 'botframework-webchat'; -import { activityComponent } from 'botframework-webchat/middleware'; +import { activityComponent } from 'botframework-webchat/middleware.js'; run(() => { // THEN: It should have "ReactWebChat". diff --git a/__tests__/html2/samples/middleware/channelMessage.tsx b/__tests__/html2/samples/middleware/channelMessage.tsx index 8fe2754dba..9b78a2e1c2 100644 --- a/__tests__/html2/samples/middleware/channelMessage.tsx +++ b/__tests__/html2/samples/middleware/channelMessage.tsx @@ -12,7 +12,7 @@ import { activityComponent, createActivityPolymiddleware, type ActivityPolymiddlewareProps -} from 'botframework-webchat/middleware'; +} from 'botframework-webchat/middleware.js'; import React, { memo } from 'react'; import { render } from 'react-dom'; // #endregion Sample code diff --git a/__tests__/html2/samples/middleware/decorateMessage.tsx b/__tests__/html2/samples/middleware/decorateMessage.tsx index db7f4ec5c9..c80c61762a 100644 --- a/__tests__/html2/samples/middleware/decorateMessage.tsx +++ b/__tests__/html2/samples/middleware/decorateMessage.tsx @@ -12,7 +12,7 @@ import { createActivityPolymiddleware, type ActivityPolymiddlewareProps, type ActivityPolymiddlewareRenderer -} from 'botframework-webchat/middleware'; +} from 'botframework-webchat/middleware.js'; import React, { Fragment, memo, useMemo } from 'react'; import { render } from 'react-dom'; diff --git a/__tests__/html2/simple/fatModule/esm.run/supportPolymiddleware.reactDOMRender.html b/__tests__/html2/simple/fatModule/esm.run/supportPolymiddleware.reactDOMRender.html index 3be1a0f7d4..ee9d2b61f8 100644 --- a/__tests__/html2/simple/fatModule/esm.run/supportPolymiddleware.reactDOMRender.html +++ b/__tests__/html2/simple/fatModule/esm.run/supportPolymiddleware.reactDOMRender.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", - "botframework-webchat/middleware": "/__dist__/packages/bundle/static/botframework-webchat/middleware.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://cdn.jsdelivr.net/npm/react@18.3.1/+esm", "react-dom": "https://cdn.jsdelivr.net/npm/react-dom@18.3.1/+esm", "react-dom/client": "https://cdn.jsdelivr.net/npm/react-dom@18.3.1/client/+esm" @@ -22,8 +21,8 @@ import '/test-page-object.mjs'; import { createDirectLine, createStoreWithOptions, hooks, ReactWebChat } from 'botframework-webchat'; - import { useStyleOptions } from 'botframework-webchat/hook'; - import { activityComponent, createActivityPolymiddleware } from 'botframework-webchat/middleware'; + import { useStyleOptions } from 'botframework-webchat/hook.js'; + import { activityComponent, createActivityPolymiddleware } from 'botframework-webchat/middleware.js'; import { createElement } from 'react'; import { render } from 'react-dom'; diff --git a/__tests__/html2/simple/fatModule/esm.run/supportPolymiddleware.reactDOMRender.withCreateRoot.html b/__tests__/html2/simple/fatModule/esm.run/supportPolymiddleware.reactDOMRender.withCreateRoot.html index 17f4374d31..333d432483 100644 --- a/__tests__/html2/simple/fatModule/esm.run/supportPolymiddleware.reactDOMRender.withCreateRoot.html +++ b/__tests__/html2/simple/fatModule/esm.run/supportPolymiddleware.reactDOMRender.withCreateRoot.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", - "botframework-webchat/middleware": "/__dist__/packages/bundle/static/botframework-webchat/middleware.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://cdn.jsdelivr.net/npm/react@18.3.1/+esm", "react-dom": "https://cdn.jsdelivr.net/npm/react-dom@18.3.1/+esm", "react-dom/client": "https://cdn.jsdelivr.net/npm/react-dom@18.3.1/client/+esm" @@ -22,8 +21,8 @@ import '/test-page-object.mjs'; import { createDirectLine, createStoreWithOptions, hooks, ReactWebChat } from 'botframework-webchat'; - import { useStyleOptions } from 'botframework-webchat/hook'; - import { activityComponent, createActivityPolymiddleware } from 'botframework-webchat/middleware'; + import { useStyleOptions } from 'botframework-webchat/hook.js'; + import { activityComponent, createActivityPolymiddleware } from 'botframework-webchat/middleware.js'; import { createElement } from 'react'; import { createRoot } from 'react-dom/client'; diff --git a/__tests__/html2/simple/fatModule/esm.run/supportPolymiddleware.renderWebChat.html b/__tests__/html2/simple/fatModule/esm.run/supportPolymiddleware.renderWebChat.html index 3da0804c59..5db8af2ce9 100644 --- a/__tests__/html2/simple/fatModule/esm.run/supportPolymiddleware.renderWebChat.html +++ b/__tests__/html2/simple/fatModule/esm.run/supportPolymiddleware.renderWebChat.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", - "botframework-webchat/middleware": "/__dist__/packages/bundle/static/botframework-webchat/middleware.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://cdn.jsdelivr.net/npm/react@18.3.1/+esm", "react-dom": "https://cdn.jsdelivr.net/npm/react-dom@18.3.1/+esm", "react-dom/client": "https://cdn.jsdelivr.net/npm/react-dom@18.3.1/client/+esm" @@ -22,8 +21,8 @@ import '/test-page-object.mjs'; import { createDirectLine, createStoreWithOptions, hooks, renderWebChat } from 'botframework-webchat'; - import { useStyleOptions } from 'botframework-webchat/hook'; - import { activityComponent, createActivityPolymiddleware } from 'botframework-webchat/middleware'; + import { useStyleOptions } from 'botframework-webchat/hook.js'; + import { activityComponent, createActivityPolymiddleware } from 'botframework-webchat/middleware.js'; import { createElement } from 'react'; const { diff --git a/__tests__/html2/simple/fatModule/esm.sh/fluentTheme.html b/__tests__/html2/simple/fatModule/esm.sh/fluentTheme.html index 6552952d5f..2e5b897b13 100644 --- a/__tests__/html2/simple/fatModule/esm.sh/fluentTheme.html +++ b/__tests__/html2/simple/fatModule/esm.sh/fluentTheme.html @@ -17,10 +17,7 @@ "imports": { "@fluentui/react-components": "https://esm.sh/@fluentui/react-components?deps=react@18,react-dom@18&exports=FluentProvider,webLightTheme", "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/decorator": "/__dist__/packages/bundle/static/botframework-webchat/decorator.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", - "botframework-webchat/internal": "/__dist__/packages/bundle/static/botframework-webchat/internal.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "botframework-webchat-fluent-theme": "/__dist__/packages/fluent-theme/static/botframework-webchat-fluent-theme.js", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", diff --git a/__tests__/html2/simple/fatModule/esm.sh/supportPolymiddleware.reactDOMRender.html b/__tests__/html2/simple/fatModule/esm.sh/supportPolymiddleware.reactDOMRender.html index 4b92f4ea35..dc97c9d137 100644 --- a/__tests__/html2/simple/fatModule/esm.sh/supportPolymiddleware.reactDOMRender.html +++ b/__tests__/html2/simple/fatModule/esm.sh/supportPolymiddleware.reactDOMRender.html @@ -9,7 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/middleware": "/__dist__/packages/bundle/static/botframework-webchat/middleware.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18" } @@ -20,7 +20,7 @@ import '/test-page-object.mjs'; import { createDirectLine, createStoreWithOptions, hooks, ReactWebChat } from 'botframework-webchat'; - import { activityComponent, createActivityPolymiddleware } from 'botframework-webchat/middleware'; + import { activityComponent, createActivityPolymiddleware } from 'botframework-webchat/middleware.js'; import { createElement } from 'react'; import { render } from 'react-dom'; diff --git a/__tests__/html2/simple/fatModule/esm.sh/supportPolymiddleware.reactDOMRender.withCreateRoot.html b/__tests__/html2/simple/fatModule/esm.sh/supportPolymiddleware.reactDOMRender.withCreateRoot.html index 837652e5a9..5fdb87c966 100644 --- a/__tests__/html2/simple/fatModule/esm.sh/supportPolymiddleware.reactDOMRender.withCreateRoot.html +++ b/__tests__/html2/simple/fatModule/esm.sh/supportPolymiddleware.reactDOMRender.withCreateRoot.html @@ -9,7 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/middleware": "/__dist__/packages/bundle/static/botframework-webchat/middleware.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -21,7 +21,7 @@ import '/test-page-object.mjs'; import { createDirectLine, createStoreWithOptions, hooks, ReactWebChat } from 'botframework-webchat'; - import { activityComponent, createActivityPolymiddleware } from 'botframework-webchat/middleware'; + import { activityComponent, createActivityPolymiddleware } from 'botframework-webchat/middleware.js'; import { createElement } from 'react'; import { createRoot } from 'react-dom/client'; diff --git a/__tests__/html2/simple/fatModule/esm.sh/supportPolymiddleware.renderWebChat.html b/__tests__/html2/simple/fatModule/esm.sh/supportPolymiddleware.renderWebChat.html index a71cf8415f..3bf2102636 100644 --- a/__tests__/html2/simple/fatModule/esm.sh/supportPolymiddleware.renderWebChat.html +++ b/__tests__/html2/simple/fatModule/esm.sh/supportPolymiddleware.renderWebChat.html @@ -9,7 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/middleware": "/__dist__/packages/bundle/static/botframework-webchat/middleware.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18" } @@ -20,7 +20,7 @@ import '/test-page-object.mjs'; import { createDirectLine, createStoreWithOptions, hooks, renderWebChat } from 'botframework-webchat'; - import { activityComponent, createActivityPolymiddleware } from 'botframework-webchat/middleware'; + import { activityComponent, createActivityPolymiddleware } from 'botframework-webchat/middleware.js'; import { createElement } from 'react'; const { useStyleOptions } = hooks; diff --git a/__tests__/html2/simple/fatModule/esm.sh/tsx/fluentTheme.html b/__tests__/html2/simple/fatModule/esm.sh/tsx/fluentTheme.html index c636082a02..76e8b17d07 100644 --- a/__tests__/html2/simple/fatModule/esm.sh/tsx/fluentTheme.html +++ b/__tests__/html2/simple/fatModule/esm.sh/tsx/fluentTheme.html @@ -19,10 +19,7 @@ "#test-page-object": "/test-page-object.mjs", "@fluentui/react-components": "https://esm.sh/@fluentui/react-components?deps=react@18,react-dom@18&exports=FluentProvider,createDarkTheme,webLightTheme", "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/decorator": "/__dist__/packages/bundle/static/botframework-webchat/decorator.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", - "botframework-webchat/internal": "/__dist__/packages/bundle/static/botframework-webchat/internal.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "botframework-webchat-fluent-theme": "/__dist__/packages/fluent-theme/static/botframework-webchat-fluent-theme.js", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", diff --git a/__tests__/html2/simple/fatModule/esm.sh/tsx/simple.html b/__tests__/html2/simple/fatModule/esm.sh/tsx/simple.html index 09c6665160..b796180880 100644 --- a/__tests__/html2/simple/fatModule/esm.sh/tsx/simple.html +++ b/__tests__/html2/simple/fatModule/esm.sh/tsx/simple.html @@ -11,8 +11,7 @@ "#test-harness": "/test-harness.mjs", "#test-page-object": "/test-page-object.mjs", "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", - "botframework-webchat/middleware": "/__dist__/packages/bundle/static/botframework-webchat/middleware.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" diff --git a/__tests__/html2/simple/fatModule/esm.sh/tsx/supportPolymiddleware.reactDOMRender.withCreateRoot.html b/__tests__/html2/simple/fatModule/esm.sh/tsx/supportPolymiddleware.reactDOMRender.withCreateRoot.html index 55fc6be33c..15853a8cb1 100644 --- a/__tests__/html2/simple/fatModule/esm.sh/tsx/supportPolymiddleware.reactDOMRender.withCreateRoot.html +++ b/__tests__/html2/simple/fatModule/esm.sh/tsx/supportPolymiddleware.reactDOMRender.withCreateRoot.html @@ -11,8 +11,7 @@ "#test-harness": "/test-harness.mjs", "#test-page-object": "/test-page-object.mjs", "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", - "botframework-webchat/middleware": "/__dist__/packages/bundle/static/botframework-webchat/middleware.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -25,8 +24,8 @@ import '#test-page-object'; import { createDirectLine, createStoreWithOptions, hooks, ReactWebChat } from 'botframework-webchat'; - import { useStyleOptions } from 'botframework-webchat/hook'; - import { activityComponent, createActivityPolymiddleware } from 'botframework-webchat/middleware'; + import { useStyleOptions } from 'botframework-webchat/hook.js'; + import { activityComponent, createActivityPolymiddleware } from 'botframework-webchat/middleware.js'; import { createElement } from 'react'; import { createRoot } from 'react-dom/client'; diff --git a/__tests__/html2/simple/fatModule/fluentTheme.html b/__tests__/html2/simple/fatModule/fluentTheme.html index fff45cf0ad..6238de1235 100644 --- a/__tests__/html2/simple/fatModule/fluentTheme.html +++ b/__tests__/html2/simple/fatModule/fluentTheme.html @@ -18,10 +18,7 @@ "imports": { "@fluentui/react-components": "https://esm.sh/@fluentui/react-components?deps=react@18.3.1,react-dom@18.3.1&exports=FluentProvider,createDarkTheme,webLightTheme", "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/decorator": "/__dist__/packages/bundle/static/botframework-webchat/decorator.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", - "botframework-webchat/internal": "/__dist__/packages/bundle/static/botframework-webchat/internal.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "botframework-webchat-fluent-theme": "/__dist__/packages/fluent-theme/static/botframework-webchat-fluent-theme.js", "react": "/__dist__/packages/bundle/static/react.js", "react-dom": "/__dist__/packages/bundle/static/react-dom.js", diff --git a/__tests__/html2/simple/fatModule/simple.runHook.html b/__tests__/html2/simple/fatModule/simple.runHook.html index 5ef69db4bf..35b9ad5d67 100644 --- a/__tests__/html2/simple/fatModule/simple.runHook.html +++ b/__tests__/html2/simple/fatModule/simple.runHook.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "https://esm.sh/react@18", "react-dom": "https://esm.sh/react-dom@18", "react-dom/": "https://esm.sh/react-dom@18/" @@ -22,7 +21,7 @@ import '/test-page-object.mjs'; import { createStoreWithOptions, testIds } from 'botframework-webchat'; - import { useLanguage } from 'botframework-webchat/hook'; + import { useLanguage } from 'botframework-webchat/hook.js'; import createRenderHook from '/assets/esm/createRenderHook.js'; const { createDirectLineEmulator } = window.testHelpers; diff --git a/__tests__/html2/simple/fatModule/supportPolymiddleware.reactDOMRender.html b/__tests__/html2/simple/fatModule/supportPolymiddleware.reactDOMRender.html index 4572e40369..a5293ab4f0 100644 --- a/__tests__/html2/simple/fatModule/supportPolymiddleware.reactDOMRender.html +++ b/__tests__/html2/simple/fatModule/supportPolymiddleware.reactDOMRender.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", - "botframework-webchat/middleware": "/__dist__/packages/bundle/static/botframework-webchat/middleware.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "/__dist__/packages/bundle/static/react.js", "react-dom": "/__dist__/packages/bundle/static/react-dom.js" } @@ -21,8 +20,8 @@ import '/test-page-object.mjs'; import { createDirectLine, createStoreWithOptions, hooks, ReactWebChat } from 'botframework-webchat'; - import { useStyleOptions } from 'botframework-webchat/hook'; - import { activityComponent, createActivityPolymiddleware } from 'botframework-webchat/middleware'; + import { useStyleOptions } from 'botframework-webchat/hook.js'; + import { activityComponent, createActivityPolymiddleware } from 'botframework-webchat/middleware.js'; import { createElement } from 'react'; import { render } from 'react-dom'; diff --git a/__tests__/html2/simple/fatModule/supportPolymiddleware.renderWebChat.html b/__tests__/html2/simple/fatModule/supportPolymiddleware.renderWebChat.html index c6b8622e1e..1d7acf2091 100644 --- a/__tests__/html2/simple/fatModule/supportPolymiddleware.renderWebChat.html +++ b/__tests__/html2/simple/fatModule/supportPolymiddleware.renderWebChat.html @@ -9,8 +9,7 @@ { "imports": { "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", - "botframework-webchat/middleware": "/__dist__/packages/bundle/static/botframework-webchat/middleware.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "react": "/__dist__/packages/bundle/static/react.js", "react-dom": "/__dist__/packages/bundle/static/react-dom.js" } @@ -21,8 +20,8 @@ import '/test-page-object.mjs'; import { createDirectLine, createStoreWithOptions, hooks, renderWebChat } from 'botframework-webchat'; - import { useStyleOptions } from 'botframework-webchat/hook'; - import { activityComponent, createActivityPolymiddleware } from 'botframework-webchat/middleware'; + import { useStyleOptions } from 'botframework-webchat/hook.js'; + import { activityComponent, createActivityPolymiddleware } from 'botframework-webchat/middleware.js'; import { createElement } from 'react'; const { diff --git a/__tests__/html2/styleOptions/deprecated.hideScrollToEndButton.html b/__tests__/html2/styleOptions/deprecated.hideScrollToEndButton.html deleted file mode 100644 index c9d4154cd4..0000000000 --- a/__tests__/html2/styleOptions/deprecated.hideScrollToEndButton.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - - - - - -
- - - diff --git a/__tests__/html2/styleOptions/deprecated.hideScrollToEndButton.html.snap-1.png b/__tests__/html2/styleOptions/deprecated.hideScrollToEndButton.html.snap-1.png deleted file mode 100644 index 31cd732ab9..0000000000 Binary files a/__tests__/html2/styleOptions/deprecated.hideScrollToEndButton.html.snap-1.png and /dev/null differ diff --git a/__tests__/html2/styleOptions/deprecated.hideScrollToEndButton.html.snap-2.png b/__tests__/html2/styleOptions/deprecated.hideScrollToEndButton.html.snap-2.png deleted file mode 100644 index 48d7243e1d..0000000000 Binary files a/__tests__/html2/styleOptions/deprecated.hideScrollToEndButton.html.snap-2.png and /dev/null differ diff --git a/__tests__/html2/styleOptions/deprecated.newMessageButtonFontSize.html b/__tests__/html2/styleOptions/deprecated.newMessageButtonFontSize.html deleted file mode 100644 index dc16057984..0000000000 --- a/__tests__/html2/styleOptions/deprecated.newMessageButtonFontSize.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - -
- - - diff --git a/__tests__/html2/styleOptions/deprecated.newMessageButtonFontSize.html.snap-1.png b/__tests__/html2/styleOptions/deprecated.newMessageButtonFontSize.html.snap-1.png deleted file mode 100644 index 43a8b6494b..0000000000 Binary files a/__tests__/html2/styleOptions/deprecated.newMessageButtonFontSize.html.snap-1.png and /dev/null differ diff --git a/__tests__/html2/themeProvider/override.html b/__tests__/html2/themeProvider/override.html index 1b83ac515c..ca18774bb9 100644 --- a/__tests__/html2/themeProvider/override.html +++ b/__tests__/html2/themeProvider/override.html @@ -18,10 +18,7 @@ "imports": { "@fluentui/react-components": "https://esm.sh/@fluentui/react-components?deps=react@18.3.1,react-dom@18.3.1&exports=FluentProvider,createDarkTheme,webLightTheme", "botframework-webchat": "/__dist__/packages/bundle/static/botframework-webchat.js", - "botframework-webchat/component": "/__dist__/packages/bundle/static/botframework-webchat/component.js", - "botframework-webchat/decorator": "/__dist__/packages/bundle/static/botframework-webchat/decorator.js", - "botframework-webchat/hook": "/__dist__/packages/bundle/static/botframework-webchat/hook.js", - "botframework-webchat/internal": "/__dist__/packages/bundle/static/botframework-webchat/internal.js", + "botframework-webchat/": "/__dist__/packages/bundle/static/botframework-webchat/", "botframework-webchat-fluent-theme": "/__dist__/packages/fluent-theme/static/botframework-webchat-fluent-theme.js", "jest-mock": "https://esm.sh/jest-mock", "react": "/__dist__/packages/bundle/static/react.js", @@ -39,8 +36,8 @@ import { FluentProvider, webLightTheme } from '@fluentui/react-components'; import { createDirectLine, createStoreWithOptions, hooks, ReactWebChat } from 'botframework-webchat'; - import { ThemeProvider } from 'botframework-webchat/component'; - import { InjectStyleElements } from 'botframework-webchat/internal'; + import { ThemeProvider } from 'botframework-webchat/component.js'; + import { InjectStyleElements } from 'botframework-webchat/internal.js'; import { FluentThemeProvider } from 'botframework-webchat-fluent-theme'; import { spyOn } from 'jest-mock'; import { createElement, Fragment } from 'react'; diff --git a/__tests__/unit.setup/jest.config.js b/__tests__/unit.setup/jest.config.js index fedb0e222f..ad0006f20e 100644 --- a/__tests__/unit.setup/jest.config.js +++ b/__tests__/unit.setup/jest.config.js @@ -45,7 +45,10 @@ const TRANSFORM_IGNORE_PACKAGES = [ // Related to Adaptive Cards 'adaptivecards', - 'swiper' + 'swiper', + + // Related to Redux + '@redux-devtools/extension' ]; module.exports = { diff --git a/docs/CAPABILITIES.md b/docs/CAPABILITIES.md index af0b672d9f..9d656fc1f7 100644 --- a/docs/CAPABILITIES.md +++ b/docs/CAPABILITIES.md @@ -7,7 +7,7 @@ Web Chat supports dynamic capability discovery from adapters. Capabilities allow Use the `useCapabilities` hook with a selector to access specific capabilities: ```js -import { useCapabilities } from 'botframework-webchat/hook'; +import { useCapabilities } from 'botframework-webchat/hook.js'; // Get voice configuration const voiceConfig = useCapabilities(caps => caps.voiceConfiguration); diff --git a/docs/MIDDLEWARE.md b/docs/MIDDLEWARE.md index 906c047921..e0e9fc6a20 100644 --- a/docs/MIDDLEWARE.md +++ b/docs/MIDDLEWARE.md @@ -87,7 +87,7 @@ import { activityComponent, createActivityPolymiddleware, type ActivityPolymiddlewareProps -} from 'botframework-webchat/middleware'; +} from 'botframework-webchat/middleware.js'; import React, { memo } from 'react'; import { render } from 'react-dom'; @@ -138,7 +138,7 @@ import { createActivityPolymiddleware, type ActivityPolymiddlewareProps, type ActivityPolymiddlewareRenderer -} from 'botframework-webchat/middleware'; +} from 'botframework-webchat/middleware.js'; import React, { Fragment, memo, useMemo } from 'react'; import { render } from 'react-dom'; diff --git a/package-lock.json b/package-lock.json index 81572d4e3d..10de7273f2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -55,59 +55,59 @@ "react-dom": "16.8.6" }, "devDependencies": { - "@babel/plugin-transform-runtime": "^7.28.5", - "@babel/preset-env": "^7.28.5", + "@babel/plugin-transform-runtime": "^7.29.0", + "@babel/preset-env": "^7.29.2", "@babel/preset-react": "^7.28.5", "@babel/preset-typescript": "^7.28.5", - "@babel/runtime": "^7.28.4", - "@biomejs/biome": "^2.3.10", - "@happy-dom/jest-environment": "^20.0.11", + "@babel/runtime": "^7.29.2", + "@biomejs/biome": "^2.4.12", + "@happy-dom/jest-environment": "^20.9.0", "@msinternal/vibe-grep": "^0.0.0-0", "@testing-library/react": "^12.1.5", "@types/jest": "^29.5.14", - "@types/react": "^16.14.68", + "@types/react": "^16.14.69", "@types/react-dom": "^16.9.25", "@types/semver": "^7.7.1", - "@typescript-eslint/eslint-plugin": "^8.50.0", - "@typescript-eslint/parser": "^8.50.0", + "@typescript-eslint/eslint-plugin": "^8.59.0", + "@typescript-eslint/parser": "^8.59.0", "babel-jest": "^29.7.0", - "babel-plugin-istanbul": "^7.0.1", + "babel-plugin-istanbul": "^8.0.0", "chalk": "^5.6.2", "concurrently": "^9.2.1", - "core-js": "^3.47.0", + "core-js": "^3.49.0", "cross-env": "^10.1.0", - "diff": "^8.0.2", - "dotenv": "^17.2.3", - "dtsroll": "^1.4.1", + "diff": "^9.0.0", + "dotenv": "^17.4.2", + "dtsroll": "^1.8.1", "eslint": "^8.57.1", "eslint-config-prettier": "^10.1.8", "eslint-plugin-import": "^2.32.0", "eslint-plugin-local-rules": "^3.0.2", "eslint-plugin-node": "^11.1.0", - "eslint-plugin-prettier": "^5.5.4", + "eslint-plugin-prettier": "^5.5.5", "eslint-plugin-react": "^7.37.5", - "eslint-plugin-react-hooks": "^7.0.1", - "eslint-plugin-security": "^3.0.1", + "eslint-plugin-react-hooks": "^7.1.1", + "eslint-plugin-security": "^4.0.0", "get-port": "^5.1.1", - "global-agent": "^3.0.0", + "global-agent": "^4.1.3", "husky": "^9.1.7", "jest": "^29.7.0", - "jest-image-snapshot": "^6.5.1", - "keep-a-changelog": "^2.7.1", - "lint-staged": "^16.2.7", + "jest-image-snapshot": "^6.5.2", + "keep-a-changelog": "^3.0.2", + "lint-staged": "^16.4.0", "lolex": "^6.0.0", - "minimatch": "^10.1.1", + "minimatch": "^10.2.5", "node-dev": "^8.0.0", - "prettier": "^3.7.4", + "prettier": "^3.8.3", "read-package-up": "^12.0.0", - "read-pkg": "^10.0.0", - "selenium-webdriver": "^4.39.0", - "serve": "^14.2.5", - "serve-handler": "^6.1.6", + "read-pkg": "^10.1.0", + "selenium-webdriver": "^4.43.0", + "serve": "^14.2.6", + "serve-handler": "^6.1.7", "strip-ansi": "^6.0.1", "tsup": "^8.5.1", - "typescript": "^5.9.3", - "unplugin-lightningcss": "^0.4.3" + "typescript": "^6.0.3", + "unplugin-lightningcss": "^0.4.5" } }, "node_modules/@adobe/css-tools": { @@ -117,33 +117,31 @@ "optional": true }, "node_modules/@ast-grep/napi": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@ast-grep/napi/-/napi-0.41.0.tgz", - "integrity": "sha512-3kK6hCxyinsxZIM6p/gWoN33v0GgxBXU6uDbM/J2j3t7f9lXRvA1J+8HeiemCtXNA75H1EK5Oo7/E28HOhYHDg==", - "license": "MIT", + "version": "0.42.1", + "resolved": "https://registry.npmjs.org/@ast-grep/napi/-/napi-0.42.1.tgz", + "integrity": "sha512-+YEv9ElJi9azr8AYII79NxYXQRJsrUy1kUqZfxZfvPM7rhs3174mzB+qEE9Pl3sVKAJS5cevyT4lgLNV0AZK6A==", "engines": { "node": ">= 10" }, "optionalDependencies": { - "@ast-grep/napi-darwin-arm64": "0.41.0", - "@ast-grep/napi-darwin-x64": "0.41.0", - "@ast-grep/napi-linux-arm64-gnu": "0.41.0", - "@ast-grep/napi-linux-arm64-musl": "0.41.0", - "@ast-grep/napi-linux-x64-gnu": "0.41.0", - "@ast-grep/napi-linux-x64-musl": "0.41.0", - "@ast-grep/napi-win32-arm64-msvc": "0.41.0", - "@ast-grep/napi-win32-ia32-msvc": "0.41.0", - "@ast-grep/napi-win32-x64-msvc": "0.41.0" + "@ast-grep/napi-darwin-arm64": "0.42.1", + "@ast-grep/napi-darwin-x64": "0.42.1", + "@ast-grep/napi-linux-arm64-gnu": "0.42.1", + "@ast-grep/napi-linux-arm64-musl": "0.42.1", + "@ast-grep/napi-linux-x64-gnu": "0.42.1", + "@ast-grep/napi-linux-x64-musl": "0.42.1", + "@ast-grep/napi-win32-arm64-msvc": "0.42.1", + "@ast-grep/napi-win32-ia32-msvc": "0.42.1", + "@ast-grep/napi-win32-x64-msvc": "0.42.1" } }, "node_modules/@ast-grep/napi-darwin-arm64": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@ast-grep/napi-darwin-arm64/-/napi-darwin-arm64-0.41.0.tgz", - "integrity": "sha512-SoAzCj1o9/mdtOdj6pZI1qpZkfncd+2DsWAa2ZmoomKc7CFKCzPniJtThXeOq+IJKcufS8zFGbk57ScMpDgd5A==", + "version": "0.42.1", + "resolved": "https://registry.npmjs.org/@ast-grep/napi-darwin-arm64/-/napi-darwin-arm64-0.42.1.tgz", + "integrity": "sha512-VtO4DX20ODCfRBwv1I71lZx+qlrhlMbt9Rpo3LozoaUpHnLmyFMBSgpUal5KTd1SCKUK8ekJGgxpKWo27H4AVQ==", "cpu": [ "arm64" ], - "license": "MIT", "optional": true, "os": [ "darwin" @@ -153,13 +151,12 @@ } }, "node_modules/@ast-grep/napi-darwin-x64": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@ast-grep/napi-darwin-x64/-/napi-darwin-x64-0.41.0.tgz", - "integrity": "sha512-SSQeJzm19nNQ+caTgLLFgmhhjhyL8C+8yDSYSYYwOwqkj/Zx5sZHFvND2f8XeOM9Tey7Lkvaf1Prp4l/NwrskA==", + "version": "0.42.1", + "resolved": "https://registry.npmjs.org/@ast-grep/napi-darwin-x64/-/napi-darwin-x64-0.42.1.tgz", + "integrity": "sha512-V2uaKP6QZLb60iFHK0IiXAcwSoUliiDJ3c1zLLzHnBFyCbTKC4b3L3XtkiyKsnpET+uzY7hQLpTIAhW5aOCX4w==", "cpu": [ "x64" ], - "license": "MIT", "optional": true, "os": [ "darwin" @@ -169,13 +166,12 @@ } }, "node_modules/@ast-grep/napi-linux-arm64-gnu": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@ast-grep/napi-linux-arm64-gnu/-/napi-linux-arm64-gnu-0.41.0.tgz", - "integrity": "sha512-Td7ciWtsbuYlFV4OC8bg7s+DexXsGLy29yKJqI1ZvoE+9SpWPdFVojeIu9qiQinGh27uggOAZ25WCROnZ2kJpw==", + "version": "0.42.1", + "resolved": "https://registry.npmjs.org/@ast-grep/napi-linux-arm64-gnu/-/napi-linux-arm64-gnu-0.42.1.tgz", + "integrity": "sha512-wmt59yzvcZT4Z5XpxB1B1FoFrc32l0vmy2G7yrY2lG9qP2M157mWdp1T50h2XoYrotyRhCyLDXP70SiTZHZkaQ==", "cpu": [ "arm64" ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -185,13 +181,12 @@ } }, "node_modules/@ast-grep/napi-linux-arm64-musl": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@ast-grep/napi-linux-arm64-musl/-/napi-linux-arm64-musl-0.41.0.tgz", - "integrity": "sha512-2wx0SfNZ7eBJN40ne9ncuODoU8ck85wXJ94WV40Ol8Pr4owtrd1yFXQqZTMrq5xYcf4Z3yQWwmEhaH6TJAoBbg==", + "version": "0.42.1", + "resolved": "https://registry.npmjs.org/@ast-grep/napi-linux-arm64-musl/-/napi-linux-arm64-musl-0.42.1.tgz", + "integrity": "sha512-cnU+H0drvdkApQDJEcBsYGlPq2gk3l2Xxq0y8EmcxAXYXDNkz+Gc2vfvyM7ib2jD9Y51+cQIsb0RFzA2g9VnZQ==", "cpu": [ "arm64" ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -201,13 +196,12 @@ } }, "node_modules/@ast-grep/napi-linux-x64-gnu": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@ast-grep/napi-linux-x64-gnu/-/napi-linux-x64-gnu-0.41.0.tgz", - "integrity": "sha512-OzaoOpW4/uX9T5D6h2mXCncCaQ+Ph/hzzH3c91ozNrFYqsQ7MDS04PUhRJQ4Z79H4yuXx2jkbXaj3+ZNR3DP6g==", + "version": "0.42.1", + "resolved": "https://registry.npmjs.org/@ast-grep/napi-linux-x64-gnu/-/napi-linux-x64-gnu-0.42.1.tgz", + "integrity": "sha512-gY+PtqbFtFlR8rCL9F6GEPuymqLhh2eG/e8Ly01Z/S5x3e357nNaF69xAvNRpYi/HnEUZ5cE1MzshDCjubqE1A==", "cpu": [ "x64" ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -217,13 +211,12 @@ } }, "node_modules/@ast-grep/napi-linux-x64-musl": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@ast-grep/napi-linux-x64-musl/-/napi-linux-x64-musl-0.41.0.tgz", - "integrity": "sha512-Oeg3BhOC+FA32mW3FHfXXW/AelvicfRhQIrWq5YNS44Sdy9scA34b2FiBPLaj4dHwBgg3ebEfDgmiYBQOMkXaw==", + "version": "0.42.1", + "resolved": "https://registry.npmjs.org/@ast-grep/napi-linux-x64-musl/-/napi-linux-x64-musl-0.42.1.tgz", + "integrity": "sha512-yDTlIgFOzglpzs3Ua9w43uVeEW4csf80F5/n2FqCK5pip4Iyfu21Q+M8iC9AmTRl/OGHVI48ieuPwOD9i1i6hA==", "cpu": [ "x64" ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -233,13 +226,12 @@ } }, "node_modules/@ast-grep/napi-win32-arm64-msvc": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@ast-grep/napi-win32-arm64-msvc/-/napi-win32-arm64-msvc-0.41.0.tgz", - "integrity": "sha512-6rE9lQbey3rRfr3wQxrfGMcLeyNRydjA4rfdfAciWQApQ+lat5QI7tlgqPqo5EKITUNwap6YY+IxfwBxsLbHYg==", + "version": "0.42.1", + "resolved": "https://registry.npmjs.org/@ast-grep/napi-win32-arm64-msvc/-/napi-win32-arm64-msvc-0.42.1.tgz", + "integrity": "sha512-6WQhKEfZmtfMSIOzluMoBaQhNqfRKXzj5y2YA2U0Y3x7HxNAZBO067y8xlSMddKFN/FtCwft8GFktFxqSYWl1w==", "cpu": [ "arm64" ], - "license": "MIT", "optional": true, "os": [ "win32" @@ -249,13 +241,12 @@ } }, "node_modules/@ast-grep/napi-win32-ia32-msvc": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@ast-grep/napi-win32-ia32-msvc/-/napi-win32-ia32-msvc-0.41.0.tgz", - "integrity": "sha512-ITtAD7tI3/vImz13wJUUns3UDIsrE3d2/JhhLN3CE1YqNItuNoW53nWqR3YcC/KsfSJnDddD6R0gMVkmlXapAg==", + "version": "0.42.1", + "resolved": "https://registry.npmjs.org/@ast-grep/napi-win32-ia32-msvc/-/napi-win32-ia32-msvc-0.42.1.tgz", + "integrity": "sha512-ET2vRrsHo0e4JJbCrejzDcDPsfTmRaYK9VIpq1MqXXAUvLoiMly+cQYZ64MWdXTlgITKMXCYxhCbFPTn/9XZaQ==", "cpu": [ "ia32" ], - "license": "MIT", "optional": true, "os": [ "win32" @@ -265,13 +256,12 @@ } }, "node_modules/@ast-grep/napi-win32-x64-msvc": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@ast-grep/napi-win32-x64-msvc/-/napi-win32-x64-msvc-0.41.0.tgz", - "integrity": "sha512-DSqDh4KJ5+8x+gfAtWdXdeRpGfTjgm00kTW/pqUxhMdW6DVShMSDrFR+lj3dL9FmzMrwVGb+mcN8dWNqGA85Cw==", + "version": "0.42.1", + "resolved": "https://registry.npmjs.org/@ast-grep/napi-win32-x64-msvc/-/napi-win32-x64-msvc-0.42.1.tgz", + "integrity": "sha512-NAeA2Q6jp7F9uXtSuG12c1xjTzipXFCTvuAcEBnsTwBXq0kdPV6H6Y4GZJVcDhsHk3TX4sGlQGkuV/6FT2Ngig==", "cpu": [ "x64" ], - "license": "MIT", "optional": true, "os": [ "win32" @@ -325,7 +315,6 @@ "resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.28.6.tgz", "integrity": "sha512-6EUNcuBbNkj08Oj4gAZ+BUU8yLCgKzgVX4gaTh09Ya2C8ICM4P+G30g4m3akRxSYAp3A/gnWchrNst7px4/nUQ==", "dev": true, - "license": "MIT", "dependencies": { "@jridgewell/trace-mapping": "^0.3.28", "commander": "^6.2.0", @@ -379,7 +368,6 @@ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz", "integrity": "sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==", "devOptional": true, - "license": "MIT", "dependencies": { "@babel/code-frame": "^7.29.0", "@babel/generator": "^7.29.0", @@ -1764,7 +1752,6 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.29.0.tgz", "integrity": "sha512-jlaRT5dJtMaMCV6fAuLbsQMSwz/QkvaHOHOSXRitGGwSpR1blCY4KUKoyP2tYO8vJcqYe8cEj96cqSztv3uF9w==", "dev": true, - "license": "MIT", "dependencies": { "@babel/helper-module-imports": "^7.28.6", "@babel/helper-plugin-utils": "^7.28.6", @@ -1858,7 +1845,6 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.28.6.tgz", "integrity": "sha512-0YWL2RFxOqEm9Efk5PvreamxPME8OyY0wM5wh5lHjF+VtVhdneCWGzZeSqzOfiobVqQaNCd2z0tQvnI9DaPWPw==", "dev": true, - "license": "MIT", "dependencies": { "@babel/helper-annotate-as-pure": "^7.27.3", "@babel/helper-create-class-features-plugin": "^7.28.6", @@ -1937,11 +1923,10 @@ } }, "node_modules/@babel/preset-env": { - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.29.0.tgz", - "integrity": "sha512-fNEdfc0yi16lt6IZo2Qxk3knHVdfMYX33czNb4v8yWhemoBhibCpQK/uYHtSKIiO+p/zd3+8fYVXhQdOVV608w==", + "version": "7.29.2", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.29.2.tgz", + "integrity": "sha512-DYD23veRYGvBFhcTY1iUvJnDNpuqNd/BzBwCvzOTKUnJjKg5kpUBh3/u9585Agdkgj+QuygG7jLfOPWMa2KVNw==", "dev": true, - "license": "MIT", "dependencies": { "@babel/compat-data": "^7.29.0", "@babel/helper-compilation-targets": "^7.28.6", @@ -2052,7 +2037,6 @@ "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.28.5.tgz", "integrity": "sha512-Z3J8vhRq7CeLjdC58jLv4lnZ5RKFUJWqH5emvxmv9Hv3BD1T9R/Im713R4MTKwvFaV74ejZ3sM01LyEKk4ugNQ==", "dev": true, - "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.27.1", "@babel/helper-validator-option": "^7.27.1", @@ -2073,7 +2057,6 @@ "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.28.5.tgz", "integrity": "sha512-+bQy5WOI2V6LJZpPVxY+yp66XdZ2yifu0Mc1aP5CQKgjn4QM5IN2i5fAZ4xKop47pr8rpVhiAeu+nDQa12C8+g==", "dev": true, - "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.27.1", "@babel/helper-validator-option": "^7.27.1", @@ -2089,10 +2072,9 @@ } }, "node_modules/@babel/runtime": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.28.6.tgz", - "integrity": "sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA==", - "license": "MIT", + "version": "7.29.2", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.29.2.tgz", + "integrity": "sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g==", "engines": { "node": ">=6.9.0" } @@ -2109,16 +2091,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/runtime-corejs3/node_modules/core-js-pure": { - "version": "3.49.0", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.49.0.tgz", - "integrity": "sha512-XM4RFka59xATyJv/cS3O3Kml72hQXUeGRuuTmMYFxwzc9/7C8OYTaIR/Ji+Yt8DXzsFLNhat15cE/JP15HrCgw==", - "hasInstallScript": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, "node_modules/@babel/template": { "version": "7.28.6", "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz", @@ -2176,9 +2148,9 @@ "license": "MIT" }, "node_modules/@biomejs/biome": { - "version": "2.3.10", - "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-2.3.10.tgz", - "integrity": "sha512-/uWSUd1MHX2fjqNLHNL6zLYWBbrJeG412/8H7ESuK8ewoRoMPUgHDebqKrPTx/5n6f17Xzqc9hdg3MEqA5hXnQ==", + "version": "2.4.12", + "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-2.4.12.tgz", + "integrity": "sha512-Rro7adQl3NLq/zJCIL98eElXKI8eEiBtoeu5TbXF/U3qbjuSc7Jb5rjUbeHHcquDWeSf3HnGP7XI5qGrlRk/pA==", "dev": true, "bin": { "biome": "bin/biome" @@ -2191,20 +2163,20 @@ "url": "https://opencollective.com/biome" }, "optionalDependencies": { - "@biomejs/cli-darwin-arm64": "2.3.10", - "@biomejs/cli-darwin-x64": "2.3.10", - "@biomejs/cli-linux-arm64": "2.3.10", - "@biomejs/cli-linux-arm64-musl": "2.3.10", - "@biomejs/cli-linux-x64": "2.3.10", - "@biomejs/cli-linux-x64-musl": "2.3.10", - "@biomejs/cli-win32-arm64": "2.3.10", - "@biomejs/cli-win32-x64": "2.3.10" + "@biomejs/cli-darwin-arm64": "2.4.12", + "@biomejs/cli-darwin-x64": "2.4.12", + "@biomejs/cli-linux-arm64": "2.4.12", + "@biomejs/cli-linux-arm64-musl": "2.4.12", + "@biomejs/cli-linux-x64": "2.4.12", + "@biomejs/cli-linux-x64-musl": "2.4.12", + "@biomejs/cli-win32-arm64": "2.4.12", + "@biomejs/cli-win32-x64": "2.4.12" } }, "node_modules/@biomejs/cli-darwin-arm64": { - "version": "2.3.10", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.3.10.tgz", - "integrity": "sha512-M6xUjtCVnNGFfK7HMNKa593nb7fwNm43fq1Mt71kpLpb+4mE7odO8W/oWVDyBVO4ackhresy1ZYO7OJcVo/B7w==", + "version": "2.4.12", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.4.12.tgz", + "integrity": "sha512-BnMU4Pc3ciEVteVpZ0BK33MLr7X57F5w1dwDLDn+/iy/yTrA4Q/N2yftidFtsA4vrDh0FMXDpacNV/Tl3fbmng==", "cpu": [ "arm64" ], @@ -2218,9 +2190,9 @@ } }, "node_modules/@biomejs/cli-darwin-x64": { - "version": "2.3.10", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.3.10.tgz", - "integrity": "sha512-Vae7+V6t/Avr8tVbFNjnFSTKZogZHFYl7MMH62P/J1kZtr0tyRQ9Fe0onjqjS2Ek9lmNLmZc/VR5uSekh+p1fg==", + "version": "2.4.12", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.4.12.tgz", + "integrity": "sha512-x9uJ0bI1rJsWICp3VH8w/5PnAVD3A7SqzDpbrfoUQX1QyWrK5jSU4fRLo/wSgGeplCivbxBRKmt5Xq4/nWvq8A==", "cpu": [ "x64" ], @@ -2234,9 +2206,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64": { - "version": "2.3.10", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.3.10.tgz", - "integrity": "sha512-hhPw2V3/EpHKsileVOFynuWiKRgFEV48cLe0eA+G2wO4SzlwEhLEB9LhlSrVeu2mtSn205W283LkX7Fh48CaxA==", + "version": "2.4.12", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.4.12.tgz", + "integrity": "sha512-tOwuCuZZtKi1jVzbk/5nXmIsziOB6yqN8c9r9QM0EJYPU6DpQWf11uBOSCfFKKM4H3d9ZoarvlgMfbcuD051Pw==", "cpu": [ "arm64" ], @@ -2250,9 +2222,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64-musl": { - "version": "2.3.10", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.3.10.tgz", - "integrity": "sha512-B9DszIHkuKtOH2IFeeVkQmSMVUjss9KtHaNXquYYWCjH8IstNgXgx5B0aSBQNr6mn4RcKKRQZXn9Zu1rM3O0/A==", + "version": "2.4.12", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.4.12.tgz", + "integrity": "sha512-FhfpkAAlKL6kwvcVap0Hgp4AhZmtd3YImg0kK1jd7C/aSoh4SfsB2f++yG1rU0lr8Y5MCFJrcSkmssiL9Xnnig==", "cpu": [ "arm64" ], @@ -2266,9 +2238,9 @@ } }, "node_modules/@biomejs/cli-linux-x64": { - "version": "2.3.10", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-2.3.10.tgz", - "integrity": "sha512-wwAkWD1MR95u+J4LkWP74/vGz+tRrIQvr8kfMMJY8KOQ8+HMVleREOcPYsQX82S7uueco60L58Wc6M1I9WA9Dw==", + "version": "2.4.12", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-2.4.12.tgz", + "integrity": "sha512-8pFeAnLU9QdW9jCIslB/v82bI0lhBmz2ZAKc8pVMFPO0t0wAHsoEkrUQUbMkIorTRIjbqyNZHA3lEXavsPWYSw==", "cpu": [ "x64" ], @@ -2282,9 +2254,9 @@ } }, "node_modules/@biomejs/cli-linux-x64-musl": { - "version": "2.3.10", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.3.10.tgz", - "integrity": "sha512-QTfHZQh62SDFdYc2nfmZFuTm5yYb4eO1zwfB+90YxUumRCR171tS1GoTX5OD0wrv4UsziMPmrePMtkTnNyYG3g==", + "version": "2.4.12", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.4.12.tgz", + "integrity": "sha512-dwTIgZrGutzhkQCuvHynCkyW6hJxUuyZqKKO0YNfaS2GUoRO+tOvxXZqZB6SkWAOdfZTzwaw8IEdUnIkHKHoew==", "cpu": [ "x64" ], @@ -2298,9 +2270,9 @@ } }, "node_modules/@biomejs/cli-win32-arm64": { - "version": "2.3.10", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.3.10.tgz", - "integrity": "sha512-o7lYc9n+CfRbHvkjPhm8s9FgbKdYZu5HCcGVMItLjz93EhgJ8AM44W+QckDqLA9MKDNFrR8nPbO4b73VC5kGGQ==", + "version": "2.4.12", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.4.12.tgz", + "integrity": "sha512-B0DLnx0vA9ya/3v7XyCaP+/lCpnbWbMOfUFFve+xb5OxyYvdHaS55YsSddr228Y+JAFk58agCuZTsqNiw2a6ig==", "cpu": [ "arm64" ], @@ -2314,9 +2286,9 @@ } }, "node_modules/@biomejs/cli-win32-x64": { - "version": "2.3.10", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-2.3.10.tgz", - "integrity": "sha512-pHEFgq7dUEsKnqG9mx9bXihxGI49X+ar+UBrEIj3Wqj3UCZp1rNgV+OoyjFgcXsjCWpuEAF4VJdkZr3TrWdCbQ==", + "version": "2.4.12", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-2.4.12.tgz", + "integrity": "sha512-yMckRzTyZ83hkk8iDFWswqSdU8tvZxspJKnYNh7JZr/zhZNOlzH13k4ecboU6MurKExCe2HUkH75pGI/O2JwGA==", "cpu": [ "x64" ], @@ -2329,51 +2301,11 @@ "node": ">=14.21.3" } }, - "node_modules/@deno/shim-deno": { - "version": "0.18.2", - "resolved": "https://registry.npmjs.org/@deno/shim-deno/-/shim-deno-0.18.2.tgz", - "integrity": "sha512-oQ0CVmOio63wlhwQF75zA4ioolPvOwAoK0yuzcS5bDC1JUvH3y1GS8xPh8EOpcoDQRU4FTG8OQfxhpR+c6DrzA==", - "dev": true, - "dependencies": { - "@deno/shim-deno-test": "^0.5.0", - "which": "^4.0.0" - } - }, - "node_modules/@deno/shim-deno-test": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@deno/shim-deno-test/-/shim-deno-test-0.5.0.tgz", - "integrity": "sha512-4nMhecpGlPi0cSzT67L+Tm+GOJqvuk8gqHBziqcUQOarnuIax1z96/gJHCSIz2Z0zhxE6Rzwb3IZXPtFh51j+w==", - "dev": true - }, - "node_modules/@deno/shim-deno/node_modules/isexe": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.5.tgz", - "integrity": "sha512-6B3tLtFqtQS4ekarvLVMZ+X+VlvQekbe4taUkf/rhVO3d/h0M2rfARm/pXLcPEsjjMsFgrFgSrhQIxcSVrBz8w==", - "dev": true, - "license": "BlueOak-1.0.0", - "engines": { - "node": ">=18" - } - }, - "node_modules/@deno/shim-deno/node_modules/which": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", - "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", - "dev": true, - "dependencies": { - "isexe": "^3.1.1" - }, - "bin": { - "node-which": "bin/which.js" - }, - "engines": { - "node": "^16.13.0 || >=18.0.0" - } - }, "node_modules/@discoveryjs/json-ext": { - "version": "0.6.3", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-1.0.0.tgz", + "integrity": "sha512-dDlz3W405VMFO4w5kIP9DOmELBcvFQGmLoKSdIRstBDubKFYwaNHV1NnlzMCQpXQFGWVALmeMORAuiLx18AvZQ==", "dev": true, - "license": "MIT", "engines": { "node": ">=14.17.0" } @@ -2421,7 +2353,6 @@ "version": "11.13.5", "resolved": "https://registry.npmjs.org/@emotion/css/-/css-11.13.5.tgz", "integrity": "sha512-wQdD0Xhkn3Qy2VNcIzbLP9MR8TafI0MJb7BEAXKp+w4+XqErksWR4OXomuDzPsN4InLdGhVe6EYcn2ZIUCpB8w==", - "license": "MIT", "dependencies": { "@emotion/babel-plugin": "^11.13.5", "@emotion/cache": "^11.13.5", @@ -2471,14 +2402,13 @@ "license": "MIT" }, "node_modules/@esbuild/aix-ppc64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.3.tgz", - "integrity": "sha512-9fJMTNFTWZMh5qwrBItuziu834eOCUcEqymSH7pY+zoMVEZg3gcPuBNxH1EvfVYe9h0x/Ptw8KBzv7qxb7l8dg==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.7.tgz", + "integrity": "sha512-EKX3Qwmhz1eMdEJokhALr0YiD0lhQNwDqkPYyPhiSwKrh7/4KRjQc04sZ8db+5DVVnZ1LmbNDI1uAMPEUBnQPg==", "cpu": [ "ppc64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "aix" @@ -2488,14 +2418,13 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.3.tgz", - "integrity": "sha512-i5D1hPY7GIQmXlXhs2w8AWHhenb00+GxjxRncS2ZM7YNVGNfaMxgzSGuO8o8SJzRc/oZwU2bcScvVERk03QhzA==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.7.tgz", + "integrity": "sha512-jbPXvB4Yj2yBV7HUfE2KHe4GJX51QplCN1pGbYjvsyCZbQmies29EoJbkEc+vYuU5o45AfQn37vZlyXy4YJ8RQ==", "cpu": [ "arm" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "android" @@ -2505,14 +2434,13 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.3.tgz", - "integrity": "sha512-YdghPYUmj/FX2SYKJ0OZxf+iaKgMsKHVPF1MAq/P8WirnSpCStzKJFjOjzsW0QQ7oIAiccHdcqjbHmJxRb/dmg==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.7.tgz", + "integrity": "sha512-62dPZHpIXzvChfvfLJow3q5dDtiNMkwiRzPylSCfriLvZeq0a1bWChrGx/BbUbPwOrsWKMn8idSllklzBy+dgQ==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "android" @@ -2522,14 +2450,13 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.3.tgz", - "integrity": "sha512-IN/0BNTkHtk8lkOM8JWAYFg4ORxBkZQf9zXiEOfERX/CzxW3Vg1ewAhU7QSWQpVIzTW+b8Xy+lGzdYXV6UZObQ==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.7.tgz", + "integrity": "sha512-x5VpMODneVDb70PYV2VQOmIUUiBtY3D3mPBG8NxVk5CogneYhkR7MmM3yR/uMdITLrC1ml/NV1rj4bMJuy9MCg==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "android" @@ -2539,14 +2466,13 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.3.tgz", - "integrity": "sha512-Re491k7ByTVRy0t3EKWajdLIr0gz2kKKfzafkth4Q8A5n1xTHrkqZgLLjFEHVD+AXdUGgQMq+Godfq45mGpCKg==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.7.tgz", + "integrity": "sha512-5lckdqeuBPlKUwvoCXIgI2D9/ABmPq3Rdp7IfL70393YgaASt7tbju3Ac+ePVi3KDH6N2RqePfHnXkaDtY9fkw==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "darwin" @@ -2556,14 +2482,13 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.3.tgz", - "integrity": "sha512-vHk/hA7/1AckjGzRqi6wbo+jaShzRowYip6rt6q7VYEDX4LEy1pZfDpdxCBnGtl+A5zq8iXDcyuxwtv3hNtHFg==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.7.tgz", + "integrity": "sha512-rYnXrKcXuT7Z+WL5K980jVFdvVKhCHhUwid+dDYQpH+qu+TefcomiMAJpIiC2EM3Rjtq0sO3StMV/+3w3MyyqQ==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "darwin" @@ -2573,14 +2498,13 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.3.tgz", - "integrity": "sha512-ipTYM2fjt3kQAYOvo6vcxJx3nBYAzPjgTCk7QEgZG8AUO3ydUhvelmhrbOheMnGOlaSFUoHXB6un+A7q4ygY9w==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.7.tgz", + "integrity": "sha512-B48PqeCsEgOtzME2GbNM2roU29AMTuOIN91dsMO30t+Ydis3z/3Ngoj5hhnsOSSwNzS+6JppqWsuhTp6E82l2w==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "freebsd" @@ -2590,14 +2514,13 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.3.tgz", - "integrity": "sha512-dDk0X87T7mI6U3K9VjWtHOXqwAMJBNN2r7bejDsc+j03SEjtD9HrOl8gVFByeM0aJksoUuUVU9TBaZa2rgj0oA==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.7.tgz", + "integrity": "sha512-jOBDK5XEjA4m5IJK3bpAQF9/Lelu/Z9ZcdhTRLf4cajlB+8VEhFFRjWgfy3M1O4rO2GQ/b2dLwCUGpiF/eATNQ==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "freebsd" @@ -2607,14 +2530,13 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.3.tgz", - "integrity": "sha512-s6nPv2QkSupJwLYyfS+gwdirm0ukyTFNl3KTgZEAiJDd+iHZcbTPPcWCcRYH+WlNbwChgH2QkE9NSlNrMT8Gfw==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.7.tgz", + "integrity": "sha512-RkT/YXYBTSULo3+af8Ib0ykH8u2MBh57o7q/DAs3lTJlyVQkgQvlrPTnjIzzRPQyavxtPtfg0EopvDyIt0j1rA==", "cpu": [ "arm" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" @@ -2624,14 +2546,13 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.3.tgz", - "integrity": "sha512-sZOuFz/xWnZ4KH3YfFrKCf1WyPZHakVzTiqji3WDc0BCl2kBwiJLCXpzLzUBLgmp4veFZdvN5ChW4Eq/8Fc2Fg==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.7.tgz", + "integrity": "sha512-RZPHBoxXuNnPQO9rvjh5jdkRmVizktkT7TCDkDmQ0W2SwHInKCAV95GRuvdSvA7w4VMwfCjUiPwDi0ZO6Nfe9A==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" @@ -2641,14 +2562,13 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.3.tgz", - "integrity": "sha512-yGlQYjdxtLdh0a3jHjuwOrxQjOZYD/C9PfdbgJJF3TIZWnm/tMd/RcNiLngiu4iwcBAOezdnSLAwQDPqTmtTYg==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.7.tgz", + "integrity": "sha512-GA48aKNkyQDbd3KtkplYWT102C5sn/EZTY4XROkxONgruHPU72l+gW+FfF8tf2cFjeHaRbWpOYa/uRBz/Xq1Pg==", "cpu": [ "ia32" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" @@ -2658,14 +2578,13 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.3.tgz", - "integrity": "sha512-WO60Sn8ly3gtzhyjATDgieJNet/KqsDlX5nRC5Y3oTFcS1l0KWba+SEa9Ja1GfDqSF1z6hif/SkpQJbL63cgOA==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.7.tgz", + "integrity": "sha512-a4POruNM2oWsD4WKvBSEKGIiWQF8fZOAsycHOt6JBpZ+JN2n2JH9WAv56SOyu9X5IqAjqSIPTaJkqN8F7XOQ5Q==", "cpu": [ "loong64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" @@ -2675,14 +2594,13 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.3.tgz", - "integrity": "sha512-APsymYA6sGcZ4pD6k+UxbDjOFSvPWyZhjaiPyl/f79xKxwTnrn5QUnXR5prvetuaSMsb4jgeHewIDCIWljrSxw==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.7.tgz", + "integrity": "sha512-KabT5I6StirGfIz0FMgl1I+R1H73Gp0ofL9A3nG3i/cYFJzKHhouBV5VWK1CSgKvVaG4q1RNpCTR2LuTVB3fIw==", "cpu": [ "mips64el" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" @@ -2692,14 +2610,13 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.3.tgz", - "integrity": "sha512-eizBnTeBefojtDb9nSh4vvVQ3V9Qf9Df01PfawPcRzJH4gFSgrObw+LveUyDoKU3kxi5+9RJTCWlj4FjYXVPEA==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.7.tgz", + "integrity": "sha512-gRsL4x6wsGHGRqhtI+ifpN/vpOFTQtnbsupUF5R5YTAg+y/lKelYR1hXbnBdzDjGbMYjVJLJTd2OFmMewAgwlQ==", "cpu": [ "ppc64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" @@ -2709,14 +2626,13 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.3.tgz", - "integrity": "sha512-3Emwh0r5wmfm3ssTWRQSyVhbOHvqegUDRd0WhmXKX2mkHJe1SFCMJhagUleMq+Uci34wLSipf8Lagt4LlpRFWQ==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.7.tgz", + "integrity": "sha512-hL25LbxO1QOngGzu2U5xeXtxXcW+/GvMN3ejANqXkxZ/opySAZMrc+9LY/WyjAan41unrR3YrmtTsUpwT66InQ==", "cpu": [ "riscv64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" @@ -2726,14 +2642,13 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.3.tgz", - "integrity": "sha512-pBHUx9LzXWBc7MFIEEL0yD/ZVtNgLytvx60gES28GcWMqil8ElCYR4kvbV2BDqsHOvVDRrOxGySBM9Fcv744hw==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.7.tgz", + "integrity": "sha512-2k8go8Ycu1Kb46vEelhu1vqEP+UeRVj2zY1pSuPdgvbd5ykAw82Lrro28vXUrRmzEsUV0NzCf54yARIK8r0fdw==", "cpu": [ "s390x" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" @@ -2743,14 +2658,13 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.3.tgz", - "integrity": "sha512-Czi8yzXUWIQYAtL/2y6vogER8pvcsOsk5cpwL4Gk5nJqH5UZiVByIY8Eorm5R13gq+DQKYg0+JyQoytLQas4dA==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.7.tgz", + "integrity": "sha512-hzznmADPt+OmsYzw1EE33ccA+HPdIqiCRq7cQeL1Jlq2gb1+OyWBkMCrYGBJ+sxVzve2ZJEVeePbLM2iEIZSxA==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" @@ -2760,14 +2674,13 @@ } }, "node_modules/@esbuild/netbsd-arm64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.3.tgz", - "integrity": "sha512-sDpk0RgmTCR/5HguIZa9n9u+HVKf40fbEUt+iTzSnCaGvY9kFP0YKBWZtJaraonFnqef5SlJ8/TiPAxzyS+UoA==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.7.tgz", + "integrity": "sha512-b6pqtrQdigZBwZxAn1UpazEisvwaIDvdbMbmrly7cDTMFnw/+3lVxxCTGOrkPVnsYIosJJXAsILG9XcQS+Yu6w==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "netbsd" @@ -2777,14 +2690,13 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.3.tgz", - "integrity": "sha512-P14lFKJl/DdaE00LItAukUdZO5iqNH7+PjoBm+fLQjtxfcfFE20Xf5CrLsmZdq5LFFZzb5JMZ9grUwvtVYzjiA==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.7.tgz", + "integrity": "sha512-OfatkLojr6U+WN5EDYuoQhtM+1xco+/6FSzJJnuWiUw5eVcicbyK3dq5EeV/QHT1uy6GoDhGbFpprUiHUYggrw==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "netbsd" @@ -2794,14 +2706,13 @@ } }, "node_modules/@esbuild/openbsd-arm64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.3.tgz", - "integrity": "sha512-AIcMP77AvirGbRl/UZFTq5hjXK+2wC7qFRGoHSDrZ5v5b8DK/GYpXW3CPRL53NkvDqb9D+alBiC/dV0Fb7eJcw==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.7.tgz", + "integrity": "sha512-AFuojMQTxAz75Fo8idVcqoQWEHIXFRbOc1TrVcFSgCZtQfSdc1RXgB3tjOn/krRHENUB4j00bfGjyl2mJrU37A==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "openbsd" @@ -2811,14 +2722,13 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.3.tgz", - "integrity": "sha512-DnW2sRrBzA+YnE70LKqnM3P+z8vehfJWHXECbwBmH/CU51z6FiqTQTHFenPlHmo3a8UgpLyH3PT+87OViOh1AQ==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.7.tgz", + "integrity": "sha512-+A1NJmfM8WNDv5CLVQYJ5PshuRm/4cI6WMZRg1by1GwPIQPCTs1GLEUHwiiQGT5zDdyLiRM/l1G0Pv54gvtKIg==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "openbsd" @@ -2828,14 +2738,13 @@ } }, "node_modules/@esbuild/openharmony-arm64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.3.tgz", - "integrity": "sha512-NinAEgr/etERPTsZJ7aEZQvvg/A6IsZG/LgZy+81wON2huV7SrK3e63dU0XhyZP4RKGyTm7aOgmQk0bGp0fy2g==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.7.tgz", + "integrity": "sha512-+KrvYb/C8zA9CU/g0sR6w2RBw7IGc5J2BPnc3dYc5VJxHCSF1yNMxTV5LQ7GuKteQXZtspjFbiuW5/dOj7H4Yw==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "openharmony" @@ -2845,14 +2754,13 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.3.tgz", - "integrity": "sha512-PanZ+nEz+eWoBJ8/f8HKxTTD172SKwdXebZ0ndd953gt1HRBbhMsaNqjTyYLGLPdoWHy4zLU7bDVJztF5f3BHA==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.7.tgz", + "integrity": "sha512-ikktIhFBzQNt/QDyOL580ti9+5mL/YZeUPKU2ivGtGjdTYoqz6jObj6nOMfhASpS4GU4Q/Clh1QtxWAvcYKamA==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "sunos" @@ -2862,14 +2770,13 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.3.tgz", - "integrity": "sha512-B2t59lWWYrbRDw/tjiWOuzSsFh1Y/E95ofKz7rIVYSQkUYBjfSgf6oeYPNWHToFRr2zx52JKApIcAS/D5TUBnA==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.7.tgz", + "integrity": "sha512-7yRhbHvPqSpRUV7Q20VuDwbjW5kIMwTHpptuUzV+AA46kiPze5Z7qgt6CLCK3pWFrHeNfDd1VKgyP4O+ng17CA==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "win32" @@ -2879,14 +2786,13 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.3.tgz", - "integrity": "sha512-QLKSFeXNS8+tHW7tZpMtjlNb7HKau0QDpwm49u0vUp9y1WOF+PEzkU84y9GqYaAVW8aH8f3GcBck26jh54cX4Q==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.7.tgz", + "integrity": "sha512-SmwKXe6VHIyZYbBLJrhOoCJRB/Z1tckzmgTLfFYOfpMAx63BJEaL9ExI8x7v0oAO3Zh6D/Oi1gVxEYr5oUCFhw==", "cpu": [ "ia32" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "win32" @@ -2896,14 +2802,13 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.3.tgz", - "integrity": "sha512-4uJGhsxuptu3OcpVAzli+/gWusVGwZZHTlS63hh++ehExkVT8SgiEf7/uC/PclrPPkLhZqGgCTjd0VWLo6xMqA==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.7.tgz", + "integrity": "sha512-56hiAJPhwQ1R4i+21FVF7V8kSD5zZTdHcVuRFMW0hn753vVfQN8xlx4uOPT4xoGH0Z/oVATuR82AiqSTDIpaHg==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "win32" @@ -2969,9 +2874,9 @@ "license": "Python-2.0" }, "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", - "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.14.tgz", + "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==", "dev": true, "dependencies": { "balanced-match": "^1.0.0", @@ -3047,7 +2952,6 @@ "version": "1.0.0-alpha.23", "resolved": "https://registry.npmjs.org/@fluentui/tokens/-/tokens-1.0.0-alpha.23.tgz", "integrity": "sha512-uxrzF9Z+J10naP0pGS7zPmzSkspSS+3OJDmYIK3o1nkntQrgBXq3dBob4xSlTDm5aOQ0kw6EvB9wQgtlyy4eKQ==", - "license": "MIT", "dependencies": { "@swc/helpers": "^0.5.1" } @@ -3089,12 +2993,12 @@ } }, "node_modules/@happy-dom/jest-environment": { - "version": "20.0.11", - "resolved": "https://registry.npmjs.org/@happy-dom/jest-environment/-/jest-environment-20.0.11.tgz", - "integrity": "sha512-gsd01XEvkP290xE29Se2hCzXh0V+9CoKfBZ1RsDPjWd80xmiYuVdpzrnxjAl3MvM5z/YPaMNQCIJizEdu7uWsg==", + "version": "20.9.0", + "resolved": "https://registry.npmjs.org/@happy-dom/jest-environment/-/jest-environment-20.9.0.tgz", + "integrity": "sha512-6FjF0leAEPLuUOkeN63HmV4kbVHAaddz3I5au44ZtV3WyJS2nxXhH1Xx9mXA/0vIgIEVD20SYzmDtixap2LSpQ==", "dev": true, "dependencies": { - "happy-dom": "^20.0.11" + "happy-dom": "^20.9.0" }, "engines": { "node": ">=20.0.0" @@ -3121,9 +3025,9 @@ } }, "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", - "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.14.tgz", + "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==", "dev": true, "dependencies": { "balanced-match": "^1.0.0", @@ -3164,7 +3068,6 @@ "version": "8.0.2", "dev": true, "license": "ISC", - "peer": true, "dependencies": { "string-width": "^5.1.2", "string-width-cjs": "npm:string-width@^4.2.0", @@ -3182,7 +3085,6 @@ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz", "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==", "dev": true, - "peer": true, "engines": { "node": ">=12" }, @@ -3195,7 +3097,6 @@ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", "dev": true, - "peer": true, "engines": { "node": ">=12" }, @@ -3206,14 +3107,12 @@ "node_modules/@isaacs/cliui/node_modules/emoji-regex": { "version": "9.2.2", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/@isaacs/cliui/node_modules/string-width": { "version": "5.1.2", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "eastasianwidth": "^0.2.0", "emoji-regex": "^9.2.2", @@ -3232,7 +3131,6 @@ "integrity": "sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "ansi-regex": "^6.2.2" }, @@ -3247,7 +3145,6 @@ "version": "8.1.0", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "ansi-styles": "^6.1.0", "string-width": "^5.0.1", @@ -3897,8 +3794,7 @@ "node_modules/@jridgewell/sourcemap-codec": { "version": "1.5.5", "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", - "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", - "license": "MIT" + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==" }, "node_modules/@jridgewell/trace-mapping": { "version": "0.3.29", @@ -4540,7 +4436,6 @@ "dev": true, "license": "MIT", "optional": true, - "peer": true, "engines": { "node": ">=14" } @@ -4559,14 +4454,9 @@ } }, "node_modules/@redux-devtools/extension": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@redux-devtools/extension/-/extension-3.3.0.tgz", - "integrity": "sha512-X34S/rC8S/M1BIrkYD1mJ5f8vlH0BDqxXrs96cvxSBo4FhMdbhU+GUGsmNYov1xjSyLMHgo8NYrUG8bNX7525g==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.23.2", - "immutable": "^4.3.4" - }, + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@redux-devtools/extension/-/extension-4.0.0.tgz", + "integrity": "sha512-pLIzgo5MvqdDLe5D1pzHLgmr8THra/DOyRf5MvOEPZnKKDn6RhFbNSS5oXZ3Cal0cpx08kx7sR6zD8QgoXEnZA==", "peerDependencies": { "redux": "^3.1.0 || ^4.0.0 || ^5.0.0" } @@ -4622,11 +4512,10 @@ "integrity": "sha512-YRCrJdhQLobGIQ8Cj1sta3nn6DrZDTSUnrIYhS2e5V590BmfVDleKoAquclAiKSBKWJwmuXTb+b4BL6rSHnahw==" }, "node_modules/@rollup/plugin-node-resolve": { - "version": "16.0.2", - "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-16.0.2.tgz", - "integrity": "sha512-tCtHJ2BlhSoK4cCs25NMXfV7EALKr0jyasmqVCq3y9cBrKdmJhtsy1iTz36Xhk/O+pDJbzawxF4K6ZblqCnITQ==", + "version": "16.0.3", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-16.0.3.tgz", + "integrity": "sha512-lUYM3UBGuM93CnMPG1YocWu7X802BrNF3jW2zny5gQyLQgRFJhV1Sq0Zi74+dh/6NBx1DxFC4b4GXg9wUCG5Qg==", "dev": true, - "license": "MIT", "dependencies": { "@rollup/pluginutils": "^5.0.1", "@types/resolve": "1.20.2", @@ -4651,7 +4540,6 @@ "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.3.0.tgz", "integrity": "sha512-5EdhGZtnu3V88ces7s53hhfK5KSASnJZv8Lulpc04cWO3REESroJXg73DFsOmgbU2BhwV0E20bu2IDZb3VKW4Q==", "dev": true, - "license": "MIT", "dependencies": { "@types/estree": "^1.0.0", "estree-walker": "^2.0.2", @@ -4682,350 +4570,325 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.59.0.tgz", - "integrity": "sha512-upnNBkA6ZH2VKGcBj9Fyl9IGNPULcjXRlg0LLeaioQWueH30p6IXtJEbKAgvyv+mJaMxSm1l6xwDXYjpEMiLMg==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.60.2.tgz", + "integrity": "sha512-dnlp69efPPg6Uaw2dVqzWRfAWRnYVb1XJ8CyyhIbZeaq4CA5/mLeZ1IEt9QqQxmbdvagjLIm2ZL8BxXv5lH4Yw==", "cpu": [ "arm" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "android" ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.59.0.tgz", - "integrity": "sha512-hZ+Zxj3SySm4A/DylsDKZAeVg0mvi++0PYVceVyX7hemkw7OreKdCvW2oQ3T1FMZvCaQXqOTHb8qmBShoqk69Q==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.60.2.tgz", + "integrity": "sha512-OqZTwDRDchGRHHm/hwLOL7uVPB9aUvI0am/eQuWMNyFHf5PSEQmyEeYYheA0EPPKUO/l0uigCp+iaTjoLjVoHg==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "android" ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.59.0.tgz", - "integrity": "sha512-W2Psnbh1J8ZJw0xKAd8zdNgF9HRLkdWwwdWqubSVk0pUuQkoHnv7rx4GiF9rT4t5DIZGAsConRE3AxCdJ4m8rg==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.60.2.tgz", + "integrity": "sha512-UwRE7CGpvSVEQS8gUMBe1uADWjNnVgP3Iusyda1nSRwNDCsRjnGc7w6El6WLQsXmZTbLZx9cecegumcitNfpmA==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "darwin" ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.59.0.tgz", - "integrity": "sha512-ZW2KkwlS4lwTv7ZVsYDiARfFCnSGhzYPdiOU4IM2fDbL+QGlyAbjgSFuqNRbSthybLbIJ915UtZBtmuLrQAT/w==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.60.2.tgz", + "integrity": "sha512-gjEtURKLCC5VXm1I+2i1u9OhxFsKAQJKTVB8WvDAHF+oZlq0GTVFOlTlO1q3AlCTE/DF32c16ESvfgqR7343/g==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "darwin" ] }, "node_modules/@rollup/rollup-freebsd-arm64": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.59.0.tgz", - "integrity": "sha512-EsKaJ5ytAu9jI3lonzn3BgG8iRBjV4LxZexygcQbpiU0wU0ATxhNVEpXKfUa0pS05gTcSDMKpn3Sx+QB9RlTTA==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.60.2.tgz", + "integrity": "sha512-Bcl6CYDeAgE70cqZaMojOi/eK63h5Me97ZqAQoh77VPjMysA/4ORQBRGo3rRy45x4MzVlU9uZxs8Uwy7ZaKnBw==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "freebsd" ] }, "node_modules/@rollup/rollup-freebsd-x64": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.59.0.tgz", - "integrity": "sha512-d3DuZi2KzTMjImrxoHIAODUZYoUUMsuUiY4SRRcJy6NJoZ6iIqWnJu9IScV9jXysyGMVuW+KNzZvBLOcpdl3Vg==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.60.2.tgz", + "integrity": "sha512-LU+TPda3mAE2QB0/Hp5VyeKJivpC6+tlOXd1VMoXV/YFMvk/MNk5iXeBfB4MQGRWyOYVJ01625vjkr0Az98OJQ==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "freebsd" ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.59.0.tgz", - "integrity": "sha512-t4ONHboXi/3E0rT6OZl1pKbl2Vgxf9vJfWgmUoCEVQVxhW6Cw/c8I6hbbu7DAvgp82RKiH7TpLwxnJeKv2pbsw==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.60.2.tgz", + "integrity": "sha512-2QxQrM+KQ7DAW4o22j+XZ6RKdxjLD7BOWTP0Bv0tmjdyhXSsr2Ul1oJDQqh9Zf5qOwTuTc7Ek83mOFaKnodPjg==", "cpu": [ "arm" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.59.0.tgz", - "integrity": "sha512-CikFT7aYPA2ufMD086cVORBYGHffBo4K8MQ4uPS/ZnY54GKj36i196u8U+aDVT2LX4eSMbyHtyOh7D7Zvk2VvA==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.60.2.tgz", + "integrity": "sha512-TbziEu2DVsTEOPif2mKWkMeDMLoYjx95oESa9fkQQK7r/Orta0gnkcDpzwufEcAO2BLBsD7mZkXGFqEdMRRwfw==", "cpu": [ "arm" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.59.0.tgz", - "integrity": "sha512-jYgUGk5aLd1nUb1CtQ8E+t5JhLc9x5WdBKew9ZgAXg7DBk0ZHErLHdXM24rfX+bKrFe+Xp5YuJo54I5HFjGDAA==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.60.2.tgz", + "integrity": "sha512-bO/rVDiDUuM2YfuCUwZ1t1cP+/yqjqz+Xf2VtkdppefuOFS2OSeAfgafaHNkFn0t02hEyXngZkxtGqXcXwO8Rg==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.59.0.tgz", - "integrity": "sha512-peZRVEdnFWZ5Bh2KeumKG9ty7aCXzzEsHShOZEFiCQlDEepP1dpUl/SrUNXNg13UmZl+gzVDPsiCwnV1uI0RUA==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.60.2.tgz", + "integrity": "sha512-hr26p7e93Rl0Za+JwW7EAnwAvKkehh12BU1Llm9Ykiibg4uIr2rbpxG9WCf56GuvidlTG9KiiQT/TXT1yAWxTA==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-loong64-gnu": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.59.0.tgz", - "integrity": "sha512-gbUSW/97f7+r4gHy3Jlup8zDG190AuodsWnNiXErp9mT90iCy9NKKU0Xwx5k8VlRAIV2uU9CsMnEFg/xXaOfXg==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.60.2.tgz", + "integrity": "sha512-pOjB/uSIyDt+ow3k/RcLvUAOGpysT2phDn7TTUB3n75SlIgZzM6NKAqlErPhoFU+npgY3/n+2HYIQVbF70P9/A==", "cpu": [ "loong64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-loong64-musl": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.59.0.tgz", - "integrity": "sha512-yTRONe79E+o0FWFijasoTjtzG9EBedFXJMl888NBEDCDV9I2wGbFFfJQQe63OijbFCUZqxpHz1GzpbtSFikJ4Q==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.60.2.tgz", + "integrity": "sha512-2/w+q8jszv9Ww1c+6uJT3OwqhdmGP2/4T17cu8WuwyUuuaCDDJ2ojdyYwZzCxx0GcsZBhzi3HmH+J5pZNXnd+Q==", "cpu": [ "loong64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-ppc64-gnu": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.59.0.tgz", - "integrity": "sha512-sw1o3tfyk12k3OEpRddF68a1unZ5VCN7zoTNtSn2KndUE+ea3m3ROOKRCZxEpmT9nsGnogpFP9x6mnLTCaoLkA==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.60.2.tgz", + "integrity": "sha512-11+aL5vKheYgczxtPVVRhdptAM2H7fcDR5Gw4/bTcteuZBlH4oP9f5s9zYO9aGZvoGeBpqXI/9TZZihZ609wKw==", "cpu": [ "ppc64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-ppc64-musl": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.59.0.tgz", - "integrity": "sha512-+2kLtQ4xT3AiIxkzFVFXfsmlZiG5FXYW7ZyIIvGA7Bdeuh9Z0aN4hVyXS/G1E9bTP/vqszNIN/pUKCk/BTHsKA==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.60.2.tgz", + "integrity": "sha512-i16fokAGK46IVZuV8LIIwMdtqhin9hfYkCh8pf8iC3QU3LpwL+1FSFGej+O7l3E/AoknL6Dclh2oTdnRMpTzFQ==", "cpu": [ "ppc64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.59.0.tgz", - "integrity": "sha512-NDYMpsXYJJaj+I7UdwIuHHNxXZ/b/N2hR15NyH3m2qAtb/hHPA4g4SuuvrdxetTdndfj9b1WOmy73kcPRoERUg==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.60.2.tgz", + "integrity": "sha512-49FkKS6RGQoriDSK/6E2GkAsAuU5kETFCh7pG4yD/ylj9rKhTmO3elsnmBvRD4PgJPds5W2PkhC82aVwmUcJ7A==", "cpu": [ "riscv64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-riscv64-musl": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.59.0.tgz", - "integrity": "sha512-nLckB8WOqHIf1bhymk+oHxvM9D3tyPndZH8i8+35p/1YiVoVswPid2yLzgX7ZJP0KQvnkhM4H6QZ5m0LzbyIAg==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.60.2.tgz", + "integrity": "sha512-mjYNkHPfGpUR00DuM1ZZIgs64Hpf4bWcz9Z41+4Q+pgDx73UwWdAYyf6EG/lRFldmdHHzgrYyge5akFUW0D3mQ==", "cpu": [ "riscv64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.59.0.tgz", - "integrity": "sha512-oF87Ie3uAIvORFBpwnCvUzdeYUqi2wY6jRFWJAy1qus/udHFYIkplYRW+wo+GRUP4sKzYdmE1Y3+rY5Gc4ZO+w==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.60.2.tgz", + "integrity": "sha512-ALyvJz965BQk8E9Al/JDKKDLH2kfKFLTGMlgkAbbYtZuJt9LU8DW3ZoDMCtQpXAltZxwBHevXz5u+gf0yA0YoA==", "cpu": [ "s390x" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.59.0.tgz", - "integrity": "sha512-3AHmtQq/ppNuUspKAlvA8HtLybkDflkMuLK4DPo77DfthRb71V84/c4MlWJXixZz4uruIH4uaa07IqoAkG64fg==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.60.2.tgz", + "integrity": "sha512-UQjrkIdWrKI626Du8lCQ6MJp/6V1LAo2bOK9OTu4mSn8GGXIkPXk/Vsp4bLHCd9Z9Iz2OTEaokUE90VweJgIYQ==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.59.0.tgz", - "integrity": "sha512-2UdiwS/9cTAx7qIUZB/fWtToJwvt0Vbo0zmnYt7ED35KPg13Q0ym1g442THLC7VyI6JfYTP4PiSOWyoMdV2/xg==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.60.2.tgz", + "integrity": "sha512-bTsRGj6VlSdn/XD4CGyzMnzaBs9bsRxy79eTqTCBsA8TMIEky7qg48aPkvJvFe1HyzQ5oMZdg7AnVlWQSKLTnw==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-openbsd-x64": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.59.0.tgz", - "integrity": "sha512-M3bLRAVk6GOwFlPTIxVBSYKUaqfLrn8l0psKinkCFxl4lQvOSz8ZrKDz2gxcBwHFpci0B6rttydI4IpS4IS/jQ==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.60.2.tgz", + "integrity": "sha512-6d4Z3534xitaA1FcMWP7mQPq5zGwBmGbhphh2DwaA1aNIXUu3KTOfwrWpbwI4/Gr0uANo7NTtaykFyO2hPuFLg==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "openbsd" ] }, "node_modules/@rollup/rollup-openharmony-arm64": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.59.0.tgz", - "integrity": "sha512-tt9KBJqaqp5i5HUZzoafHZX8b5Q2Fe7UjYERADll83O4fGqJ49O1FsL6LpdzVFQcpwvnyd0i+K/VSwu/o/nWlA==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.60.2.tgz", + "integrity": "sha512-NetAg5iO2uN7eB8zE5qrZ3CSil+7IJt4WDFLcC75Ymywq1VZVD6qJ6EvNLjZ3rEm6gB7XW5JdT60c6MN35Z85Q==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "openharmony" ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.59.0.tgz", - "integrity": "sha512-V5B6mG7OrGTwnxaNUzZTDTjDS7F75PO1ae6MJYdiMu60sq0CqN5CVeVsbhPxalupvTX8gXVSU9gq+Rx1/hvu6A==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.60.2.tgz", + "integrity": "sha512-NCYhOotpgWZ5kdxCZsv6Iudx0wX8980Q/oW4pNFNihpBKsDbEA1zpkfxJGC0yugsUuyDZ7gL37dbzwhR0VI7pQ==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "win32" ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.59.0.tgz", - "integrity": "sha512-UKFMHPuM9R0iBegwzKF4y0C4J9u8C6MEJgFuXTBerMk7EJ92GFVFYBfOZaSGLu6COf7FxpQNqhNS4c4icUPqxA==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.60.2.tgz", + "integrity": "sha512-RXsaOqXxfoUBQoOgvmmijVxJnW2IGB0eoMO7F8FAjaj0UTywUO/luSqimWBJn04WNgUkeNhh7fs7pESXajWmkg==", "cpu": [ "ia32" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "win32" ] }, "node_modules/@rollup/rollup-win32-x64-gnu": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.59.0.tgz", - "integrity": "sha512-laBkYlSS1n2L8fSo1thDNGrCTQMmxjYY5G0WFWjFFYZkKPjsMBsgJfGf4TLxXrF6RyhI60L8TMOjBMvXiTcxeA==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.60.2.tgz", + "integrity": "sha512-qdAzEULD+/hzObedtmV6iBpdL5TIbKVztGiK7O3/KYSf+HIzU257+MX1EXJcyIiDbMAqmbwaufcYPvyRryeZtA==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "win32" ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.59.0.tgz", - "integrity": "sha512-2HRCml6OztYXyJXAvdDXPKcawukWY2GpR5/nxKp4iBgiO3wcoEGkAaqctIbZcNB6KlUQBIqt8VYkNSj2397EfA==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.60.2.tgz", + "integrity": "sha512-Nd/SgG27WoA9e+/TdK74KnHz852TLa94ovOYySo/yMPuTmpckK/jIF2jSwS3g7ELSKXK13/cVdmg1Z/DaCWKxA==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "win32" @@ -5139,7 +5002,6 @@ "resolved": "https://registry.npmjs.org/@testduet/given-when-then/-/given-when-then-0.1.0.tgz", "integrity": "sha512-Ts2LzdmFycynneaO7l2nOWNej47tQxg0QxMcFmDmguV5PjiX7P8k6H5HjP2vrsiN5tFDY5QyB76SdjyTyOMSjw==", "dev": true, - "license": "MIT", "dependencies": { "@testduet/given-when-then": "^0.1.0" } @@ -5221,8 +5083,7 @@ "version": "2.0.8", "resolved": "https://registry.npmjs.org/@tsconfig/strictest/-/strictest-2.0.8.tgz", "integrity": "sha512-XnQ7vNz5HRN0r88GYf1J9JJjqtZPiHt2woGJOo2dYqyHGGcd6OLGqSlBB6p1j9mpzja6Oe5BoPqWmeDx6X9rLw==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/@tsd/typescript": { "version": "5.9.3", @@ -5283,11 +5144,10 @@ } }, "node_modules/@types/dom-speech-recognition": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/@types/dom-speech-recognition/-/dom-speech-recognition-0.0.7.tgz", - "integrity": "sha512-NjiUoJbBlKhyufNsMZLSp+pbPNtPAFnR738RCJvtZy/HVQ2TZjmqpMyaeOSMXgxdfZM60nt8QGbtfmQrJAH2sw==", - "dev": true, - "license": "MIT" + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/@types/dom-speech-recognition/-/dom-speech-recognition-0.0.9.tgz", + "integrity": "sha512-uxta75eB62f/Jex9wYTAypKKpiEZ5nOvBRj3TI4yI7JSc65y9eF/Lh9SFjCE3xACj5O5ox2d8nTQFe7Y/nJzfw==", + "dev": true }, "node_modules/@types/eslint": { "version": "9.6.1", @@ -5367,7 +5227,6 @@ "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.14.tgz", "integrity": "sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==", "dev": true, - "license": "MIT", "dependencies": { "expect": "^29.0.0", "pretty-format": "^29.0.0" @@ -5416,14 +5275,12 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/@types/math-random/-/math-random-1.0.2.tgz", "integrity": "sha512-DGQhRH6YJ4ZYkwd0k+GUax+CXd2aJOiwljwhuxfKCiaTvRoDESs0DpEVdLIKqtcxaGWKNXwfMkmZm99wTEbLsA==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/@types/mdast": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz", "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==", - "license": "MIT", "dependencies": { "@types/unist": "*" } @@ -5438,11 +5295,11 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "25.5.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-25.5.2.tgz", - "integrity": "sha512-tO4ZIRKNC+MDWV4qKVZe3Ql/woTnmHDr5JD8UI5hn2pwBrHEwOEMZK7WlNb5RKB6EoJ02gwmQS9OrjuFnZYdpg==", + "version": "25.6.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-25.6.0.tgz", + "integrity": "sha512-+qIYRKdNYJwY3vRCZMdJbPLJAtGjQBudzZzdzwQYkEPQd+PJGixUL5QfvCLDaULoLv+RhT3LDkwEfKaAkgSmNQ==", "dependencies": { - "undici-types": "~7.18.0" + "undici-types": "~7.19.0" } }, "node_modules/@types/normalize-package-data": { @@ -5477,7 +5334,6 @@ "version": "16.14.69", "resolved": "https://registry.npmjs.org/@types/react/-/react-16.14.69.tgz", "integrity": "sha512-NdnAamzkxLX9LBssSdt9Q0tQ3LR94hYxotI4/sRUs1vHKFXaDx9xDbK8S4wuw5bwrxiiXbTYyhKeITtFnwDvEA==", - "license": "MIT", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "^0.16", @@ -5488,7 +5344,6 @@ "version": "16.9.25", "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-16.9.25.tgz", "integrity": "sha512-ZK//eAPhwft9Ul2/Zj+6O11YR6L4JX0J2sVeBC9Ft7x7HFN7xk7yUV/zDxqV6rjvqgl6r8Dq7oQImxtyf/Mzcw==", - "license": "MIT", "peerDependencies": { "@types/react": "^16.0.0" } @@ -5498,7 +5353,6 @@ "resolved": "https://registry.npmjs.org/@types/react-is/-/react-is-16.7.5.tgz", "integrity": "sha512-fcPxYqcx6uLZwl+SlcHs2C/3lU2+yM9paQiVokQW5Ux4ywpHRYsfDmraSRGec+5rw3xpXR3w7usvJAoKic6fyg==", "dev": true, - "license": "MIT", "dependencies": { "@types/react": "^16" } @@ -5524,8 +5378,7 @@ "version": "1.20.2", "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz", "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/@types/scheduler": { "version": "0.16.8", @@ -5551,15 +5404,13 @@ "version": "1.5.0", "resolved": "https://registry.npmjs.org/@types/use-sync-external-store/-/use-sync-external-store-1.5.0.tgz", "integrity": "sha512-5dyB8nLC/qogMrlCizZnYWQTA4lnb/v+It+sqNl5YnSRAPMlIqY/X0Xn+gZw8vOL+TgTTr28VEbn3uf8fUtAkw==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/@types/uuid": { "version": "8.3.4", "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.4.tgz", "integrity": "sha512-c/I8ZRb51j+pYGAu5CrFMRxqZ2ke4y2grEBO5AUjgSkSk+qT2Ea+OdWElz/OiMf5MNpn2b17kuVBwZLQJXzihw==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/@types/webrtc": { "version": "0.0.37", @@ -5593,20 +5444,19 @@ "license": "MIT" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.56.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.56.1.tgz", - "integrity": "sha512-Jz9ZztpB37dNC+HU2HI28Bs9QXpzCz+y/twHOwhyrIRdbuVDxSytJNDl6z/aAKlaRIwC7y8wJdkBv7FxYGgi0A==", + "version": "8.59.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.59.0.tgz", + "integrity": "sha512-HyAZtpdkgZwpq8Sz3FSUvCR4c+ScbuWa9AksK2Jweub7w4M3yTz4O11AqVJzLYjy/B9ZWPyc81I+mOdJU/bDQw==", "dev": true, - "license": "MIT", "dependencies": { "@eslint-community/regexpp": "^4.12.2", - "@typescript-eslint/scope-manager": "8.56.1", - "@typescript-eslint/type-utils": "8.56.1", - "@typescript-eslint/utils": "8.56.1", - "@typescript-eslint/visitor-keys": "8.56.1", + "@typescript-eslint/scope-manager": "8.59.0", + "@typescript-eslint/type-utils": "8.59.0", + "@typescript-eslint/utils": "8.59.0", + "@typescript-eslint/visitor-keys": "8.59.0", "ignore": "^7.0.5", "natural-compare": "^1.4.0", - "ts-api-utils": "^2.4.0" + "ts-api-utils": "^2.5.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -5616,9 +5466,9 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.56.1", + "@typescript-eslint/parser": "^8.59.0", "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", - "typescript": ">=4.8.4 <6.0.0" + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { @@ -5630,16 +5480,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.56.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.56.1.tgz", - "integrity": "sha512-klQbnPAAiGYFyI02+znpBRLyjL4/BrBd0nyWkdC0s/6xFLkXYQ8OoRrSkqacS1ddVxf/LDyODIKbQ5TgKAf/Fg==", + "version": "8.59.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.59.0.tgz", + "integrity": "sha512-TI1XGwKbDpo9tRW8UDIXCOeLk55qe9ZFGs8MTKU6/M08HWTw52DD/IYhfQtOEhEdPhLMT26Ka/x7p70nd3dzDg==", "dev": true, - "license": "MIT", "dependencies": { - "@typescript-eslint/scope-manager": "8.56.1", - "@typescript-eslint/types": "8.56.1", - "@typescript-eslint/typescript-estree": "8.56.1", - "@typescript-eslint/visitor-keys": "8.56.1", + "@typescript-eslint/scope-manager": "8.59.0", + "@typescript-eslint/types": "8.59.0", + "@typescript-eslint/typescript-estree": "8.59.0", + "@typescript-eslint/visitor-keys": "8.59.0", "debug": "^4.4.3" }, "engines": { @@ -5651,18 +5500,17 @@ }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", - "typescript": ">=4.8.4 <6.0.0" + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/project-service": { - "version": "8.56.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.56.1.tgz", - "integrity": "sha512-TAdqQTzHNNvlVFfR+hu2PDJrURiwKsUvxFn1M0h95BB8ah5jejas08jUWG4dBA68jDMI988IvtfdAI53JzEHOQ==", + "version": "8.59.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.59.0.tgz", + "integrity": "sha512-Lw5ITrR5s5TbC19YSvlr63ZfLaJoU6vtKTHyB0GQOpX0W7d5/Ir6vUahWi/8Sps/nOukZQ0IB3SmlxZnjaKVnw==", "dev": true, - "license": "MIT", "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.56.1", - "@typescript-eslint/types": "^8.56.1", + "@typescript-eslint/tsconfig-utils": "^8.59.0", + "@typescript-eslint/types": "^8.59.0", "debug": "^4.4.3" }, "engines": { @@ -5673,18 +5521,17 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "typescript": ">=4.8.4 <6.0.0" + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.56.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.56.1.tgz", - "integrity": "sha512-YAi4VDKcIZp0O4tz/haYKhmIDZFEUPOreKbfdAN3SzUDMcPhJ8QI99xQXqX+HoUVq8cs85eRKnD+rne2UAnj2w==", + "version": "8.59.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.59.0.tgz", + "integrity": "sha512-UzR16Ut8IpA3Mc4DbgAShlPPkVm8xXMWafXxB0BocaVRHs8ZGakAxGRskF7FId3sdk9lgGD73GSFaWmWFDE4dg==", "dev": true, - "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.56.1", - "@typescript-eslint/visitor-keys": "8.56.1" + "@typescript-eslint/types": "8.59.0", + "@typescript-eslint/visitor-keys": "8.59.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -5695,11 +5542,10 @@ } }, "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.56.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.56.1.tgz", - "integrity": "sha512-qOtCYzKEeyr3aR9f28mPJqBty7+DBqsdd63eO0yyDwc6vgThj2UjWfJIcsFeSucYydqcuudMOprZ+x1SpF3ZuQ==", + "version": "8.59.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.59.0.tgz", + "integrity": "sha512-91Sbl3s4Kb3SybliIY6muFBmHVv+pYXfybC4Oolp3dvk8BvIE3wOPc+403CWIT7mJNkfQRGtdqghzs2+Z91Tqg==", "dev": true, - "license": "MIT", "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, @@ -5708,21 +5554,20 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "typescript": ">=4.8.4 <6.0.0" + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.56.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.56.1.tgz", - "integrity": "sha512-yB/7dxi7MgTtGhZdaHCemf7PuwrHMenHjmzgUW1aJpO+bBU43OycnM3Wn+DdvDO/8zzA9HlhaJ0AUGuvri4oGg==", + "version": "8.59.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.59.0.tgz", + "integrity": "sha512-3TRiZaQSltGqGeNrJzzr1+8YcEobKH9rHnqIp/1psfKFmhRQDNMGP5hBufanYTGznwShzVLs3Mz+gDN7HkWfXg==", "dev": true, - "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.56.1", - "@typescript-eslint/typescript-estree": "8.56.1", - "@typescript-eslint/utils": "8.56.1", + "@typescript-eslint/types": "8.59.0", + "@typescript-eslint/typescript-estree": "8.59.0", + "@typescript-eslint/utils": "8.59.0", "debug": "^4.4.3", - "ts-api-utils": "^2.4.0" + "ts-api-utils": "^2.5.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -5733,15 +5578,14 @@ }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", - "typescript": ">=4.8.4 <6.0.0" + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/types": { - "version": "8.56.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.56.1.tgz", - "integrity": "sha512-dbMkdIUkIkchgGDIv7KLUpa0Mda4IYjo4IAMJUZ+3xNoUXxMsk9YtKpTHSChRS85o+H9ftm51gsK1dZReY9CVw==", + "version": "8.59.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.59.0.tgz", + "integrity": "sha512-nLzdsT1gdOgFxxxwrlNVUBzSNBEEHJ86bblmk4QAS6stfig7rcJzWKqCyxFy3YRRHXDWEkb2NralA1nOYkkm/A==", "dev": true, - "license": "MIT", "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, @@ -5751,21 +5595,20 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.56.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.56.1.tgz", - "integrity": "sha512-qzUL1qgalIvKWAf9C1HpvBjif+Vm6rcT5wZd4VoMb9+Km3iS3Cv9DY6dMRMDtPnwRAFyAi7YXJpTIEXLvdfPxg==", + "version": "8.59.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.59.0.tgz", + "integrity": "sha512-O9Re9P1BmBLFJyikRbQpLku/QA3/AueZNO9WePLBwQrvkixTmDe8u76B6CYUAITRl/rHawggEqUGn5QIkVRLMw==", "dev": true, - "license": "MIT", "dependencies": { - "@typescript-eslint/project-service": "8.56.1", - "@typescript-eslint/tsconfig-utils": "8.56.1", - "@typescript-eslint/types": "8.56.1", - "@typescript-eslint/visitor-keys": "8.56.1", + "@typescript-eslint/project-service": "8.59.0", + "@typescript-eslint/tsconfig-utils": "8.59.0", + "@typescript-eslint/types": "8.59.0", + "@typescript-eslint/visitor-keys": "8.59.0", "debug": "^4.4.3", "minimatch": "^10.2.2", "semver": "^7.7.3", "tinyglobby": "^0.2.15", - "ts-api-utils": "^2.4.0" + "ts-api-utils": "^2.5.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -5775,7 +5618,7 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "typescript": ">=4.8.4 <6.0.0" + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { @@ -5783,7 +5626,6 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", "dev": true, - "license": "ISC", "bin": { "semver": "bin/semver.js" }, @@ -5792,16 +5634,15 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "8.56.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.56.1.tgz", - "integrity": "sha512-HPAVNIME3tABJ61siYlHzSWCGtOoeP2RTIaHXFMPqjrQKCGB9OgUVdiNgH7TJS2JNIQ5qQ4RsAUDuGaGme/KOA==", + "version": "8.59.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.59.0.tgz", + "integrity": "sha512-I1R/K7V07XsMJ12Oaxg/O9GfrysGTmCRhvZJBv0RE0NcULMzjqVpR5kRRQjHsz3J/bElU7HwCO7zkqL+MSUz+g==", "dev": true, - "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.9.1", - "@typescript-eslint/scope-manager": "8.56.1", - "@typescript-eslint/types": "8.56.1", - "@typescript-eslint/typescript-estree": "8.56.1" + "@typescript-eslint/scope-manager": "8.59.0", + "@typescript-eslint/types": "8.59.0", + "@typescript-eslint/typescript-estree": "8.59.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -5812,17 +5653,16 @@ }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", - "typescript": ">=4.8.4 <6.0.0" + "typescript": ">=4.8.4 <6.1.0" } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.56.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.56.1.tgz", - "integrity": "sha512-KiROIzYdEV85YygXw6BI/Dx4fnBlFQu6Mq4QE4MOH9fFnhohw6wX/OAvDY2/C+ut0I3RSPKenvZJIVYqJNkhEw==", + "version": "8.59.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.59.0.tgz", + "integrity": "sha512-/uejZt4dSere1bx12WLlPfv8GktzcaDtuJ7s42/HEZ5zGj9oxRaD4bj7qwSunXkf+pbAhFt2zjpHYUiT5lHf0Q==", "dev": true, - "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.56.1", + "@typescript-eslint/types": "8.59.0", "eslint-visitor-keys": "^5.0.0" }, "engines": { @@ -5838,7 +5678,6 @@ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz", "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==", "dev": true, - "license": "Apache-2.0", "engines": { "node": "^20.19.0 || ^22.13.0 || >=24" }, @@ -6017,47 +5856,6 @@ "@xtuc/long": "4.2.2" } }, - "node_modules/@webpack-cli/configtest": { - "version": "3.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18.12.0" - }, - "peerDependencies": { - "webpack": "^5.82.0", - "webpack-cli": "6.x.x" - } - }, - "node_modules/@webpack-cli/info": { - "version": "3.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18.12.0" - }, - "peerDependencies": { - "webpack": "^5.82.0", - "webpack-cli": "6.x.x" - } - }, - "node_modules/@webpack-cli/serve": { - "version": "3.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18.12.0" - }, - "peerDependencies": { - "webpack": "^5.82.0", - "webpack-cli": "6.x.x" - }, - "peerDependenciesMeta": { - "webpack-dev-server": { - "optional": true - } - } - }, "node_modules/@xtuc/ieee754": { "version": "1.2.0", "dev": true, @@ -6085,7 +5883,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", - "license": "MIT", "dependencies": { "event-target-shim": "^5.0.0" }, @@ -6134,9 +5931,9 @@ } }, "node_modules/adm-zip": { - "version": "0.5.16", - "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.16.tgz", - "integrity": "sha512-TGw5yVi4saajsSEgz25grObGHEUaDrniwvA2qwSC060KfqGPdglhvPMA2lPIoxs3PQIItj2iag35fONcQqgUaQ==", + "version": "0.5.17", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.17.tgz", + "integrity": "sha512-+Ut8d9LLqwEvHHJl1+PIHqoyDxFgVN847JTVM3Izi3xHDWPE4UtzzXysMZQs64DMcrJfBeS/uoEP4AD3HQHnQQ==", "engines": { "node": ">=12.0" } @@ -6493,6 +6290,36 @@ "node": ">=0.10.0" } }, + "node_modules/asn1.js": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", + "dependencies": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/asn1.js-rfc2560": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/asn1.js-rfc2560/-/asn1.js-rfc2560-5.0.1.tgz", + "integrity": "sha512-1PrVg6kuBziDN3PGFmRk3QrjpKvP9h/Hv5yMrFZvC1kpzP6dQRzf5BpKstANqHBkaOUmTpakJWhicTATOA/SbA==", + "dependencies": { + "asn1.js-rfc5280": "^3.0.0" + }, + "peerDependencies": { + "asn1.js": "^5.0.0" + } + }, + "node_modules/asn1.js-rfc5280": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/asn1.js-rfc5280/-/asn1.js-rfc5280-3.0.0.tgz", + "integrity": "sha512-Y2LZPOWeZ6qehv698ZgOGGCZXBQShObWnGthTrIFlIQjuV1gg2B8QOhWFRExq/MR1VnPpIIe7P9vX2vElxv+Pg==", + "dependencies": { + "asn1.js": "^5.0.0" + } + }, "node_modules/asn1js": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/asn1js/-/asn1js-3.0.7.tgz", @@ -6506,6 +6333,34 @@ "node": ">=12.0.0" } }, + "node_modules/async-disk-cache": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/async-disk-cache/-/async-disk-cache-2.1.0.tgz", + "integrity": "sha512-iH+boep2xivfD9wMaZWkywYIURSmsL96d6MoqrC94BnGSvXE4Quf8hnJiHGFYhw/nLeIa1XyRaf4vvcvkwAefg==", + "dependencies": { + "debug": "^4.1.1", + "heimdalljs": "^0.2.3", + "istextorbinary": "^2.5.1", + "mkdirp": "^0.5.0", + "rimraf": "^3.0.0", + "rsvp": "^4.8.5", + "username-sync": "^1.0.2" + }, + "engines": { + "node": "8.* || >= 10.*" + } + }, + "node_modules/async-disk-cache/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, "node_modules/async-function": { "version": "1.0.0", "dev": true, @@ -6537,25 +6392,23 @@ } }, "node_modules/axe-core": { - "version": "4.11.1", - "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.11.1.tgz", - "integrity": "sha512-BASOg+YwO2C+346x3LZOeoovTIoTrRqEsqMa6fmfAV0P+U9mFr9NsyOEpiYvFjbc64NMrSswhV50WdXzdb/Z5A==", - "license": "MPL-2.0", + "version": "4.11.3", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.11.3.tgz", + "integrity": "sha512-zBQouZixDTbo3jMGqHKyePxYxr1e5W8UdTmBQ7sNtaA9M2bE32daxxPLS/jojhKOHxQ7LWwPjfiwf/fhaJWzlg==", "engines": { "node": ">=4" } }, "node_modules/axios": { - "version": "1.13.6", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.13.6.tgz", - "integrity": "sha512-ChTCHMouEe2kn713WHbQGcuYrr6fXTBiu460OTwWrWob16g1bXn4vtz07Ope7ewMozJAnEquLk5lWQWtBig9DQ==", + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.15.2.tgz", + "integrity": "sha512-wLrXxPtcrPTsNlJmKjkPnNPK2Ihe0hn0wGSaTEiHRPxwjvJwT3hKmXF4dpqxmPO9SoNb2FsYXj/xEo0gHN+D5A==", "dev": true, - "license": "MIT", "peer": true, "dependencies": { "follow-redirects": "^1.15.11", "form-data": "^4.0.5", - "proxy-from-env": "^1.1.0" + "proxy-from-env": "^2.1.0" } }, "node_modules/babel-jest": { @@ -6563,7 +6416,6 @@ "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", "dev": true, - "license": "MIT", "dependencies": { "@jest/transform": "^29.7.0", "@types/babel__core": "^7.1.14", @@ -6641,37 +6493,69 @@ } }, "node_modules/babel-plugin-istanbul": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-7.0.1.tgz", - "integrity": "sha512-D8Z6Qm8jCvVXtIRkBnqNHX0zJ37rQcFJ9u8WOS6tkYOsRdHBzypCstaxWiu5ZIlqQtviRYbgnRLSoCEvjqcqbA==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-8.0.0.tgz", + "integrity": "sha512-18wCskrN3DgbuBmp1gr7LBGT8xdz5xhQQqFvFhVxbkl8VBCrMKQ2YtqBWtUal1Zrc1HTuX0011+Brjw78TCFkg==", "dev": true, - "license": "BSD-3-Clause", - "workspaces": [ - "test/babel-8" - ], "dependencies": { "@babel/helper-plugin-utils": "^7.0.0", "@istanbuljs/load-nyc-config": "^1.0.0", "@istanbuljs/schema": "^0.1.3", "istanbul-lib-instrument": "^6.0.2", - "test-exclude": "^6.0.0" + "test-exclude": "^7.0.1" }, "engines": { - "node": ">=12" + "node": ">=18" } }, - "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { - "version": "6.0.3", + "node_modules/babel-plugin-istanbul/node_modules/glob": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", + "integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==", + "deprecated": "Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me", "dev": true, - "license": "BSD-3-Clause", "dependencies": { - "@babel/core": "^7.23.9", - "@babel/parser": "^7.23.9", - "@istanbuljs/schema": "^0.1.3", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^7.5.4" + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" }, - "engines": { + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/glob/node_modules/minimatch": { + "version": "9.0.9", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz", + "integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.2" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { + "version": "6.0.3", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@babel/core": "^7.23.9", + "@babel/parser": "^7.23.9", + "@istanbuljs/schema": "^0.1.3", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^7.5.4" + }, + "engines": { "node": ">=10" } }, @@ -6688,6 +6572,20 @@ "node": ">=10" } }, + "node_modules/babel-plugin-istanbul/node_modules/test-exclude": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-7.0.2.tgz", + "integrity": "sha512-u9E6A+ZDYdp7a4WnarkXPZOx8Ilz46+kby6p1yZ8zsGTz9gYa6FIS7lj2oezzNKmtdyyJNNmmXDppga5GB7kSw==", + "dev": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^10.4.1", + "minimatch": "^10.2.2" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/babel-plugin-jest-hoist": { "version": "29.6.3", "dev": true, @@ -6759,8 +6657,7 @@ "version": "0.4.4", "resolved": "https://registry.npmjs.org/babel-plugin-transform-inline-environment-variables/-/babel-plugin-transform-inline-environment-variables-0.4.4.tgz", "integrity": "sha512-bJILBtn5a11SmtR2j/3mBOjX4K3weC6cq+NNZ7hG22wCAqpc3qtj/iN7dSe9HDiS46lgp1nHsQgeYrea/RUe+g==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/babel-preset-current-node-syntax": { "version": "1.1.0", @@ -6810,7 +6707,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz", "integrity": "sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ==", - "license": "MIT", "engines": { "node": ">= 0.6.0" } @@ -6832,8 +6728,7 @@ "type": "consulting", "url": "https://feross.org/support" } - ], - "license": "MIT" + ] }, "node_modules/baseline-browser-mapping": { "version": "2.9.10", @@ -6848,7 +6743,6 @@ "version": "7.3.12", "resolved": "https://registry.npmjs.org/bent/-/bent-7.3.12.tgz", "integrity": "sha512-T3yrKnVGB63zRuoco/7Ybl7BwwGZR0lceoVG5XmQyMIH9s19SV5m+a8qam4if0zQuAmOQTyPTPmsQBdAorGK3w==", - "license": "Apache-2.0", "dependencies": { "bytesish": "^0.4.1", "caseless": "~0.12.0", @@ -6866,6 +6760,22 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/binaryextensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binaryextensions/-/binaryextensions-2.3.0.tgz", + "integrity": "sha512-nAihlQsYGyc5Bwq6+EsubvANYGExeJKHDO3RjnvwU042fawQTQfM3Kxn7IHUXQOz4bzfwsGYYHGSvXyW4zOGLg==", + "engines": { + "node": ">=0.8" + }, + "funding": { + "url": "https://bevry.me/fund" + } + }, + "node_modules/bn.js": { + "version": "4.12.3", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.3.tgz", + "integrity": "sha512-fGTi3gxV/23FTYdAoUtLYp6qySe2KE3teyZitipKNRuVYcBkoP/bB3guXN/XVKUe9mxCHXnc9C4ocyz8OmgN0g==" + }, "node_modules/body-parser": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-2.2.1.tgz", @@ -6909,14 +6819,15 @@ }, "node_modules/boolean": { "version": "3.2.0", - "dev": true, - "license": "MIT" + "resolved": "https://registry.npmjs.org/boolean/-/boolean-3.2.0.tgz", + "integrity": "sha512-d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "dev": true }, "node_modules/botframework-directlinejs": { "version": "0.15.8", "resolved": "https://registry.npmjs.org/botframework-directlinejs/-/botframework-directlinejs-0.15.8.tgz", "integrity": "sha512-w/rt2NPSuKMU02zFuJ5E456j2xjAJskgaR6L0sEb6/osmC+zcRlP9ghAjKEmgO9Bquu9NYVwVtahIiRCdKpqDA==", - "license": "MIT", "dependencies": { "@babel/runtime": "7.26.10", "botframework-streaming": "4.23.0", @@ -7114,9 +7025,9 @@ } }, "node_modules/brace-expansion": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.3.tgz", - "integrity": "sha512-MCV/fYJEbqx68aE58kv2cA/kiky1G8vux3OR6/jbS+jIMe/6fJWa0DTzJU7dqijOWYwHi1t29FlfYI9uytqlpA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.1.0.tgz", + "integrity": "sha512-TN1kCZAgdgweJhWWpgKYrQaMNHcDULHkWwQIspdtjV4Y5aurRdZpjAqn6yX3FPqTA9ngHCc4hJxMAMgGfve85w==", "dependencies": { "balanced-match": "^1.0.0" } @@ -7512,8 +7423,7 @@ "node_modules/classnames": { "version": "2.5.1", "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz", - "integrity": "sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==", - "license": "MIT" + "integrity": "sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==" }, "node_modules/cldr-data": { "version": "36.0.5", @@ -7620,14 +7530,13 @@ "version": "0.5.5" }, "node_modules/cleye": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/cleye/-/cleye-1.3.4.tgz", - "integrity": "sha512-Rd6M8ecBDtdYdPR22h6gG37lPqqJ3hSOaplaGwuGYey9xKmEElOvTgupqfyLSlISshroRpVhYjDtW3vwNUNBaQ==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/cleye/-/cleye-2.6.0.tgz", + "integrity": "sha512-u0SQCsega/ox+2GSuUlG6wvA9c2FtH8sPmv9G9Q3JRTs7FK6+LtaziRAQgx7lrJ1J7bOd3palhwgZKMg8R6JbQ==", "dev": true, - "license": "MIT", "dependencies": { - "terminal-columns": "^1.4.1", - "type-flag": "^3.0.0" + "terminal-columns": "^2.0.0", + "type-flag": "^4.1.0" }, "funding": { "url": "https://github.com/privatenumber/cleye?sponsor=1" @@ -7850,7 +7759,6 @@ "resolved": "https://registry.npmjs.org/compression/-/compression-1.8.1.tgz", "integrity": "sha512-9mAqGPHLakhCLeNyxPkK4xVo746zQ/czLH1Ky+vkitMnWfWZps8r0qXuwhwizagCRttsL4lfG4pIOvaWLpAP0w==", "dev": true, - "license": "MIT", "dependencies": { "bytes": "3.1.2", "compressible": "~2.0.18", @@ -7882,8 +7790,7 @@ "node_modules/compute-scroll-into-view": { "version": "1.0.20", "resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-1.0.20.tgz", - "integrity": "sha512-UCB0ioiyj8CRjtrvaceBLqqhZCVP+1B8+NWQhmdsm0VXOJtobBCf1dBQmebCCo34qZmUwZfIH2MZLqNHazrfjg==", - "license": "MIT" + "integrity": "sha512-UCB0ioiyj8CRjtrvaceBLqqhZCVP+1B8+NWQhmdsm0VXOJtobBCf1dBQmebCCo34qZmUwZfIH2MZLqNHazrfjg==" }, "node_modules/concat-map": { "version": "0.0.1", @@ -7894,7 +7801,6 @@ "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-9.2.1.tgz", "integrity": "sha512-fsfrO0MxV64Znoy8/l1vVIjjHa29SZyyqPgQBwhiDcaW8wJc2W3XWVOGx4M3oJBnv/zdUZIIp1gDeS98GzP8Ng==", "dev": true, - "license": "MIT", "dependencies": { "chalk": "4.1.2", "rxjs": "7.8.2", @@ -7987,9 +7893,9 @@ } }, "node_modules/content-disposition": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-1.0.1.tgz", - "integrity": "sha512-oIXISMynqSqm241k6kcQ5UwttDILMK4BiurCfGEREw6+X9jkkpEe5T9FZaApyLGGOnFuyMWZpdolTXMtvEJ08Q==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-1.1.0.tgz", + "integrity": "sha512-5jRCH9Z/+DRP7rkvY83B+yGIGX96OYdJmzngqnw2SBSxqCFPd0w2km3s5iawpGX8krnwSGmF0FW5Nhr0Hfai3g==", "dev": true, "engines": { "node": ">=18" @@ -8040,11 +7946,10 @@ } }, "node_modules/core-js": { - "version": "3.48.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.48.0.tgz", - "integrity": "sha512-zpEHTy1fjTMZCKLHUZoVeylt9XrzaIN2rbPXEt0k+q7JE5CkCZdo6bNq55bn24a69CH7ErAVLKijxJja4fw+UQ==", + "version": "3.49.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.49.0.tgz", + "integrity": "sha512-es1U2+YTtzpwkxVLwAFdSpaIMyQaq0PBgm3YD1W3Qpsn1NAmO3KSgZfu+oGSWVu6NvLHoHCV/aYcsE5wiB7ALg==", "hasInstallScript": true, - "license": "MIT", "funding": { "type": "opencollective", "url": "https://opencollective.com/core-js" @@ -8065,11 +7970,10 @@ } }, "node_modules/core-js-pure": { - "version": "3.47.0", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.47.0.tgz", - "integrity": "sha512-BcxeDbzUrRnXGYIVAGFtcGQVNpFcUhVjr6W7F8XktvQW2iJP9e66GP6xdKotCRFlrxBvNIBrhwKteRXqMV86Nw==", + "version": "3.49.0", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.49.0.tgz", + "integrity": "sha512-XM4RFka59xATyJv/cS3O3Kml72hQXUeGRuuTmMYFxwzc9/7C8OYTaIR/Ji+Yt8DXzsFLNhat15cE/JP15HrCgw==", "hasInstallScript": true, - "peer": true, "funding": { "type": "opencollective", "url": "https://opencollective.com/core-js" @@ -8164,7 +8068,6 @@ "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-10.1.0.tgz", "integrity": "sha512-GsYosgnACZTADcmEyJctkJIoqAhHjttw7RsFrVoJNXbsWWqaq6Ym+7kZjq6mS45O0jij6vtiReppKQEtqWy6Dw==", "dev": true, - "license": "MIT", "dependencies": { "@epic-web/invariant": "^1.0.0", "cross-spawn": "^7.0.6" @@ -8387,8 +8290,7 @@ "node_modules/deep-freeze-strict": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/deep-freeze-strict/-/deep-freeze-strict-1.1.1.tgz", - "integrity": "sha512-QemROZMM2IvhAcCFvahdX2Vbm4S/txeq5rFYU9fh4mQP79WTMW5c/HkQ2ICl1zuzcDZdPZ6zarDxQeQMsVYoNA==", - "license": "public domain" + "integrity": "sha512-QemROZMM2IvhAcCFvahdX2Vbm4S/txeq5rFYU9fh4mQP79WTMW5c/HkQ2ICl1zuzcDZdPZ6zarDxQeQMsVYoNA==" }, "node_modules/deep-is": { "version": "0.1.4", @@ -8479,8 +8381,9 @@ }, "node_modules/detect-node": { "version": "2.1.0", - "dev": true, - "license": "MIT" + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", + "dev": true }, "node_modules/devlop": { "version": "1.1.0", @@ -8494,11 +8397,10 @@ } }, "node_modules/diff": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/diff/-/diff-8.0.3.tgz", - "integrity": "sha512-qejHi7bcSD4hQAZE0tNAawRK1ZtafHDmMTMkrrIGgSLl7hTnQHmKCeB45xAcbfTqK2zowkM3j3bHt/4b/ARbYQ==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-9.0.0.tgz", + "integrity": "sha512-svtcdpS8CgJyqAjEQIXdb3OjhFVVYjzGAPO8WGCmRbrml64SPw/jJD4GoE98aR7r25A0XcgrK3F02yw9R/vhQw==", "dev": true, - "license": "BSD-3-Clause", "engines": { "node": ">=0.3.1" } @@ -8596,9 +8498,9 @@ } }, "node_modules/dotenv": { - "version": "17.4.1", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.4.1.tgz", - "integrity": "sha512-k8DaKGP6r1G30Lx8V4+pCsLzKr8vLmV2paqEj1Y55GdAgJuIqpRp5FfajGF8KtwMxCz9qJc6wUIJnm053d/WCw==", + "version": "17.4.2", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.4.2.tgz", + "integrity": "sha512-nI4U3TottKAcAD9LLud4Cb7b2QztQMUEfHbvhTH09bqXTxnSie8WnjPALV/WMCrJZ6UV/qHJ6L03OqO3LcdYZw==", "dev": true, "engines": { "node": ">=12" @@ -8608,16 +8510,19 @@ } }, "node_modules/dtsroll": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dtsroll/-/dtsroll-1.4.1.tgz", - "integrity": "sha512-Ih6dWLx/6DGpPMIODGzaeGYYW/L/A4bAk0/5j+XPKYQ9D2vHKyDZt86GaKCAjd2uhLDwHrr4HwGzoBzdl0EQ2w==", + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/dtsroll/-/dtsroll-1.8.1.tgz", + "integrity": "sha512-rw+Uv4mk7cxndD1sN5GxWj0Mt1UIqGpLVNay6SlcL1spOW07We29ZBrmy4e7D34+NucGLSCY+JT00S6scMLAFg==", "dev": true, "dependencies": { - "@rollup/plugin-node-resolve": "^16.0.0", + "@rollup/plugin-node-resolve": "^16.0.3", "byte-size": "^9.0.1", - "cleye": "^1.3.2", - "rollup": "^4.29.1", - "rollup-plugin-dts": "6.1.1" + "cleye": "^2.3.0", + "convert-source-map": "^2.0.0", + "empathic": "^2.0.0", + "resolve-pkg-maps": "^1.0.0", + "rollup": "^4.60.1", + "rollup-plugin-import-trace": "^1.0.1" }, "bin": { "dtsroll": "dist/cli.mjs" @@ -8629,8 +8534,8 @@ "url": "https://github.com/privatenumber/dtsroll?sponsor=1" }, "peerDependencies": { - "typescript": "^4.5 || ^5.0", - "vite": "5 || 6" + "typescript": "^4.5 || ^5.0 || ^6.0", + "vite": "5 || 6 || 7" }, "peerDependenciesMeta": { "vite": { @@ -8664,6 +8569,21 @@ "dev": true, "license": "MIT" }, + "node_modules/editions": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/editions/-/editions-2.3.1.tgz", + "integrity": "sha512-ptGvkwTvGdGfC0hfhKg0MT+TRLRKGtUiWGBInxOm5pz7ssADezahjCUaYuZ8Dr+C05FW0AECIIPt4WBxVINEhA==", + "dependencies": { + "errlop": "^2.0.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=0.8" + }, + "funding": { + "url": "https://bevry.me/fund" + } + }, "node_modules/ee-first": { "version": "1.1.1", "dev": true, @@ -8697,6 +8617,15 @@ "resolved": "https://registry.npmjs.org/emoji-regex-xs/-/emoji-regex-xs-1.0.0.tgz", "integrity": "sha512-LRlerrMYoIDrT6jgpeZ2YYl/L8EulRTt5hQcYjy5AInh7HWXKimpqx68aknBFpGL2+/IcogTcaydJEgaTmOpDg==" }, + "node_modules/empathic": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/empathic/-/empathic-2.0.0.tgz", + "integrity": "sha512-i6UzDscO/XfAcNYD75CfICkmfLedpyPDdozrLMmQc5ORaQcdMoc21OnlEylMIqI7U8eniKrPMxxtj8k0vhmJhA==", + "dev": true, + "engines": { + "node": ">=14" + } + }, "node_modules/encodeurl": { "version": "2.0.0", "dev": true, @@ -8752,6 +8681,17 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/errlop": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/errlop/-/errlop-2.2.0.tgz", + "integrity": "sha512-e64Qj9+4aZzjzzFpZC7p5kmm/ccCrbLhAJplhsDXQFs87XTsXwOpH4s1Io2s90Tau/8r2j9f4l/thhDevRjzxw==", + "engines": { + "node": ">=0.8" + }, + "funding": { + "url": "https://bevry.me/fund" + } + }, "node_modules/errno": { "version": "0.1.8", "dev": true, @@ -8848,7 +8788,6 @@ }, "node_modules/es-errors": { "version": "1.3.0", - "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" @@ -8959,16 +8898,16 @@ }, "node_modules/es6-error": { "version": "4.1.1", - "dev": true, - "license": "MIT" + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "dev": true }, "node_modules/esbuild": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.27.3.tgz", - "integrity": "sha512-8VwMnyGCONIs6cWue2IdpHxHnAjzxnw2Zr7MkVxB2vjmQ2ivqGFb4LEG3SMnv0Gb2F/G/2yA8zUaiL1gywDCCg==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.27.7.tgz", + "integrity": "sha512-IxpibTjyVnmrIQo5aqNpCgoACA/dTKLTlhMHihVHhdkxKyPO1uBBthumT0rdHmcsk9uMonIWS0m4FljWzILh3w==", "dev": true, "hasInstallScript": true, - "license": "MIT", "bin": { "esbuild": "bin/esbuild" }, @@ -8976,32 +8915,32 @@ "node": ">=18" }, "optionalDependencies": { - "@esbuild/aix-ppc64": "0.27.3", - "@esbuild/android-arm": "0.27.3", - "@esbuild/android-arm64": "0.27.3", - "@esbuild/android-x64": "0.27.3", - "@esbuild/darwin-arm64": "0.27.3", - "@esbuild/darwin-x64": "0.27.3", - "@esbuild/freebsd-arm64": "0.27.3", - "@esbuild/freebsd-x64": "0.27.3", - "@esbuild/linux-arm": "0.27.3", - "@esbuild/linux-arm64": "0.27.3", - "@esbuild/linux-ia32": "0.27.3", - "@esbuild/linux-loong64": "0.27.3", - "@esbuild/linux-mips64el": "0.27.3", - "@esbuild/linux-ppc64": "0.27.3", - "@esbuild/linux-riscv64": "0.27.3", - "@esbuild/linux-s390x": "0.27.3", - "@esbuild/linux-x64": "0.27.3", - "@esbuild/netbsd-arm64": "0.27.3", - "@esbuild/netbsd-x64": "0.27.3", - "@esbuild/openbsd-arm64": "0.27.3", - "@esbuild/openbsd-x64": "0.27.3", - "@esbuild/openharmony-arm64": "0.27.3", - "@esbuild/sunos-x64": "0.27.3", - "@esbuild/win32-arm64": "0.27.3", - "@esbuild/win32-ia32": "0.27.3", - "@esbuild/win32-x64": "0.27.3" + "@esbuild/aix-ppc64": "0.27.7", + "@esbuild/android-arm": "0.27.7", + "@esbuild/android-arm64": "0.27.7", + "@esbuild/android-x64": "0.27.7", + "@esbuild/darwin-arm64": "0.27.7", + "@esbuild/darwin-x64": "0.27.7", + "@esbuild/freebsd-arm64": "0.27.7", + "@esbuild/freebsd-x64": "0.27.7", + "@esbuild/linux-arm": "0.27.7", + "@esbuild/linux-arm64": "0.27.7", + "@esbuild/linux-ia32": "0.27.7", + "@esbuild/linux-loong64": "0.27.7", + "@esbuild/linux-mips64el": "0.27.7", + "@esbuild/linux-ppc64": "0.27.7", + "@esbuild/linux-riscv64": "0.27.7", + "@esbuild/linux-s390x": "0.27.7", + "@esbuild/linux-x64": "0.27.7", + "@esbuild/netbsd-arm64": "0.27.7", + "@esbuild/netbsd-x64": "0.27.7", + "@esbuild/openbsd-arm64": "0.27.7", + "@esbuild/openbsd-x64": "0.27.7", + "@esbuild/openharmony-arm64": "0.27.7", + "@esbuild/sunos-x64": "0.27.7", + "@esbuild/win32-arm64": "0.27.7", + "@esbuild/win32-ia32": "0.27.7", + "@esbuild/win32-x64": "0.27.7" } }, "node_modules/escalade": { @@ -9034,7 +8973,6 @@ "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", "dev": true, - "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", @@ -9287,9 +9225,9 @@ } }, "node_modules/eslint-plugin-import/node_modules/brace-expansion": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", - "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.14.tgz", + "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==", "dev": true, "dependencies": { "balanced-match": "^1.0.0", @@ -9339,7 +9277,6 @@ "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", "dev": true, - "license": "MIT", "dependencies": { "eslint-plugin-es": "^3.0.0", "eslint-utils": "^2.0.0", @@ -9356,9 +9293,9 @@ } }, "node_modules/eslint-plugin-node/node_modules/brace-expansion": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", - "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.14.tgz", + "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==", "dev": true, "dependencies": { "balanced-match": "^1.0.0", @@ -9383,7 +9320,6 @@ "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.5.5.tgz", "integrity": "sha512-hscXkbqUZ2sPithAuLm5MXL+Wph+U7wHngPBv9OMWwlP8iaflyxpjTYZkmdgB4/vPIhemRlBEoLrH7UC1n7aUw==", "dev": true, - "license": "MIT", "dependencies": { "prettier-linter-helpers": "^1.0.1", "synckit": "^0.11.12" @@ -9442,9 +9378,9 @@ } }, "node_modules/eslint-plugin-react-hooks": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-7.0.1.tgz", - "integrity": "sha512-O0d0m04evaNzEPoSW+59Mezf8Qt0InfgGIBJnpC0h3NH/WjUAR7BIKUfysC6todmtiZ/A0oUVS8Gce0WhBrHsA==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-7.1.1.tgz", + "integrity": "sha512-f2I7Gw6JbvCexzIInuSbZpfdQ44D7iqdWX01FKLvrPgqxoE7oMj8clOfto8U6vYiz4yd5oKu39rRSVOe1zRu0g==", "dev": true, "dependencies": { "@babel/core": "^7.24.4", @@ -9457,13 +9393,13 @@ "node": ">=18" }, "peerDependencies": { - "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0" + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 || ^10.0.0" } }, "node_modules/eslint-plugin-react/node_modules/brace-expansion": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", - "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.14.tgz", + "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==", "dev": true, "dependencies": { "balanced-match": "^1.0.0", @@ -9519,9 +9455,9 @@ } }, "node_modules/eslint-plugin-security": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-security/-/eslint-plugin-security-3.0.1.tgz", - "integrity": "sha512-XjVGBhtDZJfyuhIxnQ/WMm385RbX3DBu7H1J7HNNhmB2tnGxMeqVSnYv79oAj992ayvIBZghsymwkYFS6cGH4Q==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-security/-/eslint-plugin-security-4.0.0.tgz", + "integrity": "sha512-tfuQT8K/Li1ZxhFzyD8wPIKtlzZxqBcPr9q0jFMQ77wWAbKBVEhaMPVQRTMTvCMUDhwBe5vPVqQPwAGk/ASfxQ==", "dev": true, "dependencies": { "safe-regex": "^2.1.1" @@ -9592,9 +9528,9 @@ "license": "Python-2.0" }, "node_modules/eslint/node_modules/brace-expansion": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", - "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.14.tgz", + "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==", "dev": true, "dependencies": { "balanced-match": "^1.0.0", @@ -9779,8 +9715,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/esutils": { "version": "2.0.3", @@ -9802,7 +9737,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/event-as-promise/-/event-as-promise-2.0.1.tgz", "integrity": "sha512-g0Wpfse1Gf9Pc8RLggBMti+LxHRmnHxGgv/lQeBlwL31xvFSjLS1ab8g9K5XrtSh8fcK8CHAV7h3zMgjg0LFBA==", - "license": "MIT", "dependencies": { "event-as-promise": "^2.0.1" } @@ -9810,8 +9744,7 @@ "node_modules/event-iterator": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/event-iterator/-/event-iterator-2.0.0.tgz", - "integrity": "sha512-KGft0ldl31BZVV//jj+IAIGCxkvvUkkON+ScH6zfoX+l+omX6001ggyRSpI0Io2Hlro0ThXotswCtfzS8UkIiQ==", - "license": "MIT" + "integrity": "sha512-KGft0ldl31BZVV//jj+IAIGCxkvvUkkON+ScH6zfoX+l+omX6001ggyRSpI0Io2Hlro0ThXotswCtfzS8UkIiQ==" }, "node_modules/event-target-shim": { "version": "5.0.1", @@ -9882,7 +9815,6 @@ "resolved": "https://registry.npmjs.org/express/-/express-5.2.1.tgz", "integrity": "sha512-hIS4idWWai69NezIdRt2xFVofaF4j+6INOpJlVOLDO8zXGpUVEVzIYk12UUi2JzjEzWL3IOAxcTubgz9Po0yXw==", "dev": true, - "license": "MIT", "dependencies": { "accepts": "^2.0.0", "body-parser": "^2.2.1", @@ -9933,14 +9865,6 @@ "node": ">= 0.6" } }, - "node_modules/express/node_modules/mime-db": { - "version": "1.54.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/express/node_modules/mime-types": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-3.0.2.tgz", @@ -10162,9 +10086,9 @@ "dev": true }, "node_modules/follow-redirects": { - "version": "1.15.11", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.11.tgz", - "integrity": "sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==", + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.16.0.tgz", + "integrity": "sha512-y5rN/uOsadFT/JfYwhxRS5R7Qce+g3zG97+JrtFZlC9klX/W5hD7iiLzScI4nZqUS7DNUdhPgw4xI8W2LuXlUw==", "dev": true, "funding": [ { @@ -10172,7 +10096,6 @@ "url": "https://github.com/sponsors/RubenVerborgh" } ], - "license": "MIT", "engines": { "node": ">=4.0" }, @@ -10200,7 +10123,6 @@ "version": "3.3.0", "dev": true, "license": "ISC", - "peer": true, "dependencies": { "cross-spawn": "^7.0.0", "signal-exit": "^4.0.1" @@ -10216,7 +10138,6 @@ "version": "4.1.0", "dev": true, "license": "ISC", - "peer": true, "engines": { "node": ">=14" }, @@ -10437,7 +10358,6 @@ }, "node_modules/glob": { "version": "7.2.3", - "dev": true, "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", @@ -10473,10 +10393,9 @@ "license": "BSD-2-Clause" }, "node_modules/glob/node_modules/brace-expansion": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", - "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", - "dev": true, + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.14.tgz", + "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==", "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -10486,7 +10405,6 @@ "version": "3.1.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", - "dev": true, "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" @@ -10496,18 +10414,15 @@ } }, "node_modules/global-agent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/global-agent/-/global-agent-3.0.0.tgz", - "integrity": "sha512-PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/global-agent/-/global-agent-4.1.3.tgz", + "integrity": "sha512-KUJEViiuFT3I97t+GYMikLPJS2Lfo/S2F+DQuBWzuzaMPnvt5yyZePzArx36fBzpGTxZjIpDbXLeySLgh+k76g==", "dev": true, - "license": "BSD-3-Clause", "dependencies": { - "boolean": "^3.0.1", - "es6-error": "^4.1.1", - "matcher": "^3.0.0", - "roarr": "^2.15.3", - "semver": "^7.3.2", - "serialize-error": "^7.0.1" + "globalthis": "^1.0.2", + "matcher": "^4.0.0", + "semver": "^7.3.5", + "serialize-error": "^8.1.0" }, "engines": { "node": ">=10.0" @@ -10530,7 +10445,6 @@ "version": "1.7.1", "resolved": "https://registry.npmjs.org/globalize/-/globalize-1.7.1.tgz", "integrity": "sha512-PFymRL0PtitFOlSniuwwwNfkooi3cLQJo9Uke1+j1DsGfUkkHkwneImqVtGcqKI0TuzhAlHt7hAcgK324902HA==", - "license": "MIT", "dependencies": { "cldrjs": "^0.5.4" } @@ -10540,7 +10454,6 @@ "resolved": "https://registry.npmjs.org/globalize-compiler/-/globalize-compiler-1.1.1.tgz", "integrity": "sha512-oZIwVp3L/waDidle7Qrw4FiCCmOLAqvdM9P7W8nEO4OfXO//l/abBiA+RL2+mYZPOpTAlRDVS2FLfFVWxHovWA==", "dev": true, - "license": "MIT", "dependencies": { "escodegen": "^1.6.1", "esprima": "^2.3.0", @@ -10773,15 +10686,14 @@ "version": "0.1.1", "resolved": "https://registry.npmjs.org/handler-chain/-/handler-chain-0.1.1.tgz", "integrity": "sha512-5eo8F9UTUiFCMtDUF1ipva1tvOCGE+vFr33aFHSISjTqXfGywCRV2aE6TzPkMhaw1pArOv3wv2Wz3Rh+AJJ8bA==", - "license": "MIT", "dependencies": { "handler-chain": "^0.1.1" } }, "node_modules/happy-dom": { - "version": "20.8.9", - "resolved": "https://registry.npmjs.org/happy-dom/-/happy-dom-20.8.9.tgz", - "integrity": "sha512-Tz23LR9T9jOGVZm2x1EPdXqwA37G/owYMxRwU0E4miurAtFsPMQ1d2Jc2okUaSjZqAFz2oEn3FLXC5a0a+siyA==", + "version": "20.9.0", + "resolved": "https://registry.npmjs.org/happy-dom/-/happy-dom-20.9.0.tgz", + "integrity": "sha512-GZZ9mKe8r646NUAf/zemnGbjYh4Bt8/MqASJY+pSm5ZDtc3YQox+4gsLI7yi1hba6o+eCsGxpHn5+iEVn31/FQ==", "dev": true, "dependencies": { "@types/node": ">=20.0.0", @@ -10891,7 +10803,6 @@ "resolved": "https://registry.npmjs.org/has-resolved/-/has-resolved-2.0.0.tgz", "integrity": "sha512-vt/qMRKKx5m+kKCj6r98uIRI+UWH+mwg/rUNpTwq5i3J81AVvAT3aSVqPSOX4pFvZIMd6jSHMJvaovAAv5erkw==", "dev": true, - "license": "MIT", "dependencies": { "@types/node": "^25.0.3", "has-resolved": "^2.0.0" @@ -10966,6 +10877,19 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/heimdalljs": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/heimdalljs/-/heimdalljs-0.2.6.tgz", + "integrity": "sha512-o9bd30+5vLBvBtzCPwwGqpry2+n0Hi6H1+qwt6y+0kwRHGGF8TFIhJPmnuM0xO97zaKrDZMwO/V56fAnn8m/tA==", + "dependencies": { + "rsvp": "~3.2.1" + } + }, + "node_modules/heimdalljs/node_modules/rsvp": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-3.2.1.tgz", + "integrity": "sha512-Rf4YVNYpKjZ6ASAmibcwTNciQ5Co5Ztq6iZPEykHpkoflnD/K5ryE/rHehFsTm4NJj8nKDhbi3eKBWGogmNnkg==" + }, "node_modules/hermes-estree": { "version": "0.25.1", "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.25.1.tgz", @@ -11004,9 +10928,9 @@ } }, "node_modules/hosted-git-info/node_modules/lru-cache": { - "version": "11.3.2", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.3.2.tgz", - "integrity": "sha512-wgWa6FWQ3QRRJbIjbsldRJZxdxYngT/dO0I5Ynmlnin8qy7tC6xYzbcJjtN4wHLXtkbVwHzk0C+OejVw1XM+DQ==", + "version": "11.3.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.3.5.tgz", + "integrity": "sha512-NxVFwLAnrd9i7KUBxC4DrUhmgjzOs+1Qm50D3oF1/oL+r1NpZ4gA7xvG0/zJ8evR7zIKn4vLf7qTNduWFtCrRw==", "engines": { "node": "20 || >=22" } @@ -11027,37 +10951,6 @@ "htmlparser2": "10.1.0" } }, - "node_modules/html-dom-parser/node_modules/entities": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-7.0.1.tgz", - "integrity": "sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==", - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/html-dom-parser/node_modules/htmlparser2": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-10.1.0.tgz", - "integrity": "sha512-VTZkM9GWRAtEpveh7MSF6SjjrpNVNNVJfFup7xTY3UpFtm67foy9HDVXneLtFVt4pMz5kZtgNcvCniNFb1hlEQ==", - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "license": "MIT", - "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.2.2", - "entities": "^7.0.1" - } - }, "node_modules/html-escaper": { "version": "2.0.2", "dev": true, @@ -11104,7 +10997,9 @@ } }, "node_modules/htmlparser2": { - "version": "8.0.2", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-10.1.0.tgz", + "integrity": "sha512-VTZkM9GWRAtEpveh7MSF6SjjrpNVNNVJfFup7xTY3UpFtm67foy9HDVXneLtFVt4pMz5kZtgNcvCniNFb1hlEQ==", "funding": [ "https://github.com/fb55/htmlparser2?sponsor=1", { @@ -11112,17 +11007,17 @@ "url": "https://github.com/sponsors/fb55" } ], - "license": "MIT", "dependencies": { "domelementtype": "^2.3.0", "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "entities": "^4.4.0" + "domutils": "^3.2.2", + "entities": "^7.0.1" } }, "node_modules/htmlparser2/node_modules/entities": { - "version": "4.5.0", - "license": "BSD-2-Clause", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-7.0.1.tgz", + "integrity": "sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==", "engines": { "node": ">=0.12" }, @@ -11190,7 +11085,6 @@ "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.9.tgz", "integrity": "sha512-c1IyJYLYppU574+YI7R4QyX2ystMtVXZwIdzazUIPIJsHuWNd+mho2j+bKoHftndicGj9yh+xjd+l0yj7VeT1Q==", "dev": true, - "license": "MIT", "dependencies": { "@types/http-proxy": "^1.17.8", "http-proxy": "^1.18.1", @@ -11327,12 +11221,6 @@ "dev": true, "license": "MIT" }, - "node_modules/immutable": { - "version": "4.3.8", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.8.tgz", - "integrity": "sha512-d/Ld9aLbKpNwyl0KiM2CT1WYvkitQ1TSvmRtkcV8FKStiDoA7Slzgjmb/1G2yhKM1p0XeNOieaTbFZmU1d3Xuw==", - "license": "MIT" - }, "node_modules/import-fresh": { "version": "3.3.0", "license": "MIT", @@ -11431,7 +11319,6 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/inject-meta-tag/-/inject-meta-tag-0.1.0.tgz", "integrity": "sha512-2dxkvwL/Ko8Sgehc23plijjenoAXJRNfbaHQnwa24JU5l7faOzYBGsFiFyt+Ew3s0uFA6s1UPeD7zsIBGvYK0Q==", - "license": "MIT", "dependencies": { "inject-meta-tag": "^0.1.0" } @@ -11728,8 +11615,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/is-negative-zero": { "version": "2.0.3", @@ -11993,7 +11879,6 @@ "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", "dev": true, - "license": "BSD-3-Clause", "engines": { "node": ">=8" } @@ -12097,13 +11982,28 @@ "node": ">=8" } }, + "node_modules/istextorbinary": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/istextorbinary/-/istextorbinary-2.6.0.tgz", + "integrity": "sha512-+XRlFseT8B3L9KyjxxLjfXSLMuErKDsd8DBNrsaxoViABMEZlOSCstwmw0qpoFX3+U6yWU1yhLudAe6/lETGGA==", + "dependencies": { + "binaryextensions": "^2.1.2", + "editions": "^2.2.0", + "textextensions": "^2.5.0" + }, + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://bevry.me/fund" + } + }, "node_modules/iter-fest": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/iter-fest/-/iter-fest-0.3.0.tgz", - "integrity": "sha512-t76cnHCl9MEZRaUb0VBwTXP8dWjxbcTYm91VGWfQYjSMXKkjdOAIjUsaMYuLIy9jxk9fT55XIlb4Y/HACK/zlw==", - "peer": true, + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/iter-fest/-/iter-fest-0.3.1.tgz", + "integrity": "sha512-XL7DGglVGVevTuQAAhVAN3MbADeKyDcijPToBKUxZHpOSUJT22CfvGqsV1t34LyoVxDDL3MGPbHZVx20Lky0og==", "dependencies": { - "iter-fest": "^0.3.0" + "iter-fest": "^0.3.1" }, "peerDependencies": { "core-js-pure": "^3.37.1" @@ -12129,7 +12029,6 @@ "version": "3.4.3", "dev": true, "license": "BlueOak-1.0.0", - "peer": true, "dependencies": { "@isaacs/cliui": "^8.0.2" }, @@ -12145,7 +12044,6 @@ "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", "dev": true, - "license": "MIT", "dependencies": { "@jest/core": "^29.7.0", "@jest/types": "^29.6.3", @@ -12723,7 +12621,6 @@ "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", "dev": true, - "license": "MIT", "dependencies": { "@jest/environment": "^29.7.0", "@jest/fake-timers": "^29.7.0", @@ -12769,11 +12666,10 @@ } }, "node_modules/jest-image-snapshot": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/jest-image-snapshot/-/jest-image-snapshot-6.5.1.tgz", - "integrity": "sha512-xlJFufgfY2Z4DsRsjcnTwxuynvo1bKdhf4OfcEftNuUAK+BwSCUtPmwlBGJhQ0XJXfm9JMAi/4BhQiHbaV8HrA==", + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/jest-image-snapshot/-/jest-image-snapshot-6.5.2.tgz", + "integrity": "sha512-frenWThr5ddnnokcX5N4gwi41hA5TiUOdhv/JoGcJrOaktHjrk4/7XbiHKW52lgKX+vei6QkRlgM7fkYQ15nPg==", "dev": true, - "license": "Apache-2.0", "dependencies": { "chalk": "^4.0.0", "get-stdin": "^5.0.1", @@ -12787,7 +12683,7 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, "peerDependencies": { - "jest": ">=20 <=29" + "jest": ">=20 <31" }, "peerDependenciesMeta": { "jest": { @@ -13768,8 +13664,9 @@ }, "node_modules/json-stringify-safe": { "version": "5.0.1", - "dev": true, - "license": "ISC" + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "dev": true }, "node_modules/json5": { "version": "2.2.3", @@ -13811,20 +13708,18 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/jwt-decode/-/jwt-decode-4.0.0.tgz", "integrity": "sha512-+KJGIyHgkGuIq3IEBNftfhW/LfWhXUIY6OmyVWjliu5KH1y0fw7VQ8YndE2O4qZdMSd9SqbnC8GOcZEy0Om7sA==", - "license": "MIT", "engines": { "node": ">=18" } }, "node_modules/katex": { - "version": "0.16.33", - "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.33.tgz", - "integrity": "sha512-q3N5u+1sY9Bu7T4nlXoiRBXWfwSefNGoKeOwekV+gw0cAXQlz2Ww6BLcmBxVDeXBMUDQv6fK5bcNaJLxob3ZQA==", + "version": "0.16.45", + "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.45.tgz", + "integrity": "sha512-pQpZbdBu7wCTmQUh7ufPmLr0pFoObnGUoL/yhtwJDgmmQpbkg/0HSVti25Fu4rmd1oCR6NGWe9vqTWuWv3GcNA==", "funding": [ "https://opencollective.com/katex", "https://github.com/sponsors/katex" ], - "license": "MIT", "dependencies": { "commander": "^8.3.0" }, @@ -13840,15 +13735,37 @@ } }, "node_modules/keep-a-changelog": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/keep-a-changelog/-/keep-a-changelog-2.7.1.tgz", - "integrity": "sha512-uwxVmpiSd2LOT+sffmd+7odV80WLFxe7jUyGLh4K6H3bjnPIlWJ4d/632+13K2WvtRz4NAwak8PPw416hS5NHA==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/keep-a-changelog/-/keep-a-changelog-3.0.2.tgz", + "integrity": "sha512-MKk4RWduGopP7MoA8bkzdXQk9CV6cbqNjMzpClM/mA2kT+jsbvO6co2h3UuYPe6/bX/UITemzLBNEanplrIOmQ==", "dev": true, "dependencies": { - "@deno/shim-deno": "~0.18.0" + "ini": "6.0.0", + "semver": "7.7.4" }, "bin": { - "changelog": "esm/bin.js" + "changelog": "bin.js" + } + }, + "node_modules/keep-a-changelog/node_modules/ini": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-6.0.0.tgz", + "integrity": "sha512-IBTdIkzZNOpqm7q3dRqJvMaldXjDHWkEDfrwGEQTs5eaQMWV+djAhR+wahyNNMAa+qpbDUhBMVt4ZKNwpPm7xQ==", + "dev": true, + "engines": { + "node": "^20.17.0 || >=22.9.0" + } + }, + "node_modules/keep-a-changelog/node_modules/semver": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", + "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, "node_modules/keyborg": { @@ -13935,9 +13852,10 @@ } }, "node_modules/lightningcss": { - "version": "1.30.1", + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.32.0.tgz", + "integrity": "sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ==", "dev": true, - "license": "MPL-2.0", "dependencies": { "detect-libc": "^2.0.3" }, @@ -13949,27 +13867,47 @@ "url": "https://opencollective.com/parcel" }, "optionalDependencies": { - "lightningcss-darwin-arm64": "1.30.1", - "lightningcss-darwin-x64": "1.30.1", - "lightningcss-freebsd-x64": "1.30.1", - "lightningcss-linux-arm-gnueabihf": "1.30.1", - "lightningcss-linux-arm64-gnu": "1.30.1", - "lightningcss-linux-arm64-musl": "1.30.1", - "lightningcss-linux-x64-gnu": "1.30.1", - "lightningcss-linux-x64-musl": "1.30.1", - "lightningcss-win32-arm64-msvc": "1.30.1", - "lightningcss-win32-x64-msvc": "1.30.1" - } + "lightningcss-android-arm64": "1.32.0", + "lightningcss-darwin-arm64": "1.32.0", + "lightningcss-darwin-x64": "1.32.0", + "lightningcss-freebsd-x64": "1.32.0", + "lightningcss-linux-arm-gnueabihf": "1.32.0", + "lightningcss-linux-arm64-gnu": "1.32.0", + "lightningcss-linux-arm64-musl": "1.32.0", + "lightningcss-linux-x64-gnu": "1.32.0", + "lightningcss-linux-x64-musl": "1.32.0", + "lightningcss-win32-arm64-msvc": "1.32.0", + "lightningcss-win32-x64-msvc": "1.32.0" + } + }, + "node_modules/lightningcss-android-arm64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.32.0.tgz", + "integrity": "sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } }, "node_modules/lightningcss-darwin-arm64": { - "version": "1.30.1", - "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.30.1.tgz", - "integrity": "sha512-c8JK7hyE65X1MHMN+Viq9n11RRC7hgin3HhYKhrMyaXflk5GVplZ60IxyoVtzILeKr+xAJwg6zK6sjTBJ0FKYQ==", + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.32.0.tgz", + "integrity": "sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==", "cpu": [ "arm64" ], "dev": true, - "license": "MPL-2.0", "optional": true, "os": [ "darwin" @@ -13983,14 +13921,13 @@ } }, "node_modules/lightningcss-darwin-x64": { - "version": "1.30.1", - "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.30.1.tgz", - "integrity": "sha512-k1EvjakfumAQoTfcXUcHQZhSpLlkAuEkdMBsI/ivWw9hL+7FtilQc0Cy3hrx0AAQrVtQAbMI7YjCgYgvn37PzA==", + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.32.0.tgz", + "integrity": "sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==", "cpu": [ "x64" ], "dev": true, - "license": "MPL-2.0", "optional": true, "os": [ "darwin" @@ -14004,14 +13941,13 @@ } }, "node_modules/lightningcss-freebsd-x64": { - "version": "1.30.1", - "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.30.1.tgz", - "integrity": "sha512-kmW6UGCGg2PcyUE59K5r0kWfKPAVy4SltVeut+umLCFoJ53RdCUWxcRDzO1eTaxf/7Q2H7LTquFHPL5R+Gjyig==", + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.32.0.tgz", + "integrity": "sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==", "cpu": [ "x64" ], "dev": true, - "license": "MPL-2.0", "optional": true, "os": [ "freebsd" @@ -14025,14 +13961,13 @@ } }, "node_modules/lightningcss-linux-arm-gnueabihf": { - "version": "1.30.1", - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.30.1.tgz", - "integrity": "sha512-MjxUShl1v8pit+6D/zSPq9S9dQ2NPFSQwGvxBCYaBYLPlCWuPh9/t1MRS8iUaR8i+a6w7aps+B4N0S1TYP/R+Q==", + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.32.0.tgz", + "integrity": "sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==", "cpu": [ "arm" ], "dev": true, - "license": "MPL-2.0", "optional": true, "os": [ "linux" @@ -14046,14 +13981,13 @@ } }, "node_modules/lightningcss-linux-arm64-gnu": { - "version": "1.30.1", - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.30.1.tgz", - "integrity": "sha512-gB72maP8rmrKsnKYy8XUuXi/4OctJiuQjcuqWNlJQ6jZiWqtPvqFziskH3hnajfvKB27ynbVCucKSm2rkQp4Bw==", + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.32.0.tgz", + "integrity": "sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==", "cpu": [ "arm64" ], "dev": true, - "license": "MPL-2.0", "optional": true, "os": [ "linux" @@ -14067,14 +14001,13 @@ } }, "node_modules/lightningcss-linux-arm64-musl": { - "version": "1.30.1", - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.30.1.tgz", - "integrity": "sha512-jmUQVx4331m6LIX+0wUhBbmMX7TCfjF5FoOH6SD1CttzuYlGNVpA7QnrmLxrsub43ClTINfGSYyHe2HWeLl5CQ==", + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.32.0.tgz", + "integrity": "sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==", "cpu": [ "arm64" ], "dev": true, - "license": "MPL-2.0", "optional": true, "os": [ "linux" @@ -14088,12 +14021,13 @@ } }, "node_modules/lightningcss-linux-x64-gnu": { - "version": "1.30.1", + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.32.0.tgz", + "integrity": "sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==", "cpu": [ "x64" ], "dev": true, - "license": "MPL-2.0", "optional": true, "os": [ "linux" @@ -14107,12 +14041,13 @@ } }, "node_modules/lightningcss-linux-x64-musl": { - "version": "1.30.1", + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.32.0.tgz", + "integrity": "sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==", "cpu": [ "x64" ], "dev": true, - "license": "MPL-2.0", "optional": true, "os": [ "linux" @@ -14126,14 +14061,13 @@ } }, "node_modules/lightningcss-win32-arm64-msvc": { - "version": "1.30.1", - "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.30.1.tgz", - "integrity": "sha512-mSL4rqPi4iXq5YVqzSsJgMVFENoa4nGTT/GjO2c0Yl9OuQfPsIfncvLrEW6RbbB24WtZ3xP/2CCmI3tNkNV4oA==", + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.32.0.tgz", + "integrity": "sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==", "cpu": [ "arm64" ], "dev": true, - "license": "MPL-2.0", "optional": true, "os": [ "win32" @@ -14147,14 +14081,13 @@ } }, "node_modules/lightningcss-win32-x64-msvc": { - "version": "1.30.1", - "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.30.1.tgz", - "integrity": "sha512-PVqXh48wh4T53F/1CCu8PIPCxLzWyCnn/9T5W1Jpmdy5h9Cwd+0YQS6/LwhHXSafuc61/xg9Lv5OrCby6a++jg==", + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.32.0.tgz", + "integrity": "sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==", "cpu": [ "x64" ], "dev": true, - "license": "MPL-2.0", "optional": true, "os": [ "win32" @@ -14190,18 +14123,17 @@ } }, "node_modules/lint-staged": { - "version": "16.2.7", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-16.2.7.tgz", - "integrity": "sha512-lDIj4RnYmK7/kXMya+qJsmkRFkGolciXjrsZ6PC25GdTfWOAWetR0ZbsNXRAj1EHHImRSalc+whZFg56F5DVow==", + "version": "16.4.0", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-16.4.0.tgz", + "integrity": "sha512-lBWt8hujh/Cjysw5GYVmZpFHXDCgZzhrOm8vbcUdobADZNOK/bRshr2kM3DfgrrtR1DQhfupW9gnIXOfiFi+bw==", "dev": true, "dependencies": { - "commander": "^14.0.2", + "commander": "^14.0.3", "listr2": "^9.0.5", - "micromatch": "^4.0.8", - "nano-spawn": "^2.0.0", - "pidtree": "^0.6.0", + "picomatch": "^4.0.3", "string-argv": "^0.3.2", - "yaml": "^2.8.1" + "tinyexec": "^1.0.4", + "yaml": "^2.8.2" }, "bin": { "lint-staged": "bin/lint-staged.js" @@ -14223,6 +14155,18 @@ "node": ">=20" } }, + "node_modules/lint-staged/node_modules/picomatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz", + "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/listr2": { "version": "9.0.5", "resolved": "https://registry.npmjs.org/listr2/-/listr2-9.0.5.tgz", @@ -14280,11 +14224,10 @@ } }, "node_modules/lodash": { - "version": "4.17.23", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.23.tgz", - "integrity": "sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==", - "dev": true, - "license": "MIT" + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.18.1.tgz", + "integrity": "sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q==", + "dev": true }, "node_modules/lodash.camelcase": { "version": "4.3.0", @@ -14421,7 +14364,6 @@ "resolved": "https://registry.npmjs.org/lolex/-/lolex-6.0.0.tgz", "integrity": "sha512-ad9IBHbfVJ3bPAotDxnCgJgKcNK5/mrRAfbJzXhY5+PEmuBWP7wyHQlA6L8TfSfPlqlDjY4K7IG6mbzsrIBx1A==", "deprecated": "lolex has been renamed to @sinonjs/fake-timers. No API changes made. Please use the new package instead", - "license": "BSD-3-Clause", "dependencies": { "@sinonjs/commons": "^1.7.0" } @@ -14504,7 +14446,6 @@ "version": "13.0.2", "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-13.0.2.tgz", "integrity": "sha512-FtwnEuuK+2yVU7goGn/MJ0WBZMM9ZPgU9spqlFs7/A/pDIUNSOQZhUgOqYCficIuR2QaFnrt8LHqBWsbTAoI5w==", - "license": "MIT", "dependencies": { "argparse": "^2.0.1", "entities": "~3.0.1", @@ -14521,14 +14462,18 @@ "license": "Python-2.0" }, "node_modules/matcher": { - "version": "3.0.0", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-4.0.0.tgz", + "integrity": "sha512-S6x5wmcDmsDRRU/c2dkccDwQPXoFczc5+HpQ2lON8pnvHlnvHAHj5WlLVvw6n6vNyHuVugYrFohYxbS+pvFpKQ==", "dev": true, - "license": "MIT", "dependencies": { "escape-string-regexp": "^4.0.0" }, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/math-intrinsics": { @@ -14542,14 +14487,12 @@ "node_modules/math-random": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/math-random/-/math-random-2.0.1.tgz", - "integrity": "sha512-oIEbWiVDxDpl5tIF4S6zYS9JExhh3bun3uLb3YAinHPTlRtW4g1S66LtJrJ4Npq8dgIa8CLK5iPVah5n4n0s2w==", - "license": "CC0-1.0" + "integrity": "sha512-oIEbWiVDxDpl5tIF4S6zYS9JExhh3bun3uLb3YAinHPTlRtW4g1S66LtJrJ4Npq8dgIa8CLK5iPVah5n4n0s2w==" }, "node_modules/mdast-util-from-markdown": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.3.tgz", "integrity": "sha512-W4mAWTvSlKvf8L6J+VN9yLSqQ9AOAAvHuoDAmPkz4dHf553m5gVj2ejadHJhoJmcmxEnOv6Pa8XJhpxE93kb8Q==", - "license": "MIT", "dependencies": { "@types/mdast": "^4.0.0", "@types/unist": "^3.0.0", @@ -14615,8 +14558,7 @@ "node_modules/memoize-one": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-6.0.0.tgz", - "integrity": "sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==", - "license": "MIT" + "integrity": "sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==" }, "node_modules/meow": { "version": "9.0.0", @@ -14723,7 +14665,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-refs/-/merge-refs-2.0.0.tgz", "integrity": "sha512-3+B21mYK2IqUWnd2EivABLT7ueDhb0b8/dGK8LoFQPrU61YITeCMn14F7y7qZafWNZhUEKb24cJdiT5Wxs3prg==", - "license": "MIT", "funding": { "url": "https://github.com/wojtekmaj/merge-refs?sponsor=1" }, @@ -14763,7 +14704,6 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", "dependencies": { "@types/debug": "^4.0.0", "debug": "^4.0.0", @@ -14820,7 +14760,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-3.0.0.tgz", "integrity": "sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==", - "license": "MIT", "dependencies": { "micromark-extension-gfm-autolink-literal": "^2.0.0", "micromark-extension-gfm-footnote": "^2.0.0", @@ -15036,7 +14975,6 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", "dependencies": { "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" @@ -15209,7 +15147,6 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", "dependencies": { "micromark-util-character": "^2.0.0", "micromark-util-encode": "^2.0.0", @@ -15263,8 +15200,7 @@ "type": "OpenCollective", "url": "https://opencollective.com/unified" } - ], - "license": "MIT" + ] }, "node_modules/micromatch": { "version": "4.0.8", @@ -15278,10 +15214,9 @@ } }, "node_modules/microsoft-cognitiveservices-speech-sdk": { - "version": "1.48.0", - "resolved": "https://registry.npmjs.org/microsoft-cognitiveservices-speech-sdk/-/microsoft-cognitiveservices-speech-sdk-1.48.0.tgz", - "integrity": "sha512-D/8cZn0+vWE18PHloEXfeSHjxuCTYs1zjMulQ4EgpjIrLdtaqSqa9guDBXPnxFnnysWRnZZwyfM/uoiKZvEXXw==", - "license": "MIT", + "version": "1.49.0", + "resolved": "https://registry.npmjs.org/microsoft-cognitiveservices-speech-sdk/-/microsoft-cognitiveservices-speech-sdk-1.49.0.tgz", + "integrity": "sha512-4WLkw+wqygqFCjgUOjD/Vj3x12KZhuBF09Bf3/ywZqLDIepPi3jPq42QjuAGyel9lWoa8V5P9cri34fUhzTkEw==", "dependencies": { "@azure/core-auth": "^1.9.0", "@types/webrtc": "^0.0.37", @@ -15338,24 +15273,33 @@ } }, "node_modules/mime-db": { - "version": "1.52.0", + "version": "1.54.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz", + "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.6" } }, "node_modules/mime-types": { - "version": "2.1.35", - "dev": true, - "license": "MIT", + "version": "2.1.18", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", + "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", "dependencies": { - "mime-db": "1.52.0" + "mime-db": "~1.33.0" }, "engines": { "node": ">= 0.6" } }, + "node_modules/mime-types/node_modules/mime-db": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", + "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==", + "engines": { + "node": ">= 0.6" + } + }, "node_modules/mimic-fn": { "version": "2.1.0", "dev": true, @@ -15384,6 +15328,11 @@ "node": ">=4" } }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, "node_modules/minimatch": { "version": "10.2.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.5.tgz", @@ -15423,7 +15372,6 @@ }, "node_modules/minimist": { "version": "1.2.8", - "dev": true, "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" @@ -15454,7 +15402,6 @@ "version": "7.1.2", "dev": true, "license": "ISC", - "peer": true, "engines": { "node": ">=16 || 14 >=14.17" } @@ -15496,18 +15443,6 @@ "thenify-all": "^1.0.0" } }, - "node_modules/nano-spawn": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/nano-spawn/-/nano-spawn-2.0.0.tgz", - "integrity": "sha512-tacvGzUY5o2D8CBh2rrwxyNojUsZNU2zjNTzKQrkgGJQTbGAfArVWXSKMBokBeeg6C7OLRGUEyoFlYbfeWQIqw==", - "dev": true, - "engines": { - "node": ">=20.17" - }, - "funding": { - "url": "https://github.com/sindresorhus/nano-spawn?sponsor=1" - } - }, "node_modules/nanoid": { "version": "3.3.8", "funding": [ @@ -15695,7 +15630,6 @@ "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-3.1.14.tgz", "integrity": "sha512-jakjZi93UtB3jHMWsXL68FXSAosbLfY0In5gtKq3niLSkrWznrVBzXFNOEMJUfc9+Ke7SHWoAZsiMkNP3vq6Jw==", "dev": true, - "license": "MIT", "dependencies": { "chokidar": "^3.5.2", "debug": "^4", @@ -16053,8 +15987,7 @@ "node_modules/package-json-from-dist": { "version": "1.0.0", "dev": true, - "license": "BlueOak-1.0.0", - "peer": true + "license": "BlueOak-1.0.0" }, "node_modules/pako": { "version": "1.0.11", @@ -16117,7 +16050,6 @@ }, "node_modules/path-is-absolute": { "version": "1.0.1", - "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -16143,7 +16075,6 @@ "version": "1.11.1", "dev": true, "license": "BlueOak-1.0.0", - "peer": true, "dependencies": { "lru-cache": "^10.2.0", "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" @@ -16158,8 +16089,7 @@ "node_modules/path-scurry/node_modules/lru-cache": { "version": "10.4.3", "dev": true, - "license": "ISC", - "peer": true + "license": "ISC" }, "node_modules/path-to-regexp": { "version": "8.4.2", @@ -16204,17 +16134,6 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/pidtree": { - "version": "0.6.0", - "dev": true, - "license": "MIT", - "bin": { - "pidtree": "bin/pidtree.js" - }, - "engines": { - "node": ">=0.10" - } - }, "node_modules/pify": { "version": "4.0.1", "dev": true, @@ -16440,11 +16359,10 @@ } }, "node_modules/prettier": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.8.1.tgz", - "integrity": "sha512-UOnG6LftzbdaHZcKoPFtOcCKztrQ57WkHDeRD9t/PTQtmT0NHSeWWepj6pS0z/N7+08BHFDQVUrfmfMRcZwbMg==", + "version": "3.8.3", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.8.3.tgz", + "integrity": "sha512-7igPTM53cGHMW8xWuVTydi2KO233VFiTNyF5hLJqpilHfmn8C8gPf+PS7dUT64YcXFbiMGZxS9pCSxL/Dxm/Jw==", "dev": true, - "license": "MIT", "bin": { "prettier": "bin/prettier.cjs" }, @@ -16521,7 +16439,6 @@ "version": "15.8.1", "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", - "license": "MIT", "dependencies": { "loose-envify": "^1.4.0", "object-assign": "^4.1.1", @@ -16554,10 +16471,14 @@ } }, "node_modules/proxy-from-env": { - "version": "1.1.0", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-2.1.0.tgz", + "integrity": "sha512-cJ+oHTW1VAEa8cJslgmUZrc+sjRKgAKl3Zyse6+PV38hZe/V6Z14TbCuXcan9F9ghlz4QrFr2c92TNF82UkYHA==", "dev": true, - "license": "MIT", - "peer": true + "peer": true, + "engines": { + "node": ">=10" + } }, "node_modules/prr": { "version": "1.0.1", @@ -16574,7 +16495,6 @@ "version": "2.3.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "license": "MIT", "engines": { "node": ">=6" } @@ -16621,6 +16541,11 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" + }, "node_modules/queue-microtask": { "version": "1.2.3", "dev": true, @@ -16714,7 +16639,6 @@ "version": "16.8.6", "resolved": "https://registry.npmjs.org/react/-/react-16.8.6.tgz", "integrity": "sha512-pC0uMkhLaHm11ZSJULfOBqV4tIZkx87ZLvbbQYunNixAAvjnC+snJCg0XQXn9VIsttVsbZP/H/ewzgsd5fxKXw==", - "license": "MIT", "dependencies": { "loose-envify": "^1.1.0", "object-assign": "^4.1.1", @@ -16729,7 +16653,6 @@ "version": "0.4.2", "resolved": "https://registry.npmjs.org/react-chain-of-responsibility/-/react-chain-of-responsibility-0.4.2.tgz", "integrity": "sha512-khBaWO1rSLSUw6Ydr3lYFgONwmrx9rSOClrLCyn7cq40QxVJSh5utq1rbey+Pr24trWmQdC9qweTuKG2RptTXw==", - "license": "MIT", "dependencies": { "handler-chain": "^0.1.0", "react-chain-of-responsibility": "^0.4.2", @@ -16743,7 +16666,6 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/react-dictate-button/-/react-dictate-button-4.0.1.tgz", "integrity": "sha512-UvXx3RhJfGD4I7UkUEtBGBRyKRQrh90gzFsde53sJUhJ0V8iTJo8dthtNBMuanYTUyGdZdfdPCjv5ozIlEPvAQ==", - "license": "MIT", "dependencies": { "@babel/runtime-corejs3": "^7.28.4", "react-dictate-button": "^4.0.1", @@ -16757,7 +16679,6 @@ "version": "16.8.6", "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.8.6.tgz", "integrity": "sha512-1nL7PIq9LTL3fthPqwkvr2zY7phIPjYrT0jp4HjyEQrEROnw4dG41VVwi/wfoCneoleqrNX7iAD+pXebJZwrwA==", - "license": "MIT", "dependencies": { "loose-envify": "^1.1.0", "object-assign": "^4.1.1", @@ -16772,7 +16693,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/react-film/-/react-film-4.0.0.tgz", "integrity": "sha512-KHhHA+155CBwSq1REa4f9c+68PZUQdISo25JCEnk/2/TuzO+c/feT95usxwO50MCcWyatWefa8chdu0jYIS3WQ==", - "license": "MIT", "dependencies": { "@emotion/css": "^11.13.5", "classnames": "^2.5.1", @@ -16799,7 +16719,6 @@ "version": "7.2.9", "resolved": "https://registry.npmjs.org/react-redux/-/react-redux-7.2.9.tgz", "integrity": "sha512-Gx4L3uM182jEEayZfRbI/G11ZpYdNAnBs70lFVMNdHJI76XYtR+7m0MN+eAs7UHBPhWXcnFPaS+9owSCJQHNpQ==", - "license": "MIT", "dependencies": { "@babel/runtime": "^7.15.4", "@types/react-redux": "^7.1.20", @@ -16824,7 +16743,6 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/react-say/-/react-say-2.2.1.tgz", "integrity": "sha512-Iew40Wql10+IC659S1CRbziEO272XeJmWfmLbnSLqyGpCwELTBxTefHvFUvKwEAuJv8Bk+ezjcw0NxgDAZdzWA==", - "license": "MIT", "dependencies": { "prop-types": "^15.8.1", "react-say": "^2.2.1" @@ -16837,7 +16755,6 @@ "version": "4.2.1-main.53844f5", "resolved": "https://registry.npmjs.org/react-scroll-to-bottom/-/react-scroll-to-bottom-4.2.1-main.53844f5.tgz", "integrity": "sha512-YWTDfj15tVwRateyq3yOUjlmZ8BNgAmBahzvwX5J/fjyBTkASbwnZlABuqQt1NspZ9Oe/bO8r/BYWTnIInxlcw==", - "license": "MIT", "dependencies": { "@babel/runtime-corejs3": "^7.15.4", "@emotion/css": "11.1.3", @@ -16900,7 +16817,6 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/react-wrap-with/-/react-wrap-with-0.1.0.tgz", "integrity": "sha512-8+UKXYLofRBNtSfeZCM81/X0sCvJRv0/nrt42lPozrF/BF0WW2/QDoZQLKuvkMxN+i8qaGzC7mOM6z4UGwlpug==", - "license": "MIT", "dependencies": { "@babel/runtime-corejs3": "^7.24.1", "react-wrap-with": "^0.1.0", @@ -16939,9 +16855,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.5.0.tgz", - "integrity": "sha512-PlBfpQwiUvGViBNX84Yxwjsdhd1TUlXr6zjX7eoirtCPIr08NAmxwa+fcYBTeRQxHo9YC9wwF3m9i700sHma8g==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.6.0.tgz", + "integrity": "sha512-8ZiHFm91orbSAe2PSAiSVBVko18pbhbiB3U9GglSzF/zCGkR+rxpHx6sEMCUm4kxY4LjDIUGgCfUMtwfZfjfUA==", "dependencies": { "tagged-tag": "^1.0.0" }, @@ -16953,15 +16869,15 @@ } }, "node_modules/read-pkg": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-10.0.0.tgz", - "integrity": "sha512-A70UlgfNdKI5NSvTTfHzLQj7NJRpJ4mT5tGafkllJ4wh71oYuGm/pzphHcmW4s35iox56KSK721AihodoXSc/A==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-10.1.0.tgz", + "integrity": "sha512-I8g2lArQiP78ll51UeMZojewtYgIRCKCWqZEgOO8c/uefTI+XDXvCSXu3+YNUaTNvZzobrL5+SqHjBrByRRTdg==", "dependencies": { "@types/normalize-package-data": "^2.4.4", "normalize-package-data": "^8.0.0", "parse-json": "^8.3.0", - "type-fest": "^5.2.0", - "unicorn-magic": "^0.3.0" + "type-fest": "^5.4.4", + "unicorn-magic": "^0.4.0" }, "engines": { "node": ">=20" @@ -17075,9 +16991,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.5.0.tgz", - "integrity": "sha512-PlBfpQwiUvGViBNX84Yxwjsdhd1TUlXr6zjX7eoirtCPIr08NAmxwa+fcYBTeRQxHo9YC9wwF3m9i700sHma8g==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.6.0.tgz", + "integrity": "sha512-8ZiHFm91orbSAe2PSAiSVBVko18pbhbiB3U9GglSzF/zCGkR+rxpHx6sEMCUm4kxY4LjDIUGgCfUMtwfZfjfUA==", "dependencies": { "tagged-tag": "^1.0.0" }, @@ -17149,14 +17065,12 @@ "node_modules/redux": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/redux/-/redux-5.0.1.tgz", - "integrity": "sha512-M9/ELqF6fy8FwmkpnF0S3YKOqMyoWJ4+CS5Efg2ct3oY9daQvd/Pc71FpGZsVsbl3Cpb+IIcjBDUnnyBdQbq4w==", - "license": "MIT" + "integrity": "sha512-M9/ELqF6fy8FwmkpnF0S3YKOqMyoWJ4+CS5Efg2ct3oY9daQvd/Pc71FpGZsVsbl3Cpb+IIcjBDUnnyBdQbq4w==" }, "node_modules/redux-saga": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/redux-saga/-/redux-saga-1.4.2.tgz", "integrity": "sha512-QLIn/q+7MX/B+MkGJ/K6R3//60eJ4QNy65eqPsJrfGezbxdh1Jx+37VRKE2K4PsJnNET5JufJtgWdT30WBa+6w==", - "license": "MIT", "dependencies": { "@redux-saga/core": "^1.4.2" } @@ -17346,7 +17260,6 @@ }, "node_modules/requires-port": { "version": "1.0.0", - "dev": true, "license": "MIT" }, "node_modules/reserved-words": { @@ -17355,10 +17268,11 @@ "license": "MIT" }, "node_modules/resolve": { - "version": "1.22.11", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", - "integrity": "sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==", + "version": "1.22.12", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.12.tgz", + "integrity": "sha512-TyeJ1zif53BPfHootBGwPRYT1RUt6oGWsaQr8UyZW/eAm9bKoijtvruSDEmZHm92CwS9nj7/fWttqPCgzep8CA==", "dependencies": { + "es-errors": "^1.3.0", "is-core-module": "^2.16.1", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" @@ -17392,6 +17306,15 @@ "node": ">=8" } }, + "node_modules/resolve-pkg-maps": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", + "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", + "dev": true, + "funding": { + "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" + } + }, "node_modules/resolve.exports": { "version": "2.0.3", "dev": true, @@ -17460,7 +17383,6 @@ }, "node_modules/rimraf": { "version": "3.0.2", - "dev": true, "license": "ISC", "dependencies": { "glob": "^7.1.3" @@ -17474,8 +17396,9 @@ }, "node_modules/roarr": { "version": "2.15.4", + "resolved": "https://registry.npmjs.org/roarr/-/roarr-2.15.4.tgz", + "integrity": "sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==", "dev": true, - "license": "BSD-3-Clause", "dependencies": { "boolean": "^3.0.1", "detect-node": "^2.0.4", @@ -17490,15 +17413,15 @@ }, "node_modules/roarr/node_modules/sprintf-js": { "version": "1.1.3", - "dev": true, - "license": "BSD-3-Clause" + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", + "dev": true }, "node_modules/rollup": { - "version": "4.59.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.59.0.tgz", - "integrity": "sha512-2oMpl67a3zCH9H79LeMcbDhXW/UmWG/y2zuqnF2jQq5uq9TbM9TVyXvA4+t+ne2IIkBdrLpAaRQAvo7YI/Yyeg==", + "version": "4.60.2", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.60.2.tgz", + "integrity": "sha512-J9qZyW++QK/09NyN/zeO0dG/1GdGfyp9lV8ajHnRVLfo/uFsbji5mHnDgn/qYdUHyCkM2N+8VyspgZclfAh0eQ==", "dev": true, - "license": "MIT", "dependencies": { "@types/estree": "1.0.8" }, @@ -17510,55 +17433,56 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.59.0", - "@rollup/rollup-android-arm64": "4.59.0", - "@rollup/rollup-darwin-arm64": "4.59.0", - "@rollup/rollup-darwin-x64": "4.59.0", - "@rollup/rollup-freebsd-arm64": "4.59.0", - "@rollup/rollup-freebsd-x64": "4.59.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.59.0", - "@rollup/rollup-linux-arm-musleabihf": "4.59.0", - "@rollup/rollup-linux-arm64-gnu": "4.59.0", - "@rollup/rollup-linux-arm64-musl": "4.59.0", - "@rollup/rollup-linux-loong64-gnu": "4.59.0", - "@rollup/rollup-linux-loong64-musl": "4.59.0", - "@rollup/rollup-linux-ppc64-gnu": "4.59.0", - "@rollup/rollup-linux-ppc64-musl": "4.59.0", - "@rollup/rollup-linux-riscv64-gnu": "4.59.0", - "@rollup/rollup-linux-riscv64-musl": "4.59.0", - "@rollup/rollup-linux-s390x-gnu": "4.59.0", - "@rollup/rollup-linux-x64-gnu": "4.59.0", - "@rollup/rollup-linux-x64-musl": "4.59.0", - "@rollup/rollup-openbsd-x64": "4.59.0", - "@rollup/rollup-openharmony-arm64": "4.59.0", - "@rollup/rollup-win32-arm64-msvc": "4.59.0", - "@rollup/rollup-win32-ia32-msvc": "4.59.0", - "@rollup/rollup-win32-x64-gnu": "4.59.0", - "@rollup/rollup-win32-x64-msvc": "4.59.0", + "@rollup/rollup-android-arm-eabi": "4.60.2", + "@rollup/rollup-android-arm64": "4.60.2", + "@rollup/rollup-darwin-arm64": "4.60.2", + "@rollup/rollup-darwin-x64": "4.60.2", + "@rollup/rollup-freebsd-arm64": "4.60.2", + "@rollup/rollup-freebsd-x64": "4.60.2", + "@rollup/rollup-linux-arm-gnueabihf": "4.60.2", + "@rollup/rollup-linux-arm-musleabihf": "4.60.2", + "@rollup/rollup-linux-arm64-gnu": "4.60.2", + "@rollup/rollup-linux-arm64-musl": "4.60.2", + "@rollup/rollup-linux-loong64-gnu": "4.60.2", + "@rollup/rollup-linux-loong64-musl": "4.60.2", + "@rollup/rollup-linux-ppc64-gnu": "4.60.2", + "@rollup/rollup-linux-ppc64-musl": "4.60.2", + "@rollup/rollup-linux-riscv64-gnu": "4.60.2", + "@rollup/rollup-linux-riscv64-musl": "4.60.2", + "@rollup/rollup-linux-s390x-gnu": "4.60.2", + "@rollup/rollup-linux-x64-gnu": "4.60.2", + "@rollup/rollup-linux-x64-musl": "4.60.2", + "@rollup/rollup-openbsd-x64": "4.60.2", + "@rollup/rollup-openharmony-arm64": "4.60.2", + "@rollup/rollup-win32-arm64-msvc": "4.60.2", + "@rollup/rollup-win32-ia32-msvc": "4.60.2", + "@rollup/rollup-win32-x64-gnu": "4.60.2", + "@rollup/rollup-win32-x64-msvc": "4.60.2", "fsevents": "~2.3.2" } }, - "node_modules/rollup-plugin-dts": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/rollup-plugin-dts/-/rollup-plugin-dts-6.1.1.tgz", - "integrity": "sha512-aSHRcJ6KG2IHIioYlvAOcEq6U99sVtqDDKVhnwt70rW6tsz3tv5OSjEiWcgzfsHdLyGXZ/3b/7b/+Za3Y6r1XA==", + "node_modules/rollup-plugin-import-trace": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/rollup-plugin-import-trace/-/rollup-plugin-import-trace-1.0.1.tgz", + "integrity": "sha512-dWOKrdYba2BXDJh82kkuM4pAR3M6r7WFp6vbVxAgvLfug2WniMFAg2uZ5sNQ/8CoQWo5l2N5EXDG8+QClKk1YQ==", "dev": true, - "license": "LGPL-3.0-only", - "dependencies": { - "magic-string": "^0.30.10" - }, "engines": { - "node": ">=16" + "node": ">=20.20.0" }, "funding": { - "url": "https://github.com/sponsors/Swatinem" - }, - "optionalDependencies": { - "@babel/code-frame": "^7.24.2" + "url": "https://github.com/privatenumber/rollup-plugin-import-trace?sponsor=1" }, "peerDependencies": { - "rollup": "^3.29.4 || ^4", - "typescript": "^4.5 || ^5.0" + "rollup": "^3.0.0 || ^4.0.0", + "vite": "^5.0.0 || ^6.0.0 || ^7.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + }, + "vite": { + "optional": true + } } }, "node_modules/router": { @@ -17576,6 +17500,14 @@ "node": ">= 18" } }, + "node_modules/rsvp": { + "version": "4.8.5", + "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", + "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", + "engines": { + "node": "6.* || >= 7.*" + } + }, "node_modules/rtl-css-js": { "version": "1.16.1", "resolved": "https://registry.npmjs.org/rtl-css-js/-/rtl-css-js-1.16.1.tgz", @@ -17695,18 +17627,16 @@ }, "node_modules/safer-buffer": { "version": "2.1.2", - "dev": true, "license": "MIT" }, "node_modules/sanitize-html": { - "version": "2.17.1", - "resolved": "https://registry.npmjs.org/sanitize-html/-/sanitize-html-2.17.1.tgz", - "integrity": "sha512-ehFCW+q1a4CSOWRAdX97BX/6/PDEkCqw7/0JXZAGQV57FQB3YOkTa/rrzHPeJ+Aghy4vZAFfWMYyfxIiB7F/gw==", - "license": "MIT", + "version": "2.17.3", + "resolved": "https://registry.npmjs.org/sanitize-html/-/sanitize-html-2.17.3.tgz", + "integrity": "sha512-Kn4srCAo2+wZyvCNKCSyB2g8RQ8IkX/gQs2uqoSRNu5t9I2qvUyAVvRDiFUVAiX3N3PNuwStY0eNr+ooBHVWEg==", "dependencies": { "deepmerge": "^4.2.2", "escape-string-regexp": "^4.0.0", - "htmlparser2": "^8.0.0", + "htmlparser2": "^10.1.0", "is-plain-object": "^5.0.0", "parse-srcset": "^1.0.2", "postcss": "^8.3.11" @@ -17834,9 +17764,9 @@ "dev": true }, "node_modules/selenium-webdriver": { - "version": "4.41.0", - "resolved": "https://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-4.41.0.tgz", - "integrity": "sha512-1XxuKVhr9az24xwixPBEDGSZP+P0z3ZOnCmr9Oiep0MlJN2Mk+flIjD3iBS9BgyjS4g14dikMqnrYUPIjhQBhA==", + "version": "4.43.0", + "resolved": "https://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-4.43.0.tgz", + "integrity": "sha512-dV4zBTT37or3Z3/8uD6rS8zvd4ZxPuG4EJVlqYIbZCGZCYttZm7xb9rlFLSk4rrsQHAeDYvudl7cquo0vWpHjg==", "dev": true, "funding": [ { @@ -17848,12 +17778,11 @@ "url": "https://opencollective.com/selenium" } ], - "license": "Apache-2.0", "dependencies": { "@bazel/runfiles": "^6.5.0", "jszip": "^3.10.1", "tmp": "^0.2.5", - "ws": "^8.19.0" + "ws": "^8.20.0" }, "engines": { "node": ">= 20.0.0" @@ -17884,7 +17813,6 @@ "version": "5.5.0", "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-5.5.0.tgz", "integrity": "sha512-ftnu3TW4+3eBfLRFnDEkzGxSF/10BJBkaLJuBHZX0kiPS7bRdlpZGu6YGt4KngMkdTwJE6MbjavFpqHvqVt+Ew==", - "license": "MIT", "dependencies": { "@peculiar/x509": "^1.14.2", "pkijs": "^3.3.3" @@ -17895,7 +17823,6 @@ }, "node_modules/semver": { "version": "6.3.1", - "devOptional": true, "license": "ISC", "bin": { "semver": "bin/semver.js" @@ -17903,8 +17830,9 @@ }, "node_modules/semver-compare": { "version": "1.0.0", - "dev": true, - "license": "MIT" + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", + "dev": true }, "node_modules/send": { "version": "1.2.0", @@ -17927,14 +17855,6 @@ "node": ">= 18" } }, - "node_modules/send/node_modules/mime-db": { - "version": "1.54.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/send/node_modules/mime-types": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-3.0.2.tgz", @@ -17952,11 +17872,12 @@ } }, "node_modules/serialize-error": { - "version": "7.0.1", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-8.1.0.tgz", + "integrity": "sha512-3NnuWfM6vBYoy5gZFvHiYsVbafvI9vZv/+jlIigFn4oP4zjNPK3LhcY0xSCgeb1a5L8jO71Mit9LlNoi2UfDDQ==", "dev": true, - "license": "MIT", "dependencies": { - "type-fest": "^0.13.1" + "type-fest": "^0.20.2" }, "engines": { "node": ">=10" @@ -17966,9 +17887,10 @@ } }, "node_modules/serialize-error/node_modules/type-fest": { - "version": "0.13.1", + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true, - "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=10" }, @@ -17981,7 +17903,6 @@ "resolved": "https://registry.npmjs.org/serve/-/serve-14.2.6.tgz", "integrity": "sha512-QEjUSA+sD4Rotm1znR8s50YqA3kYpRGPmtd5GlFxbaL9n/FdUNbqMhxClqdditSk0LlZyA/dhud6XNRTOC9x2Q==", "dev": true, - "license": "MIT", "dependencies": { "@zeit/schemas": "2.36.0", "ajv": "8.18.0", @@ -18006,7 +17927,6 @@ "version": "6.1.7", "resolved": "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.7.tgz", "integrity": "sha512-CinAq1xWb0vR3twAv9evEU8cNWkXCb9kd5ePAHUKJBkOsUpR1wt/CvGdeca7vqumL1U5cSaeVQ6zZMxiJ3yWsg==", - "license": "MIT", "dependencies": { "bytes": "3.0.0", "content-disposition": "0.5.2", @@ -18018,9 +17938,9 @@ } }, "node_modules/serve-handler/node_modules/brace-expansion": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", - "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.14.tgz", + "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==", "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -18040,23 +17960,6 @@ "node": ">= 0.6" } }, - "node_modules/serve-handler/node_modules/mime-db": { - "version": "1.33.0", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-handler/node_modules/mime-types": { - "version": "2.1.18", - "license": "MIT", - "dependencies": { - "mime-db": "~1.33.0" - }, - "engines": { - "node": ">= 0.6" - } - }, "node_modules/serve-handler/node_modules/minimatch": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", @@ -18233,7 +18136,6 @@ "version": "2.5.0", "resolved": "https://registry.npmjs.org/shiki/-/shiki-2.5.0.tgz", "integrity": "sha512-mI//trrsaiCIPsja5CNfsyNOqgAZUb6VpJA+340toL42UpzQlXpwRV9nch69X6gaUxrr9kaOOa6e3y3uAkGFxQ==", - "license": "MIT", "dependencies": { "@shikijs/core": "2.5.0", "@shikijs/engine-javascript": "2.5.0", @@ -18318,11 +18220,15 @@ "dev": true, "license": "ISC" }, + "node_modules/simple-lru-cache": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/simple-lru-cache/-/simple-lru-cache-0.0.2.tgz", + "integrity": "sha512-uEv/AFO0ADI7d99OHDmh1QfYzQk/izT1vCmu/riQfh7qjBVUUgRT87E5s5h7CxWCA/+YoZerykpEthzVrW3LIw==" + }, "node_modules/simple-update-in": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/simple-update-in/-/simple-update-in-2.2.0.tgz", - "integrity": "sha512-FrW41lLiOs82jKxwq39UrE1HDAHOvirKWk4Nv8tqnFFFknVbTxcHZzDS4vt02qqdU/5+KNsQHWzhKHznDBmrww==", - "license": "MIT" + "integrity": "sha512-FrW41lLiOs82jKxwq39UrE1HDAHOvirKWk4Nv8tqnFFFknVbTxcHZzDS4vt02qqdU/5+KNsQHWzhKHznDBmrww==" }, "node_modules/simple-update-notifier": { "version": "2.0.0", @@ -18409,7 +18315,6 @@ "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-5.0.0.tgz", "integrity": "sha512-k2Dur7CbSLcAH73sBcIkV5xjPV4SzqO1NJ7+XaQl8if3VODDUj3FNchNGpqgJSKbvUfJuhVdv8K2Eu8/TNl2eA==", "dev": true, - "license": "MIT", "dependencies": { "iconv-lite": "^0.6.3", "source-map-js": "^1.0.2" @@ -18572,7 +18477,6 @@ "version": "4.2.3", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -18585,14 +18489,12 @@ "node_modules/string-width-cjs/node_modules/emoji-regex": { "version": "8.0.0", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/string-width-cjs/node_modules/is-fullwidth-code-point": { "version": "3.0.0", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=8" } @@ -18731,7 +18633,6 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, - "license": "MIT", "dependencies": { "ansi-regex": "^5.0.1" }, @@ -18744,7 +18645,6 @@ "version": "6.0.1", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "ansi-regex": "^5.0.1" }, @@ -18995,7 +18895,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/tagged-tag/-/tagged-tag-1.0.0.tgz", "integrity": "sha512-yEFYrVhod+hdNyx7g5Bnkkb0G6si8HJurOoOEgC8B/O0uXLHlaey/65KRv6cuWBNhBgHKAROVpc7QyYqE5gFng==", - "license": "MIT", "engines": { "node": ">=20" }, @@ -19018,11 +18917,10 @@ } }, "node_modules/terminal-columns": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/terminal-columns/-/terminal-columns-1.4.1.tgz", - "integrity": "sha512-IKVL/itiMy947XWVv4IHV7a0KQXvKjj4ptbi7Ew9MPMcOLzkiQeyx3Gyvh62hKrfJ0RZc4M1nbhzjNM39Kyujw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/terminal-columns/-/terminal-columns-2.0.0.tgz", + "integrity": "sha512-6IByuUjyNZJXUtwDNm+OIe62zgwwaRbH+WMNTcx05O2G5V9WhvluAAHJY8OvUdwmzMPpqAD/7EUpGdI6ae1aiQ==", "dev": true, - "license": "MIT", "funding": { "url": "https://github.com/privatenumber/terminal-columns?sponsor=1" } @@ -19147,9 +19045,9 @@ } }, "node_modules/test-exclude/node_modules/brace-expansion": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", - "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.14.tgz", + "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==", "dev": true, "dependencies": { "balanced-match": "^1.0.0", @@ -19174,6 +19072,17 @@ "dev": true, "license": "MIT" }, + "node_modules/textextensions": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/textextensions/-/textextensions-2.6.0.tgz", + "integrity": "sha512-49WtAWS+tcsy93dRt6P0P3AMD2m5PvXRhuEA0kaXos5ZLlujtYmpmFsB+QvWUSxE1ZsstmYXfQ7L40+EcQgpAQ==", + "engines": { + "node": ">=0.8" + }, + "funding": { + "url": "https://bevry.me/fund" + } + }, "node_modules/thenify": { "version": "3.3.1", "dev": true, @@ -19193,6 +19102,15 @@ "node": ">=0.8" } }, + "node_modules/tinyexec": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.1.1.tgz", + "integrity": "sha512-VKS/ZaQhhkKFMANmAOhhXVoIfBXblQxGX1myCQ2faQrfmobMftXeJPcZGp0gS07ocvGJWDLZGyOZDadDBqYIJg==", + "dev": true, + "engines": { + "node": ">=18" + } + }, "node_modules/tinyglobby": { "version": "0.2.15", "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", @@ -19304,11 +19222,10 @@ } }, "node_modules/ts-api-utils": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.4.0.tgz", - "integrity": "sha512-3TaVTaAv2gTiMB35i3FiGJaRfwb3Pyn/j3m/bfAvGe8FB7CF6u+LMYqYlDh7reQf7UNvoTvdfAqHGmPGOSsPmA==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.5.0.tgz", + "integrity": "sha512-OJ/ibxhPlqrMM0UiNHJ/0CKQkoKF243/AEmplt3qpRgkW8VG7IfOS41h7V8TjITqdByHzrjcS/2si+y4lIh8NA==", "dev": true, - "license": "MIT", "engines": { "node": ">=18.12" }, @@ -19356,7 +19273,6 @@ "resolved": "https://registry.npmjs.org/tsd/-/tsd-0.33.0.tgz", "integrity": "sha512-/PQtykJFVw90QICG7zyPDMIyueOXKL7jOJVoX5pILnb3Ux+7QqynOxfVvarE+K+yi7BZyOSY4r+OZNWSWRiEwQ==", "dev": true, - "license": "MIT", "dependencies": { "@tsd/typescript": "^5.9.2", "eslint-formatter-pretty": "^4.1.0", @@ -19382,7 +19298,6 @@ "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.5.1.tgz", "integrity": "sha512-xtgkqwdhpKWr3tKPmCkvYmS9xnQK3m3XgxZHwSUjvfTjp7YfXe5tT3GgWi0F2N+ZSMsOeWeZFh7ZZFg5iPhing==", "dev": true, - "license": "MIT", "dependencies": { "bundle-require": "^5.1.0", "cac": "^6.7.14", @@ -19531,11 +19446,10 @@ } }, "node_modules/type-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/type-flag/-/type-flag-3.0.0.tgz", - "integrity": "sha512-3YaYwMseXCAhBB14RXW5cRQfJQlEknS6i4C8fCfeUdS3ihG9EdccdR9kt3vP73ZdeTGmPb4bZtkDn5XMIn1DLA==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/type-flag/-/type-flag-4.2.0.tgz", + "integrity": "sha512-6h6QpSh5glA+BrMCq8FINo4o/BqSHNQdfIPpeSBt0s/6mynPaQWWZL+RHaYm95htTbid/spUbJer1yOCsA6ezQ==", "dev": true, - "license": "MIT", "funding": { "url": "https://github.com/privatenumber/type-flag?sponsor=1" } @@ -19553,14 +19467,6 @@ "node": ">= 0.6" } }, - "node_modules/type-is/node_modules/mime-db": { - "version": "1.54.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/type-is/node_modules/mime-types": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-3.0.2.tgz", @@ -19648,11 +19554,10 @@ } }, "node_modules/typescript": { - "version": "5.9.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", - "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.3.tgz", + "integrity": "sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==", "devOptional": true, - "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -19679,7 +19584,6 @@ "resolved": "https://registry.npmjs.org/typescript-plugin-css-modules/-/typescript-plugin-css-modules-5.2.0.tgz", "integrity": "sha512-c5pAU5d+m3GciDr/WhkFldz1NIEGBafuP/3xhFt9BEXS2gmn/LvjkoZ11vEBIuP8LkXfPNhOt1BUhM5efFuwOw==", "dev": true, - "license": "MIT", "dependencies": { "@types/postcss-modules-local-by-default": "^4.0.2", "@types/postcss-modules-scope": "^3.0.4", @@ -19821,10 +19725,9 @@ "license": "MIT" }, "node_modules/undici-types": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.18.2.tgz", - "integrity": "sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w==", - "license": "MIT" + "version": "7.19.2", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.19.2.tgz", + "integrity": "sha512-qYVnV5OEm2AW8cJMCpdV20CDyaN3g0AjDlOGf1OW4iaDEx8MwdtChUp4zu4H0VP3nDRF/8RKWH+IPp9uW0YGZg==" }, "node_modules/unicode-canonical-property-names-ecmascript": { "version": "2.0.1", @@ -19871,11 +19774,11 @@ } }, "node_modules/unicorn-magic": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.3.0.tgz", - "integrity": "sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA==", + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.4.0.tgz", + "integrity": "sha512-wH590V9VNgYH9g3lH9wWjTrUoKsjLF6sGLjhR4sH1LWpLmCOH0Zf7PukhDA8BiS7KHe4oPNkcTHqYkj7SOGUOw==", "engines": { - "node": ">=18" + "node": ">=20" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -19953,32 +19856,30 @@ } }, "node_modules/unplugin": { - "version": "2.3.11", - "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-2.3.11.tgz", - "integrity": "sha512-5uKD0nqiYVzlmCRs01Fhs2BdkEgBS3SAVP6ndrBsuK42iC2+JHyxM05Rm9G8+5mkmRtzMZGY8Ct5+mliZxU/Ww==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-3.0.0.tgz", + "integrity": "sha512-0Mqk3AT2TZCXWKdcoaufeXNukv2mTrEZExeXlHIOZXdqYoHHr4n51pymnwV8x2BOVxwXbK2HLlI7usrqMpycdg==", "dev": true, "dependencies": { "@jridgewell/remapping": "^2.3.5", - "acorn": "^8.15.0", "picomatch": "^4.0.3", "webpack-virtual-modules": "^0.6.2" }, "engines": { - "node": ">=18.12.0" + "node": "^20.19.0 || >=22.12.0" } }, "node_modules/unplugin-lightningcss": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/unplugin-lightningcss/-/unplugin-lightningcss-0.4.3.tgz", - "integrity": "sha512-duRm9yQq/EbjsHHhNxgQJhelqSvUFNUN9UM/BomglCVQpmE3qD2d17UeAps1Pvoa6LHH23VRAYhEA4YKsf+sCQ==", + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/unplugin-lightningcss/-/unplugin-lightningcss-0.4.5.tgz", + "integrity": "sha512-PMm6POv3gt1HNbxYFItantjcP6dPG/BiV/9IXcVLVBv3BZ+pf7Eo4yE+siIGKoVMXjs3BfVXeETTw2Gv3D8iOw==", "dev": true, "dependencies": { - "lightningcss": "^1.30.1", - "magic-string": "^0.30.19", - "unplugin": "^2.3.10" + "lightningcss": "^1.31.1", + "unplugin": "^3.0.0" }, "engines": { - "node": ">=20.18.0" + "node": ">=20.19.0" }, "funding": { "url": "https://github.com/sponsors/sxzz" @@ -20043,17 +19944,24 @@ "punycode": "^2.1.0" } }, + "node_modules/url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, "node_modules/url-search-params-polyfill": { "version": "8.2.5", "resolved": "https://registry.npmjs.org/url-search-params-polyfill/-/url-search-params-polyfill-8.2.5.tgz", - "integrity": "sha512-FOEojW4XReTmtZOB7xqSHmJZhrNTmClhBriwLTmle4iA7bwuCo6ldSfbtsFSb8bTf3E0a3XpfonAdaur9vqq8A==", - "license": "MIT" + "integrity": "sha512-FOEojW4XReTmtZOB7xqSHmJZhrNTmClhBriwLTmle4iA7bwuCo6ldSfbtsFSb8bTf3E0a3XpfonAdaur9vqq8A==" }, "node_modules/use-propagate": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/use-propagate/-/use-propagate-0.2.2.tgz", "integrity": "sha512-cuOqTG8JKwkd1DHJAy1fkwIMhjVRZSdSvELJCXsROvmS49yd8CEXg4UDaDC7Qqsea0FAa1d8cFMY5pnodZul1w==", - "license": "MIT", "dependencies": { "use-propagate": "^0.2.2", "use-ref-from": "^0.1.0" @@ -20066,7 +19974,6 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/use-reduce-memo/-/use-reduce-memo-0.1.0.tgz", "integrity": "sha512-dJK1fMqvI7Lzh5xdKsZkZiqbvTyNtovQB7E3IWJp5tOeG7kdxZKdD5XSROiRGwAfB0qctgzJMcsCTp+m7y77UA==", - "license": "MIT", "dependencies": { "handler-chain": "^0.1.0", "use-reduce-memo": "^0.1.0", @@ -20092,7 +19999,6 @@ "version": "0.2.1", "resolved": "https://registry.npmjs.org/use-state-with-ref/-/use-state-with-ref-0.2.1.tgz", "integrity": "sha512-6EPhnqXsdzEVnOQub5VoDmrTLI2PqKp8zIIw/fvfdW9F/qLboIZG5ifaRQpAon8Upu3QYnIYZ+8h+YYQdXUnCw==", - "license": "MIT", "dependencies": { "use-ref-from": "^0.2.1", "use-state-with-ref": "^0.2.1" @@ -20113,6 +20019,11 @@ "react": ">=16.8.0" } }, + "node_modules/username-sync": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/username-sync/-/username-sync-1.0.3.tgz", + "integrity": "sha512-m/7/FSqjJNAzF2La448c/aEom0gJy7HY7Y509h6l0ePvEkFictAGptwWaj1msWJ38JbfEDOUoE8kqFee9EHKdA==" + }, "node_modules/util-deprecate": { "version": "1.0.2", "dev": true, @@ -20122,7 +20033,6 @@ "version": "8.3.2", "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "license": "MIT", "bin": { "uuid": "dist/bin/uuid" } @@ -20222,7 +20132,6 @@ "version": "8.1.4", "resolved": "https://registry.npmjs.org/web-speech-cognitive-services/-/web-speech-cognitive-services-8.1.4.tgz", "integrity": "sha512-1d/2F5RDAMTJmJdSWWssKzmTsA6hkXz4kz3QzBpDvgjxWjDo4j2erb6KydyfaRzDRk4Pij4MtR1CtpzZtU9rSA==", - "license": "MIT", "dependencies": { "base64-arraybuffer": "^1.0.2", "event-as-promise": "^2.0.1", @@ -20248,11 +20157,10 @@ } }, "node_modules/webpack": { - "version": "5.105.4", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.105.4.tgz", - "integrity": "sha512-jTywjboN9aHxFlToqb0K0Zs9SbBoW4zRUlGzI2tYNxVYcEi/IPpn+Xi4ye5jTLvX2YeLuic/IvxNot+Q1jMoOw==", + "version": "5.106.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.106.2.tgz", + "integrity": "sha512-wGN3qcrBQIFmQ/c0AiOAQBvrZ5lmY8vbbMv4Mxfgzqd/B6+9pXtLo73WuS1dSGXM5QYY3hZnIbvx+K1xxe6FyA==", "dev": true, - "license": "MIT", "dependencies": { "@types/eslint-scope": "^3.7.7", "@types/estree": "^1.0.8", @@ -20270,9 +20178,8 @@ "events": "^3.2.0", "glob-to-regexp": "^0.4.1", "graceful-fs": "^4.2.11", - "json-parse-even-better-errors": "^2.3.1", "loader-runner": "^4.3.1", - "mime-types": "^2.1.27", + "mime-db": "^1.54.0", "neo-async": "^2.6.2", "schema-utils": "^4.3.3", "tapable": "^2.3.0", @@ -20297,19 +20204,14 @@ } }, "node_modules/webpack-cli": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-6.0.1.tgz", - "integrity": "sha512-MfwFQ6SfwinsUVi0rNJm7rHZ31GyTcpVE5pgVA3hwFRb7COD4TzjUUwhGWKfO50+xdc2MQPuEBBJoqIMGt3JDw==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-7.0.2.tgz", + "integrity": "sha512-dB0R4T+C/8YuvM+fabdvil6QE44/ChDXikV5lOOkrUeCkW5hTJv2pGLE3keh+D5hjYw8icBaJkZzpFoaHV4T+g==", "dev": true, - "license": "MIT", "dependencies": { - "@discoveryjs/json-ext": "^0.6.1", - "@webpack-cli/configtest": "^3.0.1", - "@webpack-cli/info": "^3.0.1", - "@webpack-cli/serve": "^3.0.1", - "colorette": "^2.0.14", - "commander": "^12.1.0", - "cross-spawn": "^7.0.3", + "@discoveryjs/json-ext": "^1.0.0", + "commander": "^14.0.3", + "cross-spawn": "^7.0.6", "envinfo": "^7.14.0", "fastest-levenshtein": "^1.0.12", "import-local": "^3.0.2", @@ -20321,14 +20223,16 @@ "webpack-cli": "bin/cli.js" }, "engines": { - "node": ">=18.12.0" + "node": ">=20.9.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/webpack" }, "peerDependencies": { - "webpack": "^5.82.0" + "webpack": "^5.101.0", + "webpack-bundle-analyzer": "^4.0.0 || ^5.0.0", + "webpack-dev-server": "^5.0.0" }, "peerDependenciesMeta": { "webpack-bundle-analyzer": { @@ -20340,11 +20244,12 @@ } }, "node_modules/webpack-cli/node_modules/commander": { - "version": "12.1.0", + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-14.0.3.tgz", + "integrity": "sha512-H+y0Jo/T1RZ9qPP4Eh1pkcQcLRglraJaSLoyOtHxu6AapkjWVCy2Sit1QQ4x3Dng8qDlSsZEet7g5Pq06MvTgw==", "dev": true, - "license": "MIT", "engines": { - "node": ">=18" + "node": ">=20" } }, "node_modules/webpack-merge": { @@ -20374,8 +20279,7 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/webpack-stats-plugin/-/webpack-stats-plugin-1.1.3.tgz", "integrity": "sha512-yUKYyy+e0iF/w31QdfioRKY+h3jDBRpthexBOWGKda99iu2l/wxYsI/XqdlP5IU58/0KB9CsJZgWNAl+/MPkRw==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/webpack-virtual-modules": { "version": "0.6.2", @@ -20406,8 +20310,7 @@ "node_modules/whatwg-fetch": { "version": "3.6.20", "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.20.tgz", - "integrity": "sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg==", - "license": "MIT" + "integrity": "sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg==" }, "node_modules/whatwg-mimetype": { "version": "3.0.0", @@ -20611,7 +20514,6 @@ "version": "7.0.0", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", @@ -20627,14 +20529,12 @@ "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { "version": "8.0.0", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/wrap-ansi-cjs/node_modules/is-fullwidth-code-point": { "version": "3.0.0", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=8" } @@ -20643,7 +20543,6 @@ "version": "4.2.3", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -20767,10 +20666,9 @@ "license": "ISC" }, "node_modules/yaml": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.2.tgz", - "integrity": "sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A==", - "license": "ISC", + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.3.tgz", + "integrity": "sha512-AvbaCLOO2Otw/lW5bmh9d/WEdcDFdQp2Z2ZUH3pX9U2ihyUY0nvLv7J6TrWowklRGPYbB/IuIMfYgxaCPg5Bpg==", "bin": { "yaml": "bin.mjs" }, @@ -20907,11 +20805,11 @@ "simple-update-in": "2.2.0", "use-reduce-memo": "0.1.0", "use-ref-from": "0.2.1", - "valibot": "1.2.0" + "valibot": "1.3.1" }, "devDependencies": { "@babel/core": "^7.29.0", - "@babel/preset-env": "^7.29.0", + "@babel/preset-env": "^7.29.2", "@babel/preset-react": "^7.28.5", "@babel/preset-typescript": "^7.28.5", "@msinternal/botframework-webchat-api-graph": "0.0.0-0", @@ -20922,19 +20820,19 @@ "@msinternal/botframework-webchat-react-valibot": "0.0.0-0", "@msinternal/botframework-webchat-redux-store": "0.0.0-0", "@msinternal/botframework-webchat-tsconfig": "0.0.0-0", - "@types/dom-speech-recognition": "^0.0.7", + "@types/dom-speech-recognition": "^0.0.9", "@types/jest": "^29.5.14", - "@types/node": "^25.3.3", + "@types/node": "^25.6.0", "@types/react": "^16.14.69", - "babel-plugin-istanbul": "^7.0.1", + "babel-plugin-istanbul": "^8.0.0", "babel-plugin-transform-inline-environment-variables": "^0.4.4", - "core-js": "^3.48.0", + "core-js": "^3.49.0", "cross-env": "^10.1.0", "globalize-compiler": "^1.1.1", "iana-tz-data": "^2019.1.0", "nodemon": "^3.1.14", - "type-fest": "^5.4.4", - "typescript": "^5.9.3" + "type-fest": "^5.6.0", + "typescript": "^6.0.3" }, "peerDependencies": { "react": ">= 16.8.6", @@ -20946,7 +20844,7 @@ "version": "0.0.0-0", "license": "MIT", "dependencies": { - "valibot": "1.2.0" + "valibot": "1.3.1" }, "devDependencies": { "@msinternal/botframework-webchat-base": "0.0.0-0", @@ -20955,8 +20853,8 @@ "@testduet/given-when-then": "^0.1.0", "@types/use-sync-external-store": "^1.5.0", "botframework-webchat-core": "0.0.0-0", - "type-fest": "^5.4.4", - "typescript": "^5.9.3" + "type-fest": "^5.6.0", + "typescript": "^6.0.3" }, "peerDependencies": { "handler-chain": "0.1.1", @@ -20965,9 +20863,9 @@ } }, "packages/api-graph/node_modules/type-fest": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.5.0.tgz", - "integrity": "sha512-PlBfpQwiUvGViBNX84Yxwjsdhd1TUlXr6zjX7eoirtCPIr08NAmxwa+fcYBTeRQxHo9YC9wwF3m9i700sHma8g==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.6.0.tgz", + "integrity": "sha512-8ZiHFm91orbSAe2PSAiSVBVko18pbhbiB3U9GglSzF/zCGkR+rxpHx6sEMCUm4kxY4LjDIUGgCfUMtwfZfjfUA==", "dev": true, "dependencies": { "tagged-tag": "^1.0.0" @@ -20979,6 +20877,19 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "packages/api-graph/node_modules/valibot": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/valibot/-/valibot-1.3.1.tgz", + "integrity": "sha512-sfdRir/QFM0JaF22hqTroPc5xy4DimuGQVKFrzF1YfGwaS1nJot3Y8VqMdLO2Lg27fMzat2yD3pY5PbAYO39Gg==", + "peerDependencies": { + "typescript": ">=5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, "packages/api-middleware": { "name": "@msinternal/botframework-webchat-api-middleware", "version": "0.0.0-0", @@ -20986,17 +20897,17 @@ "dependencies": { "handler-chain": "0.1.1", "react-wrap-with": "0.1.0", - "valibot": "1.2.0" + "valibot": "1.3.1" }, "devDependencies": { "@jridgewell/sourcemap-codec": "^1.5.5", "@msinternal/botframework-webchat-base": "0.0.0-0", "@msinternal/botframework-webchat-react-hooks": "0.0.0-0", "@msinternal/botframework-webchat-react-valibot": "0.0.0-0", - "@types/node": "^25.3.3", + "@types/node": "^25.6.0", "cross-env": "^10.1.0", - "type-fest": "^5.4.4", - "typescript": "^5.9.3" + "type-fest": "^5.6.0", + "typescript": "^6.0.3" }, "peerDependencies": { "react": ">= 16.8.6", @@ -21004,9 +20915,9 @@ } }, "packages/api-middleware/node_modules/type-fest": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.5.0.tgz", - "integrity": "sha512-PlBfpQwiUvGViBNX84Yxwjsdhd1TUlXr6zjX7eoirtCPIr08NAmxwa+fcYBTeRQxHo9YC9wwF3m9i700sHma8g==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.6.0.tgz", + "integrity": "sha512-8ZiHFm91orbSAe2PSAiSVBVko18pbhbiB3U9GglSzF/zCGkR+rxpHx6sEMCUm4kxY4LjDIUGgCfUMtwfZfjfUA==", "dev": true, "dependencies": { "tagged-tag": "^1.0.0" @@ -21018,22 +20929,23 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "packages/api/node_modules/iter-fest": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/iter-fest/-/iter-fest-0.3.1.tgz", - "integrity": "sha512-XL7DGglVGVevTuQAAhVAN3MbADeKyDcijPToBKUxZHpOSUJT22CfvGqsV1t34LyoVxDDL3MGPbHZVx20Lky0og==", - "license": "MIT", - "dependencies": { - "iter-fest": "^0.3.1" - }, + "packages/api-middleware/node_modules/valibot": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/valibot/-/valibot-1.3.1.tgz", + "integrity": "sha512-sfdRir/QFM0JaF22hqTroPc5xy4DimuGQVKFrzF1YfGwaS1nJot3Y8VqMdLO2Lg27fMzat2yD3pY5PbAYO39Gg==", "peerDependencies": { - "core-js-pure": "^3.37.1" + "typescript": ">=5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, "packages/api/node_modules/type-fest": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.5.0.tgz", - "integrity": "sha512-PlBfpQwiUvGViBNX84Yxwjsdhd1TUlXr6zjX7eoirtCPIr08NAmxwa+fcYBTeRQxHo9YC9wwF3m9i700sHma8g==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.6.0.tgz", + "integrity": "sha512-8ZiHFm91orbSAe2PSAiSVBVko18pbhbiB3U9GglSzF/zCGkR+rxpHx6sEMCUm4kxY4LjDIUGgCfUMtwfZfjfUA==", "dev": true, "dependencies": { "tagged-tag": "^1.0.0" @@ -21049,7 +20961,6 @@ "version": "0.2.1", "resolved": "https://registry.npmjs.org/use-ref-from/-/use-ref-from-0.2.1.tgz", "integrity": "sha512-iwRcKtgIPP4K++mR3LO5DLUf4WMfBWyAM20oUL9jbKfywoMTiRScUixGv0HkhlJxFm6uFv5yDnr5YwcSiJSm1g==", - "license": "MIT", "dependencies": { "use-ref-from": "^0.2.1" }, @@ -21057,37 +20968,39 @@ "react": ">=16.8.0" } }, + "packages/api/node_modules/valibot": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/valibot/-/valibot-1.3.1.tgz", + "integrity": "sha512-sfdRir/QFM0JaF22hqTroPc5xy4DimuGQVKFrzF1YfGwaS1nJot3Y8VqMdLO2Lg27fMzat2yD3pY5PbAYO39Gg==", + "peerDependencies": { + "typescript": ">=5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, "packages/base": { "name": "@msinternal/botframework-webchat-base", "version": "0.0.0-0", "license": "MIT", "devDependencies": { "@msinternal/botframework-webchat-tsconfig": "0.0.0-0", - "@types/node": "^25.3.3", - "core-js-pure": "^3.48.0", + "@types/node": "^25.6.0", + "core-js-pure": "^3.49.0", "cross-env": "^10.1.0", - "type-fest": "^5.4.4", - "typescript": "^5.9.3" + "type-fest": "^5.6.0", + "typescript": "^6.0.3" }, "peerDependencies": { "valibot": "1.2.0" } }, - "packages/base/node_modules/core-js-pure": { - "version": "3.49.0", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.49.0.tgz", - "integrity": "sha512-XM4RFka59xATyJv/cS3O3Kml72hQXUeGRuuTmMYFxwzc9/7C8OYTaIR/Ji+Yt8DXzsFLNhat15cE/JP15HrCgw==", - "dev": true, - "hasInstallScript": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, "packages/base/node_modules/type-fest": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.5.0.tgz", - "integrity": "sha512-PlBfpQwiUvGViBNX84Yxwjsdhd1TUlXr6zjX7eoirtCPIr08NAmxwa+fcYBTeRQxHo9YC9wwF3m9i700sHma8g==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.6.0.tgz", + "integrity": "sha512-8ZiHFm91orbSAe2PSAiSVBVko18pbhbiB3U9GglSzF/zCGkR+rxpHx6sEMCUm4kxY4LjDIUGgCfUMtwfZfjfUA==", "dev": true, "dependencies": { "tagged-tag": "^1.0.0" @@ -21104,7 +21017,7 @@ "version": "0.0.0-0", "license": "MIT", "dependencies": { - "@babel/runtime": "7.28.6", + "@babel/runtime": "7.29.2", "adaptivecards": "3.0.6", "botframework-directlinejs": "0.15.8", "botframework-directlinespeech-sdk": "0.0.0-0", @@ -21112,8 +21025,8 @@ "botframework-webchat-component": "0.0.0-0", "botframework-webchat-core": "0.0.0-0", "classnames": "2.5.1", - "core-js": "3.48.0", - "katex": "0.16.33", + "core-js": "3.49.0", + "katex": "0.16.45", "math-random": "2.0.1", "mdast-util-from-markdown": "2.0.3", "memoize-one": "6.0.0", @@ -21121,22 +21034,22 @@ "micromark-extension-gfm": "3.0.0", "micromark-util-character": "2.1.1", "micromark-util-sanitize-uri": "2.0.1", - "microsoft-cognitiveservices-speech-sdk": "1.48.0", + "microsoft-cognitiveservices-speech-sdk": "1.49.0", "prop-types": "15.8.1", "punycode": "2.3.1", - "sanitize-html": "2.17.1", + "sanitize-html": "2.17.3", "shiki": "2.5.0", "url-search-params-polyfill": "8.2.5", "use-ref-from": "0.2.1", "uuid": "8.3.2", - "valibot": "1.2.0", + "valibot": "1.3.1", "web-speech-cognitive-services": "8.1.4", "whatwg-fetch": "3.6.20" }, "devDependencies": { "@babel/core": "^7.29.0", "@babel/plugin-transform-runtime": "^7.29.0", - "@babel/preset-env": "^7.29.0", + "@babel/preset-env": "^7.29.2", "@babel/preset-react": "^7.28.5", "@babel/preset-typescript": "^7.28.5", "@msinternal/adaptivecards": "0.0.0-0", @@ -21159,21 +21072,21 @@ "@msinternal/react-is": "0.0.0-0", "@msinternal/react-umd": "0.0.0-0", "@testduet/given-when-then": "^0.1.0", - "@types/dom-speech-recognition": "^0.0.7", + "@types/dom-speech-recognition": "^0.0.9", "@types/mdast": "^4.0.4", - "@types/node": "^25.3.3", + "@types/node": "^25.6.0", "@types/react": "^16.14.69", "@types/react-dom": "^16.9.25", "@types/uuid": "^8.3.4", - "babel-plugin-istanbul": "^7.0.1", + "babel-plugin-istanbul": "^8.0.0", "babel-plugin-transform-inline-environment-variables": "^0.4.4", "cross-env": "^10.1.0", - "esbuild": "^0.27.3", + "esbuild": "^0.28.0", "micromark-util-types": "^2.0.2", "read-pkg": "^10.1.0", "tsd": "^0.33.0", - "type-fest": "^5.4.4", - "typescript": "^5.9.3" + "type-fest": "^5.6.0", + "typescript": "^6.0.3" }, "peerDependencies": { "react": ">= 16.8.6", @@ -21181,429 +21094,437 @@ "react-dom": ">= 16.8.6" } }, - "packages/bundle/node_modules/botframework-directlinespeech-sdk/node_modules/@babel/runtime": { - "version": "7.28.2", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.28.2.tgz", - "integrity": "sha512-KHp2IflsnGywDjBWDkR9iEqiWSpc8GIi0lgTT3mOElT0PP1tG26P4tmFI2YvAdzgq9RGyoHZQEIEdZy6Ec5xCA==", - "extraneous": true, - "license": "MIT", + "packages/bundle/node_modules/@esbuild/aix-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.0.tgz", + "integrity": "sha512-lhRUCeuOyJQURhTxl4WkpFTjIsbDayJHih5kZC1giwE+MhIzAb7mEsQMqMf18rHLsrb5qI1tafG20mLxEWcWlA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], "engines": { - "node": ">=6.9.0" + "node": ">=18" } }, - "packages/bundle/node_modules/botframework-directlinespeech-sdk/node_modules/core-js": { - "version": "3.44.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.44.0.tgz", - "integrity": "sha512-aFCtd4l6GvAXwVEh3XbbVqJGHDJt0OZRa+5ePGx3LLwi12WfexqQxcsohb2wgsa/92xtl19Hd66G/L+TaAxDMw==", - "extraneous": true, - "hasInstallScript": true, - "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" + "packages/bundle/node_modules/@esbuild/android-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.0.tgz", + "integrity": "sha512-wqh0ByljabXLKHeWXYLqoJ5jKC4XBaw6Hk08OfMrCRd2nP2ZQ5eleDZC41XHyCNgktBGYMbqnrJKq/K/lzPMSQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" } }, - "packages/bundle/node_modules/parse-json": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-8.3.0.tgz", - "integrity": "sha512-ybiGyvspI+fAoRQbIPRddCcSTV9/LsJbf0e/S85VLowVGzRmokfneg2kwVW/KU5rOXrPSbF1qAKPMgNTqqROQQ==", + "packages/bundle/node_modules/@esbuild/android-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.0.tgz", + "integrity": "sha512-+WzIXQOSaGs33tLEgYPYe/yQHf0WTU0X42Jca3y8NWMbUVhp7rUnw+vAsRC/QiDrdD31IszMrZy+qwPOPjd+rw==", + "cpu": [ + "arm64" + ], "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.26.2", - "index-to-position": "^1.1.0", - "type-fest": "^4.39.1" - }, + "optional": true, + "os": [ + "android" + ], "engines": { "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "packages/bundle/node_modules/parse-json/node_modules/type-fest": { - "version": "4.41.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.41.0.tgz", - "integrity": "sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==", + "packages/bundle/node_modules/@esbuild/android-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.0.tgz", + "integrity": "sha512-+VJggoaKhk2VNNqVL7f6S189UzShHC/mR9EE8rDdSkdpN0KflSwWY/gWjDrNxxisg8Fp1ZCD9jLMo4m0OUfeUA==", + "cpu": [ + "x64" + ], "dev": true, - "license": "(MIT OR CC0-1.0)", + "optional": true, + "os": [ + "android" + ], "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=18" } }, - "packages/bundle/node_modules/read-pkg": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-10.1.0.tgz", - "integrity": "sha512-I8g2lArQiP78ll51UeMZojewtYgIRCKCWqZEgOO8c/uefTI+XDXvCSXu3+YNUaTNvZzobrL5+SqHjBrByRRTdg==", + "packages/bundle/node_modules/@esbuild/darwin-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.0.tgz", + "integrity": "sha512-0T+A9WZm+bZ84nZBtk1ckYsOvyA3x7e2Acj1KdVfV4/2tdG4fzUp91YHx+GArWLtwqp77pBXVCPn2We7Letr0Q==", + "cpu": [ + "arm64" + ], "dev": true, - "license": "MIT", - "dependencies": { - "@types/normalize-package-data": "^2.4.4", - "normalize-package-data": "^8.0.0", - "parse-json": "^8.3.0", - "type-fest": "^5.4.4", - "unicorn-magic": "^0.4.0" - }, + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">=20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=18" } }, - "packages/bundle/node_modules/type-fest": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.5.0.tgz", - "integrity": "sha512-PlBfpQwiUvGViBNX84Yxwjsdhd1TUlXr6zjX7eoirtCPIr08NAmxwa+fcYBTeRQxHo9YC9wwF3m9i700sHma8g==", + "packages/bundle/node_modules/@esbuild/darwin-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.0.tgz", + "integrity": "sha512-fyzLm/DLDl/84OCfp2f/XQ4flmORsjU7VKt8HLjvIXChJoFFOIL6pLJPH4Yhd1n1gGFF9mPwtlN5Wf82DZs+LQ==", + "cpu": [ + "x64" + ], "dev": true, - "dependencies": { - "tagged-tag": "^1.0.0" - }, + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">=20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=18" } }, - "packages/bundle/node_modules/unicorn-magic": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.4.0.tgz", - "integrity": "sha512-wH590V9VNgYH9g3lH9wWjTrUoKsjLF6sGLjhR4sH1LWpLmCOH0Zf7PukhDA8BiS7KHe4oPNkcTHqYkj7SOGUOw==", + "packages/bundle/node_modules/@esbuild/freebsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.0.tgz", + "integrity": "sha512-l9GeW5UZBT9k9brBYI+0WDffcRxgHQD8ShN2Ur4xWq/NFzUKm3k5lsH4PdaRgb2w7mI9u61nr2gI2mLI27Nh3Q==", + "cpu": [ + "arm64" + ], "dev": true, - "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], "engines": { - "node": ">=20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=18" } }, - "packages/bundle/node_modules/use-ref-from": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/use-ref-from/-/use-ref-from-0.2.1.tgz", - "integrity": "sha512-iwRcKtgIPP4K++mR3LO5DLUf4WMfBWyAM20oUL9jbKfywoMTiRScUixGv0HkhlJxFm6uFv5yDnr5YwcSiJSm1g==", - "license": "MIT", - "dependencies": { - "use-ref-from": "^0.2.1" - }, - "peerDependencies": { - "react": ">=16.8.0" + "packages/bundle/node_modules/@esbuild/freebsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.0.tgz", + "integrity": "sha512-BXoQai/A0wPO6Es3yFJ7APCiKGc1tdAEOgeTNy3SsB491S3aHn4S4r3e976eUnPdU+NbdtmBuLncYir2tMU9Nw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" } }, - "packages/component": { - "name": "botframework-webchat-component", - "version": "0.0.0-0", - "license": "MIT", - "dependencies": { - "@emotion/css": "11.13.5", - "base64-js": "1.5.1", - "botframework-webchat-api": "0.0.0-0", - "botframework-webchat-core": "0.0.0-0", - "classnames": "2.5.1", - "compute-scroll-into-view": "1.0.20", - "deep-freeze-strict": "1.1.1", - "markdown-it": "13.0.2", - "math-random": "2.0.1", - "mdast-util-from-markdown": "2.0.3", - "memoize-one": "6.0.0", - "merge-refs": "2.0.0", - "prop-types": "15.8.1", - "punycode": "2.3.1", - "react-chain-of-responsibility": "0.4.2", - "react-dictate-button": "4.0.1", - "react-film": "4.0.0", - "react-redux": "7.2.9", - "react-say": "2.2.1", - "react-scroll-to-bottom": "4.2.1-main.53844f5", - "react-wrap-with": "0.1.0", - "redux": "5.0.1", - "simple-update-in": "2.2.0", - "use-propagate": "0.2.2", - "use-reduce-memo": "0.1.0", - "use-ref-from": "0.2.1", - "use-state-with-ref": "0.2.1", - "valibot": "1.2.0" - }, - "devDependencies": { - "@babel/core": "^7.29.0", - "@babel/preset-env": "^7.29.0", - "@babel/preset-react": "^7.28.5", - "@babel/preset-typescript": "^7.28.5", - "@msinternal/botframework-webchat-base": "0.0.0-0", - "@msinternal/botframework-webchat-react-hooks": "0.0.0-0", - "@msinternal/botframework-webchat-react-valibot": "0.0.0-0", - "@msinternal/botframework-webchat-styles": "0.0.0-0", - "@msinternal/botframework-webchat-tsconfig": "0.0.0-0", - "@types/dom-speech-recognition": "^0.0.7", - "@types/jest": "^29.5.14", - "@types/mdast": "^4.0.4", - "@types/node": "^25.3.3", - "@types/react": "^16.14.69", - "babel-plugin-istanbul": "^7.0.1", - "babel-plugin-transform-inline-environment-variables": "^0.4.4", - "core-js": "^3.48.0", - "cross-env": "^10.1.0", - "type-fest": "^5.4.4", - "typescript": "^5.9.3" - }, - "peerDependencies": { - "react": ">= 16.8.6", - "react-dom": ">= 16.8.6" + "packages/bundle/node_modules/@esbuild/linux-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.0.tgz", + "integrity": "sha512-CjaaREJagqJp7iTaNQjjidaNbCKYcd4IDkzbwwxtSvjI7NZm79qiHc8HqciMddQ6CKvJT6aBd8lO9kN/ZudLlw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" } }, - "packages/component/node_modules/type-fest": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.5.0.tgz", - "integrity": "sha512-PlBfpQwiUvGViBNX84Yxwjsdhd1TUlXr6zjX7eoirtCPIr08NAmxwa+fcYBTeRQxHo9YC9wwF3m9i700sHma8g==", + "packages/bundle/node_modules/@esbuild/linux-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.0.tgz", + "integrity": "sha512-RVyzfb3FWsGA55n6WY0MEIEPURL1FcbhFE6BffZEMEekfCzCIMtB5yyDcFnVbTnwk+CLAgTujmV/Lgvih56W+A==", + "cpu": [ + "arm64" + ], "dev": true, - "dependencies": { - "tagged-tag": "^1.0.0" - }, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=18" } }, - "packages/component/node_modules/use-ref-from": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/use-ref-from/-/use-ref-from-0.2.1.tgz", - "integrity": "sha512-iwRcKtgIPP4K++mR3LO5DLUf4WMfBWyAM20oUL9jbKfywoMTiRScUixGv0HkhlJxFm6uFv5yDnr5YwcSiJSm1g==", - "license": "MIT", - "dependencies": { - "use-ref-from": "^0.2.1" - }, - "peerDependencies": { - "react": ">=16.8.0" + "packages/bundle/node_modules/@esbuild/linux-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.0.tgz", + "integrity": "sha512-KBnSTt1kxl9x70q+ydterVdl+Cn0H18ngRMRCEQfrbqdUuntQQ0LoMZv47uB97NljZFzY6HcfqEZ2SAyIUTQBQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" } }, - "packages/core": { - "name": "botframework-webchat-core", - "version": "0.0.0-0", - "license": "MIT", - "dependencies": { - "@babel/runtime": "7.28.6", - "@redux-devtools/extension": "3.3.0", - "core-js-pure": "3.48.0", - "iter-fest": "0.3.1", - "jwt-decode": "4.0.0", - "math-random": "2.0.1", - "mime": "4.1.0", - "redux": "5.0.1", - "redux-saga": "1.4.2", - "simple-update-in": "2.2.0", - "uuid": "8.3.2", - "valibot": "1.2.0" - }, - "devDependencies": { - "@babel/core": "^7.29.0", - "@babel/plugin-transform-runtime": "^7.29.0", - "@babel/plugin-transform-typescript": "^7.28.6", - "@babel/preset-env": "^7.29.0", - "@msinternal/botframework-webchat-base": "0.0.0-0", - "@msinternal/botframework-webchat-core-debug-api": "0.0.0-0", - "@msinternal/botframework-webchat-core-graph": "0.0.0-0", - "@msinternal/botframework-webchat-tsconfig": "0.0.0-0", - "@testduet/given-when-then": "^0.1.0", - "@types/jest": "^29.5.14", - "@types/node": "^25.3.3", - "@types/uuid": "^8.3.4", - "babel-plugin-istanbul": "^7.0.1", - "babel-plugin-transform-inline-environment-variables": "^0.4.4", - "botframework-directlinejs": "^0.15.8", - "cross-env": "^10.1.0", - "tsd": "^0.33.0", - "type-fest": "^5.4.4", - "typescript": "^5.9.3" - }, + "packages/bundle/node_modules/@esbuild/linux-loong64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.0.tgz", + "integrity": "sha512-zpSlUce1mnxzgBADvxKXX5sl8aYQHo2ezvMNI8I0lbblJtp8V4odlm3Yzlj7gPyt3T8ReksE6bK+pT3WD+aJRg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=12.0.0" + "node": ">=18" } }, - "packages/core-debug-api": { - "name": "@msinternal/botframework-webchat-core-debug-api", - "version": "0.0.0-0", - "license": "MIT", - "dependencies": { - "tagged-tag": "1.0.0" - }, - "devDependencies": { - "@msinternal/botframework-webchat-base": "0.0.0-0", - "type-fest": "^5.4.4" + "packages/bundle/node_modules/@esbuild/linux-mips64el": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.0.tgz", + "integrity": "sha512-2jIfP6mmjkdmeTlsX/9vmdmhBmKADrWqN7zcdtHIeNSCH1SqIoNI63cYsjQR8J+wGa4Y5izRcSHSm8K3QWmk3w==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" } }, - "packages/core-debug-api/node_modules/type-fest": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.5.0.tgz", - "integrity": "sha512-PlBfpQwiUvGViBNX84Yxwjsdhd1TUlXr6zjX7eoirtCPIr08NAmxwa+fcYBTeRQxHo9YC9wwF3m9i700sHma8g==", + "packages/bundle/node_modules/@esbuild/linux-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.0.tgz", + "integrity": "sha512-bc0FE9wWeC0WBm49IQMPSPILRocGTQt3j5KPCA8os6VprfuJ7KD+5PzESSrJ6GmPIPJK965ZJHTUlSA6GNYEhg==", + "cpu": [ + "ppc64" + ], "dev": true, - "dependencies": { - "tagged-tag": "^1.0.0" - }, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=18" } }, - "packages/core-graph": { - "name": "@msinternal/botframework-webchat-core-graph", - "version": "0.0.0-0", - "license": "MIT", - "dependencies": { - "valibot": "1.2.0" - }, - "devDependencies": { - "@msinternal/botframework-webchat-base": "0.0.0-0", - "@testduet/given-when-then": "^0.1.0", - "@types/uuid": "^8.3.4", - "type-fest": "^5.4.4", - "typescript": "^5.9.3" - }, - "peerDependencies": { - "core-js-pure": "3.47.0", - "iter-fest": "0.3.0", - "uuid": "8.3.2" + "packages/bundle/node_modules/@esbuild/linux-riscv64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.0.tgz", + "integrity": "sha512-SQPZOwoTTT/HXFXQJG/vBX8sOFagGqvZyXcgLA3NhIqcBv1BJU1d46c0rGcrij2B56Z2rNiSLaZOYW5cUk7yLQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" } }, - "packages/core-graph/node_modules/type-fest": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.5.0.tgz", - "integrity": "sha512-PlBfpQwiUvGViBNX84Yxwjsdhd1TUlXr6zjX7eoirtCPIr08NAmxwa+fcYBTeRQxHo9YC9wwF3m9i700sHma8g==", + "packages/bundle/node_modules/@esbuild/linux-s390x": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.0.tgz", + "integrity": "sha512-SCfR0HN8CEEjnYnySJTd2cw0k9OHB/YFzt5zgJEwa+wL/T/raGWYMBqwDNAC6dqFKmJYZoQBRfHjgwLHGSrn3Q==", + "cpu": [ + "s390x" + ], "dev": true, - "dependencies": { - "tagged-tag": "^1.0.0" - }, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=18" } }, - "packages/core/node_modules/core-js-pure": { - "version": "3.48.0", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.48.0.tgz", - "integrity": "sha512-1slJgk89tWC51HQ1AEqG+s2VuwpTRr8ocu4n20QUcH1v9lAN0RXen0Q0AABa/DK1I7RrNWLucplOHMx8hfTGTw==", - "hasInstallScript": true, - "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" + "packages/bundle/node_modules/@esbuild/linux-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.0.tgz", + "integrity": "sha512-us0dSb9iFxIi8srnpl931Nvs65it/Jd2a2K3qs7fz2WfGPHqzfzZTfec7oxZJRNPXPnNYZtanmRc4AL/JwVzHQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" } }, - "packages/core/node_modules/iter-fest": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/iter-fest/-/iter-fest-0.3.1.tgz", - "integrity": "sha512-XL7DGglVGVevTuQAAhVAN3MbADeKyDcijPToBKUxZHpOSUJT22CfvGqsV1t34LyoVxDDL3MGPbHZVx20Lky0og==", - "license": "MIT", - "dependencies": { - "iter-fest": "^0.3.1" - }, - "peerDependencies": { - "core-js-pure": "^3.37.1" + "packages/bundle/node_modules/@esbuild/netbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.0.tgz", + "integrity": "sha512-CR/RYotgtCKwtftMwJlUU7xCVNg3lMYZ0RzTmAHSfLCXw3NtZtNpswLEj/Kkf6kEL3Gw+BpOekRX0BYCtklhUw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" } }, - "packages/core/node_modules/mime": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-4.1.0.tgz", - "integrity": "sha512-X5ju04+cAzsojXKes0B/S4tcYtFAJ6tTMuSPBEn9CPGlrWr8Fiw7qYeLT0XyH80HSoAoqWCaz+MWKh22P7G1cw==", - "funding": [ - "https://github.com/sponsors/broofa" + "packages/bundle/node_modules/@esbuild/netbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.0.tgz", + "integrity": "sha512-nU1yhmYutL+fQ71Kxnhg8uEOdC0pwEW9entHykTgEbna2pw2dkbFSMeqjjyHZoCmt8SBkOSvV+yNmm94aUrrqw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" ], - "license": "MIT", - "bin": { - "mime": "bin/cli.js" - }, "engines": { - "node": ">=16" + "node": ">=18" } }, - "packages/core/node_modules/type-fest": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.5.0.tgz", - "integrity": "sha512-PlBfpQwiUvGViBNX84Yxwjsdhd1TUlXr6zjX7eoirtCPIr08NAmxwa+fcYBTeRQxHo9YC9wwF3m9i700sHma8g==", + "packages/bundle/node_modules/@esbuild/openbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.0.tgz", + "integrity": "sha512-cXb5vApOsRsxsEl4mcZ1XY3D4DzcoMxR/nnc4IyqYs0rTI8ZKmW6kyyg+11Z8yvgMfAEldKzP7AdP64HnSC/6g==", + "cpu": [ + "arm64" + ], "dev": true, - "dependencies": { - "tagged-tag": "^1.0.0" - }, + "optional": true, + "os": [ + "openbsd" + ], "engines": { - "node": ">=20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=18" } }, - "packages/debug-theme": { - "name": "@msinternal/botframework-webchat-debug-theme", - "version": "0.0.0-0", - "license": "MIT", - "dependencies": { - "botframework-webchat-api": "0.0.0-0", - "botframework-webchat-component": "0.0.0-0" - }, - "peerDependencies": { - "react": ">= 16.8.6" + "packages/bundle/node_modules/@esbuild/openbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.0.tgz", + "integrity": "sha512-8wZM2qqtv9UP3mzy7HiGYNH/zjTA355mpeuA+859TyR+e+Tc08IHYpLJuMsfpDJwoLo1ikIJI8jC3GFjnRClzA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" } }, - "packages/directlinespeech": { - "name": "botframework-directlinespeech-sdk", - "version": "0.0.0-0", + "packages/bundle/node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.0.tgz", + "integrity": "sha512-FLGfyizszcef5C3YtoyQDACyg95+dndv79i2EekILBofh5wpCa1KuBqOWKrEHZg3zrL3t5ouE5jgr94vA+Wb2w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "packages/bundle/node_modules/@esbuild/sunos-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.0.tgz", + "integrity": "sha512-1ZgjUoEdHZZl/YlV76TSCz9Hqj9h9YmMGAgAPYd+q4SicWNX3G5GCyx9uhQWSLcbvPW8Ni7lj4gDa1T40akdlw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "packages/bundle/node_modules/@esbuild/win32-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.0.tgz", + "integrity": "sha512-Q9StnDmQ/enxnpxCCLSg0oo4+34B9TdXpuyPeTedN/6+iXBJ4J+zwfQI28u/Jl40nOYAxGoNi7mFP40RUtkmUA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/bundle/node_modules/@esbuild/win32-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.0.tgz", + "integrity": "sha512-zF3ag/gfiCe6U2iczcRzSYJKH1DCI+ByzSENHlM2FcDbEeo5Zd2C86Aq0tKUYAJJ1obRP84ymxIAksZUcdztHA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/bundle/node_modules/@esbuild/win32-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.0.tgz", + "integrity": "sha512-pEl1bO9mfAmIC+tW5btTmrKaujg3zGtUmWNdCw/xs70FBjwAL3o9OEKNHvNmnyylD6ubxUERiEhdsL0xBQ9efw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/bundle/node_modules/botframework-directlinespeech-sdk/node_modules/@babel/runtime": { + "version": "7.28.2", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.28.2.tgz", + "integrity": "sha512-KHp2IflsnGywDjBWDkR9iEqiWSpc8GIi0lgTT3mOElT0PP1tG26P4tmFI2YvAdzgq9RGyoHZQEIEdZy6Ec5xCA==", + "extraneous": true, "license": "MIT", - "dependencies": { - "@babel/runtime": "7.28.6", - "abort-controller": "3.0.0", - "base64-arraybuffer": "1.0.2", - "core-js": "3.48.0", - "core-js-pure": "3.48.0", - "event-as-promise": "2.0.1", - "event-target-shim": "6.0.2", - "math-random": "2.0.1", - "microsoft-cognitiveservices-speech-sdk": "1.48.0", - "web-speech-cognitive-services": "8.1.4" - }, - "devDependencies": { - "@babel/cli": "^7.28.6", - "@babel/core": "^7.29.0", - "@babel/plugin-transform-runtime": "^7.29.0", - "@babel/preset-env": "^7.29.0", - "@types/jest": "^29.5.14", - "@typescript-eslint/eslint-plugin": "^8.56.1", - "@typescript-eslint/parser": "^8.56.1", - "babel-jest": "^29.7.0", - "babel-plugin-istanbul": "^7.0.1", - "babel-plugin-transform-inline-environment-variables": "^0.4.4", - "cross-env": "^10.1.0", - "dotenv": "^17.3.1", - "eslint": "^8.57.1", - "eslint-plugin-node": "^11.1.0", - "eslint-plugin-prettier": "^5.5.5", - "eslint-plugin-security": "^4.0.0", - "global-agent": "^3.0.0", - "has-resolved": "^2.0.0", - "jest": "^29.7.0", - "prettier": "^3.8.1", - "serve": "^14.2.6", - "simple-update-in": "^2.2.0", - "source-map-loader": "^5.0.0", - "webpack": "^5.105.4", - "webpack-cli": "^6.0.1", - "webpack-stats-plugin": "^1.1.3" - }, "engines": { - "node": ">= 10.14.2" + "node": ">=6.9.0" } }, - "packages/directlinespeech/node_modules/core-js-pure": { - "version": "3.48.0", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.48.0.tgz", - "integrity": "sha512-1slJgk89tWC51HQ1AEqG+s2VuwpTRr8ocu4n20QUcH1v9lAN0RXen0Q0AABa/DK1I7RrNWLucplOHMx8hfTGTw==", + "packages/bundle/node_modules/botframework-directlinespeech-sdk/node_modules/core-js": { + "version": "3.44.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.44.0.tgz", + "integrity": "sha512-aFCtd4l6GvAXwVEh3XbbVqJGHDJt0OZRa+5ePGx3LLwi12WfexqQxcsohb2wgsa/92xtl19Hd66G/L+TaAxDMw==", + "extraneous": true, "hasInstallScript": true, "license": "MIT", "funding": { @@ -21611,65 +21532,166 @@ "url": "https://opencollective.com/core-js" } }, - "packages/directlinespeech/node_modules/eslint-plugin-security": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-security/-/eslint-plugin-security-4.0.0.tgz", - "integrity": "sha512-tfuQT8K/Li1ZxhFzyD8wPIKtlzZxqBcPr9q0jFMQ77wWAbKBVEhaMPVQRTMTvCMUDhwBe5vPVqQPwAGk/ASfxQ==", + "packages/bundle/node_modules/esbuild": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.0.tgz", + "integrity": "sha512-sNR9MHpXSUV/XB4zmsFKN+QgVG82Cc7+/aaxJ8Adi8hyOac+EXptIp45QBPaVyX3N70664wRbTcLTOemCAnyqw==", "dev": true, - "license": "Apache-2.0", - "dependencies": { - "safe-regex": "^2.1.1" + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" }, "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "node": ">=18" }, - "funding": { - "url": "https://opencollective.com/eslint" + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.28.0", + "@esbuild/android-arm": "0.28.0", + "@esbuild/android-arm64": "0.28.0", + "@esbuild/android-x64": "0.28.0", + "@esbuild/darwin-arm64": "0.28.0", + "@esbuild/darwin-x64": "0.28.0", + "@esbuild/freebsd-arm64": "0.28.0", + "@esbuild/freebsd-x64": "0.28.0", + "@esbuild/linux-arm": "0.28.0", + "@esbuild/linux-arm64": "0.28.0", + "@esbuild/linux-ia32": "0.28.0", + "@esbuild/linux-loong64": "0.28.0", + "@esbuild/linux-mips64el": "0.28.0", + "@esbuild/linux-ppc64": "0.28.0", + "@esbuild/linux-riscv64": "0.28.0", + "@esbuild/linux-s390x": "0.28.0", + "@esbuild/linux-x64": "0.28.0", + "@esbuild/netbsd-arm64": "0.28.0", + "@esbuild/netbsd-x64": "0.28.0", + "@esbuild/openbsd-arm64": "0.28.0", + "@esbuild/openbsd-x64": "0.28.0", + "@esbuild/openharmony-arm64": "0.28.0", + "@esbuild/sunos-x64": "0.28.0", + "@esbuild/win32-arm64": "0.28.0", + "@esbuild/win32-ia32": "0.28.0", + "@esbuild/win32-x64": "0.28.0" } }, - "packages/directlinespeech/node_modules/event-target-shim": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-6.0.2.tgz", - "integrity": "sha512-8q3LsZjRezbFZ2PN+uP+Q7pnHUMmAOziU2vA2OwoFaKIXxlxl38IylhSSgUorWu/rf4er67w0ikBqjBFk/pomA==", - "license": "MIT", + "packages/bundle/node_modules/type-fest": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.6.0.tgz", + "integrity": "sha512-8ZiHFm91orbSAe2PSAiSVBVko18pbhbiB3U9GglSzF/zCGkR+rxpHx6sEMCUm4kxY4LjDIUGgCfUMtwfZfjfUA==", + "dev": true, + "dependencies": { + "tagged-tag": "^1.0.0" + }, "engines": { - "node": ">=10.13.0" + "node": ">=20" }, "funding": { - "url": "https://github.com/sponsors/mysticatea" + "url": "https://github.com/sponsors/sindresorhus" } }, - "packages/fluent-theme": { - "name": "botframework-webchat-fluent-theme", + "packages/bundle/node_modules/use-ref-from": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/use-ref-from/-/use-ref-from-0.2.1.tgz", + "integrity": "sha512-iwRcKtgIPP4K++mR3LO5DLUf4WMfBWyAM20oUL9jbKfywoMTiRScUixGv0HkhlJxFm6uFv5yDnr5YwcSiJSm1g==", + "dependencies": { + "use-ref-from": "^0.2.1" + }, + "peerDependencies": { + "react": ">=16.8.0" + } + }, + "packages/bundle/node_modules/valibot": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/valibot/-/valibot-1.3.1.tgz", + "integrity": "sha512-sfdRir/QFM0JaF22hqTroPc5xy4DimuGQVKFrzF1YfGwaS1nJot3Y8VqMdLO2Lg27fMzat2yD3pY5PbAYO39Gg==", + "peerDependencies": { + "typescript": ">=5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "packages/component": { + "name": "botframework-webchat-component", "version": "0.0.0-0", "license": "MIT", "dependencies": { - "botframework-webchat": "0.0.0-0", + "@emotion/css": "11.13.5", + "base64-js": "1.5.1", + "botframework-webchat-api": "0.0.0-0", + "botframework-webchat-core": "0.0.0-0", "classnames": "2.5.1", - "inject-meta-tag": "0.1.0", + "compute-scroll-into-view": "1.0.20", + "deep-freeze-strict": "1.1.1", + "markdown-it": "13.0.2", "math-random": "2.0.1", + "mdast-util-from-markdown": "2.0.3", + "memoize-one": "6.0.0", + "merge-refs": "2.0.0", + "prop-types": "15.8.1", + "punycode": "2.3.1", + "react-chain-of-responsibility": "0.4.2", + "react-dictate-button": "4.0.1", + "react-film": "4.0.0", + "react-redux": "7.2.9", + "react-say": "2.2.1", + "react-scroll-to-bottom": "4.2.1-main.53844f5", + "react-wrap-with": "0.1.0", + "redux": "5.0.1", + "simple-update-in": "2.2.0", + "use-propagate": "0.2.2", + "use-reduce-memo": "0.1.0", "use-ref-from": "0.2.1", - "valibot": "1.2.0" + "use-state-with-ref": "0.2.1", + "valibot": "1.3.1" }, "devDependencies": { + "@babel/core": "^7.29.0", + "@babel/preset-env": "^7.29.2", + "@babel/preset-react": "^7.28.5", + "@babel/preset-typescript": "^7.28.5", + "@msinternal/botframework-webchat-base": "0.0.0-0", + "@msinternal/botframework-webchat-react-hooks": "0.0.0-0", + "@msinternal/botframework-webchat-react-valibot": "0.0.0-0", "@msinternal/botframework-webchat-styles": "0.0.0-0", "@msinternal/botframework-webchat-tsconfig": "0.0.0-0", - "@types/math-random": "^1.0.2", - "@types/node": "^25.3.3", + "@types/dom-speech-recognition": "^0.0.9", + "@types/jest": "^29.5.14", + "@types/mdast": "^4.0.4", + "@types/node": "^25.6.0", "@types/react": "^16.14.69", - "concurrently": "^9.2.1", - "tsup": "^8.5.1", - "typescript": "^5.9.3" + "babel-plugin-istanbul": "^8.0.0", + "babel-plugin-transform-inline-environment-variables": "^0.4.4", + "core-js": "^3.49.0", + "cross-env": "^10.1.0", + "type-fest": "^5.6.0", + "typescript": "^6.0.3" }, "peerDependencies": { - "react": ">= 16.8.6" + "react": ">= 16.8.6", + "react-dom": ">= 16.8.6" } }, - "packages/fluent-theme/node_modules/use-ref-from": { + "packages/component/node_modules/type-fest": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.6.0.tgz", + "integrity": "sha512-8ZiHFm91orbSAe2PSAiSVBVko18pbhbiB3U9GglSzF/zCGkR+rxpHx6sEMCUm4kxY4LjDIUGgCfUMtwfZfjfUA==", + "dev": true, + "dependencies": { + "tagged-tag": "^1.0.0" + }, + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "packages/component/node_modules/use-ref-from": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/use-ref-from/-/use-ref-from-0.2.1.tgz", "integrity": "sha512-iwRcKtgIPP4K++mR3LO5DLUf4WMfBWyAM20oUL9jbKfywoMTiRScUixGv0HkhlJxFm6uFv5yDnr5YwcSiJSm1g==", - "license": "MIT", "dependencies": { "use-ref-from": "^0.2.1" }, @@ -21677,668 +21699,8181 @@ "react": ">=16.8.0" } }, - "packages/isomorphic-react": { - "name": "@msinternal/isomorphic-react", - "version": "0.0.0-0", - "license": "MIT", - "devDependencies": { - "@babel/cli": "^7.28.6", - "@babel/core": "^7.29.0", - "@babel/preset-env": "^7.29.0", - "webpack": "^5.105.4", - "webpack-cli": "^6.0.1" - } - }, - "packages/isomorphic-react-dom": { - "name": "@msinternal/isomorphic-react-dom", + "packages/component/node_modules/valibot": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/valibot/-/valibot-1.3.1.tgz", + "integrity": "sha512-sfdRir/QFM0JaF22hqTroPc5xy4DimuGQVKFrzF1YfGwaS1nJot3Y8VqMdLO2Lg27fMzat2yD3pY5PbAYO39Gg==", + "peerDependencies": { + "typescript": ">=5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "packages/core": { + "name": "botframework-webchat-core", "version": "0.0.0-0", "license": "MIT", + "dependencies": { + "@babel/runtime": "7.29.2", + "@redux-devtools/extension": "4.0.0", + "core-js-pure": "3.49.0", + "iter-fest": "0.3.1", + "jwt-decode": "4.0.0", + "math-random": "2.0.1", + "mime": "4.1.0", + "redux": "5.0.1", + "redux-saga": "1.4.2", + "simple-update-in": "2.2.0", + "uuid": "8.3.2", + "valibot": "1.3.1" + }, "devDependencies": { - "@babel/cli": "^7.28.6", "@babel/core": "^7.29.0", - "@babel/preset-env": "^7.29.0", - "webpack": "^5.105.4", - "webpack-cli": "^6.0.1" + "@babel/plugin-transform-runtime": "^7.29.0", + "@babel/plugin-transform-typescript": "^7.28.6", + "@babel/preset-env": "^7.29.2", + "@msinternal/botframework-webchat-base": "0.0.0-0", + "@msinternal/botframework-webchat-core-debug-api": "0.0.0-0", + "@msinternal/botframework-webchat-core-graph": "0.0.0-0", + "@msinternal/botframework-webchat-tsconfig": "0.0.0-0", + "@testduet/given-when-then": "^0.1.0", + "@types/jest": "^29.5.14", + "@types/node": "^25.6.0", + "@types/uuid": "^8.3.4", + "babel-plugin-istanbul": "^8.0.0", + "babel-plugin-transform-inline-environment-variables": "^0.4.4", + "botframework-directlinejs": "^0.15.8", + "cross-env": "^10.1.0", + "tsd": "^0.33.0", + "type-fest": "^5.6.0", + "typescript": "^6.0.3" + }, + "engines": { + "node": ">=12.0.0" } }, - "packages/react-hooks": { - "name": "@msinternal/botframework-webchat-react-hooks", + "packages/core-debug-api": { + "name": "@msinternal/botframework-webchat-core-debug-api", "version": "0.0.0-0", "license": "MIT", + "dependencies": { + "tagged-tag": "1.0.0" + }, "devDependencies": { - "@msinternal/botframework-webchat-base": "0.0.0-0" + "@msinternal/botframework-webchat-base": "0.0.0-0", + "type-fest": "^5.6.0" + } + }, + "packages/core-debug-api/node_modules/type-fest": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.6.0.tgz", + "integrity": "sha512-8ZiHFm91orbSAe2PSAiSVBVko18pbhbiB3U9GglSzF/zCGkR+rxpHx6sEMCUm4kxY4LjDIUGgCfUMtwfZfjfUA==", + "dev": true, + "dependencies": { + "tagged-tag": "^1.0.0" }, - "peerDependencies": { - "react": ">= 16.8.6" + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "packages/react-valibot": { - "name": "@msinternal/botframework-webchat-react-valibot", + "packages/core-graph": { + "name": "@msinternal/botframework-webchat-core-graph", "version": "0.0.0-0", "license": "MIT", + "dependencies": { + "valibot": "1.3.1" + }, "devDependencies": { - "@msinternal/botframework-webchat-tsconfig": "0.0.0-0", - "@types/jest": "^29.5.14", - "@types/react": "^16.14.69", - "tsup": "^8.5.1", - "typescript": "^5.9.3" + "@msinternal/botframework-webchat-base": "0.0.0-0", + "@testduet/given-when-then": "^0.1.0", + "@types/uuid": "^8.3.4", + "type-fest": "^5.6.0", + "typescript": "^6.0.3" }, "peerDependencies": { - "react": ">= 16.8.6", - "valibot": "1.2.0" + "core-js-pure": "^3.49.0", + "iter-fest": "^0.3.1", + "uuid": "^8.3.2" } }, - "packages/redux-store": { - "name": "@msinternal/botframework-webchat-redux-store", - "version": "0.0.0-0", - "license": "MIT", + "packages/core-graph/node_modules/type-fest": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.6.0.tgz", + "integrity": "sha512-8ZiHFm91orbSAe2PSAiSVBVko18pbhbiB3U9GglSzF/zCGkR+rxpHx6sEMCUm4kxY4LjDIUGgCfUMtwfZfjfUA==", + "dev": true, "dependencies": { - "botframework-webchat-core": "0.0.0-0", - "valibot": "1.2.0" + "tagged-tag": "^1.0.0" }, - "devDependencies": { - "@msinternal/botframework-webchat-react-valibot": "0.0.0-0", - "@msinternal/botframework-webchat-tsconfig": "0.0.0-0", - "@types/react": "^16.14.69", - "tsup": "^8.5.1", - "typescript": "^5.9.3" + "engines": { + "node": ">=20" }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "packages/core-graph/node_modules/valibot": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/valibot/-/valibot-1.3.1.tgz", + "integrity": "sha512-sfdRir/QFM0JaF22hqTroPc5xy4DimuGQVKFrzF1YfGwaS1nJot3Y8VqMdLO2Lg27fMzat2yD3pY5PbAYO39Gg==", "peerDependencies": { - "react": ">= 16.8.6" + "typescript": ">=5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "packages/repack/adaptivecards": { - "name": "@msinternal/adaptivecards", - "version": "0.0.0-0", + "packages/core/node_modules/mime": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-4.1.0.tgz", + "integrity": "sha512-X5ju04+cAzsojXKes0B/S4tcYtFAJ6tTMuSPBEn9CPGlrWr8Fiw7qYeLT0XyH80HSoAoqWCaz+MWKh22P7G1cw==", + "funding": [ + "https://github.com/sponsors/broofa" + ], + "bin": { + "mime": "bin/cli.js" + }, + "engines": { + "node": ">=16" + } + }, + "packages/core/node_modules/type-fest": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.6.0.tgz", + "integrity": "sha512-8ZiHFm91orbSAe2PSAiSVBVko18pbhbiB3U9GglSzF/zCGkR+rxpHx6sEMCUm4kxY4LjDIUGgCfUMtwfZfjfUA==", + "dev": true, "dependencies": { - "adaptivecards": "3.0.6" + "tagged-tag": "^1.0.0" }, - "devDependencies": { - "esbuild": "^0.27.3" + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "packages/repack/base64-js": { - "name": "@msinternal/base64-js", + "packages/core/node_modules/valibot": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/valibot/-/valibot-1.3.1.tgz", + "integrity": "sha512-sfdRir/QFM0JaF22hqTroPc5xy4DimuGQVKFrzF1YfGwaS1nJot3Y8VqMdLO2Lg27fMzat2yD3pY5PbAYO39Gg==", + "peerDependencies": { + "typescript": ">=5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "packages/debug-theme": { + "name": "@msinternal/botframework-webchat-debug-theme", "version": "0.0.0-0", + "license": "MIT", "dependencies": { - "base64-js": "1.5.1" + "botframework-webchat-api": "0.0.0-0", + "botframework-webchat-component": "0.0.0-0" }, - "devDependencies": { - "esbuild": "^0.27.3" + "peerDependencies": { + "react": ">= 16.8.6" } }, - "packages/repack/botframework-directlinejs": { - "name": "@msinternal/botframework-directlinejs", + "packages/directlinespeech": { + "name": "botframework-directlinespeech-sdk", "version": "0.0.0-0", + "license": "MIT", "dependencies": { - "botframework-directlinejs": "0.15.8" + "@babel/runtime": "7.29.2", + "abort-controller": "3.0.0", + "base64-arraybuffer": "1.0.2", + "core-js": "3.49.0", + "core-js-pure": "3.49.0", + "event-as-promise": "2.0.1", + "event-target-shim": "6.0.2", + "math-random": "2.0.1", + "microsoft-cognitiveservices-speech-sdk": "1.17.0", + "web-speech-cognitive-services": "8.1.4" }, "devDependencies": { - "esbuild": "^0.27.3" + "@babel/cli": "^7.28.6", + "@babel/core": "^7.29.0", + "@babel/plugin-transform-runtime": "^7.29.0", + "@babel/preset-env": "^7.29.2", + "@types/jest": "^29.5.14", + "@typescript-eslint/eslint-plugin": "^8.59.0", + "@typescript-eslint/parser": "^8.59.0", + "babel-jest": "^29.7.0", + "babel-plugin-istanbul": "^8.0.0", + "babel-plugin-transform-inline-environment-variables": "^0.4.4", + "cross-env": "^10.1.0", + "dotenv": "^17.4.2", + "eslint": "^8.57.1", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-prettier": "^5.5.5", + "eslint-plugin-security": "^4.0.0", + "global-agent": "^3.0.0", + "has-resolved": "^2.0.0", + "jest": "^29.7.0", + "prettier": "^3.8.3", + "serve": "^14.2.6", + "simple-update-in": "^2.2.0", + "source-map-loader": "^5.0.0", + "webpack": "^5.106.2", + "webpack-cli": "^7.0.2", + "webpack-stats-plugin": "^1.1.3" + }, + "engines": { + "node": ">= 10.14.2" } }, - "packages/repack/html-react-parser": { - "name": "@msinternal/html-react-parser", - "version": "0.0.0-0", + "packages/directlinespeech/node_modules/@angular/common": { + "version": "21.2.9", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-21.2.9.tgz", + "integrity": "sha512-7spQcF3hPN/fjTx6Pwa32KRRdO0NcixnRuPV4lo50ejtXesjiLVR+fkaX38sawAyGoq89IuuYvUDrbLwCMypmQ==", + "peer": true, "dependencies": { - "html-react-parser": "5.2.17" + "tslib": "^2.3.0" }, - "devDependencies": { - "esbuild": "^0.27.3" + "engines": { + "node": "^20.19.0 || ^22.12.0 || >=24.0.0" + }, + "peerDependencies": { + "@angular/core": "21.2.9", + "rxjs": "^6.5.3 || ^7.4.0" } }, - "packages/repack/microsoft-cognitiveservices-speech-sdk": { - "name": "@msinternal/microsoft-cognitiveservices-speech-sdk", - "version": "0.0.0-0", + "packages/directlinespeech/node_modules/@angular/core": { + "version": "21.2.9", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-21.2.9.tgz", + "integrity": "sha512-uZLq2aedJ+0uEZxyf6a1Nc7y1aZ7akAW7K1Kon8JUDZOvI2IDbk0i00MzkELt8q9uSmSSqg9zNKuhjspFf0Pyw==", + "peer": true, "dependencies": { - "microsoft-cognitiveservices-speech-sdk": "1.48.0" + "tslib": "^2.3.0" }, - "devDependencies": { - "esbuild": "^0.27.3" + "engines": { + "node": "^20.19.0 || ^22.12.0 || >=24.0.0" + }, + "peerDependencies": { + "@angular/compiler": "21.2.9", + "rxjs": "^6.5.3 || ^7.4.0", + "zone.js": "~0.15.0 || ~0.16.0" + }, + "peerDependenciesMeta": { + "@angular/compiler": { + "optional": true + }, + "zone.js": { + "optional": true + } } }, - "packages/repack/object-assign": { - "name": "@msinternal/object-assign", - "version": "0.0.0-0" + "packages/directlinespeech/node_modules/event-target-shim": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-6.0.2.tgz", + "integrity": "sha512-8q3LsZjRezbFZ2PN+uP+Q7pnHUMmAOziU2vA2OwoFaKIXxlxl38IylhSSgUorWu/rf4er67w0ikBqjBFk/pomA==", + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } }, - "packages/repack/react": { - "name": "@msinternal/react", - "version": "0.0.0-0", + "packages/directlinespeech/node_modules/global-agent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-agent/-/global-agent-3.0.0.tgz", + "integrity": "sha512-PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q==", + "dev": true, "dependencies": { - "react": "18.3.1" + "boolean": "^3.0.1", + "es6-error": "^4.1.1", + "matcher": "^3.0.0", + "roarr": "^2.15.3", + "semver": "^7.3.2", + "serialize-error": "^7.0.1" }, - "devDependencies": { - "@types/react": "^18.3.28", - "esbuild": "^0.27.3" + "engines": { + "node": ">=10.0" } }, - "packages/repack/react-dom": { - "name": "@msinternal/react-dom", - "version": "0.0.0-0", + "packages/directlinespeech/node_modules/matcher": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-3.0.0.tgz", + "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==", + "dev": true, "dependencies": { - "react-dom": "18.3.1" + "escape-string-regexp": "^4.0.0" }, - "devDependencies": { - "@types/react-dom": "^18.3.7", - "esbuild": "^0.27.3" + "engines": { + "node": ">=10" } }, - "packages/repack/react-dom@baseline": { - "name": "@msinternal/react-dom-baseline", - "version": "0.0.0-0", + "packages/directlinespeech/node_modules/microsoft-cognitiveservices-speech-sdk": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/microsoft-cognitiveservices-speech-sdk/-/microsoft-cognitiveservices-speech-sdk-1.17.0.tgz", + "integrity": "sha512-RVUCpTeu1g+R4HB/PaLQmEfsdHzwEa6+2phgCiPA4lGIiR7ILEL7qZHHUWAG6W4zcjnWeiLnL7tVgMbyd5XGgA==", "dependencies": { - "react-dom": "16.8.6" + "agent-base": "^6.0.1", + "asn1.js-rfc2560": "^5.0.1", + "asn1.js-rfc5280": "^3.0.0", + "async-disk-cache": "^2.1.0", + "https-proxy-agent": "^4.0.0", + "simple-lru-cache": "0.0.2", + "url-parse": "^1.4.7", + "uuid": "^3.3.3", + "ws": "^7.3.1", + "xmlhttprequest-ts": "^1.0.1" + } + }, + "packages/directlinespeech/node_modules/rxjs": { + "version": "7.8.2", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", + "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", + "peer": true, + "dependencies": { + "tslib": "^2.1.0" + } + }, + "packages/directlinespeech/node_modules/semver": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", + "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "packages/directlinespeech/node_modules/serialize-error": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", + "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==", + "dev": true, + "dependencies": { + "type-fest": "^0.13.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "packages/directlinespeech/node_modules/type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "packages/directlinespeech/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "bin": { + "uuid": "bin/uuid" + } + }, + "packages/directlinespeech/node_modules/xmlhttprequest-ts": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/xmlhttprequest-ts/-/xmlhttprequest-ts-1.0.1.tgz", + "integrity": "sha512-x+7u8NpBcwfBCeGqUpdGrR6+kGUGVjKc4wolyCz7CQqBZQp7VIyaF1xAvJ7ApRzvLeuiC4BbmrA6CWH9NqxK/g==", + "dependencies": { + "tslib": "^1.9.2" + }, + "peerDependencies": { + "@angular/common": ">= 5.0.0", + "@angular/core": ">= 5.0.0" + } + }, + "packages/directlinespeech/node_modules/xmlhttprequest-ts/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "packages/fluent-theme": { + "name": "botframework-webchat-fluent-theme", + "version": "0.0.0-0", + "license": "MIT", + "dependencies": { + "botframework-webchat": "0.0.0-0", + "classnames": "2.5.1", + "inject-meta-tag": "0.1.0", + "math-random": "2.0.1", + "use-ref-from": "0.2.1", + "valibot": "1.3.1" }, "devDependencies": { - "@msinternal/object-assign": "0.0.0-0", - "@types/react-dom": "^16.9.25", - "esbuild": "^0.27.3" + "@msinternal/botframework-webchat-styles": "0.0.0-0", + "@msinternal/botframework-webchat-tsconfig": "0.0.0-0", + "@types/math-random": "^1.0.2", + "@types/node": "^25.6.0", + "@types/react": "^16.14.69", + "concurrently": "^9.2.1", + "tsup": "^8.5.1", + "typescript": "^6.0.3" + }, + "peerDependencies": { + "react": ">= 16.8.6" + } + }, + "packages/fluent-theme/node_modules/use-ref-from": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/use-ref-from/-/use-ref-from-0.2.1.tgz", + "integrity": "sha512-iwRcKtgIPP4K++mR3LO5DLUf4WMfBWyAM20oUL9jbKfywoMTiRScUixGv0HkhlJxFm6uFv5yDnr5YwcSiJSm1g==", + "dependencies": { + "use-ref-from": "^0.2.1" + }, + "peerDependencies": { + "react": ">=16.8.0" + } + }, + "packages/fluent-theme/node_modules/valibot": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/valibot/-/valibot-1.3.1.tgz", + "integrity": "sha512-sfdRir/QFM0JaF22hqTroPc5xy4DimuGQVKFrzF1YfGwaS1nJot3Y8VqMdLO2Lg27fMzat2yD3pY5PbAYO39Gg==", + "peerDependencies": { + "typescript": ">=5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "packages/isomorphic-react": { + "name": "@msinternal/isomorphic-react", + "version": "0.0.0-0", + "license": "MIT", + "devDependencies": { + "@babel/cli": "^7.28.6", + "@babel/core": "^7.29.0", + "@babel/preset-env": "^7.29.2", + "webpack": "^5.106.2", + "webpack-cli": "^7.0.2" + } + }, + "packages/isomorphic-react-dom": { + "name": "@msinternal/isomorphic-react-dom", + "version": "0.0.0-0", + "license": "MIT", + "devDependencies": { + "@babel/cli": "^7.28.6", + "@babel/core": "^7.29.0", + "@babel/preset-env": "^7.29.2", + "webpack": "^5.106.2", + "webpack-cli": "^7.0.2" + } + }, + "packages/react-hooks": { + "name": "@msinternal/botframework-webchat-react-hooks", + "version": "0.0.0-0", + "license": "MIT", + "devDependencies": { + "@msinternal/botframework-webchat-base": "0.0.0-0" + }, + "peerDependencies": { + "react": ">= 16.8.6" + } + }, + "packages/react-valibot": { + "name": "@msinternal/botframework-webchat-react-valibot", + "version": "0.0.0-0", + "license": "MIT", + "devDependencies": { + "@msinternal/botframework-webchat-tsconfig": "0.0.0-0", + "@types/jest": "^29.5.14", + "@types/react": "^16.14.69", + "tsup": "^8.5.1", + "typescript": "^6.0.3" + }, + "peerDependencies": { + "react": ">= 16.8.6", + "valibot": "1.2.0" + } + }, + "packages/redux-store": { + "name": "@msinternal/botframework-webchat-redux-store", + "version": "0.0.0-0", + "license": "MIT", + "dependencies": { + "botframework-webchat-core": "0.0.0-0", + "valibot": "1.3.1" + }, + "devDependencies": { + "@msinternal/botframework-webchat-react-valibot": "0.0.0-0", + "@msinternal/botframework-webchat-tsconfig": "0.0.0-0", + "@types/react": "^16.14.69", + "tsup": "^8.5.1", + "typescript": "^6.0.3" + }, + "peerDependencies": { + "react": ">= 16.8.6" + } + }, + "packages/redux-store/node_modules/valibot": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/valibot/-/valibot-1.3.1.tgz", + "integrity": "sha512-sfdRir/QFM0JaF22hqTroPc5xy4DimuGQVKFrzF1YfGwaS1nJot3Y8VqMdLO2Lg27fMzat2yD3pY5PbAYO39Gg==", + "peerDependencies": { + "typescript": ">=5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "packages/repack/adaptivecards": { + "name": "@msinternal/adaptivecards", + "version": "0.0.0-0", + "dependencies": { + "adaptivecards": "3.0.6" + }, + "devDependencies": { + "esbuild": "^0.28.0" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/aix-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.0.tgz", + "integrity": "sha512-lhRUCeuOyJQURhTxl4WkpFTjIsbDayJHih5kZC1giwE+MhIzAb7mEsQMqMf18rHLsrb5qI1tafG20mLxEWcWlA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/android-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.0.tgz", + "integrity": "sha512-wqh0ByljabXLKHeWXYLqoJ5jKC4XBaw6Hk08OfMrCRd2nP2ZQ5eleDZC41XHyCNgktBGYMbqnrJKq/K/lzPMSQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/android-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.0.tgz", + "integrity": "sha512-+WzIXQOSaGs33tLEgYPYe/yQHf0WTU0X42Jca3y8NWMbUVhp7rUnw+vAsRC/QiDrdD31IszMrZy+qwPOPjd+rw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/android-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.0.tgz", + "integrity": "sha512-+VJggoaKhk2VNNqVL7f6S189UzShHC/mR9EE8rDdSkdpN0KflSwWY/gWjDrNxxisg8Fp1ZCD9jLMo4m0OUfeUA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/darwin-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.0.tgz", + "integrity": "sha512-0T+A9WZm+bZ84nZBtk1ckYsOvyA3x7e2Acj1KdVfV4/2tdG4fzUp91YHx+GArWLtwqp77pBXVCPn2We7Letr0Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/darwin-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.0.tgz", + "integrity": "sha512-fyzLm/DLDl/84OCfp2f/XQ4flmORsjU7VKt8HLjvIXChJoFFOIL6pLJPH4Yhd1n1gGFF9mPwtlN5Wf82DZs+LQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/freebsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.0.tgz", + "integrity": "sha512-l9GeW5UZBT9k9brBYI+0WDffcRxgHQD8ShN2Ur4xWq/NFzUKm3k5lsH4PdaRgb2w7mI9u61nr2gI2mLI27Nh3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/freebsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.0.tgz", + "integrity": "sha512-BXoQai/A0wPO6Es3yFJ7APCiKGc1tdAEOgeTNy3SsB491S3aHn4S4r3e976eUnPdU+NbdtmBuLncYir2tMU9Nw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/linux-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.0.tgz", + "integrity": "sha512-CjaaREJagqJp7iTaNQjjidaNbCKYcd4IDkzbwwxtSvjI7NZm79qiHc8HqciMddQ6CKvJT6aBd8lO9kN/ZudLlw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/linux-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.0.tgz", + "integrity": "sha512-RVyzfb3FWsGA55n6WY0MEIEPURL1FcbhFE6BffZEMEekfCzCIMtB5yyDcFnVbTnwk+CLAgTujmV/Lgvih56W+A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/linux-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.0.tgz", + "integrity": "sha512-KBnSTt1kxl9x70q+ydterVdl+Cn0H18ngRMRCEQfrbqdUuntQQ0LoMZv47uB97NljZFzY6HcfqEZ2SAyIUTQBQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/linux-loong64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.0.tgz", + "integrity": "sha512-zpSlUce1mnxzgBADvxKXX5sl8aYQHo2ezvMNI8I0lbblJtp8V4odlm3Yzlj7gPyt3T8ReksE6bK+pT3WD+aJRg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/linux-mips64el": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.0.tgz", + "integrity": "sha512-2jIfP6mmjkdmeTlsX/9vmdmhBmKADrWqN7zcdtHIeNSCH1SqIoNI63cYsjQR8J+wGa4Y5izRcSHSm8K3QWmk3w==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/linux-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.0.tgz", + "integrity": "sha512-bc0FE9wWeC0WBm49IQMPSPILRocGTQt3j5KPCA8os6VprfuJ7KD+5PzESSrJ6GmPIPJK965ZJHTUlSA6GNYEhg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/linux-riscv64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.0.tgz", + "integrity": "sha512-SQPZOwoTTT/HXFXQJG/vBX8sOFagGqvZyXcgLA3NhIqcBv1BJU1d46c0rGcrij2B56Z2rNiSLaZOYW5cUk7yLQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/linux-s390x": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.0.tgz", + "integrity": "sha512-SCfR0HN8CEEjnYnySJTd2cw0k9OHB/YFzt5zgJEwa+wL/T/raGWYMBqwDNAC6dqFKmJYZoQBRfHjgwLHGSrn3Q==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/linux-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.0.tgz", + "integrity": "sha512-us0dSb9iFxIi8srnpl931Nvs65it/Jd2a2K3qs7fz2WfGPHqzfzZTfec7oxZJRNPXPnNYZtanmRc4AL/JwVzHQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/netbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.0.tgz", + "integrity": "sha512-CR/RYotgtCKwtftMwJlUU7xCVNg3lMYZ0RzTmAHSfLCXw3NtZtNpswLEj/Kkf6kEL3Gw+BpOekRX0BYCtklhUw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/netbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.0.tgz", + "integrity": "sha512-nU1yhmYutL+fQ71Kxnhg8uEOdC0pwEW9entHykTgEbna2pw2dkbFSMeqjjyHZoCmt8SBkOSvV+yNmm94aUrrqw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/openbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.0.tgz", + "integrity": "sha512-cXb5vApOsRsxsEl4mcZ1XY3D4DzcoMxR/nnc4IyqYs0rTI8ZKmW6kyyg+11Z8yvgMfAEldKzP7AdP64HnSC/6g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/openbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.0.tgz", + "integrity": "sha512-8wZM2qqtv9UP3mzy7HiGYNH/zjTA355mpeuA+859TyR+e+Tc08IHYpLJuMsfpDJwoLo1ikIJI8jC3GFjnRClzA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.0.tgz", + "integrity": "sha512-FLGfyizszcef5C3YtoyQDACyg95+dndv79i2EekILBofh5wpCa1KuBqOWKrEHZg3zrL3t5ouE5jgr94vA+Wb2w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/sunos-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.0.tgz", + "integrity": "sha512-1ZgjUoEdHZZl/YlV76TSCz9Hqj9h9YmMGAgAPYd+q4SicWNX3G5GCyx9uhQWSLcbvPW8Ni7lj4gDa1T40akdlw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/win32-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.0.tgz", + "integrity": "sha512-Q9StnDmQ/enxnpxCCLSg0oo4+34B9TdXpuyPeTedN/6+iXBJ4J+zwfQI28u/Jl40nOYAxGoNi7mFP40RUtkmUA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/win32-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.0.tgz", + "integrity": "sha512-zF3ag/gfiCe6U2iczcRzSYJKH1DCI+ByzSENHlM2FcDbEeo5Zd2C86Aq0tKUYAJJ1obRP84ymxIAksZUcdztHA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/@esbuild/win32-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.0.tgz", + "integrity": "sha512-pEl1bO9mfAmIC+tW5btTmrKaujg3zGtUmWNdCw/xs70FBjwAL3o9OEKNHvNmnyylD6ubxUERiEhdsL0xBQ9efw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/adaptivecards/node_modules/esbuild": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.0.tgz", + "integrity": "sha512-sNR9MHpXSUV/XB4zmsFKN+QgVG82Cc7+/aaxJ8Adi8hyOac+EXptIp45QBPaVyX3N70664wRbTcLTOemCAnyqw==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.28.0", + "@esbuild/android-arm": "0.28.0", + "@esbuild/android-arm64": "0.28.0", + "@esbuild/android-x64": "0.28.0", + "@esbuild/darwin-arm64": "0.28.0", + "@esbuild/darwin-x64": "0.28.0", + "@esbuild/freebsd-arm64": "0.28.0", + "@esbuild/freebsd-x64": "0.28.0", + "@esbuild/linux-arm": "0.28.0", + "@esbuild/linux-arm64": "0.28.0", + "@esbuild/linux-ia32": "0.28.0", + "@esbuild/linux-loong64": "0.28.0", + "@esbuild/linux-mips64el": "0.28.0", + "@esbuild/linux-ppc64": "0.28.0", + "@esbuild/linux-riscv64": "0.28.0", + "@esbuild/linux-s390x": "0.28.0", + "@esbuild/linux-x64": "0.28.0", + "@esbuild/netbsd-arm64": "0.28.0", + "@esbuild/netbsd-x64": "0.28.0", + "@esbuild/openbsd-arm64": "0.28.0", + "@esbuild/openbsd-x64": "0.28.0", + "@esbuild/openharmony-arm64": "0.28.0", + "@esbuild/sunos-x64": "0.28.0", + "@esbuild/win32-arm64": "0.28.0", + "@esbuild/win32-ia32": "0.28.0", + "@esbuild/win32-x64": "0.28.0" + } + }, + "packages/repack/base64-js": { + "name": "@msinternal/base64-js", + "version": "0.0.0-0", + "dependencies": { + "base64-js": "1.5.1" + }, + "devDependencies": { + "esbuild": "^0.28.0" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/aix-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.0.tgz", + "integrity": "sha512-lhRUCeuOyJQURhTxl4WkpFTjIsbDayJHih5kZC1giwE+MhIzAb7mEsQMqMf18rHLsrb5qI1tafG20mLxEWcWlA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/android-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.0.tgz", + "integrity": "sha512-wqh0ByljabXLKHeWXYLqoJ5jKC4XBaw6Hk08OfMrCRd2nP2ZQ5eleDZC41XHyCNgktBGYMbqnrJKq/K/lzPMSQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/android-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.0.tgz", + "integrity": "sha512-+WzIXQOSaGs33tLEgYPYe/yQHf0WTU0X42Jca3y8NWMbUVhp7rUnw+vAsRC/QiDrdD31IszMrZy+qwPOPjd+rw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/android-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.0.tgz", + "integrity": "sha512-+VJggoaKhk2VNNqVL7f6S189UzShHC/mR9EE8rDdSkdpN0KflSwWY/gWjDrNxxisg8Fp1ZCD9jLMo4m0OUfeUA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/darwin-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.0.tgz", + "integrity": "sha512-0T+A9WZm+bZ84nZBtk1ckYsOvyA3x7e2Acj1KdVfV4/2tdG4fzUp91YHx+GArWLtwqp77pBXVCPn2We7Letr0Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/darwin-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.0.tgz", + "integrity": "sha512-fyzLm/DLDl/84OCfp2f/XQ4flmORsjU7VKt8HLjvIXChJoFFOIL6pLJPH4Yhd1n1gGFF9mPwtlN5Wf82DZs+LQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/freebsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.0.tgz", + "integrity": "sha512-l9GeW5UZBT9k9brBYI+0WDffcRxgHQD8ShN2Ur4xWq/NFzUKm3k5lsH4PdaRgb2w7mI9u61nr2gI2mLI27Nh3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/freebsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.0.tgz", + "integrity": "sha512-BXoQai/A0wPO6Es3yFJ7APCiKGc1tdAEOgeTNy3SsB491S3aHn4S4r3e976eUnPdU+NbdtmBuLncYir2tMU9Nw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/linux-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.0.tgz", + "integrity": "sha512-CjaaREJagqJp7iTaNQjjidaNbCKYcd4IDkzbwwxtSvjI7NZm79qiHc8HqciMddQ6CKvJT6aBd8lO9kN/ZudLlw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/linux-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.0.tgz", + "integrity": "sha512-RVyzfb3FWsGA55n6WY0MEIEPURL1FcbhFE6BffZEMEekfCzCIMtB5yyDcFnVbTnwk+CLAgTujmV/Lgvih56W+A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/linux-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.0.tgz", + "integrity": "sha512-KBnSTt1kxl9x70q+ydterVdl+Cn0H18ngRMRCEQfrbqdUuntQQ0LoMZv47uB97NljZFzY6HcfqEZ2SAyIUTQBQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/linux-loong64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.0.tgz", + "integrity": "sha512-zpSlUce1mnxzgBADvxKXX5sl8aYQHo2ezvMNI8I0lbblJtp8V4odlm3Yzlj7gPyt3T8ReksE6bK+pT3WD+aJRg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/linux-mips64el": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.0.tgz", + "integrity": "sha512-2jIfP6mmjkdmeTlsX/9vmdmhBmKADrWqN7zcdtHIeNSCH1SqIoNI63cYsjQR8J+wGa4Y5izRcSHSm8K3QWmk3w==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/linux-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.0.tgz", + "integrity": "sha512-bc0FE9wWeC0WBm49IQMPSPILRocGTQt3j5KPCA8os6VprfuJ7KD+5PzESSrJ6GmPIPJK965ZJHTUlSA6GNYEhg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/linux-riscv64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.0.tgz", + "integrity": "sha512-SQPZOwoTTT/HXFXQJG/vBX8sOFagGqvZyXcgLA3NhIqcBv1BJU1d46c0rGcrij2B56Z2rNiSLaZOYW5cUk7yLQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/linux-s390x": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.0.tgz", + "integrity": "sha512-SCfR0HN8CEEjnYnySJTd2cw0k9OHB/YFzt5zgJEwa+wL/T/raGWYMBqwDNAC6dqFKmJYZoQBRfHjgwLHGSrn3Q==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/linux-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.0.tgz", + "integrity": "sha512-us0dSb9iFxIi8srnpl931Nvs65it/Jd2a2K3qs7fz2WfGPHqzfzZTfec7oxZJRNPXPnNYZtanmRc4AL/JwVzHQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/netbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.0.tgz", + "integrity": "sha512-CR/RYotgtCKwtftMwJlUU7xCVNg3lMYZ0RzTmAHSfLCXw3NtZtNpswLEj/Kkf6kEL3Gw+BpOekRX0BYCtklhUw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/netbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.0.tgz", + "integrity": "sha512-nU1yhmYutL+fQ71Kxnhg8uEOdC0pwEW9entHykTgEbna2pw2dkbFSMeqjjyHZoCmt8SBkOSvV+yNmm94aUrrqw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/openbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.0.tgz", + "integrity": "sha512-cXb5vApOsRsxsEl4mcZ1XY3D4DzcoMxR/nnc4IyqYs0rTI8ZKmW6kyyg+11Z8yvgMfAEldKzP7AdP64HnSC/6g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/openbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.0.tgz", + "integrity": "sha512-8wZM2qqtv9UP3mzy7HiGYNH/zjTA355mpeuA+859TyR+e+Tc08IHYpLJuMsfpDJwoLo1ikIJI8jC3GFjnRClzA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.0.tgz", + "integrity": "sha512-FLGfyizszcef5C3YtoyQDACyg95+dndv79i2EekILBofh5wpCa1KuBqOWKrEHZg3zrL3t5ouE5jgr94vA+Wb2w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/sunos-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.0.tgz", + "integrity": "sha512-1ZgjUoEdHZZl/YlV76TSCz9Hqj9h9YmMGAgAPYd+q4SicWNX3G5GCyx9uhQWSLcbvPW8Ni7lj4gDa1T40akdlw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/win32-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.0.tgz", + "integrity": "sha512-Q9StnDmQ/enxnpxCCLSg0oo4+34B9TdXpuyPeTedN/6+iXBJ4J+zwfQI28u/Jl40nOYAxGoNi7mFP40RUtkmUA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/win32-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.0.tgz", + "integrity": "sha512-zF3ag/gfiCe6U2iczcRzSYJKH1DCI+ByzSENHlM2FcDbEeo5Zd2C86Aq0tKUYAJJ1obRP84ymxIAksZUcdztHA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/@esbuild/win32-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.0.tgz", + "integrity": "sha512-pEl1bO9mfAmIC+tW5btTmrKaujg3zGtUmWNdCw/xs70FBjwAL3o9OEKNHvNmnyylD6ubxUERiEhdsL0xBQ9efw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/base64-js/node_modules/esbuild": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.0.tgz", + "integrity": "sha512-sNR9MHpXSUV/XB4zmsFKN+QgVG82Cc7+/aaxJ8Adi8hyOac+EXptIp45QBPaVyX3N70664wRbTcLTOemCAnyqw==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.28.0", + "@esbuild/android-arm": "0.28.0", + "@esbuild/android-arm64": "0.28.0", + "@esbuild/android-x64": "0.28.0", + "@esbuild/darwin-arm64": "0.28.0", + "@esbuild/darwin-x64": "0.28.0", + "@esbuild/freebsd-arm64": "0.28.0", + "@esbuild/freebsd-x64": "0.28.0", + "@esbuild/linux-arm": "0.28.0", + "@esbuild/linux-arm64": "0.28.0", + "@esbuild/linux-ia32": "0.28.0", + "@esbuild/linux-loong64": "0.28.0", + "@esbuild/linux-mips64el": "0.28.0", + "@esbuild/linux-ppc64": "0.28.0", + "@esbuild/linux-riscv64": "0.28.0", + "@esbuild/linux-s390x": "0.28.0", + "@esbuild/linux-x64": "0.28.0", + "@esbuild/netbsd-arm64": "0.28.0", + "@esbuild/netbsd-x64": "0.28.0", + "@esbuild/openbsd-arm64": "0.28.0", + "@esbuild/openbsd-x64": "0.28.0", + "@esbuild/openharmony-arm64": "0.28.0", + "@esbuild/sunos-x64": "0.28.0", + "@esbuild/win32-arm64": "0.28.0", + "@esbuild/win32-ia32": "0.28.0", + "@esbuild/win32-x64": "0.28.0" + } + }, + "packages/repack/botframework-directlinejs": { + "name": "@msinternal/botframework-directlinejs", + "version": "0.0.0-0", + "dependencies": { + "botframework-directlinejs": "0.15.8" + }, + "devDependencies": { + "esbuild": "^0.28.0" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/aix-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.0.tgz", + "integrity": "sha512-lhRUCeuOyJQURhTxl4WkpFTjIsbDayJHih5kZC1giwE+MhIzAb7mEsQMqMf18rHLsrb5qI1tafG20mLxEWcWlA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/android-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.0.tgz", + "integrity": "sha512-wqh0ByljabXLKHeWXYLqoJ5jKC4XBaw6Hk08OfMrCRd2nP2ZQ5eleDZC41XHyCNgktBGYMbqnrJKq/K/lzPMSQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/android-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.0.tgz", + "integrity": "sha512-+WzIXQOSaGs33tLEgYPYe/yQHf0WTU0X42Jca3y8NWMbUVhp7rUnw+vAsRC/QiDrdD31IszMrZy+qwPOPjd+rw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/android-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.0.tgz", + "integrity": "sha512-+VJggoaKhk2VNNqVL7f6S189UzShHC/mR9EE8rDdSkdpN0KflSwWY/gWjDrNxxisg8Fp1ZCD9jLMo4m0OUfeUA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/darwin-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.0.tgz", + "integrity": "sha512-0T+A9WZm+bZ84nZBtk1ckYsOvyA3x7e2Acj1KdVfV4/2tdG4fzUp91YHx+GArWLtwqp77pBXVCPn2We7Letr0Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/darwin-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.0.tgz", + "integrity": "sha512-fyzLm/DLDl/84OCfp2f/XQ4flmORsjU7VKt8HLjvIXChJoFFOIL6pLJPH4Yhd1n1gGFF9mPwtlN5Wf82DZs+LQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/freebsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.0.tgz", + "integrity": "sha512-l9GeW5UZBT9k9brBYI+0WDffcRxgHQD8ShN2Ur4xWq/NFzUKm3k5lsH4PdaRgb2w7mI9u61nr2gI2mLI27Nh3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/freebsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.0.tgz", + "integrity": "sha512-BXoQai/A0wPO6Es3yFJ7APCiKGc1tdAEOgeTNy3SsB491S3aHn4S4r3e976eUnPdU+NbdtmBuLncYir2tMU9Nw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/linux-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.0.tgz", + "integrity": "sha512-CjaaREJagqJp7iTaNQjjidaNbCKYcd4IDkzbwwxtSvjI7NZm79qiHc8HqciMddQ6CKvJT6aBd8lO9kN/ZudLlw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/linux-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.0.tgz", + "integrity": "sha512-RVyzfb3FWsGA55n6WY0MEIEPURL1FcbhFE6BffZEMEekfCzCIMtB5yyDcFnVbTnwk+CLAgTujmV/Lgvih56W+A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/linux-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.0.tgz", + "integrity": "sha512-KBnSTt1kxl9x70q+ydterVdl+Cn0H18ngRMRCEQfrbqdUuntQQ0LoMZv47uB97NljZFzY6HcfqEZ2SAyIUTQBQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/linux-loong64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.0.tgz", + "integrity": "sha512-zpSlUce1mnxzgBADvxKXX5sl8aYQHo2ezvMNI8I0lbblJtp8V4odlm3Yzlj7gPyt3T8ReksE6bK+pT3WD+aJRg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/linux-mips64el": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.0.tgz", + "integrity": "sha512-2jIfP6mmjkdmeTlsX/9vmdmhBmKADrWqN7zcdtHIeNSCH1SqIoNI63cYsjQR8J+wGa4Y5izRcSHSm8K3QWmk3w==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/linux-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.0.tgz", + "integrity": "sha512-bc0FE9wWeC0WBm49IQMPSPILRocGTQt3j5KPCA8os6VprfuJ7KD+5PzESSrJ6GmPIPJK965ZJHTUlSA6GNYEhg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/linux-riscv64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.0.tgz", + "integrity": "sha512-SQPZOwoTTT/HXFXQJG/vBX8sOFagGqvZyXcgLA3NhIqcBv1BJU1d46c0rGcrij2B56Z2rNiSLaZOYW5cUk7yLQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/linux-s390x": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.0.tgz", + "integrity": "sha512-SCfR0HN8CEEjnYnySJTd2cw0k9OHB/YFzt5zgJEwa+wL/T/raGWYMBqwDNAC6dqFKmJYZoQBRfHjgwLHGSrn3Q==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/linux-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.0.tgz", + "integrity": "sha512-us0dSb9iFxIi8srnpl931Nvs65it/Jd2a2K3qs7fz2WfGPHqzfzZTfec7oxZJRNPXPnNYZtanmRc4AL/JwVzHQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/netbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.0.tgz", + "integrity": "sha512-CR/RYotgtCKwtftMwJlUU7xCVNg3lMYZ0RzTmAHSfLCXw3NtZtNpswLEj/Kkf6kEL3Gw+BpOekRX0BYCtklhUw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/netbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.0.tgz", + "integrity": "sha512-nU1yhmYutL+fQ71Kxnhg8uEOdC0pwEW9entHykTgEbna2pw2dkbFSMeqjjyHZoCmt8SBkOSvV+yNmm94aUrrqw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/openbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.0.tgz", + "integrity": "sha512-cXb5vApOsRsxsEl4mcZ1XY3D4DzcoMxR/nnc4IyqYs0rTI8ZKmW6kyyg+11Z8yvgMfAEldKzP7AdP64HnSC/6g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/openbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.0.tgz", + "integrity": "sha512-8wZM2qqtv9UP3mzy7HiGYNH/zjTA355mpeuA+859TyR+e+Tc08IHYpLJuMsfpDJwoLo1ikIJI8jC3GFjnRClzA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.0.tgz", + "integrity": "sha512-FLGfyizszcef5C3YtoyQDACyg95+dndv79i2EekILBofh5wpCa1KuBqOWKrEHZg3zrL3t5ouE5jgr94vA+Wb2w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/sunos-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.0.tgz", + "integrity": "sha512-1ZgjUoEdHZZl/YlV76TSCz9Hqj9h9YmMGAgAPYd+q4SicWNX3G5GCyx9uhQWSLcbvPW8Ni7lj4gDa1T40akdlw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/win32-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.0.tgz", + "integrity": "sha512-Q9StnDmQ/enxnpxCCLSg0oo4+34B9TdXpuyPeTedN/6+iXBJ4J+zwfQI28u/Jl40nOYAxGoNi7mFP40RUtkmUA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/win32-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.0.tgz", + "integrity": "sha512-zF3ag/gfiCe6U2iczcRzSYJKH1DCI+ByzSENHlM2FcDbEeo5Zd2C86Aq0tKUYAJJ1obRP84ymxIAksZUcdztHA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/@esbuild/win32-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.0.tgz", + "integrity": "sha512-pEl1bO9mfAmIC+tW5btTmrKaujg3zGtUmWNdCw/xs70FBjwAL3o9OEKNHvNmnyylD6ubxUERiEhdsL0xBQ9efw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/botframework-directlinejs/node_modules/esbuild": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.0.tgz", + "integrity": "sha512-sNR9MHpXSUV/XB4zmsFKN+QgVG82Cc7+/aaxJ8Adi8hyOac+EXptIp45QBPaVyX3N70664wRbTcLTOemCAnyqw==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.28.0", + "@esbuild/android-arm": "0.28.0", + "@esbuild/android-arm64": "0.28.0", + "@esbuild/android-x64": "0.28.0", + "@esbuild/darwin-arm64": "0.28.0", + "@esbuild/darwin-x64": "0.28.0", + "@esbuild/freebsd-arm64": "0.28.0", + "@esbuild/freebsd-x64": "0.28.0", + "@esbuild/linux-arm": "0.28.0", + "@esbuild/linux-arm64": "0.28.0", + "@esbuild/linux-ia32": "0.28.0", + "@esbuild/linux-loong64": "0.28.0", + "@esbuild/linux-mips64el": "0.28.0", + "@esbuild/linux-ppc64": "0.28.0", + "@esbuild/linux-riscv64": "0.28.0", + "@esbuild/linux-s390x": "0.28.0", + "@esbuild/linux-x64": "0.28.0", + "@esbuild/netbsd-arm64": "0.28.0", + "@esbuild/netbsd-x64": "0.28.0", + "@esbuild/openbsd-arm64": "0.28.0", + "@esbuild/openbsd-x64": "0.28.0", + "@esbuild/openharmony-arm64": "0.28.0", + "@esbuild/sunos-x64": "0.28.0", + "@esbuild/win32-arm64": "0.28.0", + "@esbuild/win32-ia32": "0.28.0", + "@esbuild/win32-x64": "0.28.0" + } + }, + "packages/repack/html-react-parser": { + "name": "@msinternal/html-react-parser", + "version": "0.0.0-0", + "dependencies": { + "html-react-parser": "6.0.1" + }, + "devDependencies": { + "esbuild": "^0.28.0" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/aix-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.0.tgz", + "integrity": "sha512-lhRUCeuOyJQURhTxl4WkpFTjIsbDayJHih5kZC1giwE+MhIzAb7mEsQMqMf18rHLsrb5qI1tafG20mLxEWcWlA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/android-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.0.tgz", + "integrity": "sha512-wqh0ByljabXLKHeWXYLqoJ5jKC4XBaw6Hk08OfMrCRd2nP2ZQ5eleDZC41XHyCNgktBGYMbqnrJKq/K/lzPMSQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/android-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.0.tgz", + "integrity": "sha512-+WzIXQOSaGs33tLEgYPYe/yQHf0WTU0X42Jca3y8NWMbUVhp7rUnw+vAsRC/QiDrdD31IszMrZy+qwPOPjd+rw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/android-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.0.tgz", + "integrity": "sha512-+VJggoaKhk2VNNqVL7f6S189UzShHC/mR9EE8rDdSkdpN0KflSwWY/gWjDrNxxisg8Fp1ZCD9jLMo4m0OUfeUA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/darwin-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.0.tgz", + "integrity": "sha512-0T+A9WZm+bZ84nZBtk1ckYsOvyA3x7e2Acj1KdVfV4/2tdG4fzUp91YHx+GArWLtwqp77pBXVCPn2We7Letr0Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/darwin-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.0.tgz", + "integrity": "sha512-fyzLm/DLDl/84OCfp2f/XQ4flmORsjU7VKt8HLjvIXChJoFFOIL6pLJPH4Yhd1n1gGFF9mPwtlN5Wf82DZs+LQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/freebsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.0.tgz", + "integrity": "sha512-l9GeW5UZBT9k9brBYI+0WDffcRxgHQD8ShN2Ur4xWq/NFzUKm3k5lsH4PdaRgb2w7mI9u61nr2gI2mLI27Nh3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/freebsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.0.tgz", + "integrity": "sha512-BXoQai/A0wPO6Es3yFJ7APCiKGc1tdAEOgeTNy3SsB491S3aHn4S4r3e976eUnPdU+NbdtmBuLncYir2tMU9Nw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/linux-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.0.tgz", + "integrity": "sha512-CjaaREJagqJp7iTaNQjjidaNbCKYcd4IDkzbwwxtSvjI7NZm79qiHc8HqciMddQ6CKvJT6aBd8lO9kN/ZudLlw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/linux-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.0.tgz", + "integrity": "sha512-RVyzfb3FWsGA55n6WY0MEIEPURL1FcbhFE6BffZEMEekfCzCIMtB5yyDcFnVbTnwk+CLAgTujmV/Lgvih56W+A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/linux-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.0.tgz", + "integrity": "sha512-KBnSTt1kxl9x70q+ydterVdl+Cn0H18ngRMRCEQfrbqdUuntQQ0LoMZv47uB97NljZFzY6HcfqEZ2SAyIUTQBQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/linux-loong64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.0.tgz", + "integrity": "sha512-zpSlUce1mnxzgBADvxKXX5sl8aYQHo2ezvMNI8I0lbblJtp8V4odlm3Yzlj7gPyt3T8ReksE6bK+pT3WD+aJRg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/linux-mips64el": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.0.tgz", + "integrity": "sha512-2jIfP6mmjkdmeTlsX/9vmdmhBmKADrWqN7zcdtHIeNSCH1SqIoNI63cYsjQR8J+wGa4Y5izRcSHSm8K3QWmk3w==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/linux-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.0.tgz", + "integrity": "sha512-bc0FE9wWeC0WBm49IQMPSPILRocGTQt3j5KPCA8os6VprfuJ7KD+5PzESSrJ6GmPIPJK965ZJHTUlSA6GNYEhg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/linux-riscv64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.0.tgz", + "integrity": "sha512-SQPZOwoTTT/HXFXQJG/vBX8sOFagGqvZyXcgLA3NhIqcBv1BJU1d46c0rGcrij2B56Z2rNiSLaZOYW5cUk7yLQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/linux-s390x": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.0.tgz", + "integrity": "sha512-SCfR0HN8CEEjnYnySJTd2cw0k9OHB/YFzt5zgJEwa+wL/T/raGWYMBqwDNAC6dqFKmJYZoQBRfHjgwLHGSrn3Q==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/linux-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.0.tgz", + "integrity": "sha512-us0dSb9iFxIi8srnpl931Nvs65it/Jd2a2K3qs7fz2WfGPHqzfzZTfec7oxZJRNPXPnNYZtanmRc4AL/JwVzHQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/netbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.0.tgz", + "integrity": "sha512-CR/RYotgtCKwtftMwJlUU7xCVNg3lMYZ0RzTmAHSfLCXw3NtZtNpswLEj/Kkf6kEL3Gw+BpOekRX0BYCtklhUw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/netbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.0.tgz", + "integrity": "sha512-nU1yhmYutL+fQ71Kxnhg8uEOdC0pwEW9entHykTgEbna2pw2dkbFSMeqjjyHZoCmt8SBkOSvV+yNmm94aUrrqw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/openbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.0.tgz", + "integrity": "sha512-cXb5vApOsRsxsEl4mcZ1XY3D4DzcoMxR/nnc4IyqYs0rTI8ZKmW6kyyg+11Z8yvgMfAEldKzP7AdP64HnSC/6g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/openbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.0.tgz", + "integrity": "sha512-8wZM2qqtv9UP3mzy7HiGYNH/zjTA355mpeuA+859TyR+e+Tc08IHYpLJuMsfpDJwoLo1ikIJI8jC3GFjnRClzA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.0.tgz", + "integrity": "sha512-FLGfyizszcef5C3YtoyQDACyg95+dndv79i2EekILBofh5wpCa1KuBqOWKrEHZg3zrL3t5ouE5jgr94vA+Wb2w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/sunos-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.0.tgz", + "integrity": "sha512-1ZgjUoEdHZZl/YlV76TSCz9Hqj9h9YmMGAgAPYd+q4SicWNX3G5GCyx9uhQWSLcbvPW8Ni7lj4gDa1T40akdlw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/win32-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.0.tgz", + "integrity": "sha512-Q9StnDmQ/enxnpxCCLSg0oo4+34B9TdXpuyPeTedN/6+iXBJ4J+zwfQI28u/Jl40nOYAxGoNi7mFP40RUtkmUA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/win32-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.0.tgz", + "integrity": "sha512-zF3ag/gfiCe6U2iczcRzSYJKH1DCI+ByzSENHlM2FcDbEeo5Zd2C86Aq0tKUYAJJ1obRP84ymxIAksZUcdztHA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/@esbuild/win32-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.0.tgz", + "integrity": "sha512-pEl1bO9mfAmIC+tW5btTmrKaujg3zGtUmWNdCw/xs70FBjwAL3o9OEKNHvNmnyylD6ubxUERiEhdsL0xBQ9efw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/html-react-parser/node_modules/dom-serializer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-3.0.0.tgz", + "integrity": "sha512-x+9D6nkC8tdXOQUS32egtZpZFLP90+HBZmWjuT920srbJvD/zPgFB9t4k3pEhlw5BQrXStQtRc1Y1zuriXk+Nw==", + "dependencies": { + "domelementtype": "^3.0.0", + "domhandler": "^6.0.0", + "entities": "^8.0.0" + }, + "engines": { + "node": ">=20.19.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "packages/repack/html-react-parser/node_modules/domelementtype": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-3.0.0.tgz", + "integrity": "sha512-umCQid3jKbDmVjx8jGaW7uUykm4DEUeyV21hPxNMo2nV955DhUThwqyOIDtreepP31hl84X7G5U9ZfsWvIB3Pg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "engines": { + "node": ">=20.19.0" + } + }, + "packages/repack/html-react-parser/node_modules/domhandler": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-6.0.1.tgz", + "integrity": "sha512-gYzvtM72ZtxQO0T048kd6HWSbbGCNOUwcnfQ01cqIJ4X2IYKFFHZ5mKvrQETcFXxsRObZulDaKmy//R7TPtsBg==", + "dependencies": { + "domelementtype": "^3.0.0" + }, + "engines": { + "node": ">=20.19.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "packages/repack/html-react-parser/node_modules/domutils": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-4.0.2.tgz", + "integrity": "sha512-qI4JLRKnSzqFqr7hAlS5xQDusBCjKSEG4t4+7aNrIQMHBcsC2TGEhuyABJdYkgSewL57PNLYEiibY2iPKhKpaA==", + "dependencies": { + "dom-serializer": "^3.0.0", + "domelementtype": "^3.0.0", + "domhandler": "^6.0.0" + }, + "engines": { + "node": ">=20.19.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "packages/repack/html-react-parser/node_modules/entities": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-8.0.0.tgz", + "integrity": "sha512-zwfzJecQ/Uej6tusMqwAqU/6KL2XaB2VZ2Jg54Je6ahNBGNH6Ek6g3jjNCF0fG9EWQKGZNddNjU5F1ZQn/sBnA==", + "engines": { + "node": ">=20.19.0" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "packages/repack/html-react-parser/node_modules/esbuild": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.0.tgz", + "integrity": "sha512-sNR9MHpXSUV/XB4zmsFKN+QgVG82Cc7+/aaxJ8Adi8hyOac+EXptIp45QBPaVyX3N70664wRbTcLTOemCAnyqw==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.28.0", + "@esbuild/android-arm": "0.28.0", + "@esbuild/android-arm64": "0.28.0", + "@esbuild/android-x64": "0.28.0", + "@esbuild/darwin-arm64": "0.28.0", + "@esbuild/darwin-x64": "0.28.0", + "@esbuild/freebsd-arm64": "0.28.0", + "@esbuild/freebsd-x64": "0.28.0", + "@esbuild/linux-arm": "0.28.0", + "@esbuild/linux-arm64": "0.28.0", + "@esbuild/linux-ia32": "0.28.0", + "@esbuild/linux-loong64": "0.28.0", + "@esbuild/linux-mips64el": "0.28.0", + "@esbuild/linux-ppc64": "0.28.0", + "@esbuild/linux-riscv64": "0.28.0", + "@esbuild/linux-s390x": "0.28.0", + "@esbuild/linux-x64": "0.28.0", + "@esbuild/netbsd-arm64": "0.28.0", + "@esbuild/netbsd-x64": "0.28.0", + "@esbuild/openbsd-arm64": "0.28.0", + "@esbuild/openbsd-x64": "0.28.0", + "@esbuild/openharmony-arm64": "0.28.0", + "@esbuild/sunos-x64": "0.28.0", + "@esbuild/win32-arm64": "0.28.0", + "@esbuild/win32-ia32": "0.28.0", + "@esbuild/win32-x64": "0.28.0" + } + }, + "packages/repack/html-react-parser/node_modules/html-dom-parser": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/html-dom-parser/-/html-dom-parser-7.0.1.tgz", + "integrity": "sha512-loRBDTCY/05/jAC63J1X9ID+xjRucmpLkIcQO0IRbOubBo5ucnpUpyXXob9UMXOskMZlu7KPsDP/2KOMelzJNA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/remarkablemark" + } + ], + "dependencies": { + "domhandler": "6.0.1", + "htmlparser2": "12.0.0" + } + }, + "packages/repack/html-react-parser/node_modules/html-react-parser": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/html-react-parser/-/html-react-parser-6.0.1.tgz", + "integrity": "sha512-tIie2HSIk2Ct1tdupjd/DhBjskxN/NL5J4ncbUnk2smBr5UIfpPpitUo0imGfBM0BlOL7ac8RcqEwne1jXTcsQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/remarkablemark" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/html-react-parser" + } + ], + "dependencies": { + "domhandler": "6.0.1", + "html-dom-parser": "7.0.1", + "react-property": "2.0.2", + "style-to-js": "1.1.21" + }, + "peerDependencies": { + "@types/react": "0.14 || 15 || 16 || 17 || 18 || 19", + "react": "0.14 || 15 || 16 || 17 || 18 || 19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "packages/repack/html-react-parser/node_modules/htmlparser2": { + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-12.0.0.tgz", + "integrity": "sha512-Tz7u1i95/g2x2jz81+x0FBVhBhY5aRTvD3tXXdFaljuNdzDLJ8UGNRrTcj2cgQvAg3iW/h77Fz15nLW0L0CrZw==", + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^3.0.0", + "domhandler": "^6.0.0", + "domutils": "^4.0.2", + "entities": "^8.0.0" + }, + "engines": { + "node": ">=20.19.0" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk": { + "name": "@msinternal/microsoft-cognitiveservices-speech-sdk", + "version": "0.0.0-0", + "dependencies": { + "microsoft-cognitiveservices-speech-sdk": "1.49.0" + }, + "devDependencies": { + "esbuild": "^0.28.0" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/aix-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.0.tgz", + "integrity": "sha512-lhRUCeuOyJQURhTxl4WkpFTjIsbDayJHih5kZC1giwE+MhIzAb7mEsQMqMf18rHLsrb5qI1tafG20mLxEWcWlA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/android-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.0.tgz", + "integrity": "sha512-wqh0ByljabXLKHeWXYLqoJ5jKC4XBaw6Hk08OfMrCRd2nP2ZQ5eleDZC41XHyCNgktBGYMbqnrJKq/K/lzPMSQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/android-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.0.tgz", + "integrity": "sha512-+WzIXQOSaGs33tLEgYPYe/yQHf0WTU0X42Jca3y8NWMbUVhp7rUnw+vAsRC/QiDrdD31IszMrZy+qwPOPjd+rw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/android-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.0.tgz", + "integrity": "sha512-+VJggoaKhk2VNNqVL7f6S189UzShHC/mR9EE8rDdSkdpN0KflSwWY/gWjDrNxxisg8Fp1ZCD9jLMo4m0OUfeUA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/darwin-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.0.tgz", + "integrity": "sha512-0T+A9WZm+bZ84nZBtk1ckYsOvyA3x7e2Acj1KdVfV4/2tdG4fzUp91YHx+GArWLtwqp77pBXVCPn2We7Letr0Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/darwin-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.0.tgz", + "integrity": "sha512-fyzLm/DLDl/84OCfp2f/XQ4flmORsjU7VKt8HLjvIXChJoFFOIL6pLJPH4Yhd1n1gGFF9mPwtlN5Wf82DZs+LQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/freebsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.0.tgz", + "integrity": "sha512-l9GeW5UZBT9k9brBYI+0WDffcRxgHQD8ShN2Ur4xWq/NFzUKm3k5lsH4PdaRgb2w7mI9u61nr2gI2mLI27Nh3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/freebsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.0.tgz", + "integrity": "sha512-BXoQai/A0wPO6Es3yFJ7APCiKGc1tdAEOgeTNy3SsB491S3aHn4S4r3e976eUnPdU+NbdtmBuLncYir2tMU9Nw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/linux-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.0.tgz", + "integrity": "sha512-CjaaREJagqJp7iTaNQjjidaNbCKYcd4IDkzbwwxtSvjI7NZm79qiHc8HqciMddQ6CKvJT6aBd8lO9kN/ZudLlw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/linux-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.0.tgz", + "integrity": "sha512-RVyzfb3FWsGA55n6WY0MEIEPURL1FcbhFE6BffZEMEekfCzCIMtB5yyDcFnVbTnwk+CLAgTujmV/Lgvih56W+A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/linux-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.0.tgz", + "integrity": "sha512-KBnSTt1kxl9x70q+ydterVdl+Cn0H18ngRMRCEQfrbqdUuntQQ0LoMZv47uB97NljZFzY6HcfqEZ2SAyIUTQBQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/linux-loong64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.0.tgz", + "integrity": "sha512-zpSlUce1mnxzgBADvxKXX5sl8aYQHo2ezvMNI8I0lbblJtp8V4odlm3Yzlj7gPyt3T8ReksE6bK+pT3WD+aJRg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/linux-mips64el": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.0.tgz", + "integrity": "sha512-2jIfP6mmjkdmeTlsX/9vmdmhBmKADrWqN7zcdtHIeNSCH1SqIoNI63cYsjQR8J+wGa4Y5izRcSHSm8K3QWmk3w==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/linux-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.0.tgz", + "integrity": "sha512-bc0FE9wWeC0WBm49IQMPSPILRocGTQt3j5KPCA8os6VprfuJ7KD+5PzESSrJ6GmPIPJK965ZJHTUlSA6GNYEhg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/linux-riscv64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.0.tgz", + "integrity": "sha512-SQPZOwoTTT/HXFXQJG/vBX8sOFagGqvZyXcgLA3NhIqcBv1BJU1d46c0rGcrij2B56Z2rNiSLaZOYW5cUk7yLQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/linux-s390x": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.0.tgz", + "integrity": "sha512-SCfR0HN8CEEjnYnySJTd2cw0k9OHB/YFzt5zgJEwa+wL/T/raGWYMBqwDNAC6dqFKmJYZoQBRfHjgwLHGSrn3Q==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/linux-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.0.tgz", + "integrity": "sha512-us0dSb9iFxIi8srnpl931Nvs65it/Jd2a2K3qs7fz2WfGPHqzfzZTfec7oxZJRNPXPnNYZtanmRc4AL/JwVzHQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/netbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.0.tgz", + "integrity": "sha512-CR/RYotgtCKwtftMwJlUU7xCVNg3lMYZ0RzTmAHSfLCXw3NtZtNpswLEj/Kkf6kEL3Gw+BpOekRX0BYCtklhUw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/netbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.0.tgz", + "integrity": "sha512-nU1yhmYutL+fQ71Kxnhg8uEOdC0pwEW9entHykTgEbna2pw2dkbFSMeqjjyHZoCmt8SBkOSvV+yNmm94aUrrqw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/openbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.0.tgz", + "integrity": "sha512-cXb5vApOsRsxsEl4mcZ1XY3D4DzcoMxR/nnc4IyqYs0rTI8ZKmW6kyyg+11Z8yvgMfAEldKzP7AdP64HnSC/6g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/openbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.0.tgz", + "integrity": "sha512-8wZM2qqtv9UP3mzy7HiGYNH/zjTA355mpeuA+859TyR+e+Tc08IHYpLJuMsfpDJwoLo1ikIJI8jC3GFjnRClzA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.0.tgz", + "integrity": "sha512-FLGfyizszcef5C3YtoyQDACyg95+dndv79i2EekILBofh5wpCa1KuBqOWKrEHZg3zrL3t5ouE5jgr94vA+Wb2w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/sunos-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.0.tgz", + "integrity": "sha512-1ZgjUoEdHZZl/YlV76TSCz9Hqj9h9YmMGAgAPYd+q4SicWNX3G5GCyx9uhQWSLcbvPW8Ni7lj4gDa1T40akdlw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/win32-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.0.tgz", + "integrity": "sha512-Q9StnDmQ/enxnpxCCLSg0oo4+34B9TdXpuyPeTedN/6+iXBJ4J+zwfQI28u/Jl40nOYAxGoNi7mFP40RUtkmUA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/win32-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.0.tgz", + "integrity": "sha512-zF3ag/gfiCe6U2iczcRzSYJKH1DCI+ByzSENHlM2FcDbEeo5Zd2C86Aq0tKUYAJJ1obRP84ymxIAksZUcdztHA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/@esbuild/win32-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.0.tgz", + "integrity": "sha512-pEl1bO9mfAmIC+tW5btTmrKaujg3zGtUmWNdCw/xs70FBjwAL3o9OEKNHvNmnyylD6ubxUERiEhdsL0xBQ9efw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/microsoft-cognitiveservices-speech-sdk/node_modules/esbuild": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.0.tgz", + "integrity": "sha512-sNR9MHpXSUV/XB4zmsFKN+QgVG82Cc7+/aaxJ8Adi8hyOac+EXptIp45QBPaVyX3N70664wRbTcLTOemCAnyqw==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.28.0", + "@esbuild/android-arm": "0.28.0", + "@esbuild/android-arm64": "0.28.0", + "@esbuild/android-x64": "0.28.0", + "@esbuild/darwin-arm64": "0.28.0", + "@esbuild/darwin-x64": "0.28.0", + "@esbuild/freebsd-arm64": "0.28.0", + "@esbuild/freebsd-x64": "0.28.0", + "@esbuild/linux-arm": "0.28.0", + "@esbuild/linux-arm64": "0.28.0", + "@esbuild/linux-ia32": "0.28.0", + "@esbuild/linux-loong64": "0.28.0", + "@esbuild/linux-mips64el": "0.28.0", + "@esbuild/linux-ppc64": "0.28.0", + "@esbuild/linux-riscv64": "0.28.0", + "@esbuild/linux-s390x": "0.28.0", + "@esbuild/linux-x64": "0.28.0", + "@esbuild/netbsd-arm64": "0.28.0", + "@esbuild/netbsd-x64": "0.28.0", + "@esbuild/openbsd-arm64": "0.28.0", + "@esbuild/openbsd-x64": "0.28.0", + "@esbuild/openharmony-arm64": "0.28.0", + "@esbuild/sunos-x64": "0.28.0", + "@esbuild/win32-arm64": "0.28.0", + "@esbuild/win32-ia32": "0.28.0", + "@esbuild/win32-x64": "0.28.0" + } + }, + "packages/repack/object-assign": { + "name": "@msinternal/object-assign", + "version": "0.0.0-0" + }, + "packages/repack/react": { + "name": "@msinternal/react", + "version": "0.0.0-0", + "dependencies": { + "react": "18.3.1" + }, + "devDependencies": { + "@types/react": "^18.3.28", + "esbuild": "^0.28.0" + } + }, + "packages/repack/react-dom": { + "name": "@msinternal/react-dom", + "version": "0.0.0-0", + "dependencies": { + "react-dom": "18.3.1" + }, + "devDependencies": { + "@types/react-dom": "^18.3.7", + "esbuild": "^0.28.0" + } + }, + "packages/repack/react-dom@baseline": { + "name": "@msinternal/react-dom-baseline", + "version": "0.0.0-0", + "dependencies": { + "react-dom": "16.8.6" + }, + "devDependencies": { + "@msinternal/object-assign": "0.0.0-0", + "@types/react-dom": "^16.9.25", + "esbuild": "^0.28.0" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/aix-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.0.tgz", + "integrity": "sha512-lhRUCeuOyJQURhTxl4WkpFTjIsbDayJHih5kZC1giwE+MhIzAb7mEsQMqMf18rHLsrb5qI1tafG20mLxEWcWlA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/android-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.0.tgz", + "integrity": "sha512-wqh0ByljabXLKHeWXYLqoJ5jKC4XBaw6Hk08OfMrCRd2nP2ZQ5eleDZC41XHyCNgktBGYMbqnrJKq/K/lzPMSQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/android-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.0.tgz", + "integrity": "sha512-+WzIXQOSaGs33tLEgYPYe/yQHf0WTU0X42Jca3y8NWMbUVhp7rUnw+vAsRC/QiDrdD31IszMrZy+qwPOPjd+rw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/android-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.0.tgz", + "integrity": "sha512-+VJggoaKhk2VNNqVL7f6S189UzShHC/mR9EE8rDdSkdpN0KflSwWY/gWjDrNxxisg8Fp1ZCD9jLMo4m0OUfeUA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/darwin-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.0.tgz", + "integrity": "sha512-0T+A9WZm+bZ84nZBtk1ckYsOvyA3x7e2Acj1KdVfV4/2tdG4fzUp91YHx+GArWLtwqp77pBXVCPn2We7Letr0Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/darwin-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.0.tgz", + "integrity": "sha512-fyzLm/DLDl/84OCfp2f/XQ4flmORsjU7VKt8HLjvIXChJoFFOIL6pLJPH4Yhd1n1gGFF9mPwtlN5Wf82DZs+LQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/freebsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.0.tgz", + "integrity": "sha512-l9GeW5UZBT9k9brBYI+0WDffcRxgHQD8ShN2Ur4xWq/NFzUKm3k5lsH4PdaRgb2w7mI9u61nr2gI2mLI27Nh3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/freebsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.0.tgz", + "integrity": "sha512-BXoQai/A0wPO6Es3yFJ7APCiKGc1tdAEOgeTNy3SsB491S3aHn4S4r3e976eUnPdU+NbdtmBuLncYir2tMU9Nw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/linux-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.0.tgz", + "integrity": "sha512-CjaaREJagqJp7iTaNQjjidaNbCKYcd4IDkzbwwxtSvjI7NZm79qiHc8HqciMddQ6CKvJT6aBd8lO9kN/ZudLlw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/linux-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.0.tgz", + "integrity": "sha512-RVyzfb3FWsGA55n6WY0MEIEPURL1FcbhFE6BffZEMEekfCzCIMtB5yyDcFnVbTnwk+CLAgTujmV/Lgvih56W+A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/linux-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.0.tgz", + "integrity": "sha512-KBnSTt1kxl9x70q+ydterVdl+Cn0H18ngRMRCEQfrbqdUuntQQ0LoMZv47uB97NljZFzY6HcfqEZ2SAyIUTQBQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/linux-loong64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.0.tgz", + "integrity": "sha512-zpSlUce1mnxzgBADvxKXX5sl8aYQHo2ezvMNI8I0lbblJtp8V4odlm3Yzlj7gPyt3T8ReksE6bK+pT3WD+aJRg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/linux-mips64el": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.0.tgz", + "integrity": "sha512-2jIfP6mmjkdmeTlsX/9vmdmhBmKADrWqN7zcdtHIeNSCH1SqIoNI63cYsjQR8J+wGa4Y5izRcSHSm8K3QWmk3w==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/linux-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.0.tgz", + "integrity": "sha512-bc0FE9wWeC0WBm49IQMPSPILRocGTQt3j5KPCA8os6VprfuJ7KD+5PzESSrJ6GmPIPJK965ZJHTUlSA6GNYEhg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/linux-riscv64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.0.tgz", + "integrity": "sha512-SQPZOwoTTT/HXFXQJG/vBX8sOFagGqvZyXcgLA3NhIqcBv1BJU1d46c0rGcrij2B56Z2rNiSLaZOYW5cUk7yLQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/linux-s390x": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.0.tgz", + "integrity": "sha512-SCfR0HN8CEEjnYnySJTd2cw0k9OHB/YFzt5zgJEwa+wL/T/raGWYMBqwDNAC6dqFKmJYZoQBRfHjgwLHGSrn3Q==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/linux-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.0.tgz", + "integrity": "sha512-us0dSb9iFxIi8srnpl931Nvs65it/Jd2a2K3qs7fz2WfGPHqzfzZTfec7oxZJRNPXPnNYZtanmRc4AL/JwVzHQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/netbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.0.tgz", + "integrity": "sha512-CR/RYotgtCKwtftMwJlUU7xCVNg3lMYZ0RzTmAHSfLCXw3NtZtNpswLEj/Kkf6kEL3Gw+BpOekRX0BYCtklhUw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/netbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.0.tgz", + "integrity": "sha512-nU1yhmYutL+fQ71Kxnhg8uEOdC0pwEW9entHykTgEbna2pw2dkbFSMeqjjyHZoCmt8SBkOSvV+yNmm94aUrrqw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/openbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.0.tgz", + "integrity": "sha512-cXb5vApOsRsxsEl4mcZ1XY3D4DzcoMxR/nnc4IyqYs0rTI8ZKmW6kyyg+11Z8yvgMfAEldKzP7AdP64HnSC/6g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/openbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.0.tgz", + "integrity": "sha512-8wZM2qqtv9UP3mzy7HiGYNH/zjTA355mpeuA+859TyR+e+Tc08IHYpLJuMsfpDJwoLo1ikIJI8jC3GFjnRClzA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.0.tgz", + "integrity": "sha512-FLGfyizszcef5C3YtoyQDACyg95+dndv79i2EekILBofh5wpCa1KuBqOWKrEHZg3zrL3t5ouE5jgr94vA+Wb2w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/sunos-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.0.tgz", + "integrity": "sha512-1ZgjUoEdHZZl/YlV76TSCz9Hqj9h9YmMGAgAPYd+q4SicWNX3G5GCyx9uhQWSLcbvPW8Ni7lj4gDa1T40akdlw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/win32-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.0.tgz", + "integrity": "sha512-Q9StnDmQ/enxnpxCCLSg0oo4+34B9TdXpuyPeTedN/6+iXBJ4J+zwfQI28u/Jl40nOYAxGoNi7mFP40RUtkmUA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/win32-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.0.tgz", + "integrity": "sha512-zF3ag/gfiCe6U2iczcRzSYJKH1DCI+ByzSENHlM2FcDbEeo5Zd2C86Aq0tKUYAJJ1obRP84ymxIAksZUcdztHA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/@esbuild/win32-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.0.tgz", + "integrity": "sha512-pEl1bO9mfAmIC+tW5btTmrKaujg3zGtUmWNdCw/xs70FBjwAL3o9OEKNHvNmnyylD6ubxUERiEhdsL0xBQ9efw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@baseline/node_modules/esbuild": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.0.tgz", + "integrity": "sha512-sNR9MHpXSUV/XB4zmsFKN+QgVG82Cc7+/aaxJ8Adi8hyOac+EXptIp45QBPaVyX3N70664wRbTcLTOemCAnyqw==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.28.0", + "@esbuild/android-arm": "0.28.0", + "@esbuild/android-arm64": "0.28.0", + "@esbuild/android-x64": "0.28.0", + "@esbuild/darwin-arm64": "0.28.0", + "@esbuild/darwin-x64": "0.28.0", + "@esbuild/freebsd-arm64": "0.28.0", + "@esbuild/freebsd-x64": "0.28.0", + "@esbuild/linux-arm": "0.28.0", + "@esbuild/linux-arm64": "0.28.0", + "@esbuild/linux-ia32": "0.28.0", + "@esbuild/linux-loong64": "0.28.0", + "@esbuild/linux-mips64el": "0.28.0", + "@esbuild/linux-ppc64": "0.28.0", + "@esbuild/linux-riscv64": "0.28.0", + "@esbuild/linux-s390x": "0.28.0", + "@esbuild/linux-x64": "0.28.0", + "@esbuild/netbsd-arm64": "0.28.0", + "@esbuild/netbsd-x64": "0.28.0", + "@esbuild/openbsd-arm64": "0.28.0", + "@esbuild/openbsd-x64": "0.28.0", + "@esbuild/openharmony-arm64": "0.28.0", + "@esbuild/sunos-x64": "0.28.0", + "@esbuild/win32-arm64": "0.28.0", + "@esbuild/win32-ia32": "0.28.0", + "@esbuild/win32-x64": "0.28.0" + } + }, + "packages/repack/react-dom@umd": { + "name": "@msinternal/react-dom-umd", + "version": "0.0.0-0", + "devDependencies": { + "esbuild": "^0.28.0" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/aix-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.0.tgz", + "integrity": "sha512-lhRUCeuOyJQURhTxl4WkpFTjIsbDayJHih5kZC1giwE+MhIzAb7mEsQMqMf18rHLsrb5qI1tafG20mLxEWcWlA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/android-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.0.tgz", + "integrity": "sha512-wqh0ByljabXLKHeWXYLqoJ5jKC4XBaw6Hk08OfMrCRd2nP2ZQ5eleDZC41XHyCNgktBGYMbqnrJKq/K/lzPMSQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/android-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.0.tgz", + "integrity": "sha512-+WzIXQOSaGs33tLEgYPYe/yQHf0WTU0X42Jca3y8NWMbUVhp7rUnw+vAsRC/QiDrdD31IszMrZy+qwPOPjd+rw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/android-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.0.tgz", + "integrity": "sha512-+VJggoaKhk2VNNqVL7f6S189UzShHC/mR9EE8rDdSkdpN0KflSwWY/gWjDrNxxisg8Fp1ZCD9jLMo4m0OUfeUA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/darwin-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.0.tgz", + "integrity": "sha512-0T+A9WZm+bZ84nZBtk1ckYsOvyA3x7e2Acj1KdVfV4/2tdG4fzUp91YHx+GArWLtwqp77pBXVCPn2We7Letr0Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/darwin-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.0.tgz", + "integrity": "sha512-fyzLm/DLDl/84OCfp2f/XQ4flmORsjU7VKt8HLjvIXChJoFFOIL6pLJPH4Yhd1n1gGFF9mPwtlN5Wf82DZs+LQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/freebsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.0.tgz", + "integrity": "sha512-l9GeW5UZBT9k9brBYI+0WDffcRxgHQD8ShN2Ur4xWq/NFzUKm3k5lsH4PdaRgb2w7mI9u61nr2gI2mLI27Nh3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/freebsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.0.tgz", + "integrity": "sha512-BXoQai/A0wPO6Es3yFJ7APCiKGc1tdAEOgeTNy3SsB491S3aHn4S4r3e976eUnPdU+NbdtmBuLncYir2tMU9Nw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/linux-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.0.tgz", + "integrity": "sha512-CjaaREJagqJp7iTaNQjjidaNbCKYcd4IDkzbwwxtSvjI7NZm79qiHc8HqciMddQ6CKvJT6aBd8lO9kN/ZudLlw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/linux-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.0.tgz", + "integrity": "sha512-RVyzfb3FWsGA55n6WY0MEIEPURL1FcbhFE6BffZEMEekfCzCIMtB5yyDcFnVbTnwk+CLAgTujmV/Lgvih56W+A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/linux-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.0.tgz", + "integrity": "sha512-KBnSTt1kxl9x70q+ydterVdl+Cn0H18ngRMRCEQfrbqdUuntQQ0LoMZv47uB97NljZFzY6HcfqEZ2SAyIUTQBQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/linux-loong64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.0.tgz", + "integrity": "sha512-zpSlUce1mnxzgBADvxKXX5sl8aYQHo2ezvMNI8I0lbblJtp8V4odlm3Yzlj7gPyt3T8ReksE6bK+pT3WD+aJRg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/linux-mips64el": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.0.tgz", + "integrity": "sha512-2jIfP6mmjkdmeTlsX/9vmdmhBmKADrWqN7zcdtHIeNSCH1SqIoNI63cYsjQR8J+wGa4Y5izRcSHSm8K3QWmk3w==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/linux-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.0.tgz", + "integrity": "sha512-bc0FE9wWeC0WBm49IQMPSPILRocGTQt3j5KPCA8os6VprfuJ7KD+5PzESSrJ6GmPIPJK965ZJHTUlSA6GNYEhg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/linux-riscv64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.0.tgz", + "integrity": "sha512-SQPZOwoTTT/HXFXQJG/vBX8sOFagGqvZyXcgLA3NhIqcBv1BJU1d46c0rGcrij2B56Z2rNiSLaZOYW5cUk7yLQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/linux-s390x": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.0.tgz", + "integrity": "sha512-SCfR0HN8CEEjnYnySJTd2cw0k9OHB/YFzt5zgJEwa+wL/T/raGWYMBqwDNAC6dqFKmJYZoQBRfHjgwLHGSrn3Q==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/linux-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.0.tgz", + "integrity": "sha512-us0dSb9iFxIi8srnpl931Nvs65it/Jd2a2K3qs7fz2WfGPHqzfzZTfec7oxZJRNPXPnNYZtanmRc4AL/JwVzHQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/netbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.0.tgz", + "integrity": "sha512-CR/RYotgtCKwtftMwJlUU7xCVNg3lMYZ0RzTmAHSfLCXw3NtZtNpswLEj/Kkf6kEL3Gw+BpOekRX0BYCtklhUw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/netbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.0.tgz", + "integrity": "sha512-nU1yhmYutL+fQ71Kxnhg8uEOdC0pwEW9entHykTgEbna2pw2dkbFSMeqjjyHZoCmt8SBkOSvV+yNmm94aUrrqw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/openbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.0.tgz", + "integrity": "sha512-cXb5vApOsRsxsEl4mcZ1XY3D4DzcoMxR/nnc4IyqYs0rTI8ZKmW6kyyg+11Z8yvgMfAEldKzP7AdP64HnSC/6g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/openbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.0.tgz", + "integrity": "sha512-8wZM2qqtv9UP3mzy7HiGYNH/zjTA355mpeuA+859TyR+e+Tc08IHYpLJuMsfpDJwoLo1ikIJI8jC3GFjnRClzA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.0.tgz", + "integrity": "sha512-FLGfyizszcef5C3YtoyQDACyg95+dndv79i2EekILBofh5wpCa1KuBqOWKrEHZg3zrL3t5ouE5jgr94vA+Wb2w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/sunos-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.0.tgz", + "integrity": "sha512-1ZgjUoEdHZZl/YlV76TSCz9Hqj9h9YmMGAgAPYd+q4SicWNX3G5GCyx9uhQWSLcbvPW8Ni7lj4gDa1T40akdlw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/win32-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.0.tgz", + "integrity": "sha512-Q9StnDmQ/enxnpxCCLSg0oo4+34B9TdXpuyPeTedN/6+iXBJ4J+zwfQI28u/Jl40nOYAxGoNi7mFP40RUtkmUA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/win32-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.0.tgz", + "integrity": "sha512-zF3ag/gfiCe6U2iczcRzSYJKH1DCI+ByzSENHlM2FcDbEeo5Zd2C86Aq0tKUYAJJ1obRP84ymxIAksZUcdztHA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/@esbuild/win32-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.0.tgz", + "integrity": "sha512-pEl1bO9mfAmIC+tW5btTmrKaujg3zGtUmWNdCw/xs70FBjwAL3o9OEKNHvNmnyylD6ubxUERiEhdsL0xBQ9efw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom@umd/node_modules/esbuild": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.0.tgz", + "integrity": "sha512-sNR9MHpXSUV/XB4zmsFKN+QgVG82Cc7+/aaxJ8Adi8hyOac+EXptIp45QBPaVyX3N70664wRbTcLTOemCAnyqw==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.28.0", + "@esbuild/android-arm": "0.28.0", + "@esbuild/android-arm64": "0.28.0", + "@esbuild/android-x64": "0.28.0", + "@esbuild/darwin-arm64": "0.28.0", + "@esbuild/darwin-x64": "0.28.0", + "@esbuild/freebsd-arm64": "0.28.0", + "@esbuild/freebsd-x64": "0.28.0", + "@esbuild/linux-arm": "0.28.0", + "@esbuild/linux-arm64": "0.28.0", + "@esbuild/linux-ia32": "0.28.0", + "@esbuild/linux-loong64": "0.28.0", + "@esbuild/linux-mips64el": "0.28.0", + "@esbuild/linux-ppc64": "0.28.0", + "@esbuild/linux-riscv64": "0.28.0", + "@esbuild/linux-s390x": "0.28.0", + "@esbuild/linux-x64": "0.28.0", + "@esbuild/netbsd-arm64": "0.28.0", + "@esbuild/netbsd-x64": "0.28.0", + "@esbuild/openbsd-arm64": "0.28.0", + "@esbuild/openbsd-x64": "0.28.0", + "@esbuild/openharmony-arm64": "0.28.0", + "@esbuild/sunos-x64": "0.28.0", + "@esbuild/win32-arm64": "0.28.0", + "@esbuild/win32-ia32": "0.28.0", + "@esbuild/win32-x64": "0.28.0" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/aix-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.0.tgz", + "integrity": "sha512-lhRUCeuOyJQURhTxl4WkpFTjIsbDayJHih5kZC1giwE+MhIzAb7mEsQMqMf18rHLsrb5qI1tafG20mLxEWcWlA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/android-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.0.tgz", + "integrity": "sha512-wqh0ByljabXLKHeWXYLqoJ5jKC4XBaw6Hk08OfMrCRd2nP2ZQ5eleDZC41XHyCNgktBGYMbqnrJKq/K/lzPMSQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/android-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.0.tgz", + "integrity": "sha512-+WzIXQOSaGs33tLEgYPYe/yQHf0WTU0X42Jca3y8NWMbUVhp7rUnw+vAsRC/QiDrdD31IszMrZy+qwPOPjd+rw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/android-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.0.tgz", + "integrity": "sha512-+VJggoaKhk2VNNqVL7f6S189UzShHC/mR9EE8rDdSkdpN0KflSwWY/gWjDrNxxisg8Fp1ZCD9jLMo4m0OUfeUA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/darwin-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.0.tgz", + "integrity": "sha512-0T+A9WZm+bZ84nZBtk1ckYsOvyA3x7e2Acj1KdVfV4/2tdG4fzUp91YHx+GArWLtwqp77pBXVCPn2We7Letr0Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/darwin-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.0.tgz", + "integrity": "sha512-fyzLm/DLDl/84OCfp2f/XQ4flmORsjU7VKt8HLjvIXChJoFFOIL6pLJPH4Yhd1n1gGFF9mPwtlN5Wf82DZs+LQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/freebsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.0.tgz", + "integrity": "sha512-l9GeW5UZBT9k9brBYI+0WDffcRxgHQD8ShN2Ur4xWq/NFzUKm3k5lsH4PdaRgb2w7mI9u61nr2gI2mLI27Nh3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/freebsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.0.tgz", + "integrity": "sha512-BXoQai/A0wPO6Es3yFJ7APCiKGc1tdAEOgeTNy3SsB491S3aHn4S4r3e976eUnPdU+NbdtmBuLncYir2tMU9Nw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/linux-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.0.tgz", + "integrity": "sha512-CjaaREJagqJp7iTaNQjjidaNbCKYcd4IDkzbwwxtSvjI7NZm79qiHc8HqciMddQ6CKvJT6aBd8lO9kN/ZudLlw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/linux-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.0.tgz", + "integrity": "sha512-RVyzfb3FWsGA55n6WY0MEIEPURL1FcbhFE6BffZEMEekfCzCIMtB5yyDcFnVbTnwk+CLAgTujmV/Lgvih56W+A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/linux-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.0.tgz", + "integrity": "sha512-KBnSTt1kxl9x70q+ydterVdl+Cn0H18ngRMRCEQfrbqdUuntQQ0LoMZv47uB97NljZFzY6HcfqEZ2SAyIUTQBQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/linux-loong64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.0.tgz", + "integrity": "sha512-zpSlUce1mnxzgBADvxKXX5sl8aYQHo2ezvMNI8I0lbblJtp8V4odlm3Yzlj7gPyt3T8ReksE6bK+pT3WD+aJRg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/linux-mips64el": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.0.tgz", + "integrity": "sha512-2jIfP6mmjkdmeTlsX/9vmdmhBmKADrWqN7zcdtHIeNSCH1SqIoNI63cYsjQR8J+wGa4Y5izRcSHSm8K3QWmk3w==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/linux-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.0.tgz", + "integrity": "sha512-bc0FE9wWeC0WBm49IQMPSPILRocGTQt3j5KPCA8os6VprfuJ7KD+5PzESSrJ6GmPIPJK965ZJHTUlSA6GNYEhg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/linux-riscv64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.0.tgz", + "integrity": "sha512-SQPZOwoTTT/HXFXQJG/vBX8sOFagGqvZyXcgLA3NhIqcBv1BJU1d46c0rGcrij2B56Z2rNiSLaZOYW5cUk7yLQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/linux-s390x": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.0.tgz", + "integrity": "sha512-SCfR0HN8CEEjnYnySJTd2cw0k9OHB/YFzt5zgJEwa+wL/T/raGWYMBqwDNAC6dqFKmJYZoQBRfHjgwLHGSrn3Q==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/linux-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.0.tgz", + "integrity": "sha512-us0dSb9iFxIi8srnpl931Nvs65it/Jd2a2K3qs7fz2WfGPHqzfzZTfec7oxZJRNPXPnNYZtanmRc4AL/JwVzHQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/netbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.0.tgz", + "integrity": "sha512-CR/RYotgtCKwtftMwJlUU7xCVNg3lMYZ0RzTmAHSfLCXw3NtZtNpswLEj/Kkf6kEL3Gw+BpOekRX0BYCtklhUw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/netbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.0.tgz", + "integrity": "sha512-nU1yhmYutL+fQ71Kxnhg8uEOdC0pwEW9entHykTgEbna2pw2dkbFSMeqjjyHZoCmt8SBkOSvV+yNmm94aUrrqw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/openbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.0.tgz", + "integrity": "sha512-cXb5vApOsRsxsEl4mcZ1XY3D4DzcoMxR/nnc4IyqYs0rTI8ZKmW6kyyg+11Z8yvgMfAEldKzP7AdP64HnSC/6g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/openbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.0.tgz", + "integrity": "sha512-8wZM2qqtv9UP3mzy7HiGYNH/zjTA355mpeuA+859TyR+e+Tc08IHYpLJuMsfpDJwoLo1ikIJI8jC3GFjnRClzA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.0.tgz", + "integrity": "sha512-FLGfyizszcef5C3YtoyQDACyg95+dndv79i2EekILBofh5wpCa1KuBqOWKrEHZg3zrL3t5ouE5jgr94vA+Wb2w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/sunos-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.0.tgz", + "integrity": "sha512-1ZgjUoEdHZZl/YlV76TSCz9Hqj9h9YmMGAgAPYd+q4SicWNX3G5GCyx9uhQWSLcbvPW8Ni7lj4gDa1T40akdlw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/win32-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.0.tgz", + "integrity": "sha512-Q9StnDmQ/enxnpxCCLSg0oo4+34B9TdXpuyPeTedN/6+iXBJ4J+zwfQI28u/Jl40nOYAxGoNi7mFP40RUtkmUA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/win32-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.0.tgz", + "integrity": "sha512-zF3ag/gfiCe6U2iczcRzSYJKH1DCI+ByzSENHlM2FcDbEeo5Zd2C86Aq0tKUYAJJ1obRP84ymxIAksZUcdztHA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@esbuild/win32-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.0.tgz", + "integrity": "sha512-pEl1bO9mfAmIC+tW5btTmrKaujg3zGtUmWNdCw/xs70FBjwAL3o9OEKNHvNmnyylD6ubxUERiEhdsL0xBQ9efw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-dom/node_modules/@types/react": { + "version": "18.3.28", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.28.tgz", + "integrity": "sha512-z9VXpC7MWrhfWipitjNdgCauoMLRdIILQsAEV+ZesIzBq/oUlxk0m3ApZuMFCXdnS4U7KrI+l3WRUEGQ8K1QKw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/prop-types": "*", + "csstype": "^3.2.2" + } + }, + "packages/repack/react-dom/node_modules/@types/react-dom": { + "version": "18.3.7", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.7.tgz", + "integrity": "sha512-MEe3UeoENYVFXzoXEWsvcpg6ZvlrFNlOQ7EOsvhI3CfAXwzPfO8Qwuxd40nepsYKqyyVQnTdEfv68q91yLcKrQ==", + "dev": true, + "peerDependencies": { + "@types/react": "^18.0.0" + } + }, + "packages/repack/react-dom/node_modules/esbuild": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.0.tgz", + "integrity": "sha512-sNR9MHpXSUV/XB4zmsFKN+QgVG82Cc7+/aaxJ8Adi8hyOac+EXptIp45QBPaVyX3N70664wRbTcLTOemCAnyqw==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.28.0", + "@esbuild/android-arm": "0.28.0", + "@esbuild/android-arm64": "0.28.0", + "@esbuild/android-x64": "0.28.0", + "@esbuild/darwin-arm64": "0.28.0", + "@esbuild/darwin-x64": "0.28.0", + "@esbuild/freebsd-arm64": "0.28.0", + "@esbuild/freebsd-x64": "0.28.0", + "@esbuild/linux-arm": "0.28.0", + "@esbuild/linux-arm64": "0.28.0", + "@esbuild/linux-ia32": "0.28.0", + "@esbuild/linux-loong64": "0.28.0", + "@esbuild/linux-mips64el": "0.28.0", + "@esbuild/linux-ppc64": "0.28.0", + "@esbuild/linux-riscv64": "0.28.0", + "@esbuild/linux-s390x": "0.28.0", + "@esbuild/linux-x64": "0.28.0", + "@esbuild/netbsd-arm64": "0.28.0", + "@esbuild/netbsd-x64": "0.28.0", + "@esbuild/openbsd-arm64": "0.28.0", + "@esbuild/openbsd-x64": "0.28.0", + "@esbuild/openharmony-arm64": "0.28.0", + "@esbuild/sunos-x64": "0.28.0", + "@esbuild/win32-arm64": "0.28.0", + "@esbuild/win32-ia32": "0.28.0", + "@esbuild/win32-x64": "0.28.0" + } + }, + "packages/repack/react-dom/node_modules/react": { + "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==", + "peer": true, + "dependencies": { + "loose-envify": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "packages/repack/react-dom/node_modules/react-dom": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", + "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", + "dependencies": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.2" + }, + "peerDependencies": { + "react": "^18.3.1" + } + }, + "packages/repack/react-dom/node_modules/scheduler": { + "version": "0.23.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", + "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", + "dependencies": { + "loose-envify": "^1.1.0" + } + }, + "packages/repack/react-is": { + "name": "@msinternal/react-is", + "version": "0.0.0-0", + "dependencies": { + "react-is": "16.13.1" + }, + "devDependencies": { + "@types/react-is": "^16.7.5", + "esbuild": "^0.28.0" + } + }, + "packages/repack/react-is/node_modules/@esbuild/aix-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.0.tgz", + "integrity": "sha512-lhRUCeuOyJQURhTxl4WkpFTjIsbDayJHih5kZC1giwE+MhIzAb7mEsQMqMf18rHLsrb5qI1tafG20mLxEWcWlA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/android-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.0.tgz", + "integrity": "sha512-wqh0ByljabXLKHeWXYLqoJ5jKC4XBaw6Hk08OfMrCRd2nP2ZQ5eleDZC41XHyCNgktBGYMbqnrJKq/K/lzPMSQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/android-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.0.tgz", + "integrity": "sha512-+WzIXQOSaGs33tLEgYPYe/yQHf0WTU0X42Jca3y8NWMbUVhp7rUnw+vAsRC/QiDrdD31IszMrZy+qwPOPjd+rw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/android-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.0.tgz", + "integrity": "sha512-+VJggoaKhk2VNNqVL7f6S189UzShHC/mR9EE8rDdSkdpN0KflSwWY/gWjDrNxxisg8Fp1ZCD9jLMo4m0OUfeUA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/darwin-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.0.tgz", + "integrity": "sha512-0T+A9WZm+bZ84nZBtk1ckYsOvyA3x7e2Acj1KdVfV4/2tdG4fzUp91YHx+GArWLtwqp77pBXVCPn2We7Letr0Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/darwin-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.0.tgz", + "integrity": "sha512-fyzLm/DLDl/84OCfp2f/XQ4flmORsjU7VKt8HLjvIXChJoFFOIL6pLJPH4Yhd1n1gGFF9mPwtlN5Wf82DZs+LQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/freebsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.0.tgz", + "integrity": "sha512-l9GeW5UZBT9k9brBYI+0WDffcRxgHQD8ShN2Ur4xWq/NFzUKm3k5lsH4PdaRgb2w7mI9u61nr2gI2mLI27Nh3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/freebsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.0.tgz", + "integrity": "sha512-BXoQai/A0wPO6Es3yFJ7APCiKGc1tdAEOgeTNy3SsB491S3aHn4S4r3e976eUnPdU+NbdtmBuLncYir2tMU9Nw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/linux-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.0.tgz", + "integrity": "sha512-CjaaREJagqJp7iTaNQjjidaNbCKYcd4IDkzbwwxtSvjI7NZm79qiHc8HqciMddQ6CKvJT6aBd8lO9kN/ZudLlw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/linux-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.0.tgz", + "integrity": "sha512-RVyzfb3FWsGA55n6WY0MEIEPURL1FcbhFE6BffZEMEekfCzCIMtB5yyDcFnVbTnwk+CLAgTujmV/Lgvih56W+A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/linux-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.0.tgz", + "integrity": "sha512-KBnSTt1kxl9x70q+ydterVdl+Cn0H18ngRMRCEQfrbqdUuntQQ0LoMZv47uB97NljZFzY6HcfqEZ2SAyIUTQBQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/linux-loong64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.0.tgz", + "integrity": "sha512-zpSlUce1mnxzgBADvxKXX5sl8aYQHo2ezvMNI8I0lbblJtp8V4odlm3Yzlj7gPyt3T8ReksE6bK+pT3WD+aJRg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/linux-mips64el": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.0.tgz", + "integrity": "sha512-2jIfP6mmjkdmeTlsX/9vmdmhBmKADrWqN7zcdtHIeNSCH1SqIoNI63cYsjQR8J+wGa4Y5izRcSHSm8K3QWmk3w==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/linux-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.0.tgz", + "integrity": "sha512-bc0FE9wWeC0WBm49IQMPSPILRocGTQt3j5KPCA8os6VprfuJ7KD+5PzESSrJ6GmPIPJK965ZJHTUlSA6GNYEhg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/linux-riscv64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.0.tgz", + "integrity": "sha512-SQPZOwoTTT/HXFXQJG/vBX8sOFagGqvZyXcgLA3NhIqcBv1BJU1d46c0rGcrij2B56Z2rNiSLaZOYW5cUk7yLQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/linux-s390x": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.0.tgz", + "integrity": "sha512-SCfR0HN8CEEjnYnySJTd2cw0k9OHB/YFzt5zgJEwa+wL/T/raGWYMBqwDNAC6dqFKmJYZoQBRfHjgwLHGSrn3Q==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/linux-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.0.tgz", + "integrity": "sha512-us0dSb9iFxIi8srnpl931Nvs65it/Jd2a2K3qs7fz2WfGPHqzfzZTfec7oxZJRNPXPnNYZtanmRc4AL/JwVzHQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/netbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.0.tgz", + "integrity": "sha512-CR/RYotgtCKwtftMwJlUU7xCVNg3lMYZ0RzTmAHSfLCXw3NtZtNpswLEj/Kkf6kEL3Gw+BpOekRX0BYCtklhUw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/netbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.0.tgz", + "integrity": "sha512-nU1yhmYutL+fQ71Kxnhg8uEOdC0pwEW9entHykTgEbna2pw2dkbFSMeqjjyHZoCmt8SBkOSvV+yNmm94aUrrqw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/openbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.0.tgz", + "integrity": "sha512-cXb5vApOsRsxsEl4mcZ1XY3D4DzcoMxR/nnc4IyqYs0rTI8ZKmW6kyyg+11Z8yvgMfAEldKzP7AdP64HnSC/6g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/openbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.0.tgz", + "integrity": "sha512-8wZM2qqtv9UP3mzy7HiGYNH/zjTA355mpeuA+859TyR+e+Tc08IHYpLJuMsfpDJwoLo1ikIJI8jC3GFjnRClzA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.0.tgz", + "integrity": "sha512-FLGfyizszcef5C3YtoyQDACyg95+dndv79i2EekILBofh5wpCa1KuBqOWKrEHZg3zrL3t5ouE5jgr94vA+Wb2w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/sunos-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.0.tgz", + "integrity": "sha512-1ZgjUoEdHZZl/YlV76TSCz9Hqj9h9YmMGAgAPYd+q4SicWNX3G5GCyx9uhQWSLcbvPW8Ni7lj4gDa1T40akdlw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/win32-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.0.tgz", + "integrity": "sha512-Q9StnDmQ/enxnpxCCLSg0oo4+34B9TdXpuyPeTedN/6+iXBJ4J+zwfQI28u/Jl40nOYAxGoNi7mFP40RUtkmUA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/win32-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.0.tgz", + "integrity": "sha512-zF3ag/gfiCe6U2iczcRzSYJKH1DCI+ByzSENHlM2FcDbEeo5Zd2C86Aq0tKUYAJJ1obRP84ymxIAksZUcdztHA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/@esbuild/win32-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.0.tgz", + "integrity": "sha512-pEl1bO9mfAmIC+tW5btTmrKaujg3zGtUmWNdCw/xs70FBjwAL3o9OEKNHvNmnyylD6ubxUERiEhdsL0xBQ9efw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react-is/node_modules/esbuild": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.0.tgz", + "integrity": "sha512-sNR9MHpXSUV/XB4zmsFKN+QgVG82Cc7+/aaxJ8Adi8hyOac+EXptIp45QBPaVyX3N70664wRbTcLTOemCAnyqw==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.28.0", + "@esbuild/android-arm": "0.28.0", + "@esbuild/android-arm64": "0.28.0", + "@esbuild/android-x64": "0.28.0", + "@esbuild/darwin-arm64": "0.28.0", + "@esbuild/darwin-x64": "0.28.0", + "@esbuild/freebsd-arm64": "0.28.0", + "@esbuild/freebsd-x64": "0.28.0", + "@esbuild/linux-arm": "0.28.0", + "@esbuild/linux-arm64": "0.28.0", + "@esbuild/linux-ia32": "0.28.0", + "@esbuild/linux-loong64": "0.28.0", + "@esbuild/linux-mips64el": "0.28.0", + "@esbuild/linux-ppc64": "0.28.0", + "@esbuild/linux-riscv64": "0.28.0", + "@esbuild/linux-s390x": "0.28.0", + "@esbuild/linux-x64": "0.28.0", + "@esbuild/netbsd-arm64": "0.28.0", + "@esbuild/netbsd-x64": "0.28.0", + "@esbuild/openbsd-arm64": "0.28.0", + "@esbuild/openbsd-x64": "0.28.0", + "@esbuild/openharmony-arm64": "0.28.0", + "@esbuild/sunos-x64": "0.28.0", + "@esbuild/win32-arm64": "0.28.0", + "@esbuild/win32-ia32": "0.28.0", + "@esbuild/win32-x64": "0.28.0" + } + }, + "packages/repack/react-is/node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + }, + "packages/repack/react@baseline": { + "name": "@msinternal/react-baseline", + "version": "0.0.0-0", + "dependencies": { + "react": "16.8.6" + }, + "devDependencies": { + "@msinternal/object-assign": "0.0.0-0", + "@types/react": "^16.14.69", + "esbuild": "^0.28.0" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/aix-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.0.tgz", + "integrity": "sha512-lhRUCeuOyJQURhTxl4WkpFTjIsbDayJHih5kZC1giwE+MhIzAb7mEsQMqMf18rHLsrb5qI1tafG20mLxEWcWlA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/android-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.0.tgz", + "integrity": "sha512-wqh0ByljabXLKHeWXYLqoJ5jKC4XBaw6Hk08OfMrCRd2nP2ZQ5eleDZC41XHyCNgktBGYMbqnrJKq/K/lzPMSQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/android-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.0.tgz", + "integrity": "sha512-+WzIXQOSaGs33tLEgYPYe/yQHf0WTU0X42Jca3y8NWMbUVhp7rUnw+vAsRC/QiDrdD31IszMrZy+qwPOPjd+rw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/android-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.0.tgz", + "integrity": "sha512-+VJggoaKhk2VNNqVL7f6S189UzShHC/mR9EE8rDdSkdpN0KflSwWY/gWjDrNxxisg8Fp1ZCD9jLMo4m0OUfeUA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/darwin-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.0.tgz", + "integrity": "sha512-0T+A9WZm+bZ84nZBtk1ckYsOvyA3x7e2Acj1KdVfV4/2tdG4fzUp91YHx+GArWLtwqp77pBXVCPn2We7Letr0Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/darwin-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.0.tgz", + "integrity": "sha512-fyzLm/DLDl/84OCfp2f/XQ4flmORsjU7VKt8HLjvIXChJoFFOIL6pLJPH4Yhd1n1gGFF9mPwtlN5Wf82DZs+LQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/freebsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.0.tgz", + "integrity": "sha512-l9GeW5UZBT9k9brBYI+0WDffcRxgHQD8ShN2Ur4xWq/NFzUKm3k5lsH4PdaRgb2w7mI9u61nr2gI2mLI27Nh3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/freebsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.0.tgz", + "integrity": "sha512-BXoQai/A0wPO6Es3yFJ7APCiKGc1tdAEOgeTNy3SsB491S3aHn4S4r3e976eUnPdU+NbdtmBuLncYir2tMU9Nw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/linux-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.0.tgz", + "integrity": "sha512-CjaaREJagqJp7iTaNQjjidaNbCKYcd4IDkzbwwxtSvjI7NZm79qiHc8HqciMddQ6CKvJT6aBd8lO9kN/ZudLlw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/linux-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.0.tgz", + "integrity": "sha512-RVyzfb3FWsGA55n6WY0MEIEPURL1FcbhFE6BffZEMEekfCzCIMtB5yyDcFnVbTnwk+CLAgTujmV/Lgvih56W+A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/linux-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.0.tgz", + "integrity": "sha512-KBnSTt1kxl9x70q+ydterVdl+Cn0H18ngRMRCEQfrbqdUuntQQ0LoMZv47uB97NljZFzY6HcfqEZ2SAyIUTQBQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/linux-loong64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.0.tgz", + "integrity": "sha512-zpSlUce1mnxzgBADvxKXX5sl8aYQHo2ezvMNI8I0lbblJtp8V4odlm3Yzlj7gPyt3T8ReksE6bK+pT3WD+aJRg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/linux-mips64el": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.0.tgz", + "integrity": "sha512-2jIfP6mmjkdmeTlsX/9vmdmhBmKADrWqN7zcdtHIeNSCH1SqIoNI63cYsjQR8J+wGa4Y5izRcSHSm8K3QWmk3w==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/linux-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.0.tgz", + "integrity": "sha512-bc0FE9wWeC0WBm49IQMPSPILRocGTQt3j5KPCA8os6VprfuJ7KD+5PzESSrJ6GmPIPJK965ZJHTUlSA6GNYEhg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/linux-riscv64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.0.tgz", + "integrity": "sha512-SQPZOwoTTT/HXFXQJG/vBX8sOFagGqvZyXcgLA3NhIqcBv1BJU1d46c0rGcrij2B56Z2rNiSLaZOYW5cUk7yLQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/linux-s390x": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.0.tgz", + "integrity": "sha512-SCfR0HN8CEEjnYnySJTd2cw0k9OHB/YFzt5zgJEwa+wL/T/raGWYMBqwDNAC6dqFKmJYZoQBRfHjgwLHGSrn3Q==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/linux-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.0.tgz", + "integrity": "sha512-us0dSb9iFxIi8srnpl931Nvs65it/Jd2a2K3qs7fz2WfGPHqzfzZTfec7oxZJRNPXPnNYZtanmRc4AL/JwVzHQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/netbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.0.tgz", + "integrity": "sha512-CR/RYotgtCKwtftMwJlUU7xCVNg3lMYZ0RzTmAHSfLCXw3NtZtNpswLEj/Kkf6kEL3Gw+BpOekRX0BYCtklhUw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/netbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.0.tgz", + "integrity": "sha512-nU1yhmYutL+fQ71Kxnhg8uEOdC0pwEW9entHykTgEbna2pw2dkbFSMeqjjyHZoCmt8SBkOSvV+yNmm94aUrrqw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/openbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.0.tgz", + "integrity": "sha512-cXb5vApOsRsxsEl4mcZ1XY3D4DzcoMxR/nnc4IyqYs0rTI8ZKmW6kyyg+11Z8yvgMfAEldKzP7AdP64HnSC/6g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/openbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.0.tgz", + "integrity": "sha512-8wZM2qqtv9UP3mzy7HiGYNH/zjTA355mpeuA+859TyR+e+Tc08IHYpLJuMsfpDJwoLo1ikIJI8jC3GFjnRClzA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.0.tgz", + "integrity": "sha512-FLGfyizszcef5C3YtoyQDACyg95+dndv79i2EekILBofh5wpCa1KuBqOWKrEHZg3zrL3t5ouE5jgr94vA+Wb2w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/sunos-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.0.tgz", + "integrity": "sha512-1ZgjUoEdHZZl/YlV76TSCz9Hqj9h9YmMGAgAPYd+q4SicWNX3G5GCyx9uhQWSLcbvPW8Ni7lj4gDa1T40akdlw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/win32-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.0.tgz", + "integrity": "sha512-Q9StnDmQ/enxnpxCCLSg0oo4+34B9TdXpuyPeTedN/6+iXBJ4J+zwfQI28u/Jl40nOYAxGoNi7mFP40RUtkmUA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/win32-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.0.tgz", + "integrity": "sha512-zF3ag/gfiCe6U2iczcRzSYJKH1DCI+ByzSENHlM2FcDbEeo5Zd2C86Aq0tKUYAJJ1obRP84ymxIAksZUcdztHA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/@esbuild/win32-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.0.tgz", + "integrity": "sha512-pEl1bO9mfAmIC+tW5btTmrKaujg3zGtUmWNdCw/xs70FBjwAL3o9OEKNHvNmnyylD6ubxUERiEhdsL0xBQ9efw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@baseline/node_modules/esbuild": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.0.tgz", + "integrity": "sha512-sNR9MHpXSUV/XB4zmsFKN+QgVG82Cc7+/aaxJ8Adi8hyOac+EXptIp45QBPaVyX3N70664wRbTcLTOemCAnyqw==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.28.0", + "@esbuild/android-arm": "0.28.0", + "@esbuild/android-arm64": "0.28.0", + "@esbuild/android-x64": "0.28.0", + "@esbuild/darwin-arm64": "0.28.0", + "@esbuild/darwin-x64": "0.28.0", + "@esbuild/freebsd-arm64": "0.28.0", + "@esbuild/freebsd-x64": "0.28.0", + "@esbuild/linux-arm": "0.28.0", + "@esbuild/linux-arm64": "0.28.0", + "@esbuild/linux-ia32": "0.28.0", + "@esbuild/linux-loong64": "0.28.0", + "@esbuild/linux-mips64el": "0.28.0", + "@esbuild/linux-ppc64": "0.28.0", + "@esbuild/linux-riscv64": "0.28.0", + "@esbuild/linux-s390x": "0.28.0", + "@esbuild/linux-x64": "0.28.0", + "@esbuild/netbsd-arm64": "0.28.0", + "@esbuild/netbsd-x64": "0.28.0", + "@esbuild/openbsd-arm64": "0.28.0", + "@esbuild/openbsd-x64": "0.28.0", + "@esbuild/openharmony-arm64": "0.28.0", + "@esbuild/sunos-x64": "0.28.0", + "@esbuild/win32-arm64": "0.28.0", + "@esbuild/win32-ia32": "0.28.0", + "@esbuild/win32-x64": "0.28.0" + } + }, + "packages/repack/react@umd": { + "name": "@msinternal/react-umd", + "version": "0.0.0-0", + "devDependencies": { + "esbuild": "^0.28.0" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/aix-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.0.tgz", + "integrity": "sha512-lhRUCeuOyJQURhTxl4WkpFTjIsbDayJHih5kZC1giwE+MhIzAb7mEsQMqMf18rHLsrb5qI1tafG20mLxEWcWlA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/android-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.0.tgz", + "integrity": "sha512-wqh0ByljabXLKHeWXYLqoJ5jKC4XBaw6Hk08OfMrCRd2nP2ZQ5eleDZC41XHyCNgktBGYMbqnrJKq/K/lzPMSQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/android-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.0.tgz", + "integrity": "sha512-+WzIXQOSaGs33tLEgYPYe/yQHf0WTU0X42Jca3y8NWMbUVhp7rUnw+vAsRC/QiDrdD31IszMrZy+qwPOPjd+rw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/android-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.0.tgz", + "integrity": "sha512-+VJggoaKhk2VNNqVL7f6S189UzShHC/mR9EE8rDdSkdpN0KflSwWY/gWjDrNxxisg8Fp1ZCD9jLMo4m0OUfeUA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/darwin-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.0.tgz", + "integrity": "sha512-0T+A9WZm+bZ84nZBtk1ckYsOvyA3x7e2Acj1KdVfV4/2tdG4fzUp91YHx+GArWLtwqp77pBXVCPn2We7Letr0Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/darwin-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.0.tgz", + "integrity": "sha512-fyzLm/DLDl/84OCfp2f/XQ4flmORsjU7VKt8HLjvIXChJoFFOIL6pLJPH4Yhd1n1gGFF9mPwtlN5Wf82DZs+LQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/freebsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.0.tgz", + "integrity": "sha512-l9GeW5UZBT9k9brBYI+0WDffcRxgHQD8ShN2Ur4xWq/NFzUKm3k5lsH4PdaRgb2w7mI9u61nr2gI2mLI27Nh3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/freebsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.0.tgz", + "integrity": "sha512-BXoQai/A0wPO6Es3yFJ7APCiKGc1tdAEOgeTNy3SsB491S3aHn4S4r3e976eUnPdU+NbdtmBuLncYir2tMU9Nw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/linux-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.0.tgz", + "integrity": "sha512-CjaaREJagqJp7iTaNQjjidaNbCKYcd4IDkzbwwxtSvjI7NZm79qiHc8HqciMddQ6CKvJT6aBd8lO9kN/ZudLlw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/linux-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.0.tgz", + "integrity": "sha512-RVyzfb3FWsGA55n6WY0MEIEPURL1FcbhFE6BffZEMEekfCzCIMtB5yyDcFnVbTnwk+CLAgTujmV/Lgvih56W+A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/linux-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.0.tgz", + "integrity": "sha512-KBnSTt1kxl9x70q+ydterVdl+Cn0H18ngRMRCEQfrbqdUuntQQ0LoMZv47uB97NljZFzY6HcfqEZ2SAyIUTQBQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/linux-loong64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.0.tgz", + "integrity": "sha512-zpSlUce1mnxzgBADvxKXX5sl8aYQHo2ezvMNI8I0lbblJtp8V4odlm3Yzlj7gPyt3T8ReksE6bK+pT3WD+aJRg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/linux-mips64el": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.0.tgz", + "integrity": "sha512-2jIfP6mmjkdmeTlsX/9vmdmhBmKADrWqN7zcdtHIeNSCH1SqIoNI63cYsjQR8J+wGa4Y5izRcSHSm8K3QWmk3w==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/linux-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.0.tgz", + "integrity": "sha512-bc0FE9wWeC0WBm49IQMPSPILRocGTQt3j5KPCA8os6VprfuJ7KD+5PzESSrJ6GmPIPJK965ZJHTUlSA6GNYEhg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/linux-riscv64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.0.tgz", + "integrity": "sha512-SQPZOwoTTT/HXFXQJG/vBX8sOFagGqvZyXcgLA3NhIqcBv1BJU1d46c0rGcrij2B56Z2rNiSLaZOYW5cUk7yLQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/linux-s390x": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.0.tgz", + "integrity": "sha512-SCfR0HN8CEEjnYnySJTd2cw0k9OHB/YFzt5zgJEwa+wL/T/raGWYMBqwDNAC6dqFKmJYZoQBRfHjgwLHGSrn3Q==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/linux-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.0.tgz", + "integrity": "sha512-us0dSb9iFxIi8srnpl931Nvs65it/Jd2a2K3qs7fz2WfGPHqzfzZTfec7oxZJRNPXPnNYZtanmRc4AL/JwVzHQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/netbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.0.tgz", + "integrity": "sha512-CR/RYotgtCKwtftMwJlUU7xCVNg3lMYZ0RzTmAHSfLCXw3NtZtNpswLEj/Kkf6kEL3Gw+BpOekRX0BYCtklhUw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/netbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.0.tgz", + "integrity": "sha512-nU1yhmYutL+fQ71Kxnhg8uEOdC0pwEW9entHykTgEbna2pw2dkbFSMeqjjyHZoCmt8SBkOSvV+yNmm94aUrrqw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/openbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.0.tgz", + "integrity": "sha512-cXb5vApOsRsxsEl4mcZ1XY3D4DzcoMxR/nnc4IyqYs0rTI8ZKmW6kyyg+11Z8yvgMfAEldKzP7AdP64HnSC/6g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/openbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.0.tgz", + "integrity": "sha512-8wZM2qqtv9UP3mzy7HiGYNH/zjTA355mpeuA+859TyR+e+Tc08IHYpLJuMsfpDJwoLo1ikIJI8jC3GFjnRClzA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.0.tgz", + "integrity": "sha512-FLGfyizszcef5C3YtoyQDACyg95+dndv79i2EekILBofh5wpCa1KuBqOWKrEHZg3zrL3t5ouE5jgr94vA+Wb2w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/sunos-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.0.tgz", + "integrity": "sha512-1ZgjUoEdHZZl/YlV76TSCz9Hqj9h9YmMGAgAPYd+q4SicWNX3G5GCyx9uhQWSLcbvPW8Ni7lj4gDa1T40akdlw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/win32-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.0.tgz", + "integrity": "sha512-Q9StnDmQ/enxnpxCCLSg0oo4+34B9TdXpuyPeTedN/6+iXBJ4J+zwfQI28u/Jl40nOYAxGoNi7mFP40RUtkmUA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/win32-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.0.tgz", + "integrity": "sha512-zF3ag/gfiCe6U2iczcRzSYJKH1DCI+ByzSENHlM2FcDbEeo5Zd2C86Aq0tKUYAJJ1obRP84ymxIAksZUcdztHA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/@esbuild/win32-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.0.tgz", + "integrity": "sha512-pEl1bO9mfAmIC+tW5btTmrKaujg3zGtUmWNdCw/xs70FBjwAL3o9OEKNHvNmnyylD6ubxUERiEhdsL0xBQ9efw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react@umd/node_modules/esbuild": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.0.tgz", + "integrity": "sha512-sNR9MHpXSUV/XB4zmsFKN+QgVG82Cc7+/aaxJ8Adi8hyOac+EXptIp45QBPaVyX3N70664wRbTcLTOemCAnyqw==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.28.0", + "@esbuild/android-arm": "0.28.0", + "@esbuild/android-arm64": "0.28.0", + "@esbuild/android-x64": "0.28.0", + "@esbuild/darwin-arm64": "0.28.0", + "@esbuild/darwin-x64": "0.28.0", + "@esbuild/freebsd-arm64": "0.28.0", + "@esbuild/freebsd-x64": "0.28.0", + "@esbuild/linux-arm": "0.28.0", + "@esbuild/linux-arm64": "0.28.0", + "@esbuild/linux-ia32": "0.28.0", + "@esbuild/linux-loong64": "0.28.0", + "@esbuild/linux-mips64el": "0.28.0", + "@esbuild/linux-ppc64": "0.28.0", + "@esbuild/linux-riscv64": "0.28.0", + "@esbuild/linux-s390x": "0.28.0", + "@esbuild/linux-x64": "0.28.0", + "@esbuild/netbsd-arm64": "0.28.0", + "@esbuild/netbsd-x64": "0.28.0", + "@esbuild/openbsd-arm64": "0.28.0", + "@esbuild/openbsd-x64": "0.28.0", + "@esbuild/openharmony-arm64": "0.28.0", + "@esbuild/sunos-x64": "0.28.0", + "@esbuild/win32-arm64": "0.28.0", + "@esbuild/win32-ia32": "0.28.0", + "@esbuild/win32-x64": "0.28.0" + } + }, + "packages/repack/react/node_modules/@esbuild/aix-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.0.tgz", + "integrity": "sha512-lhRUCeuOyJQURhTxl4WkpFTjIsbDayJHih5kZC1giwE+MhIzAb7mEsQMqMf18rHLsrb5qI1tafG20mLxEWcWlA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/android-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.0.tgz", + "integrity": "sha512-wqh0ByljabXLKHeWXYLqoJ5jKC4XBaw6Hk08OfMrCRd2nP2ZQ5eleDZC41XHyCNgktBGYMbqnrJKq/K/lzPMSQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/android-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.0.tgz", + "integrity": "sha512-+WzIXQOSaGs33tLEgYPYe/yQHf0WTU0X42Jca3y8NWMbUVhp7rUnw+vAsRC/QiDrdD31IszMrZy+qwPOPjd+rw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/android-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.0.tgz", + "integrity": "sha512-+VJggoaKhk2VNNqVL7f6S189UzShHC/mR9EE8rDdSkdpN0KflSwWY/gWjDrNxxisg8Fp1ZCD9jLMo4m0OUfeUA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/darwin-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.0.tgz", + "integrity": "sha512-0T+A9WZm+bZ84nZBtk1ckYsOvyA3x7e2Acj1KdVfV4/2tdG4fzUp91YHx+GArWLtwqp77pBXVCPn2We7Letr0Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/darwin-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.0.tgz", + "integrity": "sha512-fyzLm/DLDl/84OCfp2f/XQ4flmORsjU7VKt8HLjvIXChJoFFOIL6pLJPH4Yhd1n1gGFF9mPwtlN5Wf82DZs+LQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/freebsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.0.tgz", + "integrity": "sha512-l9GeW5UZBT9k9brBYI+0WDffcRxgHQD8ShN2Ur4xWq/NFzUKm3k5lsH4PdaRgb2w7mI9u61nr2gI2mLI27Nh3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/freebsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.0.tgz", + "integrity": "sha512-BXoQai/A0wPO6Es3yFJ7APCiKGc1tdAEOgeTNy3SsB491S3aHn4S4r3e976eUnPdU+NbdtmBuLncYir2tMU9Nw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/linux-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.0.tgz", + "integrity": "sha512-CjaaREJagqJp7iTaNQjjidaNbCKYcd4IDkzbwwxtSvjI7NZm79qiHc8HqciMddQ6CKvJT6aBd8lO9kN/ZudLlw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/linux-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.0.tgz", + "integrity": "sha512-RVyzfb3FWsGA55n6WY0MEIEPURL1FcbhFE6BffZEMEekfCzCIMtB5yyDcFnVbTnwk+CLAgTujmV/Lgvih56W+A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/linux-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.0.tgz", + "integrity": "sha512-KBnSTt1kxl9x70q+ydterVdl+Cn0H18ngRMRCEQfrbqdUuntQQ0LoMZv47uB97NljZFzY6HcfqEZ2SAyIUTQBQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/linux-loong64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.0.tgz", + "integrity": "sha512-zpSlUce1mnxzgBADvxKXX5sl8aYQHo2ezvMNI8I0lbblJtp8V4odlm3Yzlj7gPyt3T8ReksE6bK+pT3WD+aJRg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/linux-mips64el": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.0.tgz", + "integrity": "sha512-2jIfP6mmjkdmeTlsX/9vmdmhBmKADrWqN7zcdtHIeNSCH1SqIoNI63cYsjQR8J+wGa4Y5izRcSHSm8K3QWmk3w==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/linux-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.0.tgz", + "integrity": "sha512-bc0FE9wWeC0WBm49IQMPSPILRocGTQt3j5KPCA8os6VprfuJ7KD+5PzESSrJ6GmPIPJK965ZJHTUlSA6GNYEhg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/linux-riscv64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.0.tgz", + "integrity": "sha512-SQPZOwoTTT/HXFXQJG/vBX8sOFagGqvZyXcgLA3NhIqcBv1BJU1d46c0rGcrij2B56Z2rNiSLaZOYW5cUk7yLQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/linux-s390x": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.0.tgz", + "integrity": "sha512-SCfR0HN8CEEjnYnySJTd2cw0k9OHB/YFzt5zgJEwa+wL/T/raGWYMBqwDNAC6dqFKmJYZoQBRfHjgwLHGSrn3Q==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/linux-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.0.tgz", + "integrity": "sha512-us0dSb9iFxIi8srnpl931Nvs65it/Jd2a2K3qs7fz2WfGPHqzfzZTfec7oxZJRNPXPnNYZtanmRc4AL/JwVzHQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/netbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.0.tgz", + "integrity": "sha512-CR/RYotgtCKwtftMwJlUU7xCVNg3lMYZ0RzTmAHSfLCXw3NtZtNpswLEj/Kkf6kEL3Gw+BpOekRX0BYCtklhUw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/netbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.0.tgz", + "integrity": "sha512-nU1yhmYutL+fQ71Kxnhg8uEOdC0pwEW9entHykTgEbna2pw2dkbFSMeqjjyHZoCmt8SBkOSvV+yNmm94aUrrqw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/openbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.0.tgz", + "integrity": "sha512-cXb5vApOsRsxsEl4mcZ1XY3D4DzcoMxR/nnc4IyqYs0rTI8ZKmW6kyyg+11Z8yvgMfAEldKzP7AdP64HnSC/6g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/openbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.0.tgz", + "integrity": "sha512-8wZM2qqtv9UP3mzy7HiGYNH/zjTA355mpeuA+859TyR+e+Tc08IHYpLJuMsfpDJwoLo1ikIJI8jC3GFjnRClzA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.0.tgz", + "integrity": "sha512-FLGfyizszcef5C3YtoyQDACyg95+dndv79i2EekILBofh5wpCa1KuBqOWKrEHZg3zrL3t5ouE5jgr94vA+Wb2w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/sunos-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.0.tgz", + "integrity": "sha512-1ZgjUoEdHZZl/YlV76TSCz9Hqj9h9YmMGAgAPYd+q4SicWNX3G5GCyx9uhQWSLcbvPW8Ni7lj4gDa1T40akdlw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/win32-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.0.tgz", + "integrity": "sha512-Q9StnDmQ/enxnpxCCLSg0oo4+34B9TdXpuyPeTedN/6+iXBJ4J+zwfQI28u/Jl40nOYAxGoNi7mFP40RUtkmUA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/win32-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.0.tgz", + "integrity": "sha512-zF3ag/gfiCe6U2iczcRzSYJKH1DCI+ByzSENHlM2FcDbEeo5Zd2C86Aq0tKUYAJJ1obRP84ymxIAksZUcdztHA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@esbuild/win32-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.0.tgz", + "integrity": "sha512-pEl1bO9mfAmIC+tW5btTmrKaujg3zGtUmWNdCw/xs70FBjwAL3o9OEKNHvNmnyylD6ubxUERiEhdsL0xBQ9efw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/repack/react/node_modules/@types/react": { + "version": "18.3.28", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.28.tgz", + "integrity": "sha512-z9VXpC7MWrhfWipitjNdgCauoMLRdIILQsAEV+ZesIzBq/oUlxk0m3ApZuMFCXdnS4U7KrI+l3WRUEGQ8K1QKw==", + "dev": true, + "dependencies": { + "@types/prop-types": "*", + "csstype": "^3.2.2" + } + }, + "packages/repack/react/node_modules/esbuild": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.0.tgz", + "integrity": "sha512-sNR9MHpXSUV/XB4zmsFKN+QgVG82Cc7+/aaxJ8Adi8hyOac+EXptIp45QBPaVyX3N70664wRbTcLTOemCAnyqw==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.28.0", + "@esbuild/android-arm": "0.28.0", + "@esbuild/android-arm64": "0.28.0", + "@esbuild/android-x64": "0.28.0", + "@esbuild/darwin-arm64": "0.28.0", + "@esbuild/darwin-x64": "0.28.0", + "@esbuild/freebsd-arm64": "0.28.0", + "@esbuild/freebsd-x64": "0.28.0", + "@esbuild/linux-arm": "0.28.0", + "@esbuild/linux-arm64": "0.28.0", + "@esbuild/linux-ia32": "0.28.0", + "@esbuild/linux-loong64": "0.28.0", + "@esbuild/linux-mips64el": "0.28.0", + "@esbuild/linux-ppc64": "0.28.0", + "@esbuild/linux-riscv64": "0.28.0", + "@esbuild/linux-s390x": "0.28.0", + "@esbuild/linux-x64": "0.28.0", + "@esbuild/netbsd-arm64": "0.28.0", + "@esbuild/netbsd-x64": "0.28.0", + "@esbuild/openbsd-arm64": "0.28.0", + "@esbuild/openbsd-x64": "0.28.0", + "@esbuild/openharmony-arm64": "0.28.0", + "@esbuild/sunos-x64": "0.28.0", + "@esbuild/win32-arm64": "0.28.0", + "@esbuild/win32-ia32": "0.28.0", + "@esbuild/win32-x64": "0.28.0" + } + }, + "packages/repack/react/node_modules/react": { + "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==", + "dependencies": { + "loose-envify": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "packages/styles": { + "name": "@msinternal/botframework-webchat-styles", + "version": "0.0.0-0", + "license": "MIT", + "devDependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5", + "@msinternal/botframework-webchat-base": "0.0.0-0", + "@msinternal/botframework-webchat-tsconfig": "0.0.0-0", + "@types/node": "^25.6.0", + "cross-env": "^10.1.0", + "esbuild": "^0.28.0", + "tsup": "^8.5.1", + "type-fest": "^5.6.0", + "typescript": "^6.0.3" + }, + "peerDependencies": { + "react": ">= 16.8.6" + } + }, + "packages/styles/node_modules/@esbuild/aix-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.0.tgz", + "integrity": "sha512-lhRUCeuOyJQURhTxl4WkpFTjIsbDayJHih5kZC1giwE+MhIzAb7mEsQMqMf18rHLsrb5qI1tafG20mLxEWcWlA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/android-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.0.tgz", + "integrity": "sha512-wqh0ByljabXLKHeWXYLqoJ5jKC4XBaw6Hk08OfMrCRd2nP2ZQ5eleDZC41XHyCNgktBGYMbqnrJKq/K/lzPMSQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/android-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.0.tgz", + "integrity": "sha512-+WzIXQOSaGs33tLEgYPYe/yQHf0WTU0X42Jca3y8NWMbUVhp7rUnw+vAsRC/QiDrdD31IszMrZy+qwPOPjd+rw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/android-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.0.tgz", + "integrity": "sha512-+VJggoaKhk2VNNqVL7f6S189UzShHC/mR9EE8rDdSkdpN0KflSwWY/gWjDrNxxisg8Fp1ZCD9jLMo4m0OUfeUA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/darwin-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.0.tgz", + "integrity": "sha512-0T+A9WZm+bZ84nZBtk1ckYsOvyA3x7e2Acj1KdVfV4/2tdG4fzUp91YHx+GArWLtwqp77pBXVCPn2We7Letr0Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/darwin-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.0.tgz", + "integrity": "sha512-fyzLm/DLDl/84OCfp2f/XQ4flmORsjU7VKt8HLjvIXChJoFFOIL6pLJPH4Yhd1n1gGFF9mPwtlN5Wf82DZs+LQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/freebsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.0.tgz", + "integrity": "sha512-l9GeW5UZBT9k9brBYI+0WDffcRxgHQD8ShN2Ur4xWq/NFzUKm3k5lsH4PdaRgb2w7mI9u61nr2gI2mLI27Nh3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/freebsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.0.tgz", + "integrity": "sha512-BXoQai/A0wPO6Es3yFJ7APCiKGc1tdAEOgeTNy3SsB491S3aHn4S4r3e976eUnPdU+NbdtmBuLncYir2tMU9Nw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/linux-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.0.tgz", + "integrity": "sha512-CjaaREJagqJp7iTaNQjjidaNbCKYcd4IDkzbwwxtSvjI7NZm79qiHc8HqciMddQ6CKvJT6aBd8lO9kN/ZudLlw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/linux-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.0.tgz", + "integrity": "sha512-RVyzfb3FWsGA55n6WY0MEIEPURL1FcbhFE6BffZEMEekfCzCIMtB5yyDcFnVbTnwk+CLAgTujmV/Lgvih56W+A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/linux-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.0.tgz", + "integrity": "sha512-KBnSTt1kxl9x70q+ydterVdl+Cn0H18ngRMRCEQfrbqdUuntQQ0LoMZv47uB97NljZFzY6HcfqEZ2SAyIUTQBQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/linux-loong64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.0.tgz", + "integrity": "sha512-zpSlUce1mnxzgBADvxKXX5sl8aYQHo2ezvMNI8I0lbblJtp8V4odlm3Yzlj7gPyt3T8ReksE6bK+pT3WD+aJRg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/linux-mips64el": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.0.tgz", + "integrity": "sha512-2jIfP6mmjkdmeTlsX/9vmdmhBmKADrWqN7zcdtHIeNSCH1SqIoNI63cYsjQR8J+wGa4Y5izRcSHSm8K3QWmk3w==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/linux-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.0.tgz", + "integrity": "sha512-bc0FE9wWeC0WBm49IQMPSPILRocGTQt3j5KPCA8os6VprfuJ7KD+5PzESSrJ6GmPIPJK965ZJHTUlSA6GNYEhg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/linux-riscv64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.0.tgz", + "integrity": "sha512-SQPZOwoTTT/HXFXQJG/vBX8sOFagGqvZyXcgLA3NhIqcBv1BJU1d46c0rGcrij2B56Z2rNiSLaZOYW5cUk7yLQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/linux-s390x": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.0.tgz", + "integrity": "sha512-SCfR0HN8CEEjnYnySJTd2cw0k9OHB/YFzt5zgJEwa+wL/T/raGWYMBqwDNAC6dqFKmJYZoQBRfHjgwLHGSrn3Q==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/linux-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.0.tgz", + "integrity": "sha512-us0dSb9iFxIi8srnpl931Nvs65it/Jd2a2K3qs7fz2WfGPHqzfzZTfec7oxZJRNPXPnNYZtanmRc4AL/JwVzHQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/netbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.0.tgz", + "integrity": "sha512-CR/RYotgtCKwtftMwJlUU7xCVNg3lMYZ0RzTmAHSfLCXw3NtZtNpswLEj/Kkf6kEL3Gw+BpOekRX0BYCtklhUw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/netbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.0.tgz", + "integrity": "sha512-nU1yhmYutL+fQ71Kxnhg8uEOdC0pwEW9entHykTgEbna2pw2dkbFSMeqjjyHZoCmt8SBkOSvV+yNmm94aUrrqw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/openbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.0.tgz", + "integrity": "sha512-cXb5vApOsRsxsEl4mcZ1XY3D4DzcoMxR/nnc4IyqYs0rTI8ZKmW6kyyg+11Z8yvgMfAEldKzP7AdP64HnSC/6g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/openbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.0.tgz", + "integrity": "sha512-8wZM2qqtv9UP3mzy7HiGYNH/zjTA355mpeuA+859TyR+e+Tc08IHYpLJuMsfpDJwoLo1ikIJI8jC3GFjnRClzA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.0.tgz", + "integrity": "sha512-FLGfyizszcef5C3YtoyQDACyg95+dndv79i2EekILBofh5wpCa1KuBqOWKrEHZg3zrL3t5ouE5jgr94vA+Wb2w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/sunos-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.0.tgz", + "integrity": "sha512-1ZgjUoEdHZZl/YlV76TSCz9Hqj9h9YmMGAgAPYd+q4SicWNX3G5GCyx9uhQWSLcbvPW8Ni7lj4gDa1T40akdlw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/win32-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.0.tgz", + "integrity": "sha512-Q9StnDmQ/enxnpxCCLSg0oo4+34B9TdXpuyPeTedN/6+iXBJ4J+zwfQI28u/Jl40nOYAxGoNi7mFP40RUtkmUA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/win32-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.0.tgz", + "integrity": "sha512-zF3ag/gfiCe6U2iczcRzSYJKH1DCI+ByzSENHlM2FcDbEeo5Zd2C86Aq0tKUYAJJ1obRP84ymxIAksZUcdztHA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/@esbuild/win32-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.0.tgz", + "integrity": "sha512-pEl1bO9mfAmIC+tW5btTmrKaujg3zGtUmWNdCw/xs70FBjwAL3o9OEKNHvNmnyylD6ubxUERiEhdsL0xBQ9efw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/styles/node_modules/esbuild": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.0.tgz", + "integrity": "sha512-sNR9MHpXSUV/XB4zmsFKN+QgVG82Cc7+/aaxJ8Adi8hyOac+EXptIp45QBPaVyX3N70664wRbTcLTOemCAnyqw==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.28.0", + "@esbuild/android-arm": "0.28.0", + "@esbuild/android-arm64": "0.28.0", + "@esbuild/android-x64": "0.28.0", + "@esbuild/darwin-arm64": "0.28.0", + "@esbuild/darwin-x64": "0.28.0", + "@esbuild/freebsd-arm64": "0.28.0", + "@esbuild/freebsd-x64": "0.28.0", + "@esbuild/linux-arm": "0.28.0", + "@esbuild/linux-arm64": "0.28.0", + "@esbuild/linux-ia32": "0.28.0", + "@esbuild/linux-loong64": "0.28.0", + "@esbuild/linux-mips64el": "0.28.0", + "@esbuild/linux-ppc64": "0.28.0", + "@esbuild/linux-riscv64": "0.28.0", + "@esbuild/linux-s390x": "0.28.0", + "@esbuild/linux-x64": "0.28.0", + "@esbuild/netbsd-arm64": "0.28.0", + "@esbuild/netbsd-x64": "0.28.0", + "@esbuild/openbsd-arm64": "0.28.0", + "@esbuild/openbsd-x64": "0.28.0", + "@esbuild/openharmony-arm64": "0.28.0", + "@esbuild/sunos-x64": "0.28.0", + "@esbuild/win32-arm64": "0.28.0", + "@esbuild/win32-ia32": "0.28.0", + "@esbuild/win32-x64": "0.28.0" + } + }, + "packages/styles/node_modules/type-fest": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.6.0.tgz", + "integrity": "sha512-8ZiHFm91orbSAe2PSAiSVBVko18pbhbiB3U9GglSzF/zCGkR+rxpHx6sEMCUm4kxY4LjDIUGgCfUMtwfZfjfUA==", + "dev": true, + "dependencies": { + "tagged-tag": "^1.0.0" + }, + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "packages/support/cldr-data": { + "name": "@msinternal/botframework-webchat-cldr-data", + "version": "0.0.0-0", + "dependencies": { + "@msinternal/botframework-webchat-cldr-data-downloader": "0.0.0-0", + "glob": "8.1.0", + "read-package-up": "12.0.0", + "read-pkg": "10.1.0" + }, + "engines": { + "node": ">= 12" + } + }, + "packages/support/cldr-data-downloader": { + "name": "@msinternal/botframework-webchat-cldr-data-downloader", + "version": "0.0.0-0", + "dependencies": { + "adm-zip": "0.5.17", + "nopt": "9.0.0", + "progress": "2.0.3", + "q": "1.5.1" + }, + "bin": { + "cldr-data-downloader": "bin/download.sh" + }, + "engines": { + "node": ">= 12" + } + }, + "packages/support/cldr-data/node_modules/glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "deprecated": "Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "packages/support/cldr-data/node_modules/minimatch": { + "version": "5.1.9", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.9.tgz", + "integrity": "sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==", + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "packages/test/dev-server": { + "name": "@msinternal/dev-server", + "version": "0.0.0-0", + "license": "MIT", + "devDependencies": { + "compression": "^1.8.1", + "express": "^5.2.1", + "serve-handler": "^6.1.7" + } + }, + "packages/test/harness": { + "name": "@msinternal/test-harness", + "version": "0.0.0-0", + "license": "MIT", + "dependencies": { + "abort-controller": "3.0.0", + "axe-core": "4.11.3", + "core-js": "3.49.0", + "core-js-pure": "3.49.0", + "event-target-shim": "6.0.2", + "expect": "25.5.0", + "lolex": "6.0.0", + "math-random": "2.0.1" + }, + "devDependencies": { + "concurrently": "^9.2.1", + "esbuild": "^0.28.0", + "express": "^5.2.1", + "global-agent": "^3.0.0", + "http-proxy-middleware": "^2.0.9", + "istanbul-lib-coverage": "^3.2.2", + "jest": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-image-snapshot": "^6.5.2", + "selenium-webdriver": "^4.43.0", + "serve": "^14.2.6", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "packages/test/harness/node_modules/@esbuild/aix-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.0.tgz", + "integrity": "sha512-lhRUCeuOyJQURhTxl4WkpFTjIsbDayJHih5kZC1giwE+MhIzAb7mEsQMqMf18rHLsrb5qI1tafG20mLxEWcWlA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/android-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.0.tgz", + "integrity": "sha512-wqh0ByljabXLKHeWXYLqoJ5jKC4XBaw6Hk08OfMrCRd2nP2ZQ5eleDZC41XHyCNgktBGYMbqnrJKq/K/lzPMSQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/android-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.0.tgz", + "integrity": "sha512-+WzIXQOSaGs33tLEgYPYe/yQHf0WTU0X42Jca3y8NWMbUVhp7rUnw+vAsRC/QiDrdD31IszMrZy+qwPOPjd+rw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/android-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.0.tgz", + "integrity": "sha512-+VJggoaKhk2VNNqVL7f6S189UzShHC/mR9EE8rDdSkdpN0KflSwWY/gWjDrNxxisg8Fp1ZCD9jLMo4m0OUfeUA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/darwin-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.0.tgz", + "integrity": "sha512-0T+A9WZm+bZ84nZBtk1ckYsOvyA3x7e2Acj1KdVfV4/2tdG4fzUp91YHx+GArWLtwqp77pBXVCPn2We7Letr0Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/darwin-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.0.tgz", + "integrity": "sha512-fyzLm/DLDl/84OCfp2f/XQ4flmORsjU7VKt8HLjvIXChJoFFOIL6pLJPH4Yhd1n1gGFF9mPwtlN5Wf82DZs+LQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/freebsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.0.tgz", + "integrity": "sha512-l9GeW5UZBT9k9brBYI+0WDffcRxgHQD8ShN2Ur4xWq/NFzUKm3k5lsH4PdaRgb2w7mI9u61nr2gI2mLI27Nh3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/freebsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.0.tgz", + "integrity": "sha512-BXoQai/A0wPO6Es3yFJ7APCiKGc1tdAEOgeTNy3SsB491S3aHn4S4r3e976eUnPdU+NbdtmBuLncYir2tMU9Nw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/linux-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.0.tgz", + "integrity": "sha512-CjaaREJagqJp7iTaNQjjidaNbCKYcd4IDkzbwwxtSvjI7NZm79qiHc8HqciMddQ6CKvJT6aBd8lO9kN/ZudLlw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/linux-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.0.tgz", + "integrity": "sha512-RVyzfb3FWsGA55n6WY0MEIEPURL1FcbhFE6BffZEMEekfCzCIMtB5yyDcFnVbTnwk+CLAgTujmV/Lgvih56W+A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/linux-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.0.tgz", + "integrity": "sha512-KBnSTt1kxl9x70q+ydterVdl+Cn0H18ngRMRCEQfrbqdUuntQQ0LoMZv47uB97NljZFzY6HcfqEZ2SAyIUTQBQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/linux-loong64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.0.tgz", + "integrity": "sha512-zpSlUce1mnxzgBADvxKXX5sl8aYQHo2ezvMNI8I0lbblJtp8V4odlm3Yzlj7gPyt3T8ReksE6bK+pT3WD+aJRg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/linux-mips64el": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.0.tgz", + "integrity": "sha512-2jIfP6mmjkdmeTlsX/9vmdmhBmKADrWqN7zcdtHIeNSCH1SqIoNI63cYsjQR8J+wGa4Y5izRcSHSm8K3QWmk3w==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/linux-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.0.tgz", + "integrity": "sha512-bc0FE9wWeC0WBm49IQMPSPILRocGTQt3j5KPCA8os6VprfuJ7KD+5PzESSrJ6GmPIPJK965ZJHTUlSA6GNYEhg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/linux-riscv64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.0.tgz", + "integrity": "sha512-SQPZOwoTTT/HXFXQJG/vBX8sOFagGqvZyXcgLA3NhIqcBv1BJU1d46c0rGcrij2B56Z2rNiSLaZOYW5cUk7yLQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/linux-s390x": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.0.tgz", + "integrity": "sha512-SCfR0HN8CEEjnYnySJTd2cw0k9OHB/YFzt5zgJEwa+wL/T/raGWYMBqwDNAC6dqFKmJYZoQBRfHjgwLHGSrn3Q==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/linux-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.0.tgz", + "integrity": "sha512-us0dSb9iFxIi8srnpl931Nvs65it/Jd2a2K3qs7fz2WfGPHqzfzZTfec7oxZJRNPXPnNYZtanmRc4AL/JwVzHQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/netbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.0.tgz", + "integrity": "sha512-CR/RYotgtCKwtftMwJlUU7xCVNg3lMYZ0RzTmAHSfLCXw3NtZtNpswLEj/Kkf6kEL3Gw+BpOekRX0BYCtklhUw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/netbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.0.tgz", + "integrity": "sha512-nU1yhmYutL+fQ71Kxnhg8uEOdC0pwEW9entHykTgEbna2pw2dkbFSMeqjjyHZoCmt8SBkOSvV+yNmm94aUrrqw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/openbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.0.tgz", + "integrity": "sha512-cXb5vApOsRsxsEl4mcZ1XY3D4DzcoMxR/nnc4IyqYs0rTI8ZKmW6kyyg+11Z8yvgMfAEldKzP7AdP64HnSC/6g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/openbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.0.tgz", + "integrity": "sha512-8wZM2qqtv9UP3mzy7HiGYNH/zjTA355mpeuA+859TyR+e+Tc08IHYpLJuMsfpDJwoLo1ikIJI8jC3GFjnRClzA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.0.tgz", + "integrity": "sha512-FLGfyizszcef5C3YtoyQDACyg95+dndv79i2EekILBofh5wpCa1KuBqOWKrEHZg3zrL3t5ouE5jgr94vA+Wb2w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/sunos-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.0.tgz", + "integrity": "sha512-1ZgjUoEdHZZl/YlV76TSCz9Hqj9h9YmMGAgAPYd+q4SicWNX3G5GCyx9uhQWSLcbvPW8Ni7lj4gDa1T40akdlw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/win32-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.0.tgz", + "integrity": "sha512-Q9StnDmQ/enxnpxCCLSg0oo4+34B9TdXpuyPeTedN/6+iXBJ4J+zwfQI28u/Jl40nOYAxGoNi7mFP40RUtkmUA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/win32-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.0.tgz", + "integrity": "sha512-zF3ag/gfiCe6U2iczcRzSYJKH1DCI+ByzSENHlM2FcDbEeo5Zd2C86Aq0tKUYAJJ1obRP84ymxIAksZUcdztHA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@esbuild/win32-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.0.tgz", + "integrity": "sha512-pEl1bO9mfAmIC+tW5btTmrKaujg3zGtUmWNdCw/xs70FBjwAL3o9OEKNHvNmnyylD6ubxUERiEhdsL0xBQ9efw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/harness/node_modules/@jest/types": { + "version": "25.5.0", + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^1.1.1", + "@types/yargs": "^15.0.0", + "chalk": "^3.0.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "packages/test/harness/node_modules/@types/istanbul-reports": { + "version": "1.1.2", + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-coverage": "*", + "@types/istanbul-lib-report": "*" } }, - "packages/repack/react-dom@umd": { - "name": "@msinternal/react-dom-umd", - "version": "0.0.0-0", - "devDependencies": { - "esbuild": "^0.27.3" + "packages/test/harness/node_modules/@types/stack-utils": { + "version": "1.0.1", + "license": "MIT" + }, + "packages/test/harness/node_modules/@types/yargs": { + "version": "15.0.20", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.20.tgz", + "integrity": "sha512-KIkX+/GgfFitlASYCGoSF+T4XRXhOubJLhkLVtSfsRTe9jWMmuM2g28zQ41BtPTG7TRBb2xHW+LCNVE9QR/vsg==", + "dependencies": { + "@types/yargs-parser": "*" } }, - "packages/repack/react-dom/node_modules/@types/react": { - "version": "18.3.28", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.28.tgz", - "integrity": "sha512-z9VXpC7MWrhfWipitjNdgCauoMLRdIILQsAEV+ZesIzBq/oUlxk0m3ApZuMFCXdnS4U7KrI+l3WRUEGQ8K1QKw==", - "dev": true, + "packages/test/harness/node_modules/chalk": { + "version": "3.0.0", "license": "MIT", - "peer": true, "dependencies": { - "@types/prop-types": "*", - "csstype": "^3.2.2" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" } }, - "packages/repack/react-dom/node_modules/@types/react-dom": { - "version": "18.3.7", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.7.tgz", - "integrity": "sha512-MEe3UeoENYVFXzoXEWsvcpg6ZvlrFNlOQ7EOsvhI3CfAXwzPfO8Qwuxd40nepsYKqyyVQnTdEfv68q91yLcKrQ==", - "dev": true, + "packages/test/harness/node_modules/diff-sequences": { + "version": "25.2.6", "license": "MIT", - "peerDependencies": { - "@types/react": "^18.0.0" + "engines": { + "node": ">= 8.3" } }, - "packages/repack/react-dom/node_modules/react": { - "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==", - "peer": true, - "dependencies": { - "loose-envify": "^1.1.0" + "packages/test/harness/node_modules/esbuild": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.0.tgz", + "integrity": "sha512-sNR9MHpXSUV/XB4zmsFKN+QgVG82Cc7+/aaxJ8Adi8hyOac+EXptIp45QBPaVyX3N70664wRbTcLTOemCAnyqw==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" }, "engines": { - "node": ">=0.10.0" + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.28.0", + "@esbuild/android-arm": "0.28.0", + "@esbuild/android-arm64": "0.28.0", + "@esbuild/android-x64": "0.28.0", + "@esbuild/darwin-arm64": "0.28.0", + "@esbuild/darwin-x64": "0.28.0", + "@esbuild/freebsd-arm64": "0.28.0", + "@esbuild/freebsd-x64": "0.28.0", + "@esbuild/linux-arm": "0.28.0", + "@esbuild/linux-arm64": "0.28.0", + "@esbuild/linux-ia32": "0.28.0", + "@esbuild/linux-loong64": "0.28.0", + "@esbuild/linux-mips64el": "0.28.0", + "@esbuild/linux-ppc64": "0.28.0", + "@esbuild/linux-riscv64": "0.28.0", + "@esbuild/linux-s390x": "0.28.0", + "@esbuild/linux-x64": "0.28.0", + "@esbuild/netbsd-arm64": "0.28.0", + "@esbuild/netbsd-x64": "0.28.0", + "@esbuild/openbsd-arm64": "0.28.0", + "@esbuild/openbsd-x64": "0.28.0", + "@esbuild/openharmony-arm64": "0.28.0", + "@esbuild/sunos-x64": "0.28.0", + "@esbuild/win32-arm64": "0.28.0", + "@esbuild/win32-ia32": "0.28.0", + "@esbuild/win32-x64": "0.28.0" } }, - "packages/repack/react-dom/node_modules/react-dom": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", - "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", + "packages/test/harness/node_modules/escape-string-regexp": { + "version": "2.0.0", "license": "MIT", - "dependencies": { - "loose-envify": "^1.1.0", - "scheduler": "^0.23.2" + "engines": { + "node": ">=8" + } + }, + "packages/test/harness/node_modules/event-target-shim": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-6.0.2.tgz", + "integrity": "sha512-8q3LsZjRezbFZ2PN+uP+Q7pnHUMmAOziU2vA2OwoFaKIXxlxl38IylhSSgUorWu/rf4er67w0ikBqjBFk/pomA==", + "engines": { + "node": ">=10.13.0" }, - "peerDependencies": { - "react": "^18.3.1" + "funding": { + "url": "https://github.com/sponsors/mysticatea" } }, - "packages/repack/react-dom/node_modules/scheduler": { - "version": "0.23.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", - "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", + "packages/test/harness/node_modules/expect": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-25.5.0.tgz", + "integrity": "sha512-w7KAXo0+6qqZZhovCaBVPSIqQp7/UTcx4M9uKt2m6pd2VB1voyC8JizLRqeEqud3AAVP02g+hbErDu5gu64tlA==", "dependencies": { - "loose-envify": "^1.1.0" + "@jest/types": "^25.5.0", + "ansi-styles": "^4.0.0", + "jest-get-type": "^25.2.6", + "jest-matcher-utils": "^25.5.0", + "jest-message-util": "^25.5.0", + "jest-regex-util": "^25.2.6" + }, + "engines": { + "node": ">= 8.3" } }, - "packages/repack/react-is": { - "name": "@msinternal/react-is", - "version": "0.0.0-0", + "packages/test/harness/node_modules/global-agent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-agent/-/global-agent-3.0.0.tgz", + "integrity": "sha512-PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q==", + "dev": true, "dependencies": { - "react-is": "16.13.1" + "boolean": "^3.0.1", + "es6-error": "^4.1.1", + "matcher": "^3.0.0", + "roarr": "^2.15.3", + "semver": "^7.3.2", + "serialize-error": "^7.0.1" }, - "devDependencies": { - "@types/react-is": "^16.7.5", - "esbuild": "^0.27.3" + "engines": { + "node": ">=10.0" } }, - "packages/repack/react-is/node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "license": "MIT" + "packages/test/harness/node_modules/has-flag": { + "version": "4.0.0", + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "packages/repack/react@baseline": { - "name": "@msinternal/react-baseline", - "version": "0.0.0-0", + "packages/test/harness/node_modules/jest-diff": { + "version": "25.5.0", + "license": "MIT", "dependencies": { - "react": "16.8.6" + "chalk": "^3.0.0", + "diff-sequences": "^25.2.6", + "jest-get-type": "^25.2.6", + "pretty-format": "^25.5.0" }, - "devDependencies": { - "@msinternal/object-assign": "0.0.0-0", - "@types/react": "^16.14.69", - "esbuild": "^0.27.3" + "engines": { + "node": ">= 8.3" } }, - "packages/repack/react@umd": { - "name": "@msinternal/react-umd", - "version": "0.0.0-0", - "devDependencies": { - "esbuild": "^0.27.3" + "packages/test/harness/node_modules/jest-get-type": { + "version": "25.2.6", + "license": "MIT", + "engines": { + "node": ">= 8.3" } }, - "packages/repack/react/node_modules/@types/react": { - "version": "18.3.28", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.28.tgz", - "integrity": "sha512-z9VXpC7MWrhfWipitjNdgCauoMLRdIILQsAEV+ZesIzBq/oUlxk0m3ApZuMFCXdnS4U7KrI+l3WRUEGQ8K1QKw==", - "dev": true, + "packages/test/harness/node_modules/jest-matcher-utils": { + "version": "25.5.0", "license": "MIT", "dependencies": { - "@types/prop-types": "*", - "csstype": "^3.2.2" + "chalk": "^3.0.0", + "jest-diff": "^25.5.0", + "jest-get-type": "^25.2.6", + "pretty-format": "^25.5.0" + }, + "engines": { + "node": ">= 8.3" } }, - "packages/repack/react/node_modules/react": { - "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==", + "packages/test/harness/node_modules/jest-message-util": { + "version": "25.5.0", "license": "MIT", "dependencies": { - "loose-envify": "^1.1.0" + "@babel/code-frame": "^7.0.0", + "@jest/types": "^25.5.0", + "@types/stack-utils": "^1.0.1", + "chalk": "^3.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "slash": "^3.0.0", + "stack-utils": "^1.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">= 8.3" } }, - "packages/styles": { - "name": "@msinternal/botframework-webchat-styles", - "version": "0.0.0-0", + "packages/test/harness/node_modules/jest-regex-util": { + "version": "25.2.6", "license": "MIT", - "devDependencies": { - "@jridgewell/sourcemap-codec": "^1.5.5", - "@msinternal/botframework-webchat-base": "0.0.0-0", - "@msinternal/botframework-webchat-tsconfig": "0.0.0-0", - "@types/node": "^25.3.3", - "cross-env": "^10.1.0", - "esbuild": "^0.27.3", - "tsup": "^8.5.1", - "type-fest": "^5.4.4", - "typescript": "^5.9.3" - }, - "peerDependencies": { - "react": ">= 16.8.6" + "engines": { + "node": ">= 8.3" } }, - "packages/styles/node_modules/type-fest": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.5.0.tgz", - "integrity": "sha512-PlBfpQwiUvGViBNX84Yxwjsdhd1TUlXr6zjX7eoirtCPIr08NAmxwa+fcYBTeRQxHo9YC9wwF3m9i700sHma8g==", + "packages/test/harness/node_modules/matcher": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-3.0.0.tgz", + "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==", "dev": true, "dependencies": { - "tagged-tag": "^1.0.0" + "escape-string-regexp": "^4.0.0" }, "engines": { - "node": ">=20" + "node": ">=10" + } + }, + "packages/test/harness/node_modules/matcher/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "packages/support/cldr-data": { - "name": "@msinternal/botframework-webchat-cldr-data", - "version": "0.0.0-0", + "packages/test/harness/node_modules/pretty-format": { + "version": "25.5.0", + "license": "MIT", "dependencies": { - "@msinternal/botframework-webchat-cldr-data-downloader": "0.0.0-0", - "glob": "8.1.0", - "read-package-up": "12.0.0", - "read-pkg": "10.0.0" + "@jest/types": "^25.5.0", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^16.12.0" }, "engines": { - "node": ">= 12" + "node": ">= 8.3" } }, - "packages/support/cldr-data-downloader": { - "name": "@msinternal/botframework-webchat-cldr-data-downloader", - "version": "0.0.0-0", - "dependencies": { - "adm-zip": "0.5.16", - "nopt": "9.0.0", - "progress": "2.0.3", - "q": "1.5.1" - }, + "packages/test/harness/node_modules/react-is": { + "version": "16.13.1", + "license": "MIT" + }, + "packages/test/harness/node_modules/semver": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", + "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", + "dev": true, "bin": { - "cldr-data-downloader": "bin/download.sh" + "semver": "bin/semver.js" }, "engines": { - "node": ">= 12" + "node": ">=10" } }, - "packages/support/cldr-data/node_modules/glob": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", - "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", - "deprecated": "Glob versions prior to v9 are no longer supported", + "packages/test/harness/node_modules/serialize-error": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", + "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==", + "dev": true, "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" + "type-fest": "^0.13.1" }, "engines": { - "node": ">=12" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/sponsors/sindresorhus" } }, - "packages/support/cldr-data/node_modules/minimatch": { - "version": "5.1.9", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.9.tgz", - "integrity": "sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==", - "license": "ISC", + "packages/test/harness/node_modules/slash": { + "version": "3.0.0", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "packages/test/harness/node_modules/stack-utils": { + "version": "1.0.5", + "license": "MIT", "dependencies": { - "brace-expansion": "^2.0.1" + "escape-string-regexp": "^2.0.0" }, "engines": { - "node": ">=10" + "node": ">=8" } }, - "packages/test/dev-server": { - "name": "@msinternal/dev-server", - "version": "0.0.0-0", + "packages/test/harness/node_modules/supports-color": { + "version": "7.2.0", "license": "MIT", - "devDependencies": { - "compression": "^1.8.1", - "express": "^5.2.1", - "serve-handler": "^6.1.7" + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "packages/test/harness": { - "name": "@msinternal/test-harness", + "packages/test/harness/node_modules/type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "packages/test/page-object": { + "name": "@msinternal/test-page-object", "version": "0.0.0-0", "license": "MIT", "dependencies": { - "abort-controller": "3.0.0", - "axe-core": "4.11.1", - "core-js": "3.48.0", - "core-js-pure": "3.48.0", + "base64-arraybuffer": "1.0.2", + "bent": "7.3.12", + "classnames": "2.5.1", + "core-js": "3.49.0", + "core-js-pure": "3.49.0", + "event-iterator": "2.0.0", "event-target-shim": "6.0.2", - "expect": "25.5.0", - "lolex": "6.0.0", - "math-random": "2.0.1" + "math-random": "2.0.1", + "microsoft-cognitiveservices-speech-sdk": "1.49.0", + "prop-types": "15.8.1", + "simple-update-in": "2.2.0" }, "devDependencies": { "concurrently": "^9.2.1", - "esbuild": "^0.27.3", - "express": "^5.2.1", - "global-agent": "^3.0.0", - "http-proxy-middleware": "^2.0.9", - "istanbul-lib-coverage": "^3.2.2", - "jest": "^29.7.0", - "jest-environment-node": "^29.7.0", - "jest-image-snapshot": "^6.5.1", - "selenium-webdriver": "^4.41.0", - "serve": "^14.2.6", - "strip-ansi": "^6.0.1" + "esbuild": "^0.28.0" }, "engines": { "node": ">= 14.0.0" } }, - "packages/test/harness/node_modules/@jest/types": { - "version": "25.5.0", - "license": "MIT", - "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - }, + "packages/test/page-object/node_modules/@esbuild/aix-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.0.tgz", + "integrity": "sha512-lhRUCeuOyJQURhTxl4WkpFTjIsbDayJHih5kZC1giwE+MhIzAb7mEsQMqMf18rHLsrb5qI1tafG20mLxEWcWlA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], "engines": { - "node": ">= 8.3" + "node": ">=18" } }, - "packages/test/harness/node_modules/@types/istanbul-reports": { - "version": "1.1.2", - "license": "MIT", - "dependencies": { - "@types/istanbul-lib-coverage": "*", - "@types/istanbul-lib-report": "*" + "packages/test/page-object/node_modules/@esbuild/android-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.0.tgz", + "integrity": "sha512-wqh0ByljabXLKHeWXYLqoJ5jKC4XBaw6Hk08OfMrCRd2nP2ZQ5eleDZC41XHyCNgktBGYMbqnrJKq/K/lzPMSQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" } }, - "packages/test/harness/node_modules/@types/stack-utils": { - "version": "1.0.1", - "license": "MIT" + "packages/test/page-object/node_modules/@esbuild/android-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.0.tgz", + "integrity": "sha512-+WzIXQOSaGs33tLEgYPYe/yQHf0WTU0X42Jca3y8NWMbUVhp7rUnw+vAsRC/QiDrdD31IszMrZy+qwPOPjd+rw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } }, - "packages/test/harness/node_modules/@types/yargs": { - "version": "15.0.20", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.20.tgz", - "integrity": "sha512-KIkX+/GgfFitlASYCGoSF+T4XRXhOubJLhkLVtSfsRTe9jWMmuM2g28zQ41BtPTG7TRBb2xHW+LCNVE9QR/vsg==", - "dependencies": { - "@types/yargs-parser": "*" + "packages/test/page-object/node_modules/@esbuild/android-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.0.tgz", + "integrity": "sha512-+VJggoaKhk2VNNqVL7f6S189UzShHC/mR9EE8rDdSkdpN0KflSwWY/gWjDrNxxisg8Fp1ZCD9jLMo4m0OUfeUA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" } }, - "packages/test/harness/node_modules/chalk": { - "version": "3.0.0", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, + "packages/test/page-object/node_modules/@esbuild/darwin-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.0.tgz", + "integrity": "sha512-0T+A9WZm+bZ84nZBtk1ckYsOvyA3x7e2Acj1KdVfV4/2tdG4fzUp91YHx+GArWLtwqp77pBXVCPn2We7Letr0Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">=8" + "node": ">=18" } }, - "packages/test/harness/node_modules/core-js-pure": { - "version": "3.48.0", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.48.0.tgz", - "integrity": "sha512-1slJgk89tWC51HQ1AEqG+s2VuwpTRr8ocu4n20QUcH1v9lAN0RXen0Q0AABa/DK1I7RrNWLucplOHMx8hfTGTw==", - "hasInstallScript": true, - "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" + "packages/test/page-object/node_modules/@esbuild/darwin-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.0.tgz", + "integrity": "sha512-fyzLm/DLDl/84OCfp2f/XQ4flmORsjU7VKt8HLjvIXChJoFFOIL6pLJPH4Yhd1n1gGFF9mPwtlN5Wf82DZs+LQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" } }, - "packages/test/harness/node_modules/diff-sequences": { - "version": "25.2.6", - "license": "MIT", + "packages/test/page-object/node_modules/@esbuild/freebsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.0.tgz", + "integrity": "sha512-l9GeW5UZBT9k9brBYI+0WDffcRxgHQD8ShN2Ur4xWq/NFzUKm3k5lsH4PdaRgb2w7mI9u61nr2gI2mLI27Nh3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], "engines": { - "node": ">= 8.3" + "node": ">=18" } }, - "packages/test/harness/node_modules/escape-string-regexp": { - "version": "2.0.0", - "license": "MIT", + "packages/test/page-object/node_modules/@esbuild/freebsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.0.tgz", + "integrity": "sha512-BXoQai/A0wPO6Es3yFJ7APCiKGc1tdAEOgeTNy3SsB491S3aHn4S4r3e976eUnPdU+NbdtmBuLncYir2tMU9Nw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/page-object/node_modules/@esbuild/linux-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.0.tgz", + "integrity": "sha512-CjaaREJagqJp7iTaNQjjidaNbCKYcd4IDkzbwwxtSvjI7NZm79qiHc8HqciMddQ6CKvJT6aBd8lO9kN/ZudLlw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/page-object/node_modules/@esbuild/linux-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.0.tgz", + "integrity": "sha512-RVyzfb3FWsGA55n6WY0MEIEPURL1FcbhFE6BffZEMEekfCzCIMtB5yyDcFnVbTnwk+CLAgTujmV/Lgvih56W+A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/page-object/node_modules/@esbuild/linux-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.0.tgz", + "integrity": "sha512-KBnSTt1kxl9x70q+ydterVdl+Cn0H18ngRMRCEQfrbqdUuntQQ0LoMZv47uB97NljZFzY6HcfqEZ2SAyIUTQBQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/page-object/node_modules/@esbuild/linux-loong64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.0.tgz", + "integrity": "sha512-zpSlUce1mnxzgBADvxKXX5sl8aYQHo2ezvMNI8I0lbblJtp8V4odlm3Yzlj7gPyt3T8ReksE6bK+pT3WD+aJRg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/test/page-object/node_modules/@esbuild/linux-mips64el": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.0.tgz", + "integrity": "sha512-2jIfP6mmjkdmeTlsX/9vmdmhBmKADrWqN7zcdtHIeNSCH1SqIoNI63cYsjQR8J+wGa4Y5izRcSHSm8K3QWmk3w==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=8" + "node": ">=18" } }, - "packages/test/harness/node_modules/event-target-shim": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-6.0.2.tgz", - "integrity": "sha512-8q3LsZjRezbFZ2PN+uP+Q7pnHUMmAOziU2vA2OwoFaKIXxlxl38IylhSSgUorWu/rf4er67w0ikBqjBFk/pomA==", - "license": "MIT", + "packages/test/page-object/node_modules/@esbuild/linux-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.0.tgz", + "integrity": "sha512-bc0FE9wWeC0WBm49IQMPSPILRocGTQt3j5KPCA8os6VprfuJ7KD+5PzESSrJ6GmPIPJK965ZJHTUlSA6GNYEhg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=10.13.0" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" + "node": ">=18" } }, - "packages/test/harness/node_modules/expect": { - "version": "25.5.0", - "resolved": "https://registry.npmjs.org/expect/-/expect-25.5.0.tgz", - "integrity": "sha512-w7KAXo0+6qqZZhovCaBVPSIqQp7/UTcx4M9uKt2m6pd2VB1voyC8JizLRqeEqud3AAVP02g+hbErDu5gu64tlA==", - "license": "MIT", - "dependencies": { - "@jest/types": "^25.5.0", - "ansi-styles": "^4.0.0", - "jest-get-type": "^25.2.6", - "jest-matcher-utils": "^25.5.0", - "jest-message-util": "^25.5.0", - "jest-regex-util": "^25.2.6" - }, + "packages/test/page-object/node_modules/@esbuild/linux-riscv64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.0.tgz", + "integrity": "sha512-SQPZOwoTTT/HXFXQJG/vBX8sOFagGqvZyXcgLA3NhIqcBv1BJU1d46c0rGcrij2B56Z2rNiSLaZOYW5cUk7yLQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">= 8.3" + "node": ">=18" } }, - "packages/test/harness/node_modules/has-flag": { - "version": "4.0.0", - "license": "MIT", + "packages/test/page-object/node_modules/@esbuild/linux-s390x": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.0.tgz", + "integrity": "sha512-SCfR0HN8CEEjnYnySJTd2cw0k9OHB/YFzt5zgJEwa+wL/T/raGWYMBqwDNAC6dqFKmJYZoQBRfHjgwLHGSrn3Q==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=8" + "node": ">=18" } }, - "packages/test/harness/node_modules/jest-diff": { - "version": "25.5.0", - "license": "MIT", - "dependencies": { - "chalk": "^3.0.0", - "diff-sequences": "^25.2.6", - "jest-get-type": "^25.2.6", - "pretty-format": "^25.5.0" - }, + "packages/test/page-object/node_modules/@esbuild/linux-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.0.tgz", + "integrity": "sha512-us0dSb9iFxIi8srnpl931Nvs65it/Jd2a2K3qs7fz2WfGPHqzfzZTfec7oxZJRNPXPnNYZtanmRc4AL/JwVzHQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">= 8.3" + "node": ">=18" } }, - "packages/test/harness/node_modules/jest-get-type": { - "version": "25.2.6", - "license": "MIT", + "packages/test/page-object/node_modules/@esbuild/netbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.0.tgz", + "integrity": "sha512-CR/RYotgtCKwtftMwJlUU7xCVNg3lMYZ0RzTmAHSfLCXw3NtZtNpswLEj/Kkf6kEL3Gw+BpOekRX0BYCtklhUw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], "engines": { - "node": ">= 8.3" + "node": ">=18" } }, - "packages/test/harness/node_modules/jest-matcher-utils": { - "version": "25.5.0", - "license": "MIT", - "dependencies": { - "chalk": "^3.0.0", - "jest-diff": "^25.5.0", - "jest-get-type": "^25.2.6", - "pretty-format": "^25.5.0" - }, + "packages/test/page-object/node_modules/@esbuild/netbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.0.tgz", + "integrity": "sha512-nU1yhmYutL+fQ71Kxnhg8uEOdC0pwEW9entHykTgEbna2pw2dkbFSMeqjjyHZoCmt8SBkOSvV+yNmm94aUrrqw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], "engines": { - "node": ">= 8.3" + "node": ">=18" } }, - "packages/test/harness/node_modules/jest-message-util": { - "version": "25.5.0", - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.0.0", - "@jest/types": "^25.5.0", - "@types/stack-utils": "^1.0.1", - "chalk": "^3.0.0", - "graceful-fs": "^4.2.4", - "micromatch": "^4.0.2", - "slash": "^3.0.0", - "stack-utils": "^1.0.1" - }, + "packages/test/page-object/node_modules/@esbuild/openbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.0.tgz", + "integrity": "sha512-cXb5vApOsRsxsEl4mcZ1XY3D4DzcoMxR/nnc4IyqYs0rTI8ZKmW6kyyg+11Z8yvgMfAEldKzP7AdP64HnSC/6g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], "engines": { - "node": ">= 8.3" + "node": ">=18" } }, - "packages/test/harness/node_modules/jest-regex-util": { - "version": "25.2.6", - "license": "MIT", + "packages/test/page-object/node_modules/@esbuild/openbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.0.tgz", + "integrity": "sha512-8wZM2qqtv9UP3mzy7HiGYNH/zjTA355mpeuA+859TyR+e+Tc08IHYpLJuMsfpDJwoLo1ikIJI8jC3GFjnRClzA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], "engines": { - "node": ">= 8.3" + "node": ">=18" } }, - "packages/test/harness/node_modules/pretty-format": { - "version": "25.5.0", - "license": "MIT", - "dependencies": { - "@jest/types": "^25.5.0", - "ansi-regex": "^5.0.0", - "ansi-styles": "^4.0.0", - "react-is": "^16.12.0" - }, + "packages/test/page-object/node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.0.tgz", + "integrity": "sha512-FLGfyizszcef5C3YtoyQDACyg95+dndv79i2EekILBofh5wpCa1KuBqOWKrEHZg3zrL3t5ouE5jgr94vA+Wb2w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openharmony" + ], "engines": { - "node": ">= 8.3" + "node": ">=18" } }, - "packages/test/harness/node_modules/react-is": { - "version": "16.13.1", - "license": "MIT" - }, - "packages/test/harness/node_modules/slash": { - "version": "3.0.0", - "license": "MIT", + "packages/test/page-object/node_modules/@esbuild/sunos-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.0.tgz", + "integrity": "sha512-1ZgjUoEdHZZl/YlV76TSCz9Hqj9h9YmMGAgAPYd+q4SicWNX3G5GCyx9uhQWSLcbvPW8Ni7lj4gDa1T40akdlw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], "engines": { - "node": ">=8" + "node": ">=18" } }, - "packages/test/harness/node_modules/stack-utils": { - "version": "1.0.5", - "license": "MIT", - "dependencies": { - "escape-string-regexp": "^2.0.0" - }, + "packages/test/page-object/node_modules/@esbuild/win32-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.0.tgz", + "integrity": "sha512-Q9StnDmQ/enxnpxCCLSg0oo4+34B9TdXpuyPeTedN/6+iXBJ4J+zwfQI28u/Jl40nOYAxGoNi7mFP40RUtkmUA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": ">=8" + "node": ">=18" } }, - "packages/test/harness/node_modules/supports-color": { - "version": "7.2.0", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, + "packages/test/page-object/node_modules/@esbuild/win32-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.0.tgz", + "integrity": "sha512-zF3ag/gfiCe6U2iczcRzSYJKH1DCI+ByzSENHlM2FcDbEeo5Zd2C86Aq0tKUYAJJ1obRP84ymxIAksZUcdztHA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": ">=8" + "node": ">=18" } }, - "packages/test/page-object": { - "name": "@msinternal/test-page-object", - "version": "0.0.0-0", - "license": "MIT", - "dependencies": { - "base64-arraybuffer": "1.0.2", - "bent": "7.3.12", - "classnames": "2.5.1", - "core-js": "3.48.0", - "core-js-pure": "3.48.0", - "event-iterator": "2.0.0", - "event-target-shim": "6.0.2", - "math-random": "2.0.1", - "microsoft-cognitiveservices-speech-sdk": "1.48.0", - "prop-types": "15.8.1", - "simple-update-in": "2.2.0" - }, - "devDependencies": { - "concurrently": "^9.2.1", - "esbuild": "^0.27.3" - }, + "packages/test/page-object/node_modules/@esbuild/win32-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.0.tgz", + "integrity": "sha512-pEl1bO9mfAmIC+tW5btTmrKaujg3zGtUmWNdCw/xs70FBjwAL3o9OEKNHvNmnyylD6ubxUERiEhdsL0xBQ9efw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": ">= 14.0.0" + "node": ">=18" } }, - "packages/test/page-object/node_modules/core-js-pure": { - "version": "3.48.0", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.48.0.tgz", - "integrity": "sha512-1slJgk89tWC51HQ1AEqG+s2VuwpTRr8ocu4n20QUcH1v9lAN0RXen0Q0AABa/DK1I7RrNWLucplOHMx8hfTGTw==", + "packages/test/page-object/node_modules/esbuild": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.0.tgz", + "integrity": "sha512-sNR9MHpXSUV/XB4zmsFKN+QgVG82Cc7+/aaxJ8Adi8hyOac+EXptIp45QBPaVyX3N70664wRbTcLTOemCAnyqw==", + "dev": true, "hasInstallScript": true, - "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.28.0", + "@esbuild/android-arm": "0.28.0", + "@esbuild/android-arm64": "0.28.0", + "@esbuild/android-x64": "0.28.0", + "@esbuild/darwin-arm64": "0.28.0", + "@esbuild/darwin-x64": "0.28.0", + "@esbuild/freebsd-arm64": "0.28.0", + "@esbuild/freebsd-x64": "0.28.0", + "@esbuild/linux-arm": "0.28.0", + "@esbuild/linux-arm64": "0.28.0", + "@esbuild/linux-ia32": "0.28.0", + "@esbuild/linux-loong64": "0.28.0", + "@esbuild/linux-mips64el": "0.28.0", + "@esbuild/linux-ppc64": "0.28.0", + "@esbuild/linux-riscv64": "0.28.0", + "@esbuild/linux-s390x": "0.28.0", + "@esbuild/linux-x64": "0.28.0", + "@esbuild/netbsd-arm64": "0.28.0", + "@esbuild/netbsd-x64": "0.28.0", + "@esbuild/openbsd-arm64": "0.28.0", + "@esbuild/openbsd-x64": "0.28.0", + "@esbuild/openharmony-arm64": "0.28.0", + "@esbuild/sunos-x64": "0.28.0", + "@esbuild/win32-arm64": "0.28.0", + "@esbuild/win32-ia32": "0.28.0", + "@esbuild/win32-x64": "0.28.0" } }, "packages/test/page-object/node_modules/event-target-shim": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-6.0.2.tgz", "integrity": "sha512-8q3LsZjRezbFZ2PN+uP+Q7pnHUMmAOziU2vA2OwoFaKIXxlxl38IylhSSgUorWu/rf4er67w0ikBqjBFk/pomA==", - "license": "MIT", "engines": { "node": ">=10.13.0" }, @@ -22378,7 +29913,6 @@ "version": "9.22.15", "resolved": "https://registry.npmjs.org/@fluentui/react-provider/-/react-provider-9.22.15.tgz", "integrity": "sha512-a+ImgL9DOlylDM4UYPnxQTA3yXxbVj+O0iNEyTZ6fMzdMsHzpALU4GAq6tOyW4L7RaQtRBmNpVfwTCEKpqaTJQ==", - "license": "MIT", "dependencies": { "@fluentui/react-icons": "^2.0.245", "@fluentui/react-jsx-runtime": "^9.4.1", @@ -22451,7 +29985,6 @@ "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==", - "license": "MIT", "dependencies": { "loose-envify": "^1.1.0" }, @@ -22463,7 +29996,6 @@ "version": "18.3.1", "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", - "license": "MIT", "dependencies": { "loose-envify": "^1.1.0", "scheduler": "^0.23.2" @@ -22491,7 +30023,7 @@ }, "devDependencies": { "tsup": "^8.5.1", - "typescript": "^5.9.3" + "typescript": "^6.0.3" } }, "packages/tsconfig": { @@ -22508,8 +30040,8 @@ "version": "0.0.0-0", "license": "MIT", "dependencies": { - "@ast-grep/napi": "0.41.0", - "yaml": "2.8.2" + "@ast-grep/napi": "0.42.1", + "yaml": "2.8.3" }, "bin": { "vg": "src/vg.js" diff --git a/package.json b/package.json index 44a83833c8..aab3783ab1 100644 --- a/package.json +++ b/package.json @@ -223,60 +223,63 @@ "strip-ansi@7 dropped support of CommonJS" ] }, + "localDependencies": { + "@msinternal/vibe-grep": "development" + }, "devDependencies": { - "@babel/plugin-transform-runtime": "^7.28.5", - "@babel/preset-env": "^7.28.5", + "@babel/plugin-transform-runtime": "^7.29.0", + "@babel/preset-env": "^7.29.2", "@babel/preset-react": "^7.28.5", "@babel/preset-typescript": "^7.28.5", - "@babel/runtime": "^7.28.4", - "@biomejs/biome": "^2.3.10", - "@happy-dom/jest-environment": "^20.0.11", + "@babel/runtime": "^7.29.2", + "@biomejs/biome": "^2.4.12", + "@happy-dom/jest-environment": "^20.9.0", "@msinternal/vibe-grep": "^0.0.0-0", "@testing-library/react": "^12.1.5", "@types/jest": "^29.5.14", - "@types/react": "^16.14.68", + "@types/react": "^16.14.69", "@types/react-dom": "^16.9.25", "@types/semver": "^7.7.1", - "@typescript-eslint/eslint-plugin": "^8.50.0", - "@typescript-eslint/parser": "^8.50.0", + "@typescript-eslint/eslint-plugin": "^8.59.0", + "@typescript-eslint/parser": "^8.59.0", "babel-jest": "^29.7.0", - "babel-plugin-istanbul": "^7.0.1", + "babel-plugin-istanbul": "^8.0.0", "chalk": "^5.6.2", "concurrently": "^9.2.1", - "core-js": "^3.47.0", + "core-js": "^3.49.0", "cross-env": "^10.1.0", - "diff": "^8.0.2", - "dotenv": "^17.2.3", - "dtsroll": "^1.4.1", + "diff": "^9.0.0", + "dotenv": "^17.4.2", + "dtsroll": "^1.8.1", "eslint": "^8.57.1", "eslint-config-prettier": "^10.1.8", "eslint-plugin-import": "^2.32.0", "eslint-plugin-local-rules": "^3.0.2", "eslint-plugin-node": "^11.1.0", - "eslint-plugin-prettier": "^5.5.4", + "eslint-plugin-prettier": "^5.5.5", "eslint-plugin-react": "^7.37.5", - "eslint-plugin-react-hooks": "^7.0.1", - "eslint-plugin-security": "^3.0.1", + "eslint-plugin-react-hooks": "^7.1.1", + "eslint-plugin-security": "^4.0.0", "get-port": "^5.1.1", - "global-agent": "^3.0.0", + "global-agent": "^4.1.3", "husky": "^9.1.7", "jest": "^29.7.0", - "jest-image-snapshot": "^6.5.1", - "keep-a-changelog": "^2.7.1", - "lint-staged": "^16.2.7", + "jest-image-snapshot": "^6.5.2", + "keep-a-changelog": "^3.0.2", + "lint-staged": "^16.4.0", "lolex": "^6.0.0", - "minimatch": "^10.1.1", + "minimatch": "^10.2.5", "node-dev": "^8.0.0", - "prettier": "^3.7.4", + "prettier": "^3.8.3", "read-package-up": "^12.0.0", - "read-pkg": "^10.0.0", - "selenium-webdriver": "^4.39.0", - "serve": "^14.2.5", - "serve-handler": "^6.1.6", + "read-pkg": "^10.1.0", + "selenium-webdriver": "^4.43.0", + "serve": "^14.2.6", + "serve-handler": "^6.1.7", "strip-ansi": "^6.0.1", "tsup": "^8.5.1", - "typescript": "^5.9.3", - "unplugin-lightningcss": "^0.4.3" + "typescript": "^6.0.3", + "unplugin-lightningcss": "^0.4.5" }, "dependencies": { "react": "16.8.6", diff --git a/packages/api-graph/package.json b/packages/api-graph/package.json index dddf6deb02..60cf6debf2 100644 --- a/packages/api-graph/package.json +++ b/packages/api-graph/package.json @@ -47,7 +47,12 @@ "preversion": "../../scripts/npm/preversion.sh", "start": "../../scripts/npm/notify-build.sh \"src\" \"../react-hooks/package.json\" \"../react-valibot/package.json\" \"../core/package.json\"" }, - "pinDependencies": {}, + "pinDependencies": { + "react": [ + "16.8.6", + "using react@16.8.6 to make sure this is the minimum supported version" + ] + }, "localDependencies": { "@msinternal/botframework-webchat-base": "development", "@msinternal/botframework-webchat-react-hooks": "development", @@ -61,8 +66,8 @@ "@testduet/given-when-then": "^0.1.0", "@types/use-sync-external-store": "^1.5.0", "botframework-webchat-core": "0.0.0-0", - "type-fest": "^5.4.4", - "typescript": "^5.9.3" + "type-fest": "^5.6.0", + "typescript": "^6.0.3" }, "peerDependencies": { "handler-chain": "0.1.1", @@ -70,6 +75,6 @@ "use-ref-from": "0.1.0" }, "dependencies": { - "valibot": "1.2.0" + "valibot": "1.3.1" } } diff --git a/packages/api-graph/src/private/GraphProvider.tsx b/packages/api-graph/src/private/GraphProvider.tsx index 7f23dc060e..6a963943d9 100644 --- a/packages/api-graph/src/private/GraphProvider.tsx +++ b/packages/api-graph/src/private/GraphProvider.tsx @@ -1,7 +1,12 @@ import type { DirectLineActivityNode } from '@msinternal/botframework-webchat-core-graph'; import { reactNode, validateProps } from '@msinternal/botframework-webchat-react-valibot'; import { createStore, WebChatActivity } from 'botframework-webchat-core'; -import { createGraphFromStore, isOfType, type GraphSubscriber, type Identifier } from 'botframework-webchat-core/graph'; +import { + createGraphFromStore, + isOfType, + type GraphSubscriber, + type Identifier +} from 'botframework-webchat-core/graph.js'; import React, { memo, useEffect, useMemo, useState } from 'react'; import { custom, function_, object, optional, parse, pipe, readonly, safeParse, type InferInput } from 'valibot'; diff --git a/packages/api-middleware/package.json b/packages/api-middleware/package.json index 9b4b1aaf94..ce8aeecee4 100644 --- a/packages/api-middleware/package.json +++ b/packages/api-middleware/package.json @@ -72,6 +72,10 @@ "start": "../../scripts/npm/notify-build.sh \"src\" \"../react-hooks/package.json\" \"../react-valibot/package.json\"" }, "pinDependencies": { + "react": [ + "16.8.6", + "using react@16.8.6 to make sure this is the minimum supported version" + ], "react-wrap-with": [ "0.1.0", "0.2.0 is having compatibility issues with preact@10.25.4" @@ -87,15 +91,15 @@ "@msinternal/botframework-webchat-base": "0.0.0-0", "@msinternal/botframework-webchat-react-hooks": "0.0.0-0", "@msinternal/botframework-webchat-react-valibot": "0.0.0-0", - "@types/node": "^25.3.3", + "@types/node": "^25.6.0", "cross-env": "^10.1.0", - "type-fest": "^5.4.4", - "typescript": "^5.9.3" + "type-fest": "^5.6.0", + "typescript": "^6.0.3" }, "dependencies": { "handler-chain": "0.1.1", "react-wrap-with": "0.1.0", - "valibot": "1.2.0" + "valibot": "1.3.1" }, "peerDependencies": { "react": ">= 16.8.6", diff --git a/packages/api/package.json b/packages/api/package.json index 4ce78edd2c..65da092ad3 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -16,6 +16,16 @@ } }, "./decorator": { + "import": { + "types": "./dist/botframework-webchat-api.deprecated.decorator.d.mts", + "default": "./dist/botframework-webchat-api.deprecated.decorator.mjs" + }, + "require": { + "types": "./dist/botframework-webchat-api.deprecated.decorator.d.ts", + "default": "./dist/botframework-webchat-api.deprecated.decorator.js" + } + }, + "./decorator.js": { "import": { "types": "./dist/botframework-webchat-api.decorator.d.mts", "default": "./dist/botframework-webchat-api.decorator.mjs" @@ -26,6 +36,16 @@ } }, "./hook": { + "import": { + "types": "./dist/botframework-webchat-api.deprecated.hook.d.mts", + "default": "./dist/botframework-webchat-api.deprecated.hook.mjs" + }, + "require": { + "types": "./dist/botframework-webchat-api.deprecated.hook.d.ts", + "default": "./dist/botframework-webchat-api.deprecated.hook.js" + } + }, + "./hook.js": { "import": { "types": "./dist/botframework-webchat-api.hook.d.mts", "default": "./dist/botframework-webchat-api.hook.mjs" @@ -36,6 +56,16 @@ } }, "./internal": { + "import": { + "types": "./dist/botframework-webchat-api.deprecated.internal.d.mts", + "default": "./dist/botframework-webchat-api.deprecated.internal.mjs" + }, + "require": { + "types": "./dist/botframework-webchat-api.deprecated.internal.d.ts", + "default": "./dist/botframework-webchat-api.deprecated.internal.js" + } + }, + "./internal.js": { "import": { "types": "./dist/botframework-webchat-api.internal.d.mts", "default": "./dist/botframework-webchat-api.internal.mjs" @@ -46,6 +76,16 @@ } }, "./middleware": { + "import": { + "types": "./dist/botframework-webchat-api.deprecated.middleware.d.mts", + "default": "./dist/botframework-webchat-api.deprecated.middleware.mjs" + }, + "require": { + "types": "./dist/botframework-webchat-api.deprecated.middleware.d.ts", + "default": "./dist/botframework-webchat-api.deprecated.middleware.js" + } + }, + "./middleware.js": { "import": { "types": "./dist/botframework-webchat-api.middleware.d.mts", "default": "./dist/botframework-webchat-api.middleware.mjs" @@ -102,6 +142,14 @@ "16", "react@16.8.6 is our baseline" ], + "react": [ + "16.8.6", + "using react@16.8.6 to make sure this is the minimum supported version" + ], + "react-dom": [ + "16.8.6", + "using react-dom@16.8.6 to make sure this is the minimum supported version" + ], "react-redux": [ "7", "react-redux@>7 requires newer version of React" @@ -120,7 +168,7 @@ }, "devDependencies": { "@babel/core": "^7.29.0", - "@babel/preset-env": "^7.29.0", + "@babel/preset-env": "^7.29.2", "@babel/preset-react": "^7.28.5", "@babel/preset-typescript": "^7.28.5", "@msinternal/botframework-webchat-api-graph": "0.0.0-0", @@ -131,19 +179,19 @@ "@msinternal/botframework-webchat-react-valibot": "0.0.0-0", "@msinternal/botframework-webchat-redux-store": "0.0.0-0", "@msinternal/botframework-webchat-tsconfig": "0.0.0-0", - "@types/dom-speech-recognition": "^0.0.7", + "@types/dom-speech-recognition": "^0.0.9", "@types/jest": "^29.5.14", - "@types/node": "^25.3.3", + "@types/node": "^25.6.0", "@types/react": "^16.14.69", - "babel-plugin-istanbul": "^7.0.1", + "babel-plugin-istanbul": "^8.0.0", "babel-plugin-transform-inline-environment-variables": "^0.4.4", - "core-js": "^3.48.0", + "core-js": "^3.49.0", "cross-env": "^10.1.0", "globalize-compiler": "^1.1.1", "iana-tz-data": "^2019.1.0", "nodemon": "^3.1.14", - "type-fest": "^5.4.4", - "typescript": "^5.9.3" + "type-fest": "^5.6.0", + "typescript": "^6.0.3" }, "dependencies": { "botframework-webchat-core": "0.0.0-0", @@ -157,7 +205,7 @@ "simple-update-in": "2.2.0", "use-reduce-memo": "0.1.0", "use-ref-from": "0.2.1", - "valibot": "1.2.0" + "valibot": "1.3.1" }, "peerDependencies": { "react": ">= 16.8.6", diff --git a/packages/api/src/StyleOptions.ts b/packages/api/src/StyleOptions.ts index 2664030055..029ad8db68 100644 --- a/packages/api/src/StyleOptions.ts +++ b/packages/api/src/StyleOptions.ts @@ -1,42 +1,42 @@ import type { WebChatActivity } from 'botframework-webchat-core'; -type StyleOptions = { +type StrictStyleOptions = { /** * Basic styling */ /** Web Chat component accent color */ - accent?: string; + accent: string | undefined; /** * Transcript background color */ - backgroundColor?: string; + backgroundColor: string | undefined; /** * Secondary component color */ - subtle?: string; + subtle: string | undefined; /** * Default padding used in most visual components */ - paddingRegular?: number; + paddingRegular: number | undefined; /** * Padding used for suggestedAction buttons */ - paddingWide?: number; + paddingWide: number | undefined; /** * The duration to be used for transitions */ - transitionDuration?: string; + transitionDuration: string | undefined; /** * The easing function to be used for transitions */ - transitionEasing?: string; + transitionEasing: string | undefined; /** * Fonts @@ -46,28 +46,28 @@ type StyleOptions = { /** * Font size used for secondary components such as sendStatus */ - fontSizeSmall?: number | string; + fontSizeSmall: number | string | undefined; /** * Font used for ErrorBox * comma-space separated string */ - monospaceFont?: string; + monospaceFont: string | undefined; /** * Font used in most visual components * comma-space separated string */ - primaryFont?: string; + primaryFont: string | undefined; - rootHeight?: number | string; + rootHeight: number | string | undefined; - rootWidth?: number | string; + rootWidth: number | string | undefined; /** * "z-index" for the root container of Web Chat. This will form a new stacking context so "z-index" used in children won't pollute. */ - rootZIndex?: number; + rootZIndex: number | undefined; /** * Avatar styling @@ -76,46 +76,46 @@ type StyleOptions = { /** * Border radius used for both bot and user avatar */ - avatarBorderRadius?: number | string; + avatarBorderRadius: number | string | undefined; /** * Height and width of avatar */ - avatarSize?: number; + avatarSize: number | undefined; /** * Background color defaults to accent */ - botAvatarBackgroundColor?: string; + botAvatarBackgroundColor: string | undefined; /** * URL string. Can be data URI or blob * botAvatarInitials must be set to empty string */ - botAvatarImage?: string; + botAvatarImage: string | undefined; /** * Typically rendered as two letters, e.g. 'WC' * Empty string is required when setting botAvatarImage */ - botAvatarInitials?: string; + botAvatarInitials: string | undefined; /** * Background color defaults to accent */ - userAvatarBackgroundColor?: string; + userAvatarBackgroundColor: string | undefined; /** * URL string. Can be data URI or blob * userAvatarInitials must be set to empty string */ - userAvatarImage?: string; + userAvatarImage: string | undefined; /** * Typically rendered as two letters, i.e. 'WC' * Empty string is required when setting userAvatarImage */ - userAvatarInitials?: string; + userAvatarInitials: string | undefined; /** * Avatar grouping can be set at 3 different levels: @@ -123,23 +123,23 @@ type StyleOptions = { * Show avatar on activities sharing the same status ('status'; default) * Show avatar on every activity (true) */ - showAvatarInGroup?: true | 'sender' | 'status'; + showAvatarInGroup: true | 'sender' | 'status' | undefined; /** * Bubble styling * 'Bubble' refers to the container of the activit(ies) from the bot and user. Below, non-'fromUser' props refer to styling for the bot activities. */ - bubbleBackground?: string; - bubbleBorderColor?: string; - bubbleBorderRadius?: number; - bubbleBorderStyle?: string; - bubbleBorderWidth?: number; - bubbleFromUserBackground?: string; - bubbleFromUserBorderColor?: string; - bubbleFromUserBorderRadius?: number; - bubbleFromUserBorderStyle?: string; - bubbleFromUserBorderWidth?: number; + bubbleBackground: string | undefined; + bubbleBorderColor: string | undefined; + bubbleBorderRadius: number | undefined; + bubbleBorderStyle: string | undefined; + bubbleBorderWidth: number | undefined; + bubbleFromUserBackground: string | undefined; + bubbleFromUserBorderColor: string | undefined; + bubbleFromUserBorderRadius: number | undefined; + bubbleFromUserBorderStyle: string | undefined; + bubbleFromUserBorderWidth: number | undefined; /** * Nub offset 'bottom' will render nub at the bottom @@ -147,21 +147,14 @@ type StyleOptions = { * "top" is equivalent to positive zero. * "bottom" is equivalent to negative zero. */ - bubbleFromUserNubOffset?: number | 'bottom' | 'top'; + bubbleFromUserNubOffset: number | undefined; /** * Nub size 0 will render a sharp corner */ - bubbleFromUserNubSize?: number; + bubbleFromUserNubSize: number | undefined; - bubbleFromUserTextColor?: string; - - /** - * Specifies the fixed height of the bubble for image, default to unset. - * - * @deprecated Use `bubbleImageMaxHeight` and `bubbleImageMinHeight` instead. To mimick behavior before deprecation, set both options to 240px. - */ - bubbleImageHeight?: number | undefined; + bubbleFromUserTextColor: string | undefined; /** * Specifies the maximum height of the bubble for image, default to 240px. @@ -170,7 +163,7 @@ type StyleOptions = { * * New in 4.18.0. */ - bubbleImageMaxHeight?: number | undefined; + bubbleImageMaxHeight: number | undefined; /** * Specifies the minimum height of the bubble for image, default to 240px. @@ -179,19 +172,14 @@ type StyleOptions = { * * New in 4.18.0. */ - bubbleImageMinHeight?: number | undefined; + bubbleImageMinHeight: number | undefined; - /* @deprecated Please use `bubbleAttachmentMaxWidth` and `bubbleMessageMaxWidth` instead. */ - bubbleMaxWidth?: number | undefined; - /* @deprecated Please use `bubbleAttachmentMaxWidth` and `bubbleMessageMaxWidth` instead. */ - bubbleMinWidth?: number | undefined; + bubbleAttachmentMaxWidth: number | undefined; + bubbleAttachmentMinWidth: number | undefined; + bubbleMessageMaxWidth: number | undefined; + bubbleMessageMinWidth: number | undefined; - bubbleAttachmentMaxWidth?: number | undefined; - bubbleAttachmentMinWidth?: number | undefined; - bubbleMessageMaxWidth?: number | undefined; - bubbleMessageMinWidth?: number | undefined; - - bubbleMinHeight?: number; + bubbleMinHeight: number | undefined; /** * Nub offset ''bottom' will render nub at the bottom @@ -199,33 +187,33 @@ type StyleOptions = { * "top" is equivalent to positive zero. * "bottom" is equivalent to negative zero. */ - bubbleNubOffset?: number | 'bottom' | 'top'; + bubbleNubOffset: number | undefined; /** * Nub size 0 will render a sharp corner */ - bubbleNubSize?: number; + bubbleNubSize: number | undefined; - bubbleTextColor?: string; + bubbleTextColor: string | undefined; - messageActivityWordBreak?: 'normal' | 'break-all' | 'break-word' | 'keep-all'; + messageActivityWordBreak: 'normal' | 'break-all' | 'break-word' | 'keep-all' | undefined; /** * Connectivity UI styling */ - connectivityIconPadding?: number; - connectivityMarginLeftRight?: number; - connectivityMarginTopBottom?: number; - connectivityTextSize?: number | string; - failedConnectivity?: number | string; - slowConnectivity?: string; - notificationText?: string; + connectivityIconPadding: number | undefined; + connectivityMarginLeftRight: number | undefined; + connectivityMarginTopBottom: number | undefined; + connectivityTextSize: number | string | undefined; + failedConnectivity: number | string | undefined; + slowConnectivity: string | undefined; + notificationText: string | undefined; /** * Slow connection status will render after x amount of time with no service response */ - slowConnectionAfter?: number; + slowConnectionAfter: number | undefined; /** * Emoji styling @@ -234,19 +222,19 @@ type StyleOptions = { * key: emoticon * value: unicode emoji */ - emojiSet?: boolean | Record; + emojiSet: false | Record | undefined; /** * Live region - Accessibility * New activities will be rendered in the non-visual live region and removed after a certain amount of time. Modify this property to change fade time. */ - internalLiveRegionFadeAfter?: number; + internalLiveRegionFadeAfter: number | undefined; /** * Markdown styling * Parse markdown to ensure carriage return is respected */ - markdownRespectCRLF?: boolean; + markdownRespectCRLF: boolean | undefined; /** * Render HTML inside Markdown. @@ -255,216 +243,199 @@ type StyleOptions = { * * New in 4.17: This option is enabled by default. */ - markdownRenderHTML?: boolean; + markdownRenderHTML: boolean | undefined; /** * Assign new image for anchor links to indicate external */ - markdownExternalLinkIconImage?: string; + markdownExternalLinkIconImage: string | undefined; /** * Scroll behavior styling */ - /** - * Prevent scroll to end button from rendering - * - * @deprecated Since 4.14.0: To hide the scroll to end button, please set `scrollToEndButtonBehavior` to `false`. - */ - // TODO: [P4] Will be removed on or after 2023-06-02. - hideScrollToEndButton?: boolean; - /** * Snap to activity to 'snap-point' * If true, scrolling will pause after 1 activity is received. * Specifying a number will pause after X number of activities */ - autoScrollSnapOnActivity?: boolean | number; + autoScrollSnapOnActivity: boolean | number | undefined; /** * Specify number of pixels to overscroll or underscroll after pause */ - autoScrollSnapOnActivityOffset?: number; + autoScrollSnapOnActivityOffset: number | undefined; /** * If true, scrolling will pause after activities have filled the page. * Specifying a number (0 to 1) will pause after % of page is filled */ - autoScrollSnapOnPage?: boolean | number; + autoScrollSnapOnPage: boolean | number | undefined; /** * Specify number of pixels to overscroll or underscroll after pause */ - autoScrollSnapOnPageOffset?: number; + autoScrollSnapOnPageOffset: number | undefined; /** * Send box styling */ - hideSendBox?: boolean; - - /** - * Indicates if the upload file button should be hidden. - * - * @default false - * - * @deprecated deprecated since 4.18.0: obsolated by {@linkcode disableFileUpload}. This option will be removed on or after 2027-07-14. - */ - hideUploadButton?: boolean; + hideSendBox: boolean | undefined; /** * (EXPERIMENTAL) `true`, if the telephone keypad button should be shown, otherwise, `false`. Defaults to `true`. * * @deprecated This is an experimental style options and should not be used without understanding its risk. */ - hideTelephoneKeypadButton?: boolean | undefined; + hideTelephoneKeypadButton: boolean | undefined; - microphoneButtonColorOnDictate?: string; - sendBoxBackground?: string; + microphoneButtonColorOnDictate: string | undefined; + sendBoxBackground: string | undefined; /** * The comma-delimited file types that the upload button should accept. * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file#accept * @example 'image/*,.pdf' */ - uploadAccept?: string; + uploadAccept: string | undefined; /** * If true, the upload button will accept multiple files. * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file#multiple */ - uploadMultiple?: boolean; + uploadMultiple: boolean | undefined; /** * If set to `send` (default), attachment will be sent when the send button is clicked, or when the message is being sent. * * Otherwise, if set to `attach`, attachment will be sent immediately after file is selected. */ - sendAttachmentOn?: 'attach' | 'send'; + sendAttachmentOn: 'attach' | 'send' | undefined; /** Send box button: Icon color, defaults to subtle */ - sendBoxButtonColor?: string; + sendBoxButtonColor: string | undefined; /** * Send box button: Shade border radius * * @default 2 */ - sendBoxButtonShadeBorderRadius?: number; + sendBoxButtonShadeBorderRadius: number | undefined; /** Send box button: Shade color */ - sendBoxButtonShadeColor?: string; + sendBoxButtonShadeColor: string | undefined; /** * Send box button: Shade inset * * @default 2 */ - sendBoxButtonShadeInset?: number; + sendBoxButtonShadeInset: number | undefined; /** Send box button (while `:active`): Icon color */ - sendBoxButtonColorOnActive?: string; + sendBoxButtonColorOnActive: string | undefined; /** * Send box button (while `:active`): Shade color * * @default '#EDEBE9' */ - sendBoxButtonShadeColorOnActive?: string; + sendBoxButtonShadeColorOnActive: string | undefined; /** * Send box button (while `:disabled`): Icon color * * @default '#A19F9D' */ - sendBoxButtonColorOnDisabled?: string; + sendBoxButtonColorOnDisabled: string | undefined; /** * Send box button (while `:disabled`): Shade color * * @default '#F3F2F1' */ - sendBoxButtonShadeColorOnDisabled?: string; + sendBoxButtonShadeColorOnDisabled: string | undefined; /** Send box button (while `:focus`): Icon color */ - sendBoxButtonColorOnFocus?: string; + sendBoxButtonColorOnFocus: string | undefined; /** Send box button (while `:focus`): Shade color */ - sendBoxButtonShadeColorOnFocus?: string; + sendBoxButtonShadeColorOnFocus: string | undefined; /** Send box button (while `:hover`): Icon color */ - sendBoxButtonColorOnHover?: string; + sendBoxButtonColorOnHover: string | undefined; /** * Send box button (while `:hover`): Shade color * * @default '#F3F2F1' */ - sendBoxButtonShadeColorOnHover?: string; + sendBoxButtonShadeColorOnHover: string | undefined; /** * Send box button (while `:focus-visible`): Keyboard focus indicator border color * * @default '#605E5C' */ - sendBoxButtonKeyboardFocusIndicatorBorderColor?: string; + sendBoxButtonKeyboardFocusIndicatorBorderColor: string | undefined; /** * Send box button (while `:focus-visible`): Keyboard focus indicator border radius * * @default 0 */ - sendBoxButtonKeyboardFocusIndicatorBorderRadius?: number | string; + sendBoxButtonKeyboardFocusIndicatorBorderRadius: number | string | undefined; /** * Send box button (while `:focus-visible`): Keyboard focus indicator border style * * @default 'solid' */ - sendBoxButtonKeyboardFocusIndicatorBorderStyle?: string; + sendBoxButtonKeyboardFocusIndicatorBorderStyle: string | undefined; /** * Send box button (while` :focus-visible`): Keyboard focus indicator border width * * @default 4 */ - sendBoxButtonKeyboardFocusIndicatorBorderWidth?: number; + sendBoxButtonKeyboardFocusIndicatorBorderWidth: number | undefined; /** * Send box button (while `:focus-visible`): Keyboard focus indicator inset * * @default 4 */ - sendBoxButtonKeyboardFocusIndicatorInset?: number; + sendBoxButtonKeyboardFocusIndicatorInset: number | undefined; /** * Disabled text color defaults to subtle */ - sendBoxDisabledTextColor?: string; + sendBoxDisabledTextColor: string | undefined; - sendBoxHeight?: number | string; - sendBoxMaxHeight?: number | string; - sendBoxTextColor?: string; - sendBoxBorderBottom?: number | string; - sendBoxBorderLeft?: number | string; - sendBoxBorderRight?: number | string; - sendBoxBorderTop?: number | string; - sendBoxPlaceholderColor?: string; - sendBoxTextWrap?: boolean; - sendBoxButtonAlignment?: 'bottom' | 'stretch' | 'top'; + sendBoxHeight: number | string | undefined; + sendBoxMaxHeight: number | string | undefined; + sendBoxTextColor: string | undefined; + sendBoxBorderBottom: number | string | undefined; + sendBoxBorderLeft: number | string | undefined; + sendBoxBorderRight: number | string | undefined; + sendBoxBorderTop: number | string | undefined; + sendBoxPlaceholderColor: string | undefined; + sendBoxTextWrap: boolean | undefined; + sendBoxButtonAlignment: 'bottom' | 'stretch' | 'top' | undefined; /** * Show spoken text */ - showSpokenText?: boolean; + showSpokenText: boolean | undefined; /** * Spinner animation styling */ - spinnerAnimationBackgroundImage?: string; - spinnerAnimationHeight?: number | string; - spinnerAnimationWidth?: number | string; - spinnerAnimationPadding?: number | string; + spinnerAnimationBackgroundImage: string | undefined; + spinnerAnimationHeight: number | string | undefined; + spinnerAnimationWidth: number | string | undefined; + spinnerAnimationPadding: number | string | undefined; /** * Suggested Actions @@ -475,225 +446,162 @@ type StyleOptions = { * * @default 0 */ - suggestedActionBorderRadius?: number | string; - - /** - * Suggested action: Background - * - * @deprecated Since 4.15.0: Please use `suggestedActionBackgroundColor` instead. This option will be removed on or after 2023-09-16. - */ - suggestedActionBackground?: string; + suggestedActionBorderRadius: number | string | undefined; /** * Suggested action: Background color * * @default 'White' */ - suggestedActionBackgroundColor?: string; + suggestedActionBackgroundColor: string | undefined; /** Suggested action: Border color, defaults to accent color */ - suggestedActionBorderColor?: string; + suggestedActionBorderColor: string | undefined; /** * Suggested action: Border style * * @default 'solid' */ - suggestedActionBorderStyle?: string; + suggestedActionBorderStyle: string | undefined; /** * Suggested action: Border width * * @default 2 */ - suggestedActionBorderWidth?: number; + suggestedActionBorderWidth: number | undefined; /** Suggested action: Text color, defaults to accent color */ - suggestedActionTextColor?: string; + suggestedActionTextColor: string | undefined; /** Suggested action (while `:disabled`): Background color, defaults to suggestedActionBackground */ - suggestedActionBackgroundColorOnDisabled?: string; + suggestedActionBackgroundColorOnDisabled: string | undefined; /** * Suggested action (while `:disabled`): Border color * * @default '#E6E6E6' */ - suggestedActionBorderColorOnDisabled?: string; + suggestedActionBorderColorOnDisabled: string | undefined; /** Suggested action (while `:disabled`): Border style */ - suggestedActionBorderStyleOnDisabled?: string; + suggestedActionBorderStyleOnDisabled: string | undefined; /** Suggested action (while `:disabled`): Border width */ - suggestedActionBorderWidthOnDisabled?: number; + suggestedActionBorderWidthOnDisabled: number | undefined; /** Suggested action (while `:disabled`): Foreground color, defaults to subtle color */ - suggestedActionTextColorOnDisabled?: string; + suggestedActionTextColorOnDisabled: string | undefined; /** * Suggested action (while `:active`): Background color * * @default '#EDEBE9' */ - suggestedActionBackgroundColorOnActive?: string; + suggestedActionBackgroundColorOnActive: string | undefined; /** Suggested action (while `:active`): Border color */ - suggestedActionBorderColorOnActive?: string; + suggestedActionBorderColorOnActive: string | undefined; /** Suggested action (while `:active`): Border style */ - suggestedActionBorderStyleOnActive?: string; + suggestedActionBorderStyleOnActive: string | undefined; /** Suggested action (while `:active`): Border width */ - suggestedActionBorderWidthOnActive?: number; + suggestedActionBorderWidthOnActive: number | undefined; /** Suggested action (while `:active`): Text color */ - suggestedActionTextColorOnActive?: string; + suggestedActionTextColorOnActive: string | undefined; /** Suggested action (while `:focus`): Background color */ - suggestedActionBackgroundColorOnFocus?: string; + suggestedActionBackgroundColorOnFocus: string | undefined; /** Suggested action (while `:focus`): Border color */ - suggestedActionBorderColorOnFocus?: string; + suggestedActionBorderColorOnFocus: string | undefined; /** Suggested action (while `:focus`): Border style */ - suggestedActionBorderStyleOnFocus?: string; + suggestedActionBorderStyleOnFocus: string | undefined; /** Suggested action (while `:focus`): Border width */ - suggestedActionBorderWidthOnFocus?: number; + suggestedActionBorderWidthOnFocus: number | undefined; /** Suggested action (while `:focus`): Text color */ - suggestedActionTextColorOnFocus?: string; + suggestedActionTextColorOnFocus: string | undefined; /** * Suggested action (while `:hover`): Background color * * @default '#F3F2F1' */ - suggestedActionBackgroundColorOnHover?: string; + suggestedActionBackgroundColorOnHover: string | undefined; /** Suggested action (while `:hover`): Border color */ - suggestedActionBorderColorOnHover?: string; + suggestedActionBorderColorOnHover: string | undefined; /** Suggested action (while `:hover`): Border style */ - suggestedActionBorderStyleOnHover?: string; + suggestedActionBorderStyleOnHover: string | undefined; /** Suggested action (while `:hover`): Border width */ - suggestedActionBorderWidthOnHover?: number; + suggestedActionBorderWidthOnHover: number | undefined; /** Suggested action (while `:hover`): Text color */ - suggestedActionTextColorOnHover?: string; - - /** - * Suggested action (while `:disabled`): Background, defaults to suggestedActionBackground. - * - * @deprecated Since 4.15.0: Please use `suggestedActionBackgroundColorOnDisabled` instead. This option will be removed on or after 2023-09-16. - */ - suggestedActionDisabledBackground?: string; - - /** - * Suggested action (while `:disabled`): Border color - * - * @deprecated Since 4.15.0: Please use `suggestedActionBorderColorOnDisabled` instead. This option will be removed on or after 2023-09-16. - */ - suggestedActionDisabledBorderColor?: string; - - /** - * Suggested action (while `:disabled`): Border style - * - * @deprecated Since 4.15.0: Please use `suggestedActionBorderStyleOnDisabled` instead. This option will be removed on or after 2023-09-16. - */ - suggestedActionDisabledBorderStyle?: string; - - /** - * Suggested action (while `:disabled`): Border width - * - * @deprecated Since 4.15.0: Please use `suggestedActionBorderWidthOnDisabled` instead. This option will be removed on or after 2023-09-16. - */ - suggestedActionDisabledBorderWidth?: number; - - /** - * Suggested action (while `:disabled`): Foreground color, defaults to subtle color - * - * @deprecated Since 4.15.0: Please use `suggestedActionTextColorOnDisabled` instead. This option will be removed on or after 2023-09-16. - */ - suggestedActionDisabledTextColor?: string; + suggestedActionTextColorOnHover: string | undefined; /** * Suggested action: Height * * @default 40 */ - suggestedActionHeight?: number | string; + suggestedActionHeight: number | string | undefined; /** * Suggested action: Image height * * @default 20 */ - suggestedActionImageHeight?: number | string; + suggestedActionImageHeight: number | string | undefined; /** * Suggested action: Layout type * * @default 'carousel' */ - suggestedActionLayout?: 'carousel' | 'flow' | 'stacked'; + suggestedActionLayout: 'carousel' | 'flow' | 'stacked' | undefined; /** * Suggested action (while `:focus-visible`): Keyboard focus indicator border color * * @default '#605E5C' */ - suggestedActionKeyboardFocusIndicatorBorderColor?: string; + suggestedActionKeyboardFocusIndicatorBorderColor: string | undefined; /** * Suggested action (while `:focus-visible`): Keyboard focus indicator border radius * * @default 0 */ - suggestedActionKeyboardFocusIndicatorBorderRadius?: number | string; + suggestedActionKeyboardFocusIndicatorBorderRadius: number | string | undefined; /** * Suggested action (while `:focus-visible`): Keyboard focus indicator border style * * @default 'solid' */ - suggestedActionKeyboardFocusIndicatorBorderStyle?: string; + suggestedActionKeyboardFocusIndicatorBorderStyle: string | undefined; /** * Suggested action (while `:focus-visible`): Keyboard focus indicator border width * * @default 1 */ - suggestedActionKeyboardFocusIndicatorBorderWidth?: number; + suggestedActionKeyboardFocusIndicatorBorderWidth: number | undefined; /** * Suggested action (while `:focus-visible`): Keyboard focus indicator inset * * @default 2 */ - suggestedActionKeyboardFocusIndicatorInset?: number; - - /** - * Suggested action (while `:active`): background - * - * @deprecated Since 4.15.0: Please use `suggestedActionBackgroundColorOnActive` instead. This option will be removed on or after 2023-09-16. - */ - suggestedActionActiveBackground?: string; - - /** - * Suggested action (while `:focus`): background - * - * @deprecated Since 4.15.0: Please use `suggestedActionBackgroundColorOnFocus` instead. This option will be removed on or after 2023-09-16. - */ - suggestedActionFocusBackground?: string; - - /** - * Suggested action (while `:hover`): background - * - * @deprecated Since 4.15.0: Please use `suggestedActionBackgroundColorOnHover` instead. This option will be removed on or after 2023-09-16. - */ - suggestedActionHoverBackground?: string; + suggestedActionKeyboardFocusIndicatorInset: number | undefined; /** * Suggested actions carousel layout @@ -702,23 +610,23 @@ type StyleOptions = { /** * Cursor when mouseover on flipper */ - suggestedActionsCarouselFlipperCursor?: string; + suggestedActionsCarouselFlipperCursor: string | undefined; /** * Flipper bounding box size */ - suggestedActionsCarouselFlipperBoxWidth?: number; + suggestedActionsCarouselFlipperBoxWidth: number | undefined; /** * Flipper button's visible size */ - suggestedActionsCarouselFlipperSize?: number; + suggestedActionsCarouselFlipperSize: number | undefined; /** * Suggested actions flow layout * Default value is 'auto', */ - suggestedActionsFlowMaxHeight?: undefined; + suggestedActionsFlowMaxHeight: number | undefined; /** * Suggested actions stacked layout @@ -727,31 +635,31 @@ type StyleOptions = { /** * Stacked height container's max height. Default value is 'auto' */ - suggestedActionsStackedHeight?: number | 'auto'; + suggestedActionsStackedHeight: number | 'auto' | undefined; /** * Stacked overflow default value is 'auto' */ - suggestedActionsStackedOverflow?: 'auto' | 'hidden' | 'scroll' | 'visible'; + suggestedActionsStackedOverflow: 'auto' | 'hidden' | 'scroll' | 'visible' | undefined; /** * Button max height default value is 100% if suggestedActionsStackedLayoutButtonTextWrap is true */ - suggestedActionsStackedLayoutButtonMaxHeight?: number | string; + suggestedActionsStackedLayoutButtonMaxHeight: number | string | undefined; /** * Button Text Wrap, if set to true, will wrap long text in buttons in STACKED mode ONLY */ - suggestedActionsStackedLayoutButtonTextWrap?: boolean; + suggestedActionsStackedLayoutButtonTextWrap: boolean | undefined; /** Suggested actions: Visual keyboard indicator color for the container. */ - suggestedActionsVisualKeyboardIndicatorColor?: string; + suggestedActionsVisualKeyboardIndicatorColor: string | undefined; /** Suggested actions: Visual keyboard indicator style for the container. */ - suggestedActionsVisualKeyboardIndicatorStyle?: string; + suggestedActionsVisualKeyboardIndicatorStyle: string | undefined; /** Suggested actions: Visual keyboard indicator width for the container. */ - suggestedActionsVisualKeyboardIndicatorWidth?: number; + suggestedActionsVisualKeyboardIndicatorWidth: number | undefined; /** * Timestamp @@ -764,34 +672,34 @@ type StyleOptions = { * `false` - never group timestamps * `true` - group all timestamps */ - groupTimestamp?: boolean | number; + groupTimestamp: boolean | number | undefined; - sendTimeout?: number | ((activity: WebChatActivity) => number); - sendTimeoutForAttachments?: number; + sendTimeout: number | ((activity: WebChatActivity) => number) | undefined; + sendTimeoutForAttachments: number | undefined; /** * Timestamp color default value is subtle */ - timestampColor?: string; + timestampColor: string | undefined; - timestampFormat?: 'absolute' | 'relative'; + timestampFormat: 'absolute' | 'relative' | undefined; /** * Transcript styling */ - transcriptTerminatorBackgroundColor?: string; - transcriptTerminatorBorderRadius?: number | string; - transcriptTerminatorColor?: string; - transcriptTerminatorFontSize?: number | string; + transcriptTerminatorBackgroundColor: string | undefined; + transcriptTerminatorBorderRadius: number | string | undefined; + transcriptTerminatorColor: string | undefined; + transcriptTerminatorFontSize: number | string | undefined; - transcriptActivityVisualKeyboardIndicatorColor?: string; - transcriptActivityVisualKeyboardIndicatorStyle?: string; - transcriptActivityVisualKeyboardIndicatorWidth?: number | string; + transcriptActivityVisualKeyboardIndicatorColor: string | undefined; + transcriptActivityVisualKeyboardIndicatorStyle: string | undefined; + transcriptActivityVisualKeyboardIndicatorWidth: number | string | undefined; - transcriptVisualKeyboardIndicatorColor?: string; - transcriptVisualKeyboardIndicatorStyle?: string; - transcriptVisualKeyboardIndicatorWidth?: number | string; + transcriptVisualKeyboardIndicatorColor: string | undefined; + transcriptVisualKeyboardIndicatorStyle: string | undefined; + transcriptVisualKeyboardIndicatorWidth: number | string | undefined; /** * Transcript overlay button @@ -805,35 +713,27 @@ type StyleOptions = { * - `"any"` will show when there are any offscreen messages * - `false` will always hide the button */ - scrollToEndButtonBehavior?: false | 'any' | 'unread'; + scrollToEndButtonBehavior: false | 'any' | 'unread' | undefined; /** Font size of the new message button. */ - scrollToEndButtonFontSize?: number | string; + scrollToEndButtonFontSize: number | string | undefined; - /** - * Font size of the new message button. - * - * @deprecated Since 4.14.0: Renamed to {@linkcode scrollToEndButtonFontSize}. - */ - // TODO: [P4] Will be removed on or after 2023-06-02. - newMessagesButtonFontSize?: number | string; - - transcriptOverlayButtonBackground?: string; - transcriptOverlayButtonBackgroundOnDisabled?: string; - transcriptOverlayButtonBackgroundOnFocus?: string; - transcriptOverlayButtonBackgroundOnHover?: string; - transcriptOverlayButtonColor?: string; - transcriptOverlayButtonColorOnDisabled?: string; + transcriptOverlayButtonBackground: string | undefined; + transcriptOverlayButtonBackgroundOnDisabled: string | undefined; + transcriptOverlayButtonBackgroundOnFocus: string | undefined; + transcriptOverlayButtonBackgroundOnHover: string | undefined; + transcriptOverlayButtonColor: string | undefined; + transcriptOverlayButtonColorOnDisabled: string | undefined; /** * Default value is transcriptOverlayButtonColor */ - transcriptOverlayButtonColorOnFocus?: string; + transcriptOverlayButtonColorOnFocus: string | undefined; /** * Default value is transcriptOverlayButtonColor */ - transcriptOverlayButtonColorOnHover?: string; + transcriptOverlayButtonColorOnHover: string | undefined; /** * Toast UI @@ -842,64 +742,64 @@ type StyleOptions = { /** * New debounce timeout value only affects new notifications. */ - notificationDebounceTimeout?: number; + notificationDebounceTimeout: number | undefined; - hideToaster?: boolean; - toasterHeight?: number | string; - toasterMaxHeight?: number | string; - toasterSingularMaxHeight?: number | string; - toastFontSize?: number | string; - toastIconWidth?: number | string; - toastSeparatorColor?: string; - toastTextPadding?: number | string; + hideToaster: boolean | undefined; + toasterHeight: number | string | undefined; + toasterMaxHeight: number | string | undefined; + toasterSingularMaxHeight: number | string | undefined; + toastFontSize: number | string | undefined; + toastIconWidth: number | string | undefined; + toastSeparatorColor: string | undefined; + toastTextPadding: number | string | undefined; - toastErrorBackgroundColor?: string; - toastErrorColor?: string; - toastInfoBackgroundColor?: string; - toastInfoColor?: string; - toastSuccessBackgroundColor?: string; - toastSuccessColor?: string; - toastWarnBackgroundColor?: string; - toastWarnColor?: string; + toastErrorBackgroundColor: string | undefined; + toastErrorColor: string | undefined; + toastInfoBackgroundColor: string | undefined; + toastInfoColor: string | undefined; + toastSuccessBackgroundColor: string | undefined; + toastSuccessColor: string | undefined; + toastWarnBackgroundColor: string | undefined; + toastWarnColor: string | undefined; /** * Typing animation */ - typingAnimationBackgroundImage?: string; - typingAnimationDuration?: number; - typingAnimationHeight?: number | string; - typingAnimationWidth?: number | string; + typingAnimationBackgroundImage: string | undefined; + typingAnimationDuration: number | undefined; + typingAnimationHeight: number | string | undefined; + typingAnimationWidth: number | string | undefined; /** * Upload thumbnail */ - enableUploadThumbnail?: boolean; - uploadThumbnailContentType?: string; - uploadThumbnailHeight?: number; - uploadThumbnailQuality?: number; - uploadThumbnailWidth?: number; + enableUploadThumbnail: boolean | undefined; + uploadThumbnailContentType: string | undefined; + uploadThumbnailHeight: number | undefined; + uploadThumbnailQuality: number | undefined; + uploadThumbnailWidth: number | undefined; /** * Video */ - videoHeight?: number | string; + videoHeight: number | string | undefined; /** * Maximum message length in characters * * @default 2000 */ - maxMessageLength?: number; + maxMessageLength: number | undefined; /** * The node to place Web Chat styles into. Needed when using as a Web Component. * * @default document.head */ - stylesRoot?: Node; + stylesRoot: Node | undefined; /** * Border animation @@ -912,7 +812,7 @@ type StyleOptions = { * * New in 4.19.0. */ - borderAnimationColor1?: string; + borderAnimationColor1: string | undefined; /** * Border animation 2nd color * @@ -920,7 +820,7 @@ type StyleOptions = { * * New in 4.19.0. */ - borderAnimationColor2?: string; + borderAnimationColor2: string | undefined; /** * Border animation 3rd color * @@ -928,7 +828,7 @@ type StyleOptions = { * * New in 4.19.0. */ - borderAnimationColor3?: string; + borderAnimationColor3: string | undefined; /** * Code block theme @@ -940,7 +840,7 @@ type StyleOptions = { * * New in 4.19.0. */ - codeBlockTheme?: 'github-light-default' | 'github-dark-default'; + codeBlockTheme: 'github-light-default' | 'github-dark-default' | undefined; /** * (EXPERIMENTAL) Feedback buttons placement @@ -954,7 +854,7 @@ type StyleOptions = { * * New in 4.19.0. */ - feedbackActionsPlacement?: 'activity-actions' | 'activity-status'; + feedbackActionsPlacement: 'activity-actions' | 'activity-status' | undefined; /** * Use continuous mode for speech recognition. Default to `false`. @@ -964,21 +864,21 @@ type StyleOptions = { * * @see https://github.com/microsoft/BotFramework-WebChat/pull/5426 */ - speechRecognitionContinuous?: boolean | undefined; + speechRecognitionContinuous: boolean | undefined; /** * Whether part groups are open by default. * * @default true */ - partGroupDefaultOpen?: boolean | undefined; + partGroupDefaultOpen: boolean | undefined; /** * Whether references (citation link definitions) are open by default. * * @default true */ - referenceListDefaultOpen?: boolean | undefined; + referenceListDefaultOpen: boolean | undefined; /** * Defines how activities are being grouped by (in the order of appearance in the array). Default to `['sender', 'status', 'part']` or `sender,status` in CSS. @@ -987,7 +887,7 @@ type StyleOptions = { * * To add new groupings, configure `groupActivitiesMiddleware` to output extra groups. Then, add the group names to `styleOptions.groupActivitiesBy`. */ - groupActivitiesBy?: readonly string[] | undefined; + groupActivitiesBy: readonly string[] | undefined; /** * Send box: maximum number of attachment item to preview as thumbnail before showing as text-only. @@ -995,14 +895,14 @@ type StyleOptions = { * * @default 114 */ - sendBoxAttachmentBarMaxHeight?: number; + sendBoxAttachmentBarMaxHeight: number | undefined; /** * Send box: maximum number of attachment item to preview as thumbnail before showing as list item. * * @default 3 */ - sendBoxAttachmentBarMaxThumbnail?: number; + sendBoxAttachmentBarMaxThumbnail: number | undefined; /** * Indicates if file upload should be disabled. @@ -1011,7 +911,7 @@ type StyleOptions = { * * New in 4.19.0. */ - disableFileUpload?: boolean; + disableFileUpload: boolean | undefined; /** * Controls microphone button visibility in Fluent theme send box. * @@ -1020,28 +920,59 @@ type StyleOptions = { * * @default 'auto' */ - showMicrophoneButton?: 'auto' | 'hide'; + showMicrophoneButton: 'auto' | 'hide' | undefined; }; // StrictStyleOptions is only used internally in Web Chat and for simplifying our code: // 1. Allow developers to set the "bubbleNubOffset" option as "top" (string), but when we normalize them, we will convert it to 0 (number); // 2. Renamed/deprecated options, only the newer option will be kept, the older option will be dropped. // Internally, no code should use the deprecated value except the migration code. -type StrictStyleOptions = Required< - Omit< - StyleOptions, - | 'bubbleImageHeight' - | 'bubbleMaxWidth' - | 'bubbleMinWidth' - | 'hideScrollToEndButton' - | 'hideUploadButton' - | 'newMessagesButtonFontSize' - > -> & { - bubbleFromUserNubOffset: number; - bubbleNubOffset: number; - emojiSet: false | Record; +type StyleOptions = Partial> & { + /** + * Specifies the fixed height of the bubble for image, default to unset. + * + * @deprecated Use `bubbleImageMaxHeight` and `bubbleImageMinHeight` instead. To mimick behavior before deprecation, set both options to 240px. + */ + bubbleImageHeight?: number | undefined; + + /* @deprecated Please use `bubbleAttachmentMaxWidth` and `bubbleMessageMaxWidth` instead. */ + bubbleMaxWidth?: number | undefined; + /* @deprecated Please use `bubbleAttachmentMaxWidth` and `bubbleMessageMaxWidth` instead. */ + bubbleMinWidth?: number | undefined; + + /** + * Indicates if the upload file button should be hidden. + * + * @default false + * + * @deprecated deprecated since 4.18.0: obsolated by {@linkcode disableFileUpload}. This option will be removed on or after 2027-07-14. + */ + hideUploadButton?: boolean | undefined; + + /** + * Nub offset 'bottom' will render nub at the bottom + * A positive or negative number will shift nub offset up/down + * "top" is equivalent to positive zero. + * "bottom" is equivalent to negative zero. + */ + bubbleFromUserNubOffset?: number | 'bottom' | 'top' | undefined; + + /** + * Nub offset ''bottom' will render nub at the bottom + * A positive or negative number will shift nub offset up/down + * "top" is equivalent to positive zero. + * "bottom" is equivalent to negative zero. + */ + bubbleNubOffset?: number | 'bottom' | 'top' | undefined; + + /** + * Emoji styling + * If true, Web Chat's default set of emoji will be enabled. See patchStyleOptions.js for default list. + * A custom object will enable unicode emoji specified by the developer. + * key: emoticon + * value: unicode emoji + */ + emojiSet?: boolean | Record | undefined; }; -export default StyleOptions; -export { StrictStyleOptions }; +export { type StrictStyleOptions, type StyleOptions }; diff --git a/packages/api/src/boot/deprecated/decorator.ts b/packages/api/src/boot/deprecated/decorator.ts new file mode 100644 index 0000000000..72b09ad1ed --- /dev/null +++ b/packages/api/src/boot/deprecated/decorator.ts @@ -0,0 +1,5 @@ +export * from '../decorator'; + +console.warn( + 'Import from "botframework-webchat-api/decorator" is being deprecated, please import from "botframework-webchat-api/decorator.js" instead. This entrypoint will be removed on or after 2028-04-24.' +); diff --git a/packages/api/src/boot/deprecated/graph.ts b/packages/api/src/boot/deprecated/graph.ts new file mode 100644 index 0000000000..643a02e1d6 --- /dev/null +++ b/packages/api/src/boot/deprecated/graph.ts @@ -0,0 +1,5 @@ +export * from '../graph'; + +console.warn( + 'Import from "botframework-webchat-api/graph" is deprecated, please import from "botframework-webchat-api/graph.js" instead. This entrypoint will be removed on or after 2028-04-24.' +); diff --git a/packages/api/src/boot/deprecated/hook.ts b/packages/api/src/boot/deprecated/hook.ts new file mode 100644 index 0000000000..f4d410bd5b --- /dev/null +++ b/packages/api/src/boot/deprecated/hook.ts @@ -0,0 +1,5 @@ +export * from '../hook'; + +console.warn( + 'Import from "botframework-webchat-api/hook" is deprecated, please import from "botframework-webchat-api/hook.js" instead. This entrypoint will be removed on or after 2028-04-24.' +); diff --git a/packages/api/src/boot/deprecated/internal.ts b/packages/api/src/boot/deprecated/internal.ts new file mode 100644 index 0000000000..f4bdafefd4 --- /dev/null +++ b/packages/api/src/boot/deprecated/internal.ts @@ -0,0 +1,5 @@ +export * from '../internal'; + +console.warn( + 'Import from "botframework-webchat-api/internal" is deprecated, please import from "botframework-webchat-api/internal.js" instead. This entrypoint will be removed on or after 2028-04-24.' +); diff --git a/packages/api/src/boot/deprecated/middleware.ts b/packages/api/src/boot/deprecated/middleware.ts new file mode 100644 index 0000000000..ad158792ee --- /dev/null +++ b/packages/api/src/boot/deprecated/middleware.ts @@ -0,0 +1,5 @@ +export * from '../middleware'; + +console.warn( + 'Import from "botframework-webchat-api/middleware" is deprecated, please import from "botframework-webchat-api/middleware.js" instead. This entrypoint will be removed on or after 2028-04-24.' +); diff --git a/packages/api/src/decorator/private/templateDecorator.tsx b/packages/api/src/decorator/private/templateDecorator.tsx index f4269248a9..cb80e1f6c6 100644 --- a/packages/api/src/decorator/private/templateDecorator.tsx +++ b/packages/api/src/decorator/private/templateDecorator.tsx @@ -63,8 +63,6 @@ export default function templateDecorator< const buildMiddleware = useBuildComponentCallback(); const Proxy = useMemo(() => buildMiddleware(undefined, { fallbackComponent: FinalComponent }), [buildMiddleware]); - // is middleware component and is static. - // eslint-disable-next-line react-hooks/static-components return Proxy && ; } diff --git a/packages/api/src/defaultStyleOptions.ts b/packages/api/src/defaultStyleOptions.ts index e9ea89c7f9..d0239b5ed5 100644 --- a/packages/api/src/defaultStyleOptions.ts +++ b/packages/api/src/defaultStyleOptions.ts @@ -1,7 +1,7 @@ /* eslint no-magic-numbers: "off" */ -import StyleOptions from './StyleOptions'; +import { type StrictStyleOptions } from './StyleOptions'; -function fontFamily(fonts) { +function fontFamily(fonts: readonly string[]): string { return fonts.map(font => `'${font}'`).join(', '); } @@ -9,7 +9,7 @@ const DEFAULT_ACCENT = '#0063B1'; const DEFAULT_SUBTLE = '#767676'; // With contrast 4.5:1 to white const PADDING_REGULAR = 10; -const DEFAULT_OPTIONS: Required = { +const DEFAULT_OPTIONS: StrictStyleOptions = { // Basic styling accent: DEFAULT_ACCENT, backgroundColor: 'White', @@ -54,11 +54,8 @@ const DEFAULT_OPTIONS: Required = { bubbleFromUserNubOffset: 0, bubbleFromUserNubSize: undefined, bubbleFromUserTextColor: 'Black', - bubbleImageHeight: undefined, bubbleImageMaxHeight: 240, // Based on previously default `bubbleImageHeight` of 240px. bubbleImageMinHeight: 240, // TODO: Should change to 180px. Based on 320px bubble width showing a 16:9 image, or `320 / (16 / 9)`. 320px bubble width is based on 360px wide of the chat canvas. - bubbleMaxWidth: undefined, // Deprecated. - bubbleMinWidth: undefined, // Deprecated. bubbleAttachmentMaxWidth: 480, // Based off screen width = 600px bubbleAttachmentMinWidth: 250, // min screen width = 300px; Microsoft Edge requires 372px (https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/13621468/) bubbleMessageMaxWidth: 480, // Based off screen width = 600px @@ -80,7 +77,7 @@ const DEFAULT_OPTIONS: Required = { slowConnectionAfter: 15000, // Emoji - emojiSet: true, + emojiSet: undefined, // Live region - Accessibility internalLiveRegionFadeAfter: 1000, @@ -92,7 +89,6 @@ const DEFAULT_OPTIONS: Required = { markdownRenderHTML: true, // Scroll behavior - hideScrollToEndButton: undefined, // Deprecated as of 4.14.0. Use "scrollToEndButtonBehavior" instead. Remove on or after 2023-06-02. autoScrollSnapOnActivity: false, autoScrollSnapOnActivityOffset: 0, autoScrollSnapOnPage: false, @@ -102,7 +98,6 @@ const DEFAULT_OPTIONS: Required = { disableFileUpload: false, hideSendBox: false, hideTelephoneKeypadButton: true, - hideUploadButton: undefined, // Deprecated as of 4.19.0. microphoneButtonColorOnDictate: '#F33', sendAttachmentOn: 'send', sendBoxBackground: 'White', @@ -197,16 +192,6 @@ const DEFAULT_OPTIONS: Required = { suggestedActionKeyboardFocusIndicatorBorderWidth: 1, suggestedActionKeyboardFocusIndicatorInset: 2, - suggestedActionActiveBackground: undefined, // Deprecated as of 4.15.0. Remove on or after 2023-09-16. - suggestedActionBackground: undefined, // Deprecated as of 4.15.0. Remove on or after 2023-09-16. - suggestedActionDisabledBackground: undefined, // Deprecated as of 4.15.0. Remove on or after 2023-09-16. - suggestedActionDisabledBorderColor: undefined, // Deprecated as of 4.15.0. Remove on or after 2023-09-16. - suggestedActionDisabledBorderStyle: undefined, // Deprecated as of 4.15.0. Remove on or after 2023-09-16. - suggestedActionDisabledBorderWidth: undefined, // Deprecated as of 4.15.0. Remove on or after 2023-09-16. - suggestedActionDisabledTextColor: undefined, // Deprecated as of 4.15.0. Remove on or after 2023-09-16. - suggestedActionFocusBackground: undefined, // Deprecated as of 4.15.0. Remove on or after 2023-09-16. - suggestedActionHoverBackground: undefined, // Deprecated as of 4.15.0. Remove on or after 2023-09-16. - // Suggested actions carousel layout suggestedActionsCarouselFlipperCursor: undefined, suggestedActionsCarouselFlipperBoxWidth: 40, @@ -235,7 +220,6 @@ const DEFAULT_OPTIONS: Required = { // Transcript overlay buttons scrollToEndButtonBehavior: 'unread', scrollToEndButtonFontSize: '85%', - newMessagesButtonFontSize: undefined, // Deprecated as of 4.14.0, renamed to "scrollToEndButtonFontSize". Remove on or after 2023-06-02. transcriptOverlayButtonBackground: 'rgba(0, 0, 0, .6)', transcriptOverlayButtonBackgroundOnDisabled: 'rgba(0, 0, 0, .6)', transcriptOverlayButtonBackgroundOnFocus: 'rgba(0, 0, 0, .8)', diff --git a/packages/api/src/hooks/Composer.tsx b/packages/api/src/hooks/Composer.tsx index b229bc517e..8a8c30dde3 100644 --- a/packages/api/src/hooks/Composer.tsx +++ b/packages/api/src/hooks/Composer.tsx @@ -45,7 +45,7 @@ import React, { useCallback, useEffect, useMemo, useRef, useState, type ReactNod import { Provider } from 'react-redux'; import updateIn from 'simple-update-in'; -import type StyleOptions from '../StyleOptions'; +import { type StyleOptions } from '../StyleOptions'; import errorBoxTelemetryPolymiddleware from '../errorBox/errorBoxTelemetryPolymiddleware'; import PrecompiledGlobalize from '../external/PrecompiledGlobalize'; import usePonyfill from '../hooks/usePonyfill'; @@ -297,7 +297,7 @@ const ComposerCore = ({ sendTypingIndicator, toastMiddleware, typingIndicatorMiddleware, - uiState, + uiState: rawUIState, userID, username }: ComposerCoreProps) => { @@ -310,7 +310,7 @@ const ComposerCore = ({ const patchedDir = useMemo(() => (dir === 'ltr' || dir === 'rtl' ? dir : 'auto'), [dir]); const patchedGrammars = useMemo(() => grammars || [], [grammars]); - uiState = parseUIState(uiState, disabled); + const uiState = parseUIState(rawUIState, disabled); useEffect(() => { dispatch(setLanguage(locale)); diff --git a/packages/api/src/index.ts b/packages/api/src/index.ts index 2b2cff9478..1ebd07ce62 100644 --- a/packages/api/src/index.ts +++ b/packages/api/src/index.ts @@ -31,7 +31,7 @@ export { type SendBoxToolbarMiddlewareRequest } from './middleware/SendBoxToolbarMiddleware'; export { default as normalizeStyleOptions } from './normalizeStyleOptions'; -export { type StrictStyleOptions, type default as StyleOptions } from './StyleOptions'; +export { type StrictStyleOptions, type StyleOptions } from './StyleOptions'; export { type ActivityStatusMiddleware, type RenderActivityStatus } from './types/ActivityStatusMiddleware'; export { type AttachmentForScreenReaderComponentFactory, diff --git a/packages/api/src/normalizeStyleOptions.ts b/packages/api/src/normalizeStyleOptions.ts index 6b20be7ba1..3acfd4059f 100644 --- a/packages/api/src/normalizeStyleOptions.ts +++ b/packages/api/src/normalizeStyleOptions.ts @@ -1,7 +1,7 @@ import { warnOnce } from '@msinternal/botframework-webchat-base/utils'; import defaultStyleOptions from './defaultStyleOptions'; -import StyleOptions, { StrictStyleOptions } from './StyleOptions'; +import type { StrictStyleOptions, StyleOptions } from './StyleOptions'; const bubbleImageHeightDeprecation = warnOnce( '"styleOptions.bubbleImageHeight" has been deprecated. Use "styleOptions.bubbleImageMaxHeight" and "styleOptions.bubbleImageMinHeight" instead. This deprecation migration will be removed on or after 2026-07-05.' @@ -15,37 +15,33 @@ const bubbleMinWidthDeprecation = warnOnce( '"styleOptions.bubbleMinWidth" has been deprecated. Use "styleOptions.bubbleAttachmentMinWidth" and "styleOptions.bubbleMessageMinWidth" instead. This deprecation migration will be removed on or after 2026-07-05.' ); -const hideScrollToEndButtonDeprecation = warnOnce( - '"styleOptions.hideScrollToEndButton" has been deprecated. To hide scroll to end button, set "scrollToEndBehavior" to false. This deprecation migration will be removed on or after 2023-06-02.' +const hideUploadButtonDeprecation = warnOnce( + '`styleOptions.hideUploadButton` is being deprecated in favor of `styleOptions.disableFileUpload`. The option will be removed on or after 2027-07-14.' ); -const newMessagesButtonFontSizeDeprecation = warnOnce( - '"styleOptions.newMessagesButtonFontSize" has been renamed to "styleOptions.scrollToEndButtonFontSize". This deprecation migration will be removed on or after 2023-06-02.' -); - -const suggestedActionBackgroundDeprecation = warnOnce( - '"styleOptions.suggestedActionBackground" has been deprecated. Please use "styleOptions.suggestedActionBackgroundColor" instead. This deprecation migration will be removed on or after 2021-09-16.' -); - -const suggestedActionXXXBackgroundDeprecation = warnOnce( - '"styleOptions.suggestedActionXXXBackground" has been deprecated. Please use "styleOptions.suggestedActionBackgroundColorOnXXX" instead. This deprecation migration will be removed on or after 2021-09-16.' -); - -const suggestedActionDisabledDeprecation = warnOnce( - '"styleOptions.suggestedActionDisabledXXX" has been renamed to "styleOptions.suggestedActionXXXOnDisabled". This deprecation migration will be removed on or after 2021-09-16.' -); +const slowConnectionAfterInvalidValue = warnOnce('"slowConnectionAfter" cannot be negative, will set to 0.'); // TODO: [P4] We should add a notice for people who want to use "styleSet" instead of "styleOptions". // "styleSet" is actually CSS stylesheet and it is based on the DOM tree. // DOM tree may change from time to time, thus, maintaining "styleSet" becomes a constant effort. -// eslint-disable-next-line complexity export default function normalizeStyleOptions({ - hideScrollToEndButton, - newMessagesButtonFontSize, + bubbleImageHeight, + bubbleMaxWidth, + bubbleMinWidth, + disableFileUpload, + hideUploadButton, + slowConnectionAfter, ...options }: StyleOptions = {}): StrictStyleOptions { - const filledOptions: Required = { ...defaultStyleOptions, ...options }; + const filledOptions: Required = { + ...defaultStyleOptions, + bubbleImageHeight: undefined, + bubbleMaxWidth: undefined, + bubbleMinWidth: undefined, + hideUploadButton: undefined, + ...options + }; // Keep this list flat (no nested style) and serializable (no functions) const { bubbleFromUserNubOffset, bubbleNubOffset, emojiSet } = filledOptions; @@ -70,7 +66,7 @@ export default function normalizeStyleOptions({ normalizedBubbleNubOffset = bubbleNubOffset; } - if (emojiSet === true) { + if (emojiSet === true || typeof emojiSet === 'undefined') { normalizedEmojiSet = { ':)': '😊', ':-)': '😊', @@ -98,6 +94,8 @@ export default function normalizeStyleOptions({ ' 0); - } - - // Rectify deprecated "hideUploadButton" into "disableFileUpload" - if (styleOptions.hideUploadButton !== undefined) { - console.warn( - 'botframework-webchat: `styleOptions.hideUploadButton` is being deprecated in favor of `styleOptions.disableFileUpload`. The option will be removed on or after 2027-07-14.' - ); - - styleOptions = updateIn(styleOptions, ['disableFileUpload'], () => !!styleOptions.hideUploadButton); - } - - return styleOptions; -} diff --git a/packages/api/src/providers/ActivitySendStatus/ActivitySendStatusComposer.tsx b/packages/api/src/providers/ActivitySendStatus/ActivitySendStatusComposer.tsx index 8bcbad8148..aa8de37675 100644 --- a/packages/api/src/providers/ActivitySendStatus/ActivitySendStatusComposer.tsx +++ b/packages/api/src/providers/ActivitySendStatus/ActivitySendStatusComposer.tsx @@ -1,5 +1,5 @@ import React, { useEffect, useMemo, useRef, type ReactNode } from 'react'; -import { querySendStatusFromOutgoingActivity } from 'botframework-webchat-core/activity'; +import { querySendStatusFromOutgoingActivity } from 'botframework-webchat-core/activity.js'; import { useActivities, usePonyfill } from '../../hooks/index'; import useForceRender from '../../hooks/internal/useForceRender'; diff --git a/packages/api/src/providers/ActivityTyping/ActivityTypingComposer.tsx b/packages/api/src/providers/ActivityTyping/ActivityTypingComposer.tsx index 6dda9f0e2d..eeb986414d 100644 --- a/packages/api/src/providers/ActivityTyping/ActivityTypingComposer.tsx +++ b/packages/api/src/providers/ActivityTyping/ActivityTypingComposer.tsx @@ -1,5 +1,5 @@ import { getActivityLivestreamingMetadata, type WebChatActivity } from 'botframework-webchat-core'; -import { queryReceivedAtFromActivity } from 'botframework-webchat-core/activity'; +import { queryReceivedAtFromActivity } from 'botframework-webchat-core/activity.js'; import { iteratorFind } from 'iter-fest'; import React, { memo, useCallback, useMemo, type ReactNode } from 'react'; diff --git a/packages/api/src/providers/ActivityTyping/private/useReduceActivities.spec.tsx b/packages/api/src/providers/ActivityTyping/private/useReduceActivities.spec.tsx index 977822826e..949e96260b 100644 --- a/packages/api/src/providers/ActivityTyping/private/useReduceActivities.spec.tsx +++ b/packages/api/src/providers/ActivityTyping/private/useReduceActivities.spec.tsx @@ -4,7 +4,7 @@ import { render, type RenderResult } from '@testing-library/react'; import type { WebChatActivity } from 'botframework-webchat-core'; -import type { LocalId } from 'botframework-webchat-core/activity'; +import type { LocalId } from 'botframework-webchat-core/activity.js'; import React, { type ComponentType } from 'react'; import { type useActivities as UseActivitiesType } from '../../../hooks'; import type UseReduceActivitiesType from './useReduceActivities'; diff --git a/packages/api/src/providers/GroupActivities/private/createDefaultGroupActivitiesMiddleware.ts b/packages/api/src/providers/GroupActivities/private/createDefaultGroupActivitiesMiddleware.ts index 72dcb16f81..94bc841c70 100644 --- a/packages/api/src/providers/GroupActivities/private/createDefaultGroupActivitiesMiddleware.ts +++ b/packages/api/src/providers/GroupActivities/private/createDefaultGroupActivitiesMiddleware.ts @@ -1,8 +1,8 @@ import { getOrgSchemaMessage, type GlobalScopePonyfill, type WebChatActivity } from 'botframework-webchat-core'; -import { IdentifierSchema } from 'botframework-webchat-core/graph'; +import { IdentifierSchema } from 'botframework-webchat-core/graph.js'; import { safeParse } from 'valibot'; -import { querySendStatusFromOutgoingActivity } from 'botframework-webchat-core/activity'; +import { querySendStatusFromOutgoingActivity } from 'botframework-webchat-core/activity.js'; import type GroupActivitiesMiddleware from '../../../types/GroupActivitiesMiddleware'; import { type SendStatus } from '../../../types/SendStatus'; @@ -97,8 +97,8 @@ export default function createDefaultGroupActivitiesMiddleware({ return { ...next({ activities }), part: bin(messages, ([last], [current]) => { - const lastPartIdResult = safeParse(IdentifierSchema, last?.isPartOf?.['@id']); - const currentPartIdResult = safeParse(IdentifierSchema, current?.isPartOf?.['@id']); + const lastPartIdResult = safeParse(IdentifierSchema, last?.isPartOf[0]?.['@id']); + const currentPartIdResult = safeParse(IdentifierSchema, current?.isPartOf[0]?.['@id']); return ( lastPartIdResult.success && diff --git a/packages/api/src/providers/StyleOptions/StyleOptionsComposer.tsx b/packages/api/src/providers/StyleOptions/StyleOptionsComposer.tsx index 9744ed4d8e..095e3636dd 100644 --- a/packages/api/src/providers/StyleOptions/StyleOptionsComposer.tsx +++ b/packages/api/src/providers/StyleOptions/StyleOptionsComposer.tsx @@ -2,7 +2,7 @@ import { reactNode, validateProps } from '@msinternal/botframework-webchat-react import React, { memo, useMemo } from 'react'; import { custom, object, optional, pipe, readonly, safeParse, type InferInput } from 'valibot'; -import type StyleOptions from '../../StyleOptions'; +import { type StyleOptions } from '../../StyleOptions'; import StyleOptionsContext, { StyleOptionsContextType, useStyleOptionsContext } from './private/StyleOptionsContext'; import rectifyStyleOptions from './private/rectifyStyleOptions'; diff --git a/packages/api/src/providers/StyleOptions/private/rectifyStyleOptions.ts b/packages/api/src/providers/StyleOptions/private/rectifyStyleOptions.ts index fd97656e52..f2e1dfc846 100644 --- a/packages/api/src/providers/StyleOptions/private/rectifyStyleOptions.ts +++ b/packages/api/src/providers/StyleOptions/private/rectifyStyleOptions.ts @@ -1,7 +1,6 @@ -import type { StrictStyleOptions, default as StyleOptions } from '../../../StyleOptions'; +import type { StrictStyleOptions, StyleOptions } from '../../../StyleOptions'; import normalizeStyleOptions from '../../../normalizeStyleOptions'; -import patchStyleOptionsFromDeprecatedProps from '../../../patchStyleOptionsFromDeprecatedProps'; export default function rectifyStyleOptions(styleOptions: StyleOptions): StrictStyleOptions { - return normalizeStyleOptions(patchStyleOptionsFromDeprecatedProps(styleOptions)); + return normalizeStyleOptions(styleOptions); } diff --git a/packages/api/src/tsconfig.json b/packages/api/src/tsconfig.json index 10186e2736..8a3e5e723b 100644 --- a/packages/api/src/tsconfig.json +++ b/packages/api/src/tsconfig.json @@ -1,7 +1,8 @@ { "compilerOptions": { "downlevelIteration": true, - "resolveJsonModule": true, // Required for localization files + "resolveJsonModule": true, // Required for localization files. + "strict": false, // We should flip this occasionally and fix all typing issues. "types": ["dom-speech-recognition"] }, "extends": "@msinternal/botframework-webchat-tsconfig/legacy" diff --git a/packages/api/src/utils/isObject.js b/packages/api/src/utils/isObject.ts similarity index 57% rename from packages/api/src/utils/isObject.js rename to packages/api/src/utils/isObject.ts index 3b62be7c8f..dbfeeb6eaf 100644 --- a/packages/api/src/utils/isObject.js +++ b/packages/api/src/utils/isObject.ts @@ -1,5 +1,5 @@ const { toString } = {}; -export default function isObject(obj) { +export default function isObject(obj: unknown): boolean { return toString.call(obj) === '[object Object]'; } diff --git a/packages/api/tsup.config.ts b/packages/api/tsup.config.ts index ef99ac1eed..9b34328dfe 100644 --- a/packages/api/tsup.config.ts +++ b/packages/api/tsup.config.ts @@ -10,7 +10,13 @@ const commonConfig = applyConfig(config => ({ 'botframework-webchat-api.graph': './src/boot/graph.ts', 'botframework-webchat-api.hook': './src/boot/hook.ts', 'botframework-webchat-api.internal': './src/boot/internal.ts', - 'botframework-webchat-api.middleware': './src/boot/middleware.ts' + 'botframework-webchat-api.middleware': './src/boot/middleware.ts', + // Deprecated entrypoint without .js, to be removed on or after 2028-04-24. + 'botframework-webchat-api.deprecated.decorator': './src/boot/deprecated/decorator.ts', + 'botframework-webchat-api.deprecated.graph': './src/boot/deprecated/graph.ts', + 'botframework-webchat-api.deprecated.hook': './src/boot/deprecated/hook.ts', + 'botframework-webchat-api.deprecated.internal': './src/boot/deprecated/internal.ts', + 'botframework-webchat-api.deprecated.middleware': './src/boot/deprecated/middleware.ts' } })); diff --git a/packages/base/package.json b/packages/base/package.json index e5cf6f20d8..bee259447b 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -73,11 +73,11 @@ "pinDependencies": {}, "devDependencies": { "@msinternal/botframework-webchat-tsconfig": "0.0.0-0", - "@types/node": "^25.3.3", - "core-js-pure": "^3.48.0", + "@types/node": "^25.6.0", + "core-js-pure": "^3.49.0", "cross-env": "^10.1.0", - "type-fest": "^5.4.4", - "typescript": "^5.9.3" + "type-fest": "^5.6.0", + "typescript": "^6.0.3" }, "peerDependencies": { "valibot": "1.2.0" diff --git a/packages/bundle/esbuild.static.mjs b/packages/bundle/esbuild.static.mjs index 863974e53e..c0d03bc646 100644 --- a/packages/bundle/esbuild.static.mjs +++ b/packages/bundle/esbuild.static.mjs @@ -148,7 +148,14 @@ const IGNORED_OWN_PACKAGES = [ } for (const key of getKeysRecursive(packageJson.exports)) { - key.startsWith('.') && allOwnExports.add(`${packageJson.name}${key.slice(1)}`); + if (key.startsWith('.')) { + if (key === '.') { + allOwnExports.add(`${packageJson.name}`); + } else if (key.endsWith('.js')) { + // ./filename.js -> /filename + allOwnExports.add(`${packageJson.name}${key.slice(1, -3)}`); + } + } } } @@ -165,6 +172,7 @@ const IGNORED_OWN_PACKAGES = [ 'botframework-webchat/hook': './src/boot/exports/hook.ts', 'botframework-webchat/internal': './src/boot/exports/internal.ts', 'botframework-webchat/middleware': './src/boot/exports/middleware.ts', + 'botframework-webchat/schema': './src/boot/exports/schema.ts', // TODO: [P2] We can remove the `Array.from()` after bumping Node.js. ...Array.from(allOwnExports.keys()).reduce((entryPoints, key) => ({ ...entryPoints, [key]: key }), {}) }; diff --git a/packages/bundle/package.json b/packages/bundle/package.json index 16140c45f9..d3c4d104b8 100644 --- a/packages/bundle/package.json +++ b/packages/bundle/package.json @@ -16,6 +16,16 @@ } }, "./component": { + "import": { + "types": "./dist/botframework-webchat.deprecated.component.d.mts", + "default": "./dist/botframework-webchat.deprecated.component.mjs" + }, + "require": { + "types": "./dist/botframework-webchat.deprecated.component.d.ts", + "default": "./dist/botframework-webchat.deprecated.component.js" + } + }, + "./component.js": { "import": { "types": "./dist/botframework-webchat.component.d.mts", "default": "./dist/botframework-webchat.component.mjs" @@ -26,6 +36,16 @@ } }, "./decorator": { + "import": { + "types": "./dist/botframework-webchat.deprecated.decorator.d.mts", + "default": "./dist/botframework-webchat.deprecated.decorator.mjs" + }, + "require": { + "types": "./dist/botframework-webchat.deprecated.decorator.d.ts", + "default": "./dist/botframework-webchat.deprecated.decorator.js" + } + }, + "./decorator.js": { "import": { "types": "./dist/botframework-webchat.decorator.d.mts", "default": "./dist/botframework-webchat.decorator.mjs" @@ -36,6 +56,16 @@ } }, "./hook": { + "import": { + "types": "./dist/botframework-webchat.deprecated.hook.d.mts", + "default": "./dist/botframework-webchat.deprecated.hook.mjs" + }, + "require": { + "types": "./dist/botframework-webchat.deprecated.hook.d.ts", + "default": "./dist/botframework-webchat.deprecated.hook.js" + } + }, + "./hook.js": { "import": { "types": "./dist/botframework-webchat.hook.d.mts", "default": "./dist/botframework-webchat.hook.mjs" @@ -46,6 +76,16 @@ } }, "./internal": { + "import": { + "types": "./dist/botframework-webchat.deprecated.internal.d.mts", + "default": "./dist/botframework-webchat.deprecated.internal.mjs" + }, + "require": { + "types": "./dist/botframework-webchat.deprecated.internal.d.ts", + "default": "./dist/botframework-webchat.deprecated.internal.js" + } + }, + "./internal.js": { "import": { "types": "./dist/botframework-webchat.internal.d.mts", "default": "./dist/botframework-webchat.internal.mjs" @@ -56,6 +96,16 @@ } }, "./middleware": { + "import": { + "types": "./dist/botframework-webchat.deprecated.middleware.d.mts", + "default": "./dist/botframework-webchat.deprecated.middleware.mjs" + }, + "require": { + "types": "./dist/botframework-webchat.deprecated.middleware.d.ts", + "default": "./dist/botframework-webchat.deprecated.middleware.js" + } + }, + "./middleware.js": { "import": { "types": "./dist/botframework-webchat.middleware.d.mts", "default": "./dist/botframework-webchat.middleware.mjs" @@ -65,6 +115,16 @@ "default": "./dist/botframework-webchat.middleware.js" } }, + "./schema.js": { + "import": { + "types": "./dist/botframework-webchat.schema.d.mts", + "default": "./dist/botframework-webchat.schema.mjs" + }, + "require": { + "types": "./dist/botframework-webchat.schema.d.ts", + "default": "./dist/botframework-webchat.schema.js" + } + }, "./static/*": "./static/*" }, "publishConfig": { @@ -139,6 +199,14 @@ "3.0.6", "we should bump manually" ], + "react": [ + "16.8.6", + "using react@16.8.6 to make sure this is the minimum supported version" + ], + "react-dom": [ + "16.8.6", + "using react-dom@16.8.6 to make sure this is the minimum supported version" + ], "shiki": [ "2", "tsd is complaining about shiki@3 lack of typing for named exports, https://arethetypeswrong.github.io/?p=shiki%403.9.1 says the same thing" @@ -176,7 +244,7 @@ "devDependencies": { "@babel/core": "^7.29.0", "@babel/plugin-transform-runtime": "^7.29.0", - "@babel/preset-env": "^7.29.0", + "@babel/preset-env": "^7.29.2", "@babel/preset-react": "^7.28.5", "@babel/preset-typescript": "^7.28.5", "@msinternal/adaptivecards": "0.0.0-0", @@ -199,24 +267,24 @@ "@msinternal/react-is": "0.0.0-0", "@msinternal/react-umd": "0.0.0-0", "@testduet/given-when-then": "^0.1.0", - "@types/dom-speech-recognition": "^0.0.7", + "@types/dom-speech-recognition": "^0.0.9", "@types/mdast": "^4.0.4", - "@types/node": "^25.3.3", + "@types/node": "^25.6.0", "@types/react": "^16.14.69", "@types/react-dom": "^16.9.25", "@types/uuid": "^8.3.4", - "babel-plugin-istanbul": "^7.0.1", + "babel-plugin-istanbul": "^8.0.0", "babel-plugin-transform-inline-environment-variables": "^0.4.4", "cross-env": "^10.1.0", - "esbuild": "^0.27.3", + "esbuild": "^0.28.0", "micromark-util-types": "^2.0.2", "read-pkg": "^10.1.0", "tsd": "^0.33.0", - "type-fest": "^5.4.4", - "typescript": "^5.9.3" + "type-fest": "^5.6.0", + "typescript": "^6.0.3" }, "dependencies": { - "@babel/runtime": "7.28.6", + "@babel/runtime": "7.29.2", "adaptivecards": "3.0.6", "botframework-directlinejs": "0.15.8", "botframework-directlinespeech-sdk": "0.0.0-0", @@ -224,8 +292,8 @@ "botframework-webchat-component": "0.0.0-0", "botframework-webchat-core": "0.0.0-0", "classnames": "2.5.1", - "core-js": "3.48.0", - "katex": "0.16.33", + "core-js": "3.49.0", + "katex": "0.16.45", "math-random": "2.0.1", "mdast-util-from-markdown": "2.0.3", "memoize-one": "6.0.0", @@ -233,15 +301,15 @@ "micromark-extension-gfm": "3.0.0", "micromark-util-character": "2.1.1", "micromark-util-sanitize-uri": "2.0.1", - "microsoft-cognitiveservices-speech-sdk": "1.48.0", + "microsoft-cognitiveservices-speech-sdk": "1.49.0", "prop-types": "15.8.1", "punycode": "2.3.1", - "sanitize-html": "2.17.1", + "sanitize-html": "2.17.3", "shiki": "2.5.0", "url-search-params-polyfill": "8.2.5", "use-ref-from": "0.2.1", "uuid": "8.3.2", - "valibot": "1.2.0", + "valibot": "1.3.1", "web-speech-cognitive-services": "8.1.4", "whatwg-fetch": "3.6.20" }, diff --git a/packages/bundle/src/adaptiveCards/AdaptiveCardsStyleOptions.ts b/packages/bundle/src/adaptiveCards/AdaptiveCardsStyleOptions.ts index e37e06ad78..b63949f4af 100644 --- a/packages/bundle/src/adaptiveCards/AdaptiveCardsStyleOptions.ts +++ b/packages/bundle/src/adaptiveCards/AdaptiveCardsStyleOptions.ts @@ -1,32 +1,32 @@ /** * Adaptive Cards styling */ -type AdaptiveCardsStyleOptions = { +type StrictAdaptiveCardsStyleOptions = { /** Adaptive Cards: Specify the maximum schema version supported by the Adaptive Card serializer. */ - adaptiveCardsParserMaxVersion?: string; + adaptiveCardsParserMaxVersion: string | undefined; /** * Adaptive Cards styling for 'emphasis' container style */ - cardEmphasisBackgroundColor?: string; + cardEmphasisBackgroundColor: string | undefined; /** * Adaptive Cards: background color of Adaptive Cards button with status of 'aria-pressed' */ - cardPushButtonBackgroundColor?: string; + cardPushButtonBackgroundColor: string | undefined; /** * Adaptive Cards: text color of Adaptive Cards button with status of 'aria-pressed' */ - cardPushButtonTextColor?: string; + cardPushButtonTextColor: string | undefined; /** * Cards: Rich Cards * Enable title (and subtitle) wrapping */ - richCardWrapTitle?: boolean; + richCardWrapTitle: boolean | undefined; }; -type StrictAdaptiveCardsStyleOptions = Required; +type AdaptiveCardsStyleOptions = Partial; export type { AdaptiveCardsStyleOptions, StrictAdaptiveCardsStyleOptions }; diff --git a/packages/bundle/src/adaptiveCards/Attachment/AdaptiveCardRenderer.tsx b/packages/bundle/src/adaptiveCards/Attachment/AdaptiveCardRenderer.tsx index 8cc7967c5c..866c954677 100644 --- a/packages/bundle/src/adaptiveCards/Attachment/AdaptiveCardRenderer.tsx +++ b/packages/bundle/src/adaptiveCards/Attachment/AdaptiveCardRenderer.tsx @@ -3,7 +3,7 @@ import { validateProps } from '@msinternal/botframework-webchat-react-valibot'; import { useStyles } from '@msinternal/botframework-webchat-styles/react'; import { type Action as AdaptiveCardAction, type OpenUrlAction, type SubmitAction } from 'adaptivecards'; -import { ErrorBoxPolymiddlewareProxy } from 'botframework-webchat-api/middleware'; +import { ErrorBoxPolymiddlewareProxy } from 'botframework-webchat-api/middleware.js'; import { getTabIndex, hooks } from 'botframework-webchat-component'; import { type DirectLineCardAction } from 'botframework-webchat-core'; import React, { diff --git a/packages/bundle/src/adaptiveCards/Styles/StyleSet/AdaptiveCardRenderer.ts b/packages/bundle/src/adaptiveCards/Styles/StyleSet/AdaptiveCardRenderer.ts index e6f1a7bd81..24cf519e65 100644 --- a/packages/bundle/src/adaptiveCards/Styles/StyleSet/AdaptiveCardRenderer.ts +++ b/packages/bundle/src/adaptiveCards/Styles/StyleSet/AdaptiveCardRenderer.ts @@ -1,4 +1,4 @@ -import FullBundleStyleOptions from '../../../types/FullBundleStyleOptions'; +import type { FullBundleStyleOptions } from '../../../types/FullBundleStyleOptions'; export default function ({ cardPushButtonBackgroundColor, diff --git a/packages/bundle/src/adaptiveCards/Styles/adaptiveCardHostConfig.ts b/packages/bundle/src/adaptiveCards/Styles/adaptiveCardHostConfig.ts index 736ad97073..3c51792518 100644 --- a/packages/bundle/src/adaptiveCards/Styles/adaptiveCardHostConfig.ts +++ b/packages/bundle/src/adaptiveCards/Styles/adaptiveCardHostConfig.ts @@ -1,6 +1,6 @@ import { normalizeStyleOptions } from 'botframework-webchat-api'; -import FullBundleStyleOptions from '../../types/FullBundleStyleOptions'; +import type { FullBundleStyleOptions } from '../../types/FullBundleStyleOptions'; import normalizeAdaptiveCardsStyleOptions from '../normalizeStyleOptions'; // https://docs.microsoft.com/en-us/adaptive-cards/rendering-cards/host-config diff --git a/packages/bundle/src/boot/actual/component/minimal.ts b/packages/bundle/src/boot/actual/component/minimal.ts index 23abbd7585..ceadf00b3b 100644 --- a/packages/bundle/src/boot/actual/component/minimal.ts +++ b/packages/bundle/src/boot/actual/component/minimal.ts @@ -35,4 +35,4 @@ export { type BasicWebChatProps, type ComposerProps, type ReactWebChatProps -} from 'botframework-webchat-component/component'; +} from 'botframework-webchat-component/component.js'; diff --git a/packages/bundle/src/boot/actual/decorator.ts b/packages/bundle/src/boot/actual/decorator.ts index f5a3ea2854..7052e86704 100644 --- a/packages/bundle/src/boot/actual/decorator.ts +++ b/packages/bundle/src/boot/actual/decorator.ts @@ -9,5 +9,5 @@ export { type ActivityBorderDecoratorProps, type DecoratorMiddleware, type InferDecoratorRequest -} from 'botframework-webchat-api/decorator'; -export { BorderFlair, BorderLoader, WebChatDecorator } from 'botframework-webchat-component/decorator'; +} from 'botframework-webchat-api/decorator.js'; +export { BorderFlair, BorderLoader, WebChatDecorator } from 'botframework-webchat-component/decorator.js'; diff --git a/packages/bundle/src/boot/actual/hook/minimal.ts b/packages/bundle/src/boot/actual/hook/minimal.ts index 5b7e344151..7716ddba9b 100644 --- a/packages/bundle/src/boot/actual/hook/minimal.ts +++ b/packages/bundle/src/boot/actual/hook/minimal.ts @@ -101,4 +101,4 @@ export { useVoiceState, useWebSpeechPonyfill, type SendBoxFocusOptions -} from 'botframework-webchat-component/hook'; +} from 'botframework-webchat-component/hook.js'; diff --git a/packages/bundle/src/boot/actual/internal.ts b/packages/bundle/src/boot/actual/internal.ts index 5949642426..4f69ec34e2 100644 --- a/packages/bundle/src/boot/actual/internal.ts +++ b/packages/bundle/src/boot/actual/internal.ts @@ -4,7 +4,7 @@ export { type ActivityStatusMiddleware, type TypingIndicatorMiddleware } from 'botframework-webchat-api'; -export { usePostVoiceActivity, useShouldShowMicrophoneButton } from 'botframework-webchat-api/internal'; +export { usePostVoiceActivity, useShouldShowMicrophoneButton } from 'botframework-webchat-api/internal.js'; export { CodeHighlighterComposer, createIconComponent, @@ -17,7 +17,7 @@ export { useCodeHighlighter, useLiveRegion, type HighlightCodeFn -} from 'botframework-webchat-component/internal'; +} from 'botframework-webchat-component/internal.js'; export { getOrgSchemaMessage, getVoiceActivityRole, diff --git a/packages/bundle/src/boot/actual/middleware.ts b/packages/bundle/src/boot/actual/middleware.ts index 39662aec03..c839139d1f 100644 --- a/packages/bundle/src/boot/actual/middleware.ts +++ b/packages/bundle/src/boot/actual/middleware.ts @@ -11,9 +11,9 @@ export { type ActivityPolymiddlewareRenderer, type ActivityPolymiddlewareRequest, type Polymiddleware -} from 'botframework-webchat-api/middleware'; +} from 'botframework-webchat-api/middleware.js'; -export { createActivityPolymiddlewareFromLegacy } from 'botframework-webchat-api/middleware'; +export { createActivityPolymiddlewareFromLegacy } from 'botframework-webchat-api/middleware.js'; export { createErrorBoxPolymiddleware, @@ -27,7 +27,7 @@ export { type ErrorBoxPolymiddlewareProxyProps, type ErrorBoxPolymiddlewareRenderer, type ErrorBoxPolymiddlewareRequest -} from 'botframework-webchat-api/middleware'; +} from 'botframework-webchat-api/middleware.js'; export { avatarComponent, @@ -41,6 +41,6 @@ export { type AvatarPolymiddlewareProxyProps, type AvatarPolymiddlewareRenderer, type AvatarPolymiddlewareRequest -} from 'botframework-webchat-api/middleware'; +} from 'botframework-webchat-api/middleware.js'; -export { createAvatarPolymiddlewareFromLegacy } from 'botframework-webchat-api/middleware'; +export { createAvatarPolymiddlewareFromLegacy } from 'botframework-webchat-api/middleware.js'; diff --git a/packages/bundle/src/boot/actual/schema.ts b/packages/bundle/src/boot/actual/schema.ts new file mode 100644 index 0000000000..37699525c1 --- /dev/null +++ b/packages/bundle/src/boot/actual/schema.ts @@ -0,0 +1,22 @@ +export { + orgSchemaActionSchema, + orgSchemaClaimSchema, + orgSchemaCreativeWorkSchema, + orgSchemaDefinedTermSchema, + orgSchemaPersonSchema, + orgSchemaProjectSchema, + orgSchemaSoftwareSourceCodeSchema, + orgSchemaUserReviewSchema, + orgSchemaVoteActionSchema, + orgSchemaThingSchema, + type OrgSchemaThing, + type OrgSchemaAction, + type OrgSchemaClaim, + type OrgSchemaCreativeWork, + type OrgSchemaDefinedTerm, + type OrgSchemaPerson, + type OrgSchemaProject, + type OrgSchemaSoftwareSourceCode, + type OrgSchemaUserReview, + type OrgSchemaVoteAction +} from 'botframework-webchat-core'; diff --git a/packages/bundle/src/boot/actual/styleOptions/full.ts b/packages/bundle/src/boot/actual/styleOptions/full.ts index 252a100f64..2e3c503422 100644 --- a/packages/bundle/src/boot/actual/styleOptions/full.ts +++ b/packages/bundle/src/boot/actual/styleOptions/full.ts @@ -1,4 +1,4 @@ export { type StrictFullBundleStyleOptions as StrictStyleOptions, - type default as StyleOptions + type FullBundleStyleOptions as StyleOptions } from '../../../types/FullBundleStyleOptions'; diff --git a/packages/bundle/src/boot/exports/deprecated/component.ts b/packages/bundle/src/boot/exports/deprecated/component.ts new file mode 100644 index 0000000000..27960fa7bb --- /dev/null +++ b/packages/bundle/src/boot/exports/deprecated/component.ts @@ -0,0 +1,5 @@ +export * from '../component'; + +console.warn( + 'Import from "botframework-webchat/component" is deprecated, please import from "botframework-webchat/component.js" instead. This entrypoint will be removed on or after 2028-04-24.' +); diff --git a/packages/bundle/src/boot/exports/deprecated/decorator.ts b/packages/bundle/src/boot/exports/deprecated/decorator.ts new file mode 100644 index 0000000000..dc98f55704 --- /dev/null +++ b/packages/bundle/src/boot/exports/deprecated/decorator.ts @@ -0,0 +1,5 @@ +export * from '../decorator'; + +console.warn( + 'Import from "botframework-webchat/decorator" is deprecated, please import from "botframework-webchat/decorator.js" instead. This entrypoint will be removed on or after 2028-04-24.' +); diff --git a/packages/bundle/src/boot/exports/deprecated/hook.ts b/packages/bundle/src/boot/exports/deprecated/hook.ts new file mode 100644 index 0000000000..fbef585f2f --- /dev/null +++ b/packages/bundle/src/boot/exports/deprecated/hook.ts @@ -0,0 +1,5 @@ +export * from '../hook'; + +console.warn( + 'Import from "botframework-webchat/hook" is deprecated, please import from "botframework-webchat/hook.js" instead. This entrypoint will be removed on or after 2028-04-24.' +); diff --git a/packages/bundle/src/boot/exports/deprecated/internal.ts b/packages/bundle/src/boot/exports/deprecated/internal.ts new file mode 100644 index 0000000000..346b5be04b --- /dev/null +++ b/packages/bundle/src/boot/exports/deprecated/internal.ts @@ -0,0 +1,5 @@ +export * from '../internal'; + +console.warn( + 'Import from "botframework-webchat/internal" is deprecated, please import from "botframework-webchat/internal.js" instead. This entrypoint will be removed on or after 2028-04-24.' +); diff --git a/packages/bundle/src/boot/exports/deprecated/middleware.ts b/packages/bundle/src/boot/exports/deprecated/middleware.ts new file mode 100644 index 0000000000..6fd569d069 --- /dev/null +++ b/packages/bundle/src/boot/exports/deprecated/middleware.ts @@ -0,0 +1,5 @@ +export * from '../middleware'; + +console.warn( + 'Import from "botframework-webchat/middleware" is deprecated, please import from "botframework-webchat/middleware.js" instead. This entrypoint will be removed on or after 2028-04-24.' +); diff --git a/packages/bundle/src/boot/exports/deprecated/minimal.ts b/packages/bundle/src/boot/exports/deprecated/minimal.ts new file mode 100644 index 0000000000..8b291a4a98 --- /dev/null +++ b/packages/bundle/src/boot/exports/deprecated/minimal.ts @@ -0,0 +1,5 @@ +export * from '../minimal'; + +console.warn( + 'Import from "botframework-webchat/minimal" is deprecated, please import from "botframework-webchat/minimal.js" instead. This entrypoint will be removed on or after 2028-04-24.' +); diff --git a/packages/bundle/src/boot/exports/schema.ts b/packages/bundle/src/boot/exports/schema.ts new file mode 100644 index 0000000000..903da15447 --- /dev/null +++ b/packages/bundle/src/boot/exports/schema.ts @@ -0,0 +1 @@ +export * from '../actual/schema'; diff --git a/packages/bundle/src/codeHighlighter/ShikiComposer.tsx b/packages/bundle/src/codeHighlighter/ShikiComposer.tsx index 4ddad77b7f..ad0bb7fb86 100644 --- a/packages/bundle/src/codeHighlighter/ShikiComposer.tsx +++ b/packages/bundle/src/codeHighlighter/ShikiComposer.tsx @@ -1,4 +1,4 @@ -import { CodeHighlighterComposer, type HighlightCodeFn } from 'botframework-webchat-component/internal'; +import { CodeHighlighterComposer, type HighlightCodeFn } from 'botframework-webchat-component/internal.js'; import React, { memo, ReactNode, useEffect, useState } from 'react'; import { type HighlighterCore } from 'shiki'; diff --git a/packages/bundle/src/createBrowserWebSpeechPonyfillFactory.ts b/packages/bundle/src/createBrowserWebSpeechPonyfillFactory.ts index 1982e759e3..4c18d61956 100644 --- a/packages/bundle/src/createBrowserWebSpeechPonyfillFactory.ts +++ b/packages/bundle/src/createBrowserWebSpeechPonyfillFactory.ts @@ -11,7 +11,14 @@ export default function createBrowserWebSpeechPonyfillFactory(): () => WebSpeech return () => ({ SpeechGrammarList: window.SpeechGrammarList || window.webkitSpeechGrammarList, - SpeechRecognition: window.SpeechRecognition || window.webkitSpeechRecognition, + SpeechRecognition: + window.SpeechRecognition || + (window.webkitSpeechRecognition + ? Object.assign(window.webkitSpeechRecognition, { + available: (): Promise => Promise.resolve('unavailable'), + install: (): Promise => Promise.resolve(false) + }) + : undefined), speechSynthesis: window.speechSynthesis, SpeechSynthesisUtterance: window.SpeechSynthesisUtterance }); diff --git a/packages/bundle/src/createFullStyleSet.ts b/packages/bundle/src/createFullStyleSet.ts index 148ce5f6fa..1fa6d704f5 100644 --- a/packages/bundle/src/createFullStyleSet.ts +++ b/packages/bundle/src/createFullStyleSet.ts @@ -1,7 +1,7 @@ import { createStyleSet } from 'botframework-webchat-component'; import createAdaptiveCardsStyleSet from './adaptiveCards/Styles/createAdaptiveCardsStyleSet'; -import FullBundleStyleOptions from './types/FullBundleStyleOptions'; +import type { FullBundleStyleOptions } from './types/FullBundleStyleOptions'; // TODO: [P4] We should add a notice for people who want to use "styleSet" instead of "styleOptions". // "styleSet" is actually CSS stylesheet and it is based on the DOM tree. diff --git a/packages/bundle/src/fullBundleDefaultStyleOptions.ts b/packages/bundle/src/fullBundleDefaultStyleOptions.ts index 1d33057848..bf7a3c5e93 100644 --- a/packages/bundle/src/fullBundleDefaultStyleOptions.ts +++ b/packages/bundle/src/fullBundleDefaultStyleOptions.ts @@ -1,9 +1,9 @@ import { defaultStyleOptions } from 'botframework-webchat-api'; import adaptiveCardsDefaultStyleOptions from './adaptiveCards/defaultStyleOptions'; -import FullBundleStyleOptions from './types/FullBundleStyleOptions'; +import { type StrictFullBundleStyleOptions } from './types/FullBundleStyleOptions'; -const fullBundleDefaultStyleOptions: Required = { +const fullBundleDefaultStyleOptions: StrictFullBundleStyleOptions = { ...defaultStyleOptions, ...adaptiveCardsDefaultStyleOptions }; diff --git a/packages/bundle/src/markdown/middleware/createSanitizeMiddleware.ts b/packages/bundle/src/markdown/middleware/createSanitizeMiddleware.ts index 2e7a5b6e7b..dcfe7a7b46 100644 --- a/packages/bundle/src/markdown/middleware/createSanitizeMiddleware.ts +++ b/packages/bundle/src/markdown/middleware/createSanitizeMiddleware.ts @@ -2,7 +2,7 @@ import { type HTMLContentTransformMiddleware } from 'botframework-webchat-compon import { parseDocumentFragmentFromString, serializeDocumentFragmentIntoString -} from 'botframework-webchat-component/internal'; +} from 'botframework-webchat-component/internal.js'; import sanitizeHTML from 'sanitize-html'; const BASE_SANITIZE_HTML_OPTIONS = Object.freeze({ diff --git a/packages/bundle/src/markdown/private/betterLinkDocumentMod.ariaLabel.spec.ts b/packages/bundle/src/markdown/private/betterLinkDocumentMod.ariaLabel.spec.ts index 9b5c328ecf..efcc44f596 100644 --- a/packages/bundle/src/markdown/private/betterLinkDocumentMod.ariaLabel.spec.ts +++ b/packages/bundle/src/markdown/private/betterLinkDocumentMod.ariaLabel.spec.ts @@ -4,7 +4,7 @@ import { parseDocumentFragmentFromString, serializeDocumentFragmentIntoString -} from 'botframework-webchat-component/internal'; +} from 'botframework-webchat-component/internal.js'; import { micromark } from 'micromark'; import betterLinkDocumentMod, { type BetterLinkDocumentModDecoration } from './betterLinkDocumentMod'; diff --git a/packages/bundle/src/markdown/private/betterLinkDocumentMod.asButton.spec.ts b/packages/bundle/src/markdown/private/betterLinkDocumentMod.asButton.spec.ts index 41d13c0ad3..4e467dddd3 100644 --- a/packages/bundle/src/markdown/private/betterLinkDocumentMod.asButton.spec.ts +++ b/packages/bundle/src/markdown/private/betterLinkDocumentMod.asButton.spec.ts @@ -4,7 +4,7 @@ import { parseDocumentFragmentFromString, serializeDocumentFragmentIntoString -} from 'botframework-webchat-component/internal'; +} from 'botframework-webchat-component/internal.js'; import { micromark } from 'micromark'; import betterLinkDocumentMod, { type BetterLinkDocumentModDecoration } from './betterLinkDocumentMod'; diff --git a/packages/bundle/src/markdown/private/betterLinkDocumentMod.className.spec.ts b/packages/bundle/src/markdown/private/betterLinkDocumentMod.className.spec.ts index 4ff3762d4c..0d5893e61f 100644 --- a/packages/bundle/src/markdown/private/betterLinkDocumentMod.className.spec.ts +++ b/packages/bundle/src/markdown/private/betterLinkDocumentMod.className.spec.ts @@ -4,7 +4,7 @@ import { parseDocumentFragmentFromString, serializeDocumentFragmentIntoString -} from 'botframework-webchat-component/internal'; +} from 'botframework-webchat-component/internal.js'; import { micromark } from 'micromark'; import betterLinkDocumentMod, { type BetterLinkDocumentModDecoration } from './betterLinkDocumentMod'; diff --git a/packages/bundle/src/markdown/private/betterLinkDocumentMod.iconClassName.spec.ts b/packages/bundle/src/markdown/private/betterLinkDocumentMod.iconClassName.spec.ts index f0da4da2cc..38d1d3bd3a 100644 --- a/packages/bundle/src/markdown/private/betterLinkDocumentMod.iconClassName.spec.ts +++ b/packages/bundle/src/markdown/private/betterLinkDocumentMod.iconClassName.spec.ts @@ -4,7 +4,7 @@ import { parseDocumentFragmentFromString, serializeDocumentFragmentIntoString -} from 'botframework-webchat-component/internal'; +} from 'botframework-webchat-component/internal.js'; import { micromark } from 'micromark'; import betterLinkDocumentMod, { type BetterLinkDocumentModDecoration } from './betterLinkDocumentMod'; diff --git a/packages/bundle/src/markdown/private/betterLinkDocumentMod.rel.spec.ts b/packages/bundle/src/markdown/private/betterLinkDocumentMod.rel.spec.ts index e29e3a878d..aa6c9cc230 100644 --- a/packages/bundle/src/markdown/private/betterLinkDocumentMod.rel.spec.ts +++ b/packages/bundle/src/markdown/private/betterLinkDocumentMod.rel.spec.ts @@ -4,7 +4,7 @@ import { parseDocumentFragmentFromString, serializeDocumentFragmentIntoString -} from 'botframework-webchat-component/internal'; +} from 'botframework-webchat-component/internal.js'; import { micromark } from 'micromark'; import betterLinkDocumentMod, { type BetterLinkDocumentModDecoration } from './betterLinkDocumentMod'; diff --git a/packages/bundle/src/markdown/private/betterLinkDocumentMod.selector.spec.ts b/packages/bundle/src/markdown/private/betterLinkDocumentMod.selector.spec.ts index 356c76f0fd..121ee6f62e 100644 --- a/packages/bundle/src/markdown/private/betterLinkDocumentMod.selector.spec.ts +++ b/packages/bundle/src/markdown/private/betterLinkDocumentMod.selector.spec.ts @@ -4,7 +4,7 @@ import { parseDocumentFragmentFromString, serializeDocumentFragmentIntoString -} from 'botframework-webchat-component/internal'; +} from 'botframework-webchat-component/internal.js'; import { micromark } from 'micromark'; import betterLinkDocumentMod, { type BetterLinkDocumentModDecoration } from './betterLinkDocumentMod'; diff --git a/packages/bundle/src/markdown/private/betterLinkDocumentMod.target.spec.ts b/packages/bundle/src/markdown/private/betterLinkDocumentMod.target.spec.ts index 980a124f53..ed1eec252f 100644 --- a/packages/bundle/src/markdown/private/betterLinkDocumentMod.target.spec.ts +++ b/packages/bundle/src/markdown/private/betterLinkDocumentMod.target.spec.ts @@ -4,7 +4,7 @@ import { parseDocumentFragmentFromString, serializeDocumentFragmentIntoString -} from 'botframework-webchat-component/internal'; +} from 'botframework-webchat-component/internal.js'; import { micromark } from 'micromark'; import betterLinkDocumentMod, { type BetterLinkDocumentModDecoration } from './betterLinkDocumentMod'; diff --git a/packages/bundle/src/markdown/private/betterLinkDocumentMod.title.spec.ts b/packages/bundle/src/markdown/private/betterLinkDocumentMod.title.spec.ts index 602791cf11..eeeff6ce0c 100644 --- a/packages/bundle/src/markdown/private/betterLinkDocumentMod.title.spec.ts +++ b/packages/bundle/src/markdown/private/betterLinkDocumentMod.title.spec.ts @@ -4,7 +4,7 @@ import { parseDocumentFragmentFromString, serializeDocumentFragmentIntoString -} from 'botframework-webchat-component/internal'; +} from 'botframework-webchat-component/internal.js'; import { micromark } from 'micromark'; import betterLinkDocumentMod, { type BetterLinkDocumentModDecoration } from './betterLinkDocumentMod'; diff --git a/packages/bundle/src/markdown/private/betterLinkDocumentMod.wrapZeroWidthSpace.spec.ts b/packages/bundle/src/markdown/private/betterLinkDocumentMod.wrapZeroWidthSpace.spec.ts index 9e224faee7..08d4c6b6a1 100644 --- a/packages/bundle/src/markdown/private/betterLinkDocumentMod.wrapZeroWidthSpace.spec.ts +++ b/packages/bundle/src/markdown/private/betterLinkDocumentMod.wrapZeroWidthSpace.spec.ts @@ -4,7 +4,7 @@ import { parseDocumentFragmentFromString, serializeDocumentFragmentIntoString -} from 'botframework-webchat-component/internal'; +} from 'botframework-webchat-component/internal.js'; import { micromark } from 'micromark'; import betterLinkDocumentMod, { type BetterLinkDocumentModDecoration } from './betterLinkDocumentMod'; diff --git a/packages/bundle/src/markdown/renderMarkdown.ts b/packages/bundle/src/markdown/renderMarkdown.ts index b23a3bba46..e6586c9b12 100644 --- a/packages/bundle/src/markdown/renderMarkdown.ts +++ b/packages/bundle/src/markdown/renderMarkdown.ts @@ -2,7 +2,7 @@ import { parseDocumentFragmentFromString, serializeDocumentFragmentIntoString, type HighlightCodeFn -} from 'botframework-webchat-component/internal'; +} from 'botframework-webchat-component/internal.js'; import katex from 'katex'; import { micromark } from 'micromark'; import { gfm, gfmHtml } from 'micromark-extension-gfm'; diff --git a/packages/bundle/src/stylesheet/BundleStylesheet.tsx b/packages/bundle/src/stylesheet/BundleStylesheet.tsx index 86693c5bd2..5f82e8ab52 100644 --- a/packages/bundle/src/stylesheet/BundleStylesheet.tsx +++ b/packages/bundle/src/stylesheet/BundleStylesheet.tsx @@ -1,7 +1,7 @@ // TODO: [P2] This component can be replaced by `bindProps`. import { validateProps } from '@msinternal/botframework-webchat-react-valibot'; -import { InjectStyleElements, injectStyleElementsPropsSchema } from 'botframework-webchat-component/internal'; -import { useStyleOptions } from 'botframework-webchat-component/hook'; +import { InjectStyleElements, injectStyleElementsPropsSchema } from 'botframework-webchat-component/internal.js'; +import { useStyleOptions } from 'botframework-webchat-component/hook.js'; import React, { memo, type FunctionComponent } from 'react'; import { never, object, optional, pipe, readonly, string, undefinedable, type InferInput } from 'valibot'; diff --git a/packages/bundle/src/tsconfig.json b/packages/bundle/src/tsconfig.json index 427e50993a..294fb69337 100644 --- a/packages/bundle/src/tsconfig.json +++ b/packages/bundle/src/tsconfig.json @@ -1,5 +1,6 @@ { "compilerOptions": { + "strict": false, // We should flip this occasionally and fix all typing issues. "types": ["dom-speech-recognition"] }, "extends": [ diff --git a/packages/bundle/src/types/FullBundleStyleOptions.ts b/packages/bundle/src/types/FullBundleStyleOptions.ts index efed1f43cf..4ac50020c5 100644 --- a/packages/bundle/src/types/FullBundleStyleOptions.ts +++ b/packages/bundle/src/types/FullBundleStyleOptions.ts @@ -8,5 +8,4 @@ import { type FullBundleStyleOptions = StyleOptions & AdaptiveCardsStyleOptions; type StrictFullBundleStyleOptions = StrictStyleOptions & StrictAdaptiveCardsStyleOptions; -export default FullBundleStyleOptions; -export { StrictFullBundleStyleOptions }; +export type { FullBundleStyleOptions, StrictFullBundleStyleOptions }; diff --git a/packages/bundle/tsup.config.ts b/packages/bundle/tsup.config.ts index f10dedd7dc..e74cd1df4b 100644 --- a/packages/bundle/tsup.config.ts +++ b/packages/bundle/tsup.config.ts @@ -1,4 +1,5 @@ import { injectCSSPlugin } from '@msinternal/botframework-webchat-styles/build'; +import type { PluginBuild } from 'esbuild'; import path from 'path'; import { defineConfig } from 'tsup'; @@ -8,7 +9,7 @@ import { bundleStyleContent as bundleStyleContentPlaceholder } from './src/style // Redirect import paths for "react" and "react-dom" const resolveReact = { name: 'isomorphic-react', - setup(build) { + setup(build: PluginBuild) { // ESBuild use Go regular expressions and does not understand Unicode flag. // eslint-disable-next-line require-unicode-regexp build.onResolve({ filter: /^(react|react-dom)$/ }, ({ path: pkgName }) => ({ @@ -25,7 +26,14 @@ const commonConfig = applyConfig(config => ({ 'botframework-webchat.decorator': './src/boot/exports/decorator.ts', 'botframework-webchat.hook': './src/boot/exports/hook.ts', 'botframework-webchat.internal': './src/boot/exports/internal.ts', - 'botframework-webchat.middleware': './src/boot/exports/middleware.ts' + 'botframework-webchat.middleware': './src/boot/exports/middleware.ts', + 'botframework-webchat.schema': './src/boot/exports/schema.ts', + // Deprecated entrypoint without .js, to be removed on or after 2028-04-24. + 'botframework-webchat.deprecated.component': './src/boot/exports/deprecated/component.ts', + 'botframework-webchat.deprecated.decorator': './src/boot/exports/deprecated/decorator.ts', + 'botframework-webchat.deprecated.hook': './src/boot/exports/deprecated/hook.ts', + 'botframework-webchat.deprecated.internal': './src/boot/exports/deprecated/internal.ts', + 'botframework-webchat.deprecated.middleware': './src/boot/exports/deprecated/middleware.ts' }, env: { ...config.env, @@ -51,8 +59,12 @@ const commonConfig = applyConfig(config => ({ esbuildPlugins: [ ...(config.esbuildPlugins ?? []), injectCSSPlugin({ - ignoreCSSEntries: ['dist/botframework-webchat.component.css'], - stylesPlaceholder: bundleStyleContentPlaceholder, + ignoreCSSEntries: [ + 'dist/botframework-webchat.component.css', + // Deprecated entrypoint without .js, to be removed on or after 2028-04-24. + 'dist/botframework-webchat.deprecated.component.css' + ], + stylesPlaceholder: bundleStyleContentPlaceholder }) ] })); diff --git a/packages/component/package.json b/packages/component/package.json index bd3c4d1c6b..2b44b96fc8 100644 --- a/packages/component/package.json +++ b/packages/component/package.json @@ -16,6 +16,16 @@ } }, "./component": { + "import": { + "types": "./dist/botframework-webchat-component.deprecated.component.d.mts", + "default": "./dist/botframework-webchat-component.deprecated.component.mjs" + }, + "require": { + "types": "./dist/botframework-webchat-component.deprecated.component.d.ts", + "default": "./dist/botframework-webchat-component.deprecated.component.js" + } + }, + "./component.js": { "import": { "types": "./dist/botframework-webchat-component.component.d.mts", "default": "./dist/botframework-webchat-component.component.mjs" @@ -26,6 +36,16 @@ } }, "./decorator": { + "import": { + "types": "./dist/botframework-webchat-component.deprecated.decorator.d.mts", + "default": "./dist/botframework-webchat-component.deprecated.decorator.mjs" + }, + "require": { + "types": "./dist/botframework-webchat-component.deprecated.decorator.d.ts", + "default": "./dist/botframework-webchat-component.deprecated.decorator.js" + } + }, + "./decorator.js": { "import": { "types": "./dist/botframework-webchat-component.decorator.d.mts", "default": "./dist/botframework-webchat-component.decorator.mjs" @@ -36,6 +56,16 @@ } }, "./hook": { + "import": { + "types": "./dist/botframework-webchat-component.deprecated.hook.d.mts", + "default": "./dist/botframework-webchat-component.deprecated.hook.mjs" + }, + "require": { + "types": "./dist/botframework-webchat-component.deprecated.hook.d.ts", + "default": "./dist/botframework-webchat-component.deprecated.hook.js" + } + }, + "./hook.js": { "import": { "types": "./dist/botframework-webchat-component.hook.d.mts", "default": "./dist/botframework-webchat-component.hook.mjs" @@ -46,6 +76,16 @@ } }, "./internal": { + "import": { + "types": "./dist/botframework-webchat-component.deprecated.internal.d.mts", + "default": "./dist/botframework-webchat-component.deprecated.internal.mjs" + }, + "require": { + "types": "./dist/botframework-webchat-component.deprecated.internal.d.ts", + "default": "./dist/botframework-webchat-component.deprecated.internal.js" + } + }, + "./internal.js": { "import": { "types": "./dist/botframework-webchat-component.internal.d.mts", "default": "./dist/botframework-webchat-component.internal.mjs" @@ -112,6 +152,14 @@ "13", "markdown-it@14.1.0 has module field and it is breaking Webpack 4 because cross loading CJS and ESM" ], + "react": [ + "16.8.6", + "using react@16.8.6 to make sure this is the minimum supported version" + ], + "react-dom": [ + "16.8.6", + "using react-dom@16.8.6 to make sure this is the minimum supported version" + ], "react-redux": [ "7" ], @@ -134,7 +182,7 @@ }, "devDependencies": { "@babel/core": "^7.29.0", - "@babel/preset-env": "^7.29.0", + "@babel/preset-env": "^7.29.2", "@babel/preset-react": "^7.28.5", "@babel/preset-typescript": "^7.28.5", "@msinternal/botframework-webchat-base": "0.0.0-0", @@ -142,17 +190,17 @@ "@msinternal/botframework-webchat-react-valibot": "0.0.0-0", "@msinternal/botframework-webchat-styles": "0.0.0-0", "@msinternal/botframework-webchat-tsconfig": "0.0.0-0", - "@types/dom-speech-recognition": "^0.0.7", + "@types/dom-speech-recognition": "^0.0.9", "@types/jest": "^29.5.14", "@types/mdast": "^4.0.4", - "@types/node": "^25.3.3", + "@types/node": "^25.6.0", "@types/react": "^16.14.69", - "babel-plugin-istanbul": "^7.0.1", + "babel-plugin-istanbul": "^8.0.0", "babel-plugin-transform-inline-environment-variables": "^0.4.4", - "core-js": "^3.48.0", + "core-js": "^3.49.0", "cross-env": "^10.1.0", - "type-fest": "^5.4.4", - "typescript": "^5.9.3" + "type-fest": "^5.6.0", + "typescript": "^6.0.3" }, "dependencies": { "@emotion/css": "11.13.5", @@ -182,7 +230,7 @@ "use-reduce-memo": "0.1.0", "use-ref-from": "0.2.1", "use-state-with-ref": "0.2.1", - "valibot": "1.2.0" + "valibot": "1.3.1" }, "peerDependencies": { "react": ">= 16.8.6", diff --git a/packages/component/src/Activity/StackedLayout.tsx b/packages/component/src/Activity/StackedLayout.tsx index 9e173e36fb..e5219be34d 100644 --- a/packages/component/src/Activity/StackedLayout.tsx +++ b/packages/component/src/Activity/StackedLayout.tsx @@ -1,8 +1,9 @@ /* eslint complexity: ["error", 50] */ -import { hooks } from 'botframework-webchat-api'; +import { useStyles } from '@msinternal/botframework-webchat-styles/react'; import type { RenderAttachment } from 'botframework-webchat-api'; -import { ActivityBorderDecorator } from 'botframework-webchat-api/decorator'; +import { hooks } from 'botframework-webchat-api'; +import { ActivityBorderDecorator } from 'botframework-webchat-api/decorator.js'; import { getActivityLivestreamingMetadata, getOrgSchemaMessage, @@ -11,15 +12,15 @@ import { isVoiceActivity, type WebChatActivity } from 'botframework-webchat-core'; -import { useStyles } from '@msinternal/botframework-webchat-styles/react'; import cx from 'classnames'; import React, { memo, useCallback, useMemo, type ReactNode } from 'react'; -import isBasedOnSoftwareSourceCode from '../Attachment/Text/private/isBasedOnSoftwareSourceCode'; import ScreenReaderText from '../ScreenReaderText'; import isZeroOrPositive from '../Utils/isZeroOrPositive'; +import getFirstBaseOfSoftwareSourceCode from '../Utils/orgSchema/getFirstBaseOfSoftwareSourceCode'; import textFormatToContentType from '../Utils/textFormatToContentType'; import useUniqueId from '../hooks/internal/useUniqueId'; +import { useGetLogicalGroupKey } from '../providers/ActivityLogicalGrouping'; import AttachmentRow from './AttachmentRow'; import Bubble from './Bubble'; import CodeBlockContent from './CodeBlockContent'; @@ -28,7 +29,6 @@ import StackedLayoutMain from './StackedLayoutMain'; import StackedLayoutMessageStatus from './StackedLayoutMessageStatus'; import StackedLayoutRoot from './StackedLayoutRoot'; import StackedLayoutStatus from './StackedLayoutStatus'; -import { useGetLogicalGroupKey } from '../providers/ActivityLogicalGrouping'; import styles from './StackedLayout.module.css'; @@ -73,7 +73,7 @@ const StackedLayoutInner = memo( return ( - {!!(hasDisplayText || messageThing?.abstract) && ( + {!!(hasDisplayText || messageThing?.abstract[0]) && (
- {renderBubbleContent(messageThing?.abstract)} + {renderBubbleContent(messageThing?.abstract[0])}
@@ -136,6 +136,7 @@ const StackedLayout = ({ const messageThing = useMemo(() => getOrgSchemaMessage(activity.entities), [activity]); const isCollapsible = useMemo(() => messageThing?.keywords?.includes('Collapsible'), [messageThing]); + const creativeWorkStatus = messageThing?.creativeWorkStatus[0]; const isLivestreaming = !!getActivityLivestreamingMetadata(activity); const activityDisplayText = isMessageOrTyping ? messageBackDisplayText || activity.text @@ -164,14 +165,12 @@ const StackedLayout = ({ const showAvatar = showCallout && hasAvatar && !!renderAvatar; const showNub = !isInGroup && showCallout && hasNub && (topAlignedCallout || !attachments?.length); - const showStatus = !!messageThing?.creativeWorkStatus || isInGroup; + const showStatus = !!creativeWorkStatus || isInGroup; const renderMainBubbleContent = useCallback( (title = '', withStatus = true) => (
- {withStatus && showStatus && ( - - )} + {withStatus && showStatus && } {title &&
{title}
} {activityDisplayText && renderAttachment({ @@ -183,7 +182,7 @@ const StackedLayout = ({ })}
), - [activity, activityDisplayText, classNames, messageThing?.creativeWorkStatus, renderAttachment, showStatus] + [activity, activityDisplayText, classNames, creativeWorkStatus, renderAttachment, showStatus] ); const attachmentChildren = useMemo(() => { @@ -209,24 +208,28 @@ const StackedLayout = ({ ); } - if (isCollapsible && isBasedOnSoftwareSourceCode(messageThing)) { - syntheticAttachments.push( - - - - ); + showBubble={false} + > + + + ); + } } return syntheticAttachments.concat( @@ -261,7 +264,7 @@ const StackedLayout = ({ const renderCollapsibleBubbleContent = useCallback( (title = '') => (
- {showStatus && } + {showStatus && }
), - [attachmentChildren, classNames, messageThing?.creativeWorkStatus, showStatus] + [attachmentChildren, classNames, creativeWorkStatus, showStatus] ); const renderBubbleContent = isCollapsible ? renderCollapsibleBubbleContent : renderMainBubbleContent; diff --git a/packages/component/src/ActivityDebug/RestrictedActivityDebugAPI.ts b/packages/component/src/ActivityDebug/RestrictedActivityDebugAPI.ts index cf86dda36a..bcea7f5614 100644 --- a/packages/component/src/ActivityDebug/RestrictedActivityDebugAPI.ts +++ b/packages/component/src/ActivityDebug/RestrictedActivityDebugAPI.ts @@ -1,4 +1,4 @@ -import { RestrictedDebugAPI } from 'botframework-webchat-core/internal'; +import { RestrictedDebugAPI } from 'botframework-webchat-core/internal.js'; import type { ArrayElement } from 'type-fest'; const BREAKPOINT_NAMES = ['render'] as const; diff --git a/packages/component/src/ActivityFeedback/private/FeedbackVoteButton.tsx b/packages/component/src/ActivityFeedback/private/FeedbackVoteButton.tsx index 89988604ac..95b073afde 100644 --- a/packages/component/src/ActivityFeedback/private/FeedbackVoteButton.tsx +++ b/packages/component/src/ActivityFeedback/private/FeedbackVoteButton.tsx @@ -1,9 +1,21 @@ import { validateProps } from '@msinternal/botframework-webchat-react-valibot'; import { hooks } from 'botframework-webchat-api'; -import { onErrorResumeNext, parseVoteAction, type OrgSchemaAction } from 'botframework-webchat-core'; +import { onErrorResumeNext, orgSchemaVoteActionSchema, type OrgSchemaAction } from 'botframework-webchat-core'; import React, { memo, useCallback, useMemo, useRef } from 'react'; import { useRefFrom } from 'use-ref-from'; -import { custom, literal, object, optional, pipe, readonly, safeParse, string, union, type InferInput } from 'valibot'; +import { + custom, + literal, + object, + optional, + parse, + pipe, + readonly, + safeParse, + string, + union, + type InferInput +} from 'valibot'; import { useListenToActivityFeedbackFocus } from '../providers/private/FocusPropagation'; import useActivityFeedbackHooks from '../providers/useActivityFeedbackHooks'; @@ -52,7 +64,7 @@ function FeedbackVoteButton(props: FeedbackVoteButtonProps) { if ( action['@type'] === 'DislikeAction' || (action['@type'] === 'VoteAction' && - onErrorResumeNext(() => parseVoteAction(action))?.actionOption === 'downvote') + onErrorResumeNext(() => parse(orgSchemaVoteActionSchema, action))?.actionOption[0] === 'downvote') ) { return 'down'; } diff --git a/packages/component/src/ActivityFeedback/private/getDisclaimerFromReviewAction.ts b/packages/component/src/ActivityFeedback/private/getDisclaimerFromReviewAction.ts index 3568644b85..00f434bd40 100644 --- a/packages/component/src/ActivityFeedback/private/getDisclaimerFromReviewAction.ts +++ b/packages/component/src/ActivityFeedback/private/getDisclaimerFromReviewAction.ts @@ -1,9 +1,8 @@ -import { type OrgSchemaAction, type OrgSchemaThing, type OrgSchemaUserReview } from 'botframework-webchat-core'; - -function isUserReview(thing: OrgSchemaThing | undefined): thing is OrgSchemaUserReview { - return thing?.['@type'] === 'UserReview'; -} +import { orgSchemaUserReviewSchema, type OrgSchemaAction } from 'botframework-webchat-core'; +import { safeParse } from 'valibot'; export default function getDisclaimerFromActivity(action: OrgSchemaAction): string | undefined { - return isUserReview(action.result) ? action.result.reviewAspect : undefined; + const userReview = safeParse(orgSchemaUserReviewSchema, action.result); + + return userReview.success ? userReview.output.reviewAspect[0] : undefined; } diff --git a/packages/component/src/ActivityFeedback/providers/ActivityFeedbackComposer.tsx b/packages/component/src/ActivityFeedback/providers/ActivityFeedbackComposer.tsx index b4d9edea66..85c70e17d1 100644 --- a/packages/component/src/ActivityFeedback/providers/ActivityFeedbackComposer.tsx +++ b/packages/component/src/ActivityFeedback/providers/ActivityFeedbackComposer.tsx @@ -2,7 +2,7 @@ import { reactNode, validateProps } from '@msinternal/botframework-webchat-react import { hooks } from 'botframework-webchat-api'; import { getOrgSchemaMessage, - parseAction, + orgSchemaActionSchema, type OrgSchemaAction, type WebChatActivity } from 'botframework-webchat-core'; @@ -11,7 +11,7 @@ import React, { memo, useCallback, useMemo, useRef, useState, type Dispatch, typ import { wrapWith } from 'react-wrap-with'; import { useRefFrom } from 'use-ref-from'; import { useStateWithRef } from 'use-state-with-ref'; -import { custom, object, optional, pipe, readonly, safeParse, type InferInput } from 'valibot'; +import { custom, object, optional, parse, pipe, readonly, safeParse, type InferInput } from 'valibot'; import dereferenceBlankNodes from '../../Utils/JSONLinkedData/dereferenceBlankNodes'; import canActionResubmit from '../private/canActionResubmit'; @@ -113,13 +113,13 @@ function ActivityFeedbackComposer(props: ActivityFeedbackComposerProps) { actions = actions.map(action => action.result ? action - : { + : parse(orgSchemaActionSchema, { ...action, result: { '@type': 'UserReview', description: deprecatedFeedbackLoopChannelData?.disclaimer } - } + }) ); } @@ -131,9 +131,7 @@ function ActivityFeedbackComposer(props: ActivityFeedbackComposerProps) { const messageThing = getOrgSchemaMessage(graph); const reactActions = Object.freeze( - (messageThing?.potentialAction || []).filter( - ({ '@type': type }) => type === 'LikeAction' || type === 'DislikeAction' - ) + messageThing?.potentialAction.filter(({ '@type': type }) => type === 'LikeAction' || type === 'DislikeAction') ); if (reactActions.length) { @@ -141,7 +139,9 @@ function ActivityFeedbackComposer(props: ActivityFeedbackComposerProps) { } const voteActions = Object.freeze( - graph.filter(({ type }) => type === 'https://schema.org/VoteAction').map(parseAction) + graph + .filter(({ type }) => type === 'https://schema.org/VoteAction') + .map(action => parse(orgSchemaActionSchema, action)) // TODO: Instead of processing VoteAction, convert it to LikeAction/DislikeAction. // .map(action => ({ // ...action, @@ -162,14 +162,14 @@ function ActivityFeedbackComposer(props: ActivityFeedbackComposerProps) { useMemo(() => { const activeOrCompletedAction = rawActions.find( - (action): action is OrgSchemaAction & { actionStatus: 'ActiveActionStatus' | 'CompletedActionStatus' } => - action.actionStatus === 'ActiveActionStatus' || action.actionStatus === 'CompletedActionStatus' + (action): action is OrgSchemaAction & { actionStatus: ['ActiveActionStatus' | 'CompletedActionStatus'] } => + action.actionStatus[0] === 'ActiveActionStatus' || action.actionStatus[0] === 'CompletedActionStatus' ); actionStateRef.current = activeOrCompletedAction ? { actionId: activeOrCompletedAction['@id'], - actionStatus: activeOrCompletedAction.actionStatus + actionStatus: activeOrCompletedAction.actionStatus[0] } : undefined; }, [rawActions]); @@ -177,15 +177,15 @@ function ActivityFeedbackComposer(props: ActivityFeedbackComposerProps) { // Workaround ESLint on saying actionStateRef.current is redundant when using it directly. const actionStateForActions = actionStateRef.current; - const actions = useMemo( + const actions = useMemo( () => Object.freeze( rawActions.map(action => actionStateForActions && actionStateForActions.actionId === action['@id'] - ? Object.freeze({ ...action, actionStatus: actionStateForActions.actionStatus }) - : action.actionStatus === 'PotentialActionStatus' + ? Object.freeze({ ...action, actionStatus: [actionStateForActions.actionStatus] } satisfies OrgSchemaAction) + : action.actionStatus[0] === 'PotentialActionStatus' ? action - : Object.freeze({ ...action, actionStatus: 'PotentialActionStatus' }) + : Object.freeze({ ...action, actionStatus: ['PotentialActionStatus'] } satisfies OrgSchemaAction) ) ), [actionStateForActions, rawActions] @@ -196,7 +196,7 @@ function ActivityFeedbackComposer(props: ActivityFeedbackComposerProps) { const postActivity = usePostActivity(); const hasSubmitted = useMemo( - () => actions.some(action => action.actionStatus === 'CompletedActionStatus'), + () => actions.some(action => action.actionStatus[0] === 'CompletedActionStatus'), [actions] ); @@ -248,7 +248,7 @@ function ActivityFeedbackComposer(props: ActivityFeedbackComposerProps) { const selectedAction = useMemo( () => actions.find( - ({ actionStatus }) => actionStatus === 'ActiveActionStatus' || actionStatus === 'CompletedActionStatus' + ({ actionStatus }) => actionStatus[0] === 'ActiveActionStatus' || actionStatus[0] === 'CompletedActionStatus' ), [actions] ); diff --git a/packages/component/src/ActivityStatus/OthersActivityStatus.tsx b/packages/component/src/ActivityStatus/OthersActivityStatus.tsx index da35f46059..1620c85dfb 100644 --- a/packages/component/src/ActivityStatus/OthersActivityStatus.tsx +++ b/packages/component/src/ActivityStatus/OthersActivityStatus.tsx @@ -3,13 +3,14 @@ import { useStyles } from '@msinternal/botframework-webchat-styles/react'; import { hooks } from 'botframework-webchat-api'; import { getOrgSchemaMessage, + orgSchemaActionSchema, + orgSchemaClaimSchema, OrgSchemaProject, - parseAction, - parseClaim, type WebChatActivity } from 'botframework-webchat-core'; import cx from 'classnames'; import React, { memo, useMemo } from 'react'; +import { parse } from 'valibot'; import ActivityFeedback from '../ActivityFeedback/ActivityFeedback'; import dereferenceBlankNodes from '../Utils/JSONLinkedData/dereferenceBlankNodes'; @@ -38,23 +39,28 @@ const OthersActivityStatus = memo(({ activity, className, slotted }: Props) => { const claimInterpreter = useMemo(() => { try { if (messageThing) { - return parseClaim((messageThing?.citation || [])[0])?.claimInterpreter; + return parse(orgSchemaClaimSchema, messageThing?.citation[0]).claimInterpreter[0]; } - const [firstClaim] = graph.filter(({ type }) => type === 'https://schema.org/Claim').map(parseClaim); + const [firstClaim] = graph + .filter(({ type }) => type === 'https://schema.org/Claim') + .map(claim => parse(orgSchemaClaimSchema, claim)); if (firstClaim) { warnRootLevelThings(); - return firstClaim?.claimInterpreter; + return firstClaim?.claimInterpreter[0]; } - const replyAction = parseAction(graph.find(({ type }) => type === 'https://schema.org/ReplyAction')); + const replyAction = parse( + orgSchemaActionSchema, + graph.find(({ type }) => type === 'https://schema.org/ReplyAction') + ); if (replyAction) { warnRootLevelThings(); - return replyAction?.provider; + return replyAction?.provider[0]; } } catch { // Intentionally left blank. @@ -72,7 +78,12 @@ const OthersActivityStatus = memo(({ activity, className, slotted }: Props) => { )} {claimInterpreter && ( - + )} {feedbackActionsPlacement === 'activity-status' && ( diff --git a/packages/component/src/ActivityStatus/private/Originator.tsx b/packages/component/src/ActivityStatus/private/Originator.tsx index 9b8fccdd18..b559b2481f 100644 --- a/packages/component/src/ActivityStatus/private/Originator.tsx +++ b/packages/component/src/ActivityStatus/private/Originator.tsx @@ -1,9 +1,8 @@ import { validateProps } from '@msinternal/botframework-webchat-react-valibot'; import { useStyles } from '@msinternal/botframework-webchat-styles/react'; -import { type OrgSchemaProject } from 'botframework-webchat-core'; import cx from 'classnames'; import React, { memo } from 'react'; -import { custom, object, optional, pipe, readonly, safeParse, string, type InferInput } from 'valibot'; +import { object, pipe, readonly, string, undefinedable, type InferInput } from 'valibot'; import useSanitizeHrefCallback from '../../hooks/internal/useSanitizeHrefCallback'; @@ -11,18 +10,9 @@ import styles from '../ActivityStatus.module.css'; const originatorPropsSchema = pipe( object({ - // TODO: [P1] We should build this schema into `OrgSchemaProject` instead, or build a Schema.org query library. - project: custom( - value => - safeParse( - object({ - name: optional(string()), - slogan: optional(string()), - url: optional(string()) - }), - value - ).success - ) + name: undefinedable(string()), + slogan: undefinedable(string()), + url: undefinedable(string()) }), readonly() ); @@ -32,9 +22,7 @@ type OriginatorProps = InferInput; // Regular function is better for React function component. // eslint-disable-next-line prefer-arrow-callback const Originator = memo(function Originator(props: OriginatorProps) { - const { - project: { name, slogan, url } - } = validateProps(originatorPropsSchema, props); + const { name, slogan, url } = validateProps(originatorPropsSchema, props); const sanitizeHref = useSanitizeHrefCallback(); const classNames = useStyles(styles); diff --git a/packages/component/src/Attachment/Text/private/MarkdownTextContent.tsx b/packages/component/src/Attachment/Text/private/MarkdownTextContent.tsx index bcdb25687a..e3cb76f682 100644 --- a/packages/component/src/Attachment/Text/private/MarkdownTextContent.tsx +++ b/packages/component/src/Attachment/Text/private/MarkdownTextContent.tsx @@ -4,34 +4,34 @@ import { hooks } from 'botframework-webchat-api'; import { getOrgSchemaMessage, onErrorResumeNext, - parseClaim, + orgSchemaClaimSchema, type OrgSchemaClaim, + type OrgSchemaCreativeWork, type WebChatActivity } from 'botframework-webchat-core'; import cx from 'classnames'; import React, { memo, useCallback, useMemo, useRef, type MouseEventHandler } from 'react'; import { useRefFrom } from 'use-ref-from'; -import { custom, object, optional, pipe, readonly, string, type InferInput } from 'valibot'; +import { custom, object, optional, parse, pipe, readonly, string, type InferInput } from 'valibot'; import ActivityFeedback from '../../../ActivityFeedback/ActivityFeedback'; import { LinkDefinitionItem, LinkDefinitions } from '../../../LinkDefinition/index'; import dereferenceBlankNodes from '../../../Utils/JSONLinkedData/dereferenceBlankNodes'; +import getFirstBaseOfSoftwareSourceCode from '../../../Utils/orgSchema/getFirstBaseOfSoftwareSourceCode'; import useSanitizeHrefCallback from '../../../hooks/internal/useSanitizeHrefCallback'; import useStreamingMarkdownWithDefinitions, { type MarkdownLinkDefinition } from '../../../hooks/useStreamingMarkdownWithDefinitions'; import useShowModal from '../../../providers/ModalDialog/useShowModal'; -import { type PropsOf } from '../../../types/PropsOf'; import ActivityCopyButton from './ActivityCopyButton'; import ActivityViewCodeButton from './ActivityViewCodeButton'; import CitationModalContext from './CitationModalContent'; import MessageSensitivityLabel, { type MessageSensitivityLabelProps } from './MessageSensitivityLabel'; import isAIGeneratedActivity from './isAIGeneratedActivity'; -import isBasedOnSoftwareSourceCode from './isBasedOnSoftwareSourceCode'; import isHTMLButtonElement from './isHTMLButtonElement'; -import citationModalStyles from './CitationModal.module.css'; import textContentStyles from '../TextContent.module.css'; +import citationModalStyles from './CitationModal.module.css'; const { useLocalizer, useStyleOptions } = hooks; @@ -69,11 +69,9 @@ function isCitationURL(url: string): boolean { } function isCitingInline(claim: OrgSchemaClaim): claim is OrgSchemaClaim & { - appearance: { - url?: undefined; - }; + appearance: [OrgSchemaCreativeWork & { readonly url: never[] }]; } { - return !!claim.appearance && !claim.appearance.url; + return !!claim.appearance.length && !claim.appearance[0].url.length; } function MarkdownTextContent(props: MarkdownTextContentProps) { @@ -99,7 +97,7 @@ function MarkdownTextContent(props: MarkdownTextContentProps) { const citationModalDialogLabel = localize('CITATION_MODEL_DIALOG_ALT'); const showClaimModal = useCallback( - (title, text, altText) => { + (title: string | undefined, text: string, altText: string | undefined) => { showModal(() => , { 'aria-label': altText || title || citationModalDialogLabel, className: citationModalClassNames['citation-modal-dialog'] @@ -116,36 +114,38 @@ function MarkdownTextContent(props: MarkdownTextContentProps) { markdownDefinitions .map(markdownDefinition => { let messageCitation: OrgSchemaClaim | undefined = messageThing?.citation - ?.map(parseClaim) - .find(({ position }) => '' + position === markdownDefinition.identifier); + .map(claim => parse(orgSchemaClaimSchema, claim)) + .find(({ position }) => '' + position[0] === markdownDefinition.identifier); if (!messageCitation) { const rootLevelClaim = graph .filter(({ type }) => type === 'https://schema.org/Claim') - .map(parseClaim) - .find(({ '@id': id }) => id === markdownDefinition.url); + .map(claim => parse(orgSchemaClaimSchema, claim)) + .find(claim => claim['@id'] === markdownDefinition.url); if (rootLevelClaim) { console.warn( 'botframework-webchat: Root-level `Claim` thing is deprecated, please use `Message[@id=""].citation[@type="Claim"]` instead. It will be removed on or after 2027-08-29.' ); - messageCitation = { + messageCitation = parse(orgSchemaClaimSchema, { '@context': 'https://schema.org', '@id': markdownDefinition.url, '@type': 'Claim', alternateName: rootLevelClaim.alternateName, - appearance: isCitationURL(rootLevelClaim['@id']) - ? { - '@type': 'DigitalDocument', - name: rootLevelClaim.name, - text: rootLevelClaim.text - } - : { - '@type': 'DigitalDocument', - url: markdownDefinition.url - } - }; + appearance: [ + isCitationURL(rootLevelClaim['@id']) + ? { + '@type': 'DigitalDocument', + name: rootLevelClaim.name, + text: rootLevelClaim.text + } + : { + '@type': 'DigitalDocument', + url: markdownDefinition.url + } + ] + } satisfies InferInput); } } @@ -165,9 +165,9 @@ function MarkdownTextContent(props: MarkdownTextContentProps) { key: url, handleClick: () => showClaimModal( - appearance.name ?? markdownDefinition.title, - appearance.text, - messageCitation.alternateName + appearance[0]?.name[0] ?? markdownDefinition.title, + appearance[0]?.text[0], + messageCitation.alternateName[0] ), markdownDefinition }; @@ -175,14 +175,14 @@ function MarkdownTextContent(props: MarkdownTextContentProps) { // Not inline citation, we care about the URL. // Warn if it break single source of truth principle, we still use the URL from Markdown. - if (messageCitation.appearance?.url && messageCitation.appearance.url !== url) { + if (messageCitation.appearance[0]?.url[0] && messageCitation.appearance[0]?.url[0] !== url) { console.warn( 'botframework-webchat: When "Message.citation[].url" is set in entities, it must match its corresponding URL in Markdown link reference definition', { citation: messageCitation, markdownDefinition, url: { - citation: messageCitation.appearance.url, + citation: messageCitation.appearance[0]?.url[0], markdown: url } } @@ -242,35 +242,38 @@ function MarkdownTextContent(props: MarkdownTextContentProps) { [entriesRef] ); - const messageSensitivityLabelProps = useMemo | undefined>(() => { - const usageInfo = messageThing?.usageInfo; + const messageSensitivityLabelProps = useMemo(() => { + const usageInfo = messageThing?.usageInfo[0]; if (usageInfo) { - const { pattern } = usageInfo; - const encryptionStatus = !!usageInfo.keywords?.find(keyword => keyword === 'encrypted-content'); + const [pattern] = usageInfo.pattern; + const encryptionStatus = !!usageInfo.keywords.find(keyword => keyword === 'encrypted-content'); return { color: pattern && - pattern.inDefinedTermSet === 'https://www.w3.org/TR/css-color-4/' && - pattern.name === 'color' && - pattern.termCode, + pattern.inDefinedTermSet[0] === 'https://www.w3.org/TR/css-color-4/' && + pattern.name[0] === 'color' && + pattern.termCode[0], isEncrypted: encryptionStatus, - name: usageInfo.name, - title: usageInfo.description - }; + name: usageInfo.name[0], + title: usageInfo.description[0] + } satisfies MessageSensitivityLabelProps; } }, [messageThing]); // The main text of the citation entry (e.g. the title of the document). Used as the content of the main link and, if it exists, the header of the popup window. - const getEntryMainText = (entry: Entry) => - entry.claim?.name ?? entry.claim?.appearance?.name ?? (entry.markdownDefinition.title || undefined); + const getEntryMainText = (entry: Entry): string | undefined => + entry.claim?.name[0] ?? entry.claim?.appearance[0]?.name[0] ?? (entry.markdownDefinition.title || undefined); // Optional alternate name for the entry, used as a subtitle beneath the link - const getEntryBadgeName = (entry: Entry) => entry.claim?.appearance?.usageInfo?.name; + const getEntryBadgeName = (entry: Entry): string | undefined => entry.claim?.appearance[0]?.usageInfo[0]?.name[0]; // Secondary text describing the citation, used in the a11y description (i.e. the div's title attribute) - const getEntryDescription = (entry: Entry) => entry.claim?.appearance?.usageInfo?.description; + const getEntryDescription = (entry: Entry): string | undefined => + entry.claim?.appearance[0]?.usageInfo[0]?.description[0]; + + const firstSoftwareSourceCodeBase = useMemo(() => getFirstBaseOfSoftwareSourceCode(messageThing), [messageThing]); return (
@@ -296,18 +299,17 @@ function MarkdownTextContent(props: MarkdownTextContentProps) { )}
{activity.type === 'message' && - isBasedOnSoftwareSourceCode(messageThing) && - messageThing.isBasedOn.text && - !messageThing.keywords?.includes?.('Collapsible') ? ( + firstSoftwareSourceCodeBase?.text && + !messageThing?.keywords.includes('Collapsible') ? ( ) : null} - {activity.type === 'message' && activity.text && messageThing?.keywords?.includes('AllowCopy') ? ( + {activity.type === 'message' && activity.text && messageThing?.keywords.includes('AllowCopy') ? ( ) : null} {activity.type === 'message' && feedbackActionsPlacement === 'activity-actions' && ( diff --git a/packages/component/src/Attachment/Text/private/isAIGeneratedActivity.ts b/packages/component/src/Attachment/Text/private/isAIGeneratedActivity.ts index 5a43c99ec4..2251357633 100644 --- a/packages/component/src/Attachment/Text/private/isAIGeneratedActivity.ts +++ b/packages/component/src/Attachment/Text/private/isAIGeneratedActivity.ts @@ -1,5 +1,5 @@ import { getOrgSchemaMessage, type WebChatActivity } from 'botframework-webchat-core'; export default function isAIGeneratedActivity(activity: undefined | WebChatActivity) { - return !!(activity && getOrgSchemaMessage(activity?.entities || [])?.keywords?.includes('AIGeneratedContent')); + return !!(activity && getOrgSchemaMessage(activity?.entities || [])?.keywords.includes('AIGeneratedContent')); } diff --git a/packages/component/src/Attachment/Text/private/isBasedOnSoftwareSourceCode.ts b/packages/component/src/Attachment/Text/private/isBasedOnSoftwareSourceCode.ts deleted file mode 100644 index 37f192caa8..0000000000 --- a/packages/component/src/Attachment/Text/private/isBasedOnSoftwareSourceCode.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { type OrgSchemaCreativeWork } from 'botframework-webchat-core'; - -/** - * Type guard to check if the isBasedOn field is of type SoftwareSourceCode - * @param messageEntity The message entity to check - * @returns True if isBasedOn is of type SoftwareSourceCode, false otherwise - */ -export default function isBasedOnSoftwareSourceCode( - messageEntity?: OrgSchemaCreativeWork -): messageEntity is OrgSchemaCreativeWork & { isBasedOn: SoftwareSourceCode } { - return messageEntity?.isBasedOn?.['@type'] === 'SoftwareSourceCode'; -} - -interface SoftwareSourceCode { - '@type': 'SoftwareSourceCode'; - programmingLanguage: string; - text: string; -} diff --git a/packages/component/src/BuiltInDecorator.tsx b/packages/component/src/BuiltInDecorator.tsx index cc9c230317..a9ca2402ab 100644 --- a/packages/component/src/BuiltInDecorator.tsx +++ b/packages/component/src/BuiltInDecorator.tsx @@ -1,4 +1,4 @@ -import { LowPriorityDecoratorComposer } from 'botframework-webchat-api/internal'; +import { LowPriorityDecoratorComposer } from 'botframework-webchat-api/internal.js'; import React, { memo, type ReactNode } from 'react'; import createDefaultActivityGroupingDecoratorMiddleware from './Middleware/ActivityGrouping/createDefaultActivityGroupingDecoratorMiddleware'; diff --git a/packages/component/src/Composer.tsx b/packages/component/src/Composer.tsx index ca3303dcd4..23a3bd7f21 100644 --- a/packages/component/src/Composer.tsx +++ b/packages/component/src/Composer.tsx @@ -20,9 +20,9 @@ import { type ToastMiddleware, type TypingIndicatorMiddleware } from 'botframework-webchat-api'; -import { DecoratorComposer, type DecoratorMiddleware } from 'botframework-webchat-api/decorator'; -import { type LegacyActivityMiddleware, type Polymiddleware } from 'botframework-webchat-api/middleware'; -import { StoreDebugAPIRegistry, type StoreDebugAPI } from 'botframework-webchat-core/internal'; +import { DecoratorComposer, type DecoratorMiddleware } from 'botframework-webchat-api/decorator.js'; +import { type LegacyActivityMiddleware, type Polymiddleware } from 'botframework-webchat-api/middleware.js'; +import { StoreDebugAPIRegistry, type StoreDebugAPI } from 'botframework-webchat-core/internal.js'; import classNames from 'classnames'; import MarkdownIt from 'markdown-it'; import PropTypes from 'prop-types'; @@ -250,11 +250,17 @@ const ComposerCore = ({ const getActivityByKey = useGetActivityByKey(); + // This is expected. + // The mutation is for preventing sending duplicates to the registered callback observers. + // eslint-disable-next-line react-hooks/immutability const dispatchTranscriptFocusByActivityKey = useMemo(() => { let prevActivityKey: string | symbol | undefined = Symbol(); return activityKey => { if (activityKey !== prevActivityKey) { + // This is expected. + // The mutation is for preventing sending duplicates to the registered callback observers. + // eslint-disable-next-line react-hooks/immutability prevActivityKey = activityKey; const event = { activity: getActivityByKey(activityKey) }; diff --git a/packages/component/src/Dictation.js b/packages/component/src/Dictation.js index 48a1efecd4..3c203e3a4c 100644 --- a/packages/component/src/Dictation.js +++ b/packages/component/src/Dictation.js @@ -1,6 +1,6 @@ import { hooks } from 'botframework-webchat-api'; // TODO: [P1] #3350 No import from internal, we need to move setDictateState from bf-wc-core (Redux) to React Context. -import { useSetDictateState } from 'botframework-webchat-api/internal'; +import { useSetDictateState } from 'botframework-webchat-api/internal.js'; import { Constants } from 'botframework-webchat-core'; import PropTypes from 'prop-types'; import React, { useCallback, useEffect } from 'react'; diff --git a/packages/component/src/Middleware/Activity/defaultActivityPolymiddleware.tsx b/packages/component/src/Middleware/Activity/defaultActivityPolymiddleware.tsx index 7eaaa1ea5e..4524ef816b 100644 --- a/packages/component/src/Middleware/Activity/defaultActivityPolymiddleware.tsx +++ b/packages/component/src/Middleware/Activity/defaultActivityPolymiddleware.tsx @@ -1,10 +1,12 @@ /* eslint complexity: ["error", 21] */ import { ActivityMiddleware } from 'botframework-webchat-api'; -import { createActivityPolymiddlewareFromLegacy, type Polymiddleware } from 'botframework-webchat-api/middleware'; +import { createActivityPolymiddlewareFromLegacy, type Polymiddleware } from 'botframework-webchat-api/middleware.js'; import { getActivityLivestreamingMetadata, getOrgSchemaMessage, - isVoiceTranscriptActivity + isVoiceTranscriptActivity, + type OrgSchemaCreativeWork, + type WebChatActivity } from 'botframework-webchat-core'; import React from 'react'; @@ -12,7 +14,7 @@ import CarouselLayout from '../../Activity/CarouselLayout'; import StackedLayout from '../../Activity/StackedLayout'; // TODO: [P4] Can we simplify these if-statement to something more readable? -function shouldFilterActivity(activity, messageThing) { +function shouldFilterActivity(activity: WebChatActivity, messageThing: OrgSchemaCreativeWork): boolean { const { type } = activity; if ( type === 'conversationUpdate' || @@ -21,14 +23,14 @@ function shouldFilterActivity(activity, messageThing) { // Do not show content for contentless livestream interims, or finalized activity without content. (type === 'typing' && (getActivityLivestreamingMetadata(activity)?.type === 'contentless' || - !(activity['text'] || activity.attachments?.length > 0 || messageThing?.abstract))) || + !(activity['text'] || activity.attachments?.length > 0 || messageThing?.abstract.length))) || (type === 'message' && // Do not show postback (activity.channelData?.postBack || // Do not show messageBack if displayText is undefined (activity.channelData?.messageBack && !activity.channelData.messageBack.displayText) || // Do not show empty bubbles (no text and attachments) - !(activity.text || activity.attachments?.length || messageThing?.abstract))) + !(activity.text || activity.attachments?.length || messageThing?.abstract.length))) ) { return true; } diff --git a/packages/component/src/Middleware/ActivityGrouping/createDefaultActivityGroupingDecoratorMiddleware.tsx b/packages/component/src/Middleware/ActivityGrouping/createDefaultActivityGroupingDecoratorMiddleware.tsx index 7940ccc6e4..96231a0e8b 100644 --- a/packages/component/src/Middleware/ActivityGrouping/createDefaultActivityGroupingDecoratorMiddleware.tsx +++ b/packages/component/src/Middleware/ActivityGrouping/createDefaultActivityGroupingDecoratorMiddleware.tsx @@ -1,4 +1,4 @@ -import { createActivityGroupingMiddleware, type DecoratorMiddleware } from 'botframework-webchat-api/decorator'; +import { createActivityGroupingMiddleware, type DecoratorMiddleware } from 'botframework-webchat-api/decorator.js'; import PartGrouping from './ui/PartGrouping/PartGrouping'; import RenderActivityGrouping from './ui/RenderActivityGrouping'; import SenderGrouping from './ui/SenderGrouping/SenderGrouping'; diff --git a/packages/component/src/Middleware/ActivityGrouping/ui/LegacyActivityBridgeComposer.tsx b/packages/component/src/Middleware/ActivityGrouping/ui/LegacyActivityBridgeComposer.tsx index 63a444ed5e..f004412995 100644 --- a/packages/component/src/Middleware/ActivityGrouping/ui/LegacyActivityBridgeComposer.tsx +++ b/packages/component/src/Middleware/ActivityGrouping/ui/LegacyActivityBridgeComposer.tsx @@ -1,6 +1,6 @@ import { reactNode, validateProps } from '@msinternal/botframework-webchat-react-valibot'; import { hooks } from 'botframework-webchat-api'; -import { LegacyActivityContextProvider, type LegacyActivityContextType } from 'botframework-webchat-api/internal'; +import { LegacyActivityContextProvider, type LegacyActivityContextType } from 'botframework-webchat-api/internal.js'; import { type WebChatActivity } from 'botframework-webchat-core'; import React, { memo, useMemo } from 'react'; import { custom, object, optional, pipe, readonly, safeParse, type InferInput } from 'valibot'; diff --git a/packages/component/src/Middleware/ActivityGrouping/ui/PartGrouping/CollapsibleGrouping.tsx b/packages/component/src/Middleware/ActivityGrouping/ui/PartGrouping/CollapsibleGrouping.tsx index c57f49adbf..edc93320c6 100644 --- a/packages/component/src/Middleware/ActivityGrouping/ui/PartGrouping/CollapsibleGrouping.tsx +++ b/packages/component/src/Middleware/ActivityGrouping/ui/PartGrouping/CollapsibleGrouping.tsx @@ -20,7 +20,7 @@ const collapsibleGroupingPropsSchema = pipe( className: optional(string()), header: optional(reactNode()), isOpen: optional(boolean()), - onToggle: optional(pipe(custom<(isOpen: boolean) => void>(toggle => typeof toggle === 'function')), readonly()) + onToggle: optional(custom<(isOpen: boolean) => void>(toggle => typeof toggle === 'function')) }), readonly() ); diff --git a/packages/component/src/Middleware/ActivityGrouping/ui/PartGrouping/PartGrouping.tsx b/packages/component/src/Middleware/ActivityGrouping/ui/PartGrouping/PartGrouping.tsx index 211b992c31..fcc1343594 100644 --- a/packages/component/src/Middleware/ActivityGrouping/ui/PartGrouping/PartGrouping.tsx +++ b/packages/component/src/Middleware/ActivityGrouping/ui/PartGrouping/PartGrouping.tsx @@ -1,6 +1,6 @@ import { reactNode } from '@msinternal/botframework-webchat-react-valibot'; import { getActivityLivestreamingMetadata, getOrgSchemaMessage, type WebChatActivity } from 'botframework-webchat-core'; -import { IdentifierSchema } from 'botframework-webchat-core/graph'; +import { IdentifierSchema } from 'botframework-webchat-core/graph.js'; import React, { Fragment, memo, useMemo } from 'react'; import { array, @@ -50,7 +50,7 @@ function PartGrouping(props: PartGroupingProps) { [activities, lastActivity] ); - const isGroup = activities.length > 1 || safeParse(IdentifierSchema, lastMessage?.isPartOf?.['@id']).success; + const isGroup = activities.length > 1 || safeParse(IdentifierSchema, lastMessage?.isPartOf[0]?.['@id']).success; return isGroup ? ( {children} diff --git a/packages/component/src/Middleware/ActivityGrouping/ui/PartGrouping/private/PartGroupingActivity.tsx b/packages/component/src/Middleware/ActivityGrouping/ui/PartGrouping/private/PartGroupingActivity.tsx index d960e53675..67989e8da8 100644 --- a/packages/component/src/Middleware/ActivityGrouping/ui/PartGrouping/private/PartGroupingActivity.tsx +++ b/packages/component/src/Middleware/ActivityGrouping/ui/PartGrouping/private/PartGroupingActivity.tsx @@ -147,7 +147,7 @@ function PartGroupingActivity(props: PartGroupingActivityProps) { const [isGroupOpen, setIsGroupOpen] = useState(partGroupDefaultOpen); const messages = useMemo( - () => activities.map(activity => getOrgSchemaMessage(activity.entities)).filter(message => !!message), + () => activities.map(activity => getOrgSchemaMessage(activity.entities)).filter(Boolean), [activities] ); // eslint-disable-next-line no-magic-numbers @@ -168,7 +168,7 @@ function PartGroupingActivity(props: PartGroupingActivityProps) { const lastActivity = activities.at(-1); const currentMessage = useMemo( - () => messages.find(message => message.creativeWorkStatus === 'Incomplete') || lastMessage, + () => messages.find(message => message.creativeWorkStatus[0] === 'Incomplete') || lastMessage, [messages, lastMessage] ); @@ -184,14 +184,13 @@ function PartGroupingActivity(props: PartGroupingActivityProps) { // The HowTo entity (the group root) may carry an explicit `creativeWorkStatus` and `abstract`. // When present, it takes precedence over status derived from individual messages. - const [howToAbstract, howToStatus] = useMemo(() => { - const howToMessage = messages.find(message => message.isPartOf?.creativeWorkStatus); - const howTo = howToMessage?.isPartOf; + const [howToAbstract, howToStatus] = useMemo<[string | undefined, string | undefined]>(() => { + const howTo = messages.find(message => message.isPartOf[0]?.creativeWorkStatus)?.isPartOf[0]; - return [howTo?.abstract, howTo?.creativeWorkStatus]; + return [howTo?.abstract[0], howTo?.creativeWorkStatus[0]]; }, [messages]); - const defaultWorkStatus = useMemo( + const defaultWorkStatus = useMemo<'Incomplete' | undefined>( () => (messages.some(message => 'creativeWorkStatus' in message) ? 'Incomplete' : undefined), [messages] ); @@ -200,7 +199,8 @@ function PartGroupingActivity(props: PartGroupingActivityProps) { // 1. If the HowTo entity has an explicit `creativeWorkStatus`, use it. // 2. Otherwise, derive from the active message: find the first 'Incomplete' message's status. // 3. Fall back to `defaultWorkStatus` which is 'Incomplete' if any message has a `creativeWorkStatus` property. - const currentGroupStatus = howToStatus || currentMessage?.creativeWorkStatus || defaultWorkStatus; + const currentGroupStatus: string | undefined = + howToStatus || currentMessage?.creativeWorkStatus[0] || defaultWorkStatus; /** * The idea behind group header is that it displays the state of the entire group: diff --git a/packages/component/src/Middleware/Avatar/createDefaultAvatarPolymiddleware.tsx b/packages/component/src/Middleware/Avatar/createDefaultAvatarPolymiddleware.tsx index 5f182aee98..b4d4b21bf6 100644 --- a/packages/component/src/Middleware/Avatar/createDefaultAvatarPolymiddleware.tsx +++ b/packages/component/src/Middleware/Avatar/createDefaultAvatarPolymiddleware.tsx @@ -4,7 +4,7 @@ import { createAvatarPolymiddleware, // Required but unused, for type portability. type __INTERNAL_DO_NOT_USE__avatarPolymiddlewareRequestStyleOptionsSymbol -} from 'botframework-webchat-api/middleware'; +} from 'botframework-webchat-api/middleware.js'; import DefaultAvatar from './DefaultAvatar'; function createDefaultAvatarMiddleware(styleOptions: StyleOptions | undefined) { diff --git a/packages/component/src/SendBox/TextBox.tsx b/packages/component/src/SendBox/TextBox.tsx index 0198cbfe01..a64a48f0e2 100644 --- a/packages/component/src/SendBox/TextBox.tsx +++ b/packages/component/src/SendBox/TextBox.tsx @@ -1,5 +1,5 @@ import { hooks } from 'botframework-webchat-api'; -import { usePonyfill } from 'botframework-webchat-api/hook'; +import { usePonyfill } from 'botframework-webchat-api/hook.js'; import classNames from 'classnames'; import React, { useCallback, useMemo, useRef } from 'react'; diff --git a/packages/component/src/SendBoxToolbar/BasicSendBoxToolbar.tsx b/packages/component/src/SendBoxToolbar/BasicSendBoxToolbar.tsx index 0c945bf922..366cdfb2ab 100644 --- a/packages/component/src/SendBoxToolbar/BasicSendBoxToolbar.tsx +++ b/packages/component/src/SendBoxToolbar/BasicSendBoxToolbar.tsx @@ -6,7 +6,7 @@ import UploadButton from './UploadButton'; const { useStyleOptions } = hooks; // NOTE: "hideUploadButton" is deprecated. Use "disableFileUpload" instead. -// Rectification logic is handled in patchStyleOptionsFromDeprecatedProps.js +// Rectification logic is handled in normalizeStyleOptions.ts function BasicSendBoxToolbar({ className }: SendBoxToolbarMiddlewareProps) { const [{ disableFileUpload }] = useStyleOptions(); diff --git a/packages/component/src/Styles/CSSCustomPropertiesContainer.tsx b/packages/component/src/Styles/CSSCustomPropertiesContainer.tsx index 7998a2adac..78a4413720 100644 --- a/packages/component/src/Styles/CSSCustomPropertiesContainer.tsx +++ b/packages/component/src/Styles/CSSCustomPropertiesContainer.tsx @@ -1,7 +1,7 @@ import { reactNode, validateProps } from '@msinternal/botframework-webchat-react-valibot'; import { makeCreateStyles } from '@msinternal/botframework-webchat-styles'; import { InjectStyleElements } from '@msinternal/botframework-webchat-styles/react'; -import { useStyleOptions } from 'botframework-webchat-api/hook'; +import { useStyleOptions } from 'botframework-webchat-api/hook.js'; import classNames from 'classnames'; import random from 'math-random'; import React, { forwardRef, memo, useMemo, type Ref } from 'react'; diff --git a/packages/component/src/Styles/StyleSet/SuggestedAction.ts b/packages/component/src/Styles/StyleSet/SuggestedAction.ts index 97b4d7d4a2..456dcb457c 100644 --- a/packages/component/src/Styles/StyleSet/SuggestedAction.ts +++ b/packages/component/src/Styles/StyleSet/SuggestedAction.ts @@ -48,19 +48,11 @@ export default function createSuggestedActionStyle({ suggestedActionHeight, suggestedActionImageHeight, suggestedActionsStackedLayoutButtonMaxHeight, - subtle, - - // Deprecated - suggestedActionActiveBackground, - suggestedActionBackground, - suggestedActionDisabledBackground, - suggestedActionFocusBackground, - suggestedActionHoverBackground + subtle }: StrictStyleOptions) { return { '&.webchat__suggested-action': { alignItems: 'center', - background: suggestedActionBackground, // Deprecated as of 4.15.0. Remove on or after 2021-09-16. backgroundColor: suggestedActionBackgroundColor, borderColor: suggestedActionBorderColor || accent, borderRadius: suggestedActionBorderRadius, @@ -82,7 +74,6 @@ export default function createSuggestedActionStyle({ // Order of style preferences (based on effort of user gesture): disabled > active > hover > focus. // Keyboard focus indicator styles applied by :focus-visible do not conflict with :active/:hover/:focus, so it is not included here. '&:disabled, &[aria-disabled="true"]': { - background: suggestedActionDisabledBackground, backgroundColor: suggestedActionBackgroundColorOnDisabled, borderColor: suggestedActionBorderColorOnDisabled, borderStyle: suggestedActionBorderStyleOnDisabled, @@ -92,7 +83,6 @@ export default function createSuggestedActionStyle({ '&:not(:disabled):not([aria-disabled="true"])': { '&:active': { - background: suggestedActionActiveBackground, backgroundColor: suggestedActionBackgroundColorOnActive, borderColor: suggestedActionBorderColorOnActive, borderStyle: suggestedActionBorderStyleOnActive, @@ -102,7 +92,6 @@ export default function createSuggestedActionStyle({ '&:not(:active)': { '&:hover': { - background: suggestedActionHoverBackground, backgroundColor: suggestedActionBackgroundColorOnHover, borderColor: suggestedActionBorderColorOnHover, borderStyle: suggestedActionBorderStyleOnHover, @@ -112,7 +101,6 @@ export default function createSuggestedActionStyle({ '&:not(:hover)': { '&:focus': { - background: suggestedActionFocusBackground, backgroundColor: suggestedActionBackgroundColorOnFocus, borderColor: suggestedActionBorderColorOnFocus, borderStyle: suggestedActionBorderStyleOnFocus, diff --git a/packages/component/src/Transcript/ActivityTree.tsx b/packages/component/src/Transcript/ActivityTree.tsx index d6b50504a3..a2ef44b9fd 100644 --- a/packages/component/src/Transcript/ActivityTree.tsx +++ b/packages/component/src/Transcript/ActivityTree.tsx @@ -1,4 +1,4 @@ -import { ActivityGroupingDecorator } from 'botframework-webchat-api/decorator'; +import { ActivityGroupingDecorator } from 'botframework-webchat-api/decorator.js'; import React, { Fragment, memo } from 'react'; import { type GroupedRenderingActivities } from '../providers/GroupedRenderingActivities/GroupedRenderingActivities'; diff --git a/packages/component/src/Transcript/hooks/useRenderActivityProps.ts b/packages/component/src/Transcript/hooks/useRenderActivityProps.ts index 4785f6cba0..cd1a6baa02 100644 --- a/packages/component/src/Transcript/hooks/useRenderActivityProps.ts +++ b/packages/component/src/Transcript/hooks/useRenderActivityProps.ts @@ -1,5 +1,5 @@ import { hooks } from 'botframework-webchat-api'; -import { useBuildRenderAvatarCallback } from 'botframework-webchat-api/middleware'; +import { useBuildRenderAvatarCallback } from 'botframework-webchat-api/middleware.js'; import { type WebChatActivity } from 'botframework-webchat-core'; import { useMemo, type ReactNode } from 'react'; diff --git a/packages/component/src/Transcript/useActivityAccessibleName.ts b/packages/component/src/Transcript/useActivityAccessibleName.ts index 81300804bb..9e3d9d3473 100644 --- a/packages/component/src/Transcript/useActivityAccessibleName.ts +++ b/packages/component/src/Transcript/useActivityAccessibleName.ts @@ -111,8 +111,6 @@ export default function useActivityAccessibleName(activity: WebChatActivity, bod const hasWidgets = !!tabbableElements(bodyRef.current).length; interactiveTypeRef.current !== hasWidgets && - // TODO: [P2] Intentionally set the state, we will visit it later. - // eslint-disable-next-line react-hooks/set-state-in-effect setInteractiveType(hasLinks ? InteractiveType.LINK : hasWidgets ? InteractiveType.WIDGET : false); }, [bodyRef, interactiveTypeRef, setInteractiveType]); diff --git a/packages/component/src/Utils/InlineMarkdown.js b/packages/component/src/Utils/InlineMarkdown.js index e22fc4e051..14ab9bdf27 100644 --- a/packages/component/src/Utils/InlineMarkdown.js +++ b/packages/component/src/Utils/InlineMarkdown.js @@ -46,6 +46,9 @@ function replaceAnchorWithButton(markdownTokens) { const InlineMarkdown = ({ children, onReference, references }) => { if (typeof children !== 'string') { console.warn('botframework-webchat: "children" prop passed to must be of type string.'); + + // Shortcut for disabling invalid props. + // eslint-disable-next-line react-hooks/immutability children = ''; } @@ -80,6 +83,8 @@ const InlineMarkdown = ({ children, onReference, references }) => { ); // Markdown-It only support references in uppercase. + // Re-shaping input. + // eslint-disable-next-line react-hooks/immutability references = references.map(reference => reference.toUpperCase()); const { hrefToRef, refToHref } = references.reduce( diff --git a/packages/component/src/Utils/orgSchema/getFirstBaseOfSoftwareSourceCode.ts b/packages/component/src/Utils/orgSchema/getFirstBaseOfSoftwareSourceCode.ts new file mode 100644 index 0000000000..aee4b7d03d --- /dev/null +++ b/packages/component/src/Utils/orgSchema/getFirstBaseOfSoftwareSourceCode.ts @@ -0,0 +1,24 @@ +import { + orgSchemaSoftwareSourceCodeSchema, + type OrgSchemaCreativeWork, + type OrgSchemaSoftwareSourceCode +} from 'botframework-webchat-core'; +import { safeParse } from 'valibot'; + +/** + * Finds the first `isBasedOf` element that is of type `SoftwareSourceCode`. + * + * @param messageThing The `CreativeWork` to find. + * @returns A `SoftwareSourceCode` if found, otherwise, `undefined`. + */ +export default function getFirstBaseOfSoftwareSourceCode( + messageThing: OrgSchemaCreativeWork | undefined +): OrgSchemaSoftwareSourceCode | undefined { + for (const base of messageThing?.isBasedOn ?? []) { + const result = safeParse(orgSchemaSoftwareSourceCodeSchema, base); + + if (result.success) { + return result.output; + } + } +} diff --git a/packages/component/src/boot/deprecated/component.ts b/packages/component/src/boot/deprecated/component.ts new file mode 100644 index 0000000000..33ae183e0c --- /dev/null +++ b/packages/component/src/boot/deprecated/component.ts @@ -0,0 +1,5 @@ +export * from '../component'; + +console.warn( + 'Import from "botframework-webchat-component/component" is deprecated, please import from "botframework-webchat-component/component.js" instead. This entrypoint will be removed on or after 2028-04-24.' +); diff --git a/packages/component/src/boot/deprecated/decorator.ts b/packages/component/src/boot/deprecated/decorator.ts new file mode 100644 index 0000000000..4915f0028a --- /dev/null +++ b/packages/component/src/boot/deprecated/decorator.ts @@ -0,0 +1,5 @@ +export * from '../decorator'; + +console.warn( + 'Import from "botframework-webchat-component/decorator" is deprecated, please import from "botframework-webchat-component/decorator.js" instead. This entrypoint will be removed on or after 2028-04-24.' +); diff --git a/packages/component/src/boot/deprecated/hook.ts b/packages/component/src/boot/deprecated/hook.ts new file mode 100644 index 0000000000..4abac54c5a --- /dev/null +++ b/packages/component/src/boot/deprecated/hook.ts @@ -0,0 +1,5 @@ +export * from '../hook'; + +console.warn( + 'Import from "botframework-webchat-component/hook" is deprecated, please import from "botframework-webchat-component/hook.js" instead. This entrypoint will be removed on or after 2028-04-24.' +); diff --git a/packages/component/src/boot/deprecated/internal.ts b/packages/component/src/boot/deprecated/internal.ts new file mode 100644 index 0000000000..a9aa52e2e9 --- /dev/null +++ b/packages/component/src/boot/deprecated/internal.ts @@ -0,0 +1,5 @@ +export * from '../internal'; + +console.warn( + 'Import from "botframework-webchat-component/internal" is deprecated, please import from "botframework-webchat-component/internal.js" instead. This entrypoint will be removed on or after 2028-04-24.' +); diff --git a/packages/component/src/boot/hook.ts b/packages/component/src/boot/hook.ts index 38f37d1659..3cb3531284 100644 --- a/packages/component/src/boot/hook.ts +++ b/packages/component/src/boot/hook.ts @@ -77,7 +77,7 @@ export { useVoiceRecordingMuted, useVoiceSelector, useVoiceState -} from 'botframework-webchat-api/hook'; +} from 'botframework-webchat-api/hook.js'; // #region Overrides export { diff --git a/packages/component/src/boot/internal.ts b/packages/component/src/boot/internal.ts index 1dc92dd9f6..7e2ea3d536 100644 --- a/packages/component/src/boot/internal.ts +++ b/packages/component/src/boot/internal.ts @@ -12,4 +12,4 @@ export { default as parseDocumentFragmentFromString } from '../Utils/parseDocume export { default as serializeDocumentFragmentIntoString } from '../Utils/serializeDocumentFragmentIntoString'; // For type portability -export { type __INTERNAL_DO_NOT_USE__avatarPolymiddlewareRequestStyleOptionsSymbol } from 'botframework-webchat-api/internal'; +export { type __INTERNAL_DO_NOT_USE__avatarPolymiddlewareRequestStyleOptionsSymbol } from 'botframework-webchat-api/internal.js'; diff --git a/packages/component/src/decorator/private/WebChatDecorator.tsx b/packages/component/src/decorator/private/WebChatDecorator.tsx index edce239b69..3cac590ca1 100644 --- a/packages/component/src/decorator/private/WebChatDecorator.tsx +++ b/packages/component/src/decorator/private/WebChatDecorator.tsx @@ -4,7 +4,7 @@ import { createActivityBorderMiddleware, DecoratorComposer, type DecoratorMiddleware -} from 'botframework-webchat-api/decorator'; +} from 'botframework-webchat-api/decorator.js'; import React, { Fragment, memo } from 'react'; import { object, optional, pipe, readonly, string, type InferInput } from 'valibot'; diff --git a/packages/component/src/decorator/stylesheet/DecoratorStylesheet.tsx b/packages/component/src/decorator/stylesheet/DecoratorStylesheet.tsx index f4db0fb070..a0482961e7 100644 --- a/packages/component/src/decorator/stylesheet/DecoratorStylesheet.tsx +++ b/packages/component/src/decorator/stylesheet/DecoratorStylesheet.tsx @@ -1,7 +1,7 @@ // TODO: [P2] This component can be replaced by `bindProps`. import { InjectStyleElements } from '@msinternal/botframework-webchat-styles/react'; import { validateProps } from '@msinternal/botframework-webchat-react-valibot'; -import { useStyleOptions } from 'botframework-webchat-api/hook'; +import { useStyleOptions } from 'botframework-webchat-api/hook.js'; import React, { memo, type FunctionComponent } from 'react'; import { never, object, optional, pipe, readonly, string, undefinedable, type InferInput } from 'valibot'; diff --git a/packages/component/src/hooks/internal/useFeedbackActions.ts b/packages/component/src/hooks/internal/useFeedbackActions.ts index f7c533f076..757fcd6556 100644 --- a/packages/component/src/hooks/internal/useFeedbackActions.ts +++ b/packages/component/src/hooks/internal/useFeedbackActions.ts @@ -1,6 +1,12 @@ -import { getOrgSchemaMessage, OrgSchemaAction, parseAction, WebChatActivity } from 'botframework-webchat-core'; +import { + getOrgSchemaMessage, + OrgSchemaAction, + orgSchemaActionSchema, + WebChatActivity +} from 'botframework-webchat-core'; import { useCallback, useEffect, useMemo, useState } from 'react'; import { useRefFrom } from 'use-ref-from'; +import { parse } from 'valibot'; import dereferenceBlankNodes from '../../Utils/JSONLinkedData/dereferenceBlankNodes'; export default function useFeedbackActions(initialActivity: WebChatActivity): { @@ -24,9 +30,7 @@ export default function useFeedbackActions(initialActivity: WebChatActivity): { const messageThing = getOrgSchemaMessage(graph); const reactActions = Object.freeze( - (messageThing?.potentialAction || []).filter( - ({ '@type': type }) => type === 'LikeAction' || type === 'DislikeAction' - ) + messageThing?.potentialAction.filter(({ '@type': type }) => type === 'LikeAction' || type === 'DislikeAction') ); if (reactActions.length) { @@ -34,7 +38,9 @@ export default function useFeedbackActions(initialActivity: WebChatActivity): { } const voteActions = Object.freeze( - graph.filter(({ type }) => type === 'https://schema.org/VoteAction').map(parseAction) + graph + .filter(({ type }) => type === 'https://schema.org/VoteAction') + .map(action => parse(orgSchemaActionSchema, action)) ); if (voteActions.length) { @@ -48,7 +54,7 @@ export default function useFeedbackActions(initialActivity: WebChatActivity): { }); const isCompleted = useMemo( - () => actions.some(action => action.actionStatus === 'CompletedActionStatus'), + () => actions.some(action => action.actionStatus[0] === 'CompletedActionStatus'), [actions] ); @@ -66,9 +72,9 @@ export default function useFeedbackActions(initialActivity: WebChatActivity): { Object.freeze( actions.map(action => action === target - ? Object.freeze({ ...action, actionStatus: 'ActiveActionStatus' }) - : action.actionStatus === 'ActiveActionStatus' - ? Object.freeze({ ...action, actionStatus: 'PotentialActionStatus' }) + ? Object.freeze({ ...action, actionStatus: ['ActiveActionStatus'] } satisfies OrgSchemaAction) + : action.actionStatus[0] === 'ActiveActionStatus' + ? Object.freeze({ ...action, actionStatus: ['PotentialActionStatus'] } satisfies OrgSchemaAction) : action ) ) @@ -88,7 +94,9 @@ export default function useFeedbackActions(initialActivity: WebChatActivity): { setActions(actions => Object.freeze( actions.map(action => - action === target ? Object.freeze({ ...action, actionStatus: 'CompletedActionStatus' }) : action + action === target + ? Object.freeze({ ...action, actionStatus: ['CompletedActionStatus'] } satisfies OrgSchemaAction) + : action ) ) ); @@ -99,7 +107,7 @@ export default function useFeedbackActions(initialActivity: WebChatActivity): { const selectedAction = useMemo( () => actions.find( - ({ actionStatus }) => actionStatus === 'ActiveActionStatus' || actionStatus === 'CompletedActionStatus' + ({ actionStatus }) => actionStatus[0] === 'ActiveActionStatus' || actionStatus[0] === 'CompletedActionStatus' ), [actions] ); diff --git a/packages/component/src/hooks/internal/useMemoized.ts b/packages/component/src/hooks/internal/useMemoized.ts index 9e94e64693..8fe7d6fbae 100644 --- a/packages/component/src/hooks/internal/useMemoized.ts +++ b/packages/component/src/hooks/internal/useMemoized.ts @@ -62,7 +62,7 @@ export default function useMemoized(fn: Fn, deps: return memoizedFn; }, // Concat our deps with passed deps, so the memo callback runs when anything changes - /* eslint-disable-next-line react-hooks/exhaustive-deps */ + /* eslint-disable-next-line react-hooks/exhaustive-deps, react-hooks/use-memo */ [fnRef, cacheRef, nextCacheRef, ...deps] ); diff --git a/packages/component/src/hooks/useObserveScrollPosition.ts b/packages/component/src/hooks/useObserveScrollPosition.ts index cb5b7432b9..cf36e71a92 100644 --- a/packages/component/src/hooks/useObserveScrollPosition.ts +++ b/packages/component/src/hooks/useObserveScrollPosition.ts @@ -8,7 +8,10 @@ export default function useObserveScrollPosition( deps: any[] ): void { if (typeof observer !== 'function') { + // This is for shortcutting invalid props. + // eslint-disable-next-line react-hooks/immutability observer = undefined; + console.warn('botframework-webchat: First argument passed to "useObserveScrollPosition" must be a function.'); } else if (typeof deps !== 'undefined' && !Array.isArray(deps)) { console.warn( diff --git a/packages/component/src/hooks/useObserveTranscriptFocus.ts b/packages/component/src/hooks/useObserveTranscriptFocus.ts index 6b39fb265e..ee5d4e4c7e 100644 --- a/packages/component/src/hooks/useObserveTranscriptFocus.ts +++ b/packages/component/src/hooks/useObserveTranscriptFocus.ts @@ -4,11 +4,14 @@ import type { WebChatActivity } from 'botframework-webchat-core'; import useWebChatUIContext from './internal/useWebChatUIContext'; export default function useObserveTranscriptFocus( - observer: (event: { activity: WebChatActivity }) => void, + observer: ((event: { activity: WebChatActivity }) => void) | undefined, deps: any[] ): void { if (typeof observer !== 'function') { + // Shortcut for disabling the observer. + // eslint-disable-next-line react-hooks/immutability observer = undefined; + console.warn('botframework-webchat: First argument passed to "useObserveTranscriptFocus" must be a function.'); } else if (typeof deps !== 'undefined' && !Array.isArray(deps)) { console.warn( @@ -18,6 +21,9 @@ export default function useObserveTranscriptFocus( const { observeTranscriptFocus } = useWebChatUIContext(); - /* eslint-disable-next-line react-hooks/exhaustive-deps */ - useEffect(() => observer && observeTranscriptFocus(observer), [...(deps || []), observer, observeTranscriptFocus]); + useEffect( + () => observer && observeTranscriptFocus(observer), + // eslint-disable-next-line react-hooks/exhaustive-deps + [...(deps || []), observer, observeTranscriptFocus] + ); } diff --git a/packages/component/src/hooks/useStreamingMarkdownWithDefinitions.ts b/packages/component/src/hooks/useStreamingMarkdownWithDefinitions.ts index 0f51804c66..88f36e6d22 100644 --- a/packages/component/src/hooks/useStreamingMarkdownWithDefinitions.ts +++ b/packages/component/src/hooks/useStreamingMarkdownWithDefinitions.ts @@ -83,6 +83,8 @@ export default function useStreamingMarkdownWithDefinitions( // starts clean, but the streaming effect can still set definitions on the same commit. useLayoutEffect(() => { previousMarkdownRef.current = ''; + + // eslint-disable-next-line react-hooks/set-state-in-effect setDefinitions(EMPTY_DEFINITIONS); }, [streamingRenderer]); diff --git a/packages/component/src/providers/CustomElements/customElements/CodeBlock.ts b/packages/component/src/providers/CustomElements/customElements/CodeBlock.ts index 4562b594e6..b984c31f28 100644 --- a/packages/component/src/providers/CustomElements/customElements/CodeBlock.ts +++ b/packages/component/src/providers/CustomElements/customElements/CodeBlock.ts @@ -14,12 +14,12 @@ const { useStyleOptions, useLocalizer } = hooks; class CodeBlock extends HTMLElement { static observedAttributes = ['theme', 'language']; + copyButtonElement: HTMLElement; + #connected = false; #originalFragment: DocumentFragment = undefined; #updateTask?: Promise; - copyButtonElement: HTMLElement; - get code() { return this.querySelector('code')?.textContent ?? ''; } @@ -27,6 +27,7 @@ class CodeBlock extends HTMLElement { get theme() { return this.getAttribute('theme'); } + set theme(value: string) { this.setAttribute('theme', value); } @@ -148,12 +149,12 @@ const useCodeBlockProps = (copyButtonTagName: string) => { ); }; -export default function useReactCodeBlockClass(copyButtonTagName: string) { +export default function useReactCodeBlockClass(copyButtonTagName: string): typeof HTMLElement { const [codeBlockTarget, codeBlockPropsRef] = useCodeBlockProps(copyButtonTagName); const classNames = useStyles(styles); - return useMemo( + return useMemo( () => class ReactCodeBlock extends CodeBlock { static observedAttributes = CodeBlock.observedAttributes; diff --git a/packages/component/src/providers/CustomElements/customElements/wrapAsCustomElement.ts b/packages/component/src/providers/CustomElements/customElements/wrapAsCustomElement.ts index 145f9293e9..e7b9304ecc 100644 --- a/packages/component/src/providers/CustomElements/customElements/wrapAsCustomElement.ts +++ b/packages/component/src/providers/CustomElements/customElements/wrapAsCustomElement.ts @@ -10,7 +10,7 @@ const ConnectionState = { export default function wrapAsCustomElement( component: ComponentType, propKeys: (keyof Props)[] -) { +): typeof HTMLElement { type AttributeName = keyof { [K in keyof Props as K extends 'className' ? 'class' : K]: Props[K] } & string; const attributeNames = propKeys.map(key => (key === 'className' ? 'class' : key)) as AttributeName[]; diff --git a/packages/component/src/providers/LiveRegionTwin/useLiveRegion.ts b/packages/component/src/providers/LiveRegionTwin/useLiveRegion.ts index 687cd05a85..7e9c70a300 100644 --- a/packages/component/src/providers/LiveRegionTwin/useLiveRegion.ts +++ b/packages/component/src/providers/LiveRegionTwin/useLiveRegion.ts @@ -22,6 +22,6 @@ export default function useLiveRegion( const node = createNodeRef?.current(); node && queueStaticElement(node); - // eslint-disable-next-line react-hooks/exhaustive-deps + // eslint-disable-next-line react-hooks/exhaustive-deps, react-hooks/use-memo }, [...deps, createNodeRef, queueStaticElement]); } diff --git a/packages/component/src/providers/RenderingActivities/RenderingActivitiesComposer.tsx b/packages/component/src/providers/RenderingActivities/RenderingActivitiesComposer.tsx index 6724b30557..21dc300f29 100644 --- a/packages/component/src/providers/RenderingActivities/RenderingActivitiesComposer.tsx +++ b/packages/component/src/providers/RenderingActivities/RenderingActivitiesComposer.tsx @@ -1,7 +1,7 @@ import { useBuildRenderActivityCallback, type ActivityPolymiddlewareRenderer -} from 'botframework-webchat-api/middleware'; +} from 'botframework-webchat-api/middleware.js'; import { hooks } from 'botframework-webchat-api'; import { type WebChatActivity } from 'botframework-webchat-core'; import React, { memo, useCallback, useMemo, type ReactNode } from 'react'; diff --git a/packages/component/src/providers/RenderingActivities/private/RenderingActivitiesContext.ts b/packages/component/src/providers/RenderingActivities/private/RenderingActivitiesContext.ts index 21afa9e512..8afa81f670 100644 --- a/packages/component/src/providers/RenderingActivities/private/RenderingActivitiesContext.ts +++ b/packages/component/src/providers/RenderingActivities/private/RenderingActivitiesContext.ts @@ -1,4 +1,4 @@ -import { type ActivityPolymiddlewareRenderer } from 'botframework-webchat-api/middleware'; +import { type ActivityPolymiddlewareRenderer } from 'botframework-webchat-api/middleware.js'; import { type WebChatActivity } from 'botframework-webchat-core'; import createContextAndHook from '../../createContextAndHook'; diff --git a/packages/component/src/providers/RenderingActivities/useActivityRendererMap.ts b/packages/component/src/providers/RenderingActivities/useActivityRendererMap.ts index a8c089fbcd..d85e93f843 100644 --- a/packages/component/src/providers/RenderingActivities/useActivityRendererMap.ts +++ b/packages/component/src/providers/RenderingActivities/useActivityRendererMap.ts @@ -1,4 +1,4 @@ -import { type ActivityPolymiddlewareRenderer } from 'botframework-webchat-api/middleware'; +import { type ActivityPolymiddlewareRenderer } from 'botframework-webchat-api/middleware.js'; import { type WebChatActivity } from 'botframework-webchat-core'; import { useRenderingActivitiesContext } from './private/RenderingActivitiesContext'; diff --git a/packages/component/src/providers/Theme/ThemeProvider.tsx b/packages/component/src/providers/Theme/ThemeProvider.tsx index b9f97e71cb..7b3bd06ef6 100644 --- a/packages/component/src/providers/Theme/ThemeProvider.tsx +++ b/packages/component/src/providers/Theme/ThemeProvider.tsx @@ -17,8 +17,8 @@ import { type ToastMiddleware, type TypingIndicatorMiddleware } from 'botframework-webchat-api'; -import { StyleOptionsComposer } from 'botframework-webchat-api/internal'; -import { type Polymiddleware } from 'botframework-webchat-api/middleware'; +import { StyleOptionsComposer } from 'botframework-webchat-api/internal.js'; +import { type Polymiddleware } from 'botframework-webchat-api/middleware.js'; import React, { memo, useContext, useMemo, type ReactNode } from 'react'; import { array, custom, function_, object, optional, pipe, readonly, safeParse } from 'valibot'; diff --git a/packages/component/src/providers/Theme/private/Context.ts b/packages/component/src/providers/Theme/private/Context.ts index 8884b6ac65..e2bb01542d 100644 --- a/packages/component/src/providers/Theme/private/Context.ts +++ b/packages/component/src/providers/Theme/private/Context.ts @@ -12,7 +12,7 @@ import type { ToastMiddleware, TypingIndicatorMiddleware } from 'botframework-webchat-api'; -import { type Polymiddleware } from 'botframework-webchat-api/middleware'; +import { type Polymiddleware } from 'botframework-webchat-api/middleware.js'; import { createContext } from 'react'; const EMPTY_ARRAY = Object.freeze([] as const); diff --git a/packages/component/src/stylesheet/ComponentStylesheet.tsx b/packages/component/src/stylesheet/ComponentStylesheet.tsx index 1669487f97..c7d15e74b3 100644 --- a/packages/component/src/stylesheet/ComponentStylesheet.tsx +++ b/packages/component/src/stylesheet/ComponentStylesheet.tsx @@ -1,7 +1,7 @@ // TODO: [P2] This component can be replaced by `bindProps`. import { InjectStyleElements } from '@msinternal/botframework-webchat-styles/react'; import { validateProps } from '@msinternal/botframework-webchat-react-valibot'; -import { useStyleOptions } from 'botframework-webchat-api/hook'; +import { useStyleOptions } from 'botframework-webchat-api/hook.js'; import React, { memo, type FunctionComponent } from 'react'; import { never, object, optional, pipe, readonly, string, undefinedable, type InferInput } from 'valibot'; diff --git a/packages/component/src/tsconfig.json b/packages/component/src/tsconfig.json index 96766595e1..0058183c3b 100644 --- a/packages/component/src/tsconfig.json +++ b/packages/component/src/tsconfig.json @@ -2,6 +2,7 @@ "compilerOptions": { "allowJs": true, "downlevelIteration": true, + "strict": false, // We should flip this occasionally and fix all typing issues. "types": ["dom-speech-recognition"] }, "extends": [ diff --git a/packages/component/tsup.config.ts b/packages/component/tsup.config.ts index 23963b16b0..0b32480db1 100644 --- a/packages/component/tsup.config.ts +++ b/packages/component/tsup.config.ts @@ -12,17 +12,32 @@ const commonConfig = applyConfig(config => ({ 'botframework-webchat-component.component': './src/boot/component.ts', 'botframework-webchat-component.decorator': './src/boot/decorator.ts', 'botframework-webchat-component.hook': './src/boot/hook.ts', - 'botframework-webchat-component.internal': './src/boot/internal.ts' + 'botframework-webchat-component.internal': './src/boot/internal.ts', + // Deprecated entrypoint without .js, to be removed on or after 2028-04-24. + 'botframework-webchat-component.deprecated.component': './src/boot/deprecated/component.ts', + 'botframework-webchat-component.deprecated.decorator': './src/boot/deprecated/decorator.ts', + 'botframework-webchat-component.deprecated.hook': './src/boot/deprecated/hook.ts', + 'botframework-webchat-component.deprecated.internal': './src/boot/deprecated/internal.ts' }, esbuildPlugins: [ ...(config.esbuildPlugins ?? []), injectCSSPlugin({ // esbuild does not fully support CSS code splitting, every entry point has its own CSS file. // Related to https://github.com/evanw/esbuild/issues/608. - ignoreCSSEntries: ['dist/botframework-webchat-component.component.css'], + ignoreCSSEntries: [ + 'dist/botframework-webchat-component.component.css', + // Deprecated entrypoint without .js, to be removed on or after 2028-04-24. + 'dist/botframework-webchat-component.deprecated.component.css' + ], stylesPlaceholder: componentStyleContentPlaceholder }), - injectCSSPlugin({ stylesPlaceholder: decoratorStyleContentPlaceholder }) + injectCSSPlugin({ + ignoreCSSEntries: [ + // Deprecated entrypoint without .js, to be removed on or after 2028-04-24. + 'dist/botframework-webchat-component.deprecated.decorator.css' + ], + stylesPlaceholder: decoratorStyleContentPlaceholder + }) ] })); diff --git a/packages/core-debug-api/package.json b/packages/core-debug-api/package.json index 4d5e879cc5..4c66b928c1 100644 --- a/packages/core-debug-api/package.json +++ b/packages/core-debug-api/package.json @@ -53,7 +53,7 @@ }, "devDependencies": { "@msinternal/botframework-webchat-base": "0.0.0-0", - "type-fest": "^5.4.4" + "type-fest": "^5.6.0" }, "dependencies": { "tagged-tag": "1.0.0" diff --git a/packages/core-graph/package.json b/packages/core-graph/package.json index f54b040735..c5ee36710e 100644 --- a/packages/core-graph/package.json +++ b/packages/core-graph/package.json @@ -64,15 +64,15 @@ "@msinternal/botframework-webchat-base": "0.0.0-0", "@testduet/given-when-then": "^0.1.0", "@types/uuid": "^8.3.4", - "type-fest": "^5.4.4", - "typescript": "^5.9.3" + "type-fest": "^5.6.0", + "typescript": "^6.0.3" }, "peerDependencies": { - "core-js-pure": "3.47.0", - "iter-fest": "0.3.0", - "uuid": "8.3.2" + "core-js-pure": "^3.49.0", + "iter-fest": "^0.3.1", + "uuid": "^8.3.2" }, "dependencies": { - "valibot": "1.2.0" + "valibot": "1.3.1" } } diff --git a/packages/core/package.json b/packages/core/package.json index a7da7b57a2..8c31a7c6a7 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -16,6 +16,16 @@ } }, "./activity": { + "import": { + "types": "./dist/botframework-webchat-core.deprecated.activity.d.mts", + "default": "./dist/botframework-webchat-core.deprecated.activity.mjs" + }, + "require": { + "types": "./dist/botframework-webchat-core.deprecated.activity.d.ts", + "default": "./dist/botframework-webchat-core.deprecated.activity.js" + } + }, + "./activity.js": { "import": { "types": "./dist/botframework-webchat-core.activity.d.mts", "default": "./dist/botframework-webchat-core.activity.mjs" @@ -26,6 +36,16 @@ } }, "./graph": { + "import": { + "types": "./dist/botframework-webchat-core.deprecated.graph.d.mts", + "default": "./dist/botframework-webchat-core.deprecated.graph.mjs" + }, + "require": { + "types": "./dist/botframework-webchat-core.deprecated.graph.d.ts", + "default": "./dist/botframework-webchat-core.deprecated.graph.js" + } + }, + "./graph.js": { "import": { "types": "./dist/botframework-webchat-core.graph.d.mts", "default": "./dist/botframework-webchat-core.graph.mjs" @@ -36,6 +56,16 @@ } }, "./internal": { + "import": { + "types": "./dist/botframework-webchat-core.deprecated.internal.d.mts", + "default": "./dist/botframework-webchat-core.deprecated.internal.mjs" + }, + "require": { + "types": "./dist/botframework-webchat-core.deprecated.internal.d.ts", + "default": "./dist/botframework-webchat-core.deprecated.internal.js" + } + }, + "./internal.js": { "import": { "types": "./dist/botframework-webchat-core.internal.d.mts", "default": "./dist/botframework-webchat-core.internal.mjs" @@ -122,27 +152,27 @@ "@babel/core": "^7.29.0", "@babel/plugin-transform-runtime": "^7.29.0", "@babel/plugin-transform-typescript": "^7.28.6", - "@babel/preset-env": "^7.29.0", + "@babel/preset-env": "^7.29.2", "@msinternal/botframework-webchat-base": "0.0.0-0", "@msinternal/botframework-webchat-core-debug-api": "0.0.0-0", "@msinternal/botframework-webchat-core-graph": "0.0.0-0", "@msinternal/botframework-webchat-tsconfig": "0.0.0-0", "@testduet/given-when-then": "^0.1.0", "@types/jest": "^29.5.14", - "@types/node": "^25.3.3", + "@types/node": "^25.6.0", "@types/uuid": "^8.3.4", - "babel-plugin-istanbul": "^7.0.1", + "babel-plugin-istanbul": "^8.0.0", "babel-plugin-transform-inline-environment-variables": "^0.4.4", "botframework-directlinejs": "^0.15.8", "cross-env": "^10.1.0", "tsd": "^0.33.0", - "type-fest": "^5.4.4", - "typescript": "^5.9.3" + "type-fest": "^5.6.0", + "typescript": "^6.0.3" }, "dependencies": { - "@babel/runtime": "7.28.6", - "@redux-devtools/extension": "3.3.0", - "core-js-pure": "3.48.0", + "@babel/runtime": "7.29.2", + "@redux-devtools/extension": "4.0.0", + "core-js-pure": "3.49.0", "iter-fest": "0.3.1", "jwt-decode": "4.0.0", "math-random": "2.0.1", @@ -151,6 +181,6 @@ "redux-saga": "1.4.2", "simple-update-in": "2.2.0", "uuid": "8.3.2", - "valibot": "1.2.0" + "valibot": "1.3.1" } } diff --git a/packages/core/src/actions/connect.ts b/packages/core/src/actions/connect.ts index db8b068a6b..df51c913f7 100644 --- a/packages/core/src/actions/connect.ts +++ b/packages/core/src/actions/connect.ts @@ -5,7 +5,15 @@ const CONNECT_PENDING = `${CONNECT}_PENDING`; const CONNECT_REJECTED = `${CONNECT}_REJECTED`; const CONNECT_STILL_PENDING = `${CONNECT}_STILL_PENDING`; -export default function connect({ directLine, userID, username }) { +export default function connect({ + directLine, + userID, + username +}: { + readonly directLine: any; + readonly userID: string; + readonly username: string; +}) { return { type: CONNECT, payload: { diff --git a/packages/core/src/actions/sendEvent.ts b/packages/core/src/actions/sendEvent.ts index badd442fa5..5168d356af 100644 --- a/packages/core/src/actions/sendEvent.ts +++ b/packages/core/src/actions/sendEvent.ts @@ -1,6 +1,6 @@ const SEND_EVENT = 'WEB_CHAT/SEND_EVENT'; -export default function sendEvent(name, value) { +export default function sendEvent(name: string, value: any) { return { type: SEND_EVENT, payload: { name, value } diff --git a/packages/core/src/actions/sendMessageBack.ts b/packages/core/src/actions/sendMessageBack.ts index d75f9d95ef..272a5261a4 100644 --- a/packages/core/src/actions/sendMessageBack.ts +++ b/packages/core/src/actions/sendMessageBack.ts @@ -1,6 +1,6 @@ const SEND_MESSAGE_BACK = 'WEB_CHAT/SEND_MESSAGE_BACK'; -export default function sendMessageback(value, text, displayText) { +export default function sendMessageback(value: any, text: string | undefined, displayText: string | undefined) { return { type: SEND_MESSAGE_BACK, payload: { displayText, text, value } diff --git a/packages/core/src/actions/sendPostBack.ts b/packages/core/src/actions/sendPostBack.ts index 77e8bc200c..10e1173576 100644 --- a/packages/core/src/actions/sendPostBack.ts +++ b/packages/core/src/actions/sendPostBack.ts @@ -1,6 +1,6 @@ const SEND_POST_BACK = 'WEB_CHAT/SEND_POST_BACK'; -export default function sendPostback(value) { +export default function sendPostback(value: any) { return { type: SEND_POST_BACK, payload: { value } diff --git a/packages/core/src/actions/setDictateInterims.ts b/packages/core/src/actions/setDictateInterims.ts index b485728f36..5bc98c29ff 100644 --- a/packages/core/src/actions/setDictateInterims.ts +++ b/packages/core/src/actions/setDictateInterims.ts @@ -1,6 +1,6 @@ const SET_DICTATE_INTERIMS = 'WEB_CHAT/SET_DICTATE_INTERIMS'; -export default function setDictateInterims(dictateInterims) { +export default function setDictateInterims(dictateInterims: readonly string[]) { return { type: SET_DICTATE_INTERIMS, payload: { dictateInterims } diff --git a/packages/core/src/actions/setDictateState.ts b/packages/core/src/actions/setDictateState.ts index c706044448..b1c963fa15 100644 --- a/packages/core/src/actions/setDictateState.ts +++ b/packages/core/src/actions/setDictateState.ts @@ -1,6 +1,6 @@ const SET_DICTATE_STATE = 'WEB_CHAT/SET_DICTATE_STATE'; -export default function setDictateState(dictateState) { +export default function setDictateState(dictateState: number) { return { type: SET_DICTATE_STATE, payload: { dictateState } diff --git a/packages/core/src/actions/setLanguage.ts b/packages/core/src/actions/setLanguage.ts index f8b3bd7b42..e04460b308 100644 --- a/packages/core/src/actions/setLanguage.ts +++ b/packages/core/src/actions/setLanguage.ts @@ -1,6 +1,6 @@ const SET_LANGUAGE = 'WEB_CHAT/SET_LANGUAGE'; -export default function setLanguage(language) { +export default function setLanguage(language: string) { return { type: SET_LANGUAGE, payload: { language } diff --git a/packages/core/src/actions/setSendBox.ts b/packages/core/src/actions/setSendBox.ts index 28de1a8ef3..3e4f265c79 100644 --- a/packages/core/src/actions/setSendBox.ts +++ b/packages/core/src/actions/setSendBox.ts @@ -1,6 +1,6 @@ const SET_SEND_BOX = 'WEB_CHAT/SET_SEND_BOX'; -export default function setSendBox(text) { +export default function setSendBox(text: string) { return { type: SET_SEND_BOX, payload: { text } diff --git a/packages/core/src/actions/setSendTimeout.ts b/packages/core/src/actions/setSendTimeout.ts index 4fa8be804a..b70521cf18 100644 --- a/packages/core/src/actions/setSendTimeout.ts +++ b/packages/core/src/actions/setSendTimeout.ts @@ -1,6 +1,6 @@ const SET_SEND_TIMEOUT = 'WEB_CHAT/SET_SEND_TIMEOUT'; -export default function setSendTimeout(sendTimeout) { +export default function setSendTimeout(sendTimeout: number) { return { type: SET_SEND_TIMEOUT, payload: { sendTimeout } diff --git a/packages/core/src/actions/setSendTypingIndicator.ts b/packages/core/src/actions/setSendTypingIndicator.ts index bee0df415e..80734788ac 100644 --- a/packages/core/src/actions/setSendTypingIndicator.ts +++ b/packages/core/src/actions/setSendTypingIndicator.ts @@ -5,7 +5,7 @@ type SetSendTypingIndicatorAction = { type: typeof SET_SEND_TYPING_INDICATOR; }; -export default function setSendTypingIndicator(value): SetSendTypingIndicatorAction { +export default function setSendTypingIndicator(value: boolean): SetSendTypingIndicatorAction { return { payload: { sendTypingIndicator: !!value }, type: SET_SEND_TYPING_INDICATOR diff --git a/packages/core/src/activity/index.ts b/packages/core/src/boot/activity.ts similarity index 100% rename from packages/core/src/activity/index.ts rename to packages/core/src/boot/activity.ts diff --git a/packages/core/src/boot/deprecated/activity.ts b/packages/core/src/boot/deprecated/activity.ts new file mode 100644 index 0000000000..e5e01864d7 --- /dev/null +++ b/packages/core/src/boot/deprecated/activity.ts @@ -0,0 +1,5 @@ +export * from '../activity'; + +console.warn( + 'Import from "botframework-webchat-core/activity" is deprecated, please import from "botframework-webchat-core/activity.js" instead. This entrypoint will be removed on or after 2028-04-24.' +); diff --git a/packages/core/src/boot/deprecated/graph.ts b/packages/core/src/boot/deprecated/graph.ts new file mode 100644 index 0000000000..d2520aa4c1 --- /dev/null +++ b/packages/core/src/boot/deprecated/graph.ts @@ -0,0 +1,5 @@ +export * from '../graph'; + +console.warn( + 'Import from "botframework-webchat-core/graph" is deprecated, please import from "botframework-webchat-core/graph.js" instead. This entrypoint will be removed on or after 2028-04-24.' +); diff --git a/packages/core/src/boot/deprecated/internal.ts b/packages/core/src/boot/deprecated/internal.ts new file mode 100644 index 0000000000..253a0301d3 --- /dev/null +++ b/packages/core/src/boot/deprecated/internal.ts @@ -0,0 +1,5 @@ +export * from '../internal'; + +console.warn( + 'Import from "botframework-webchat-core/internal" is deprecated, please import from "botframework-webchat-core/internal.js" instead. This entrypoint will be removed on or after 2028-04-24.' +); diff --git a/packages/core/src/graph/index.ts b/packages/core/src/boot/graph.ts similarity index 81% rename from packages/core/src/graph/index.ts rename to packages/core/src/boot/graph.ts index f7b59f50d8..0b992d1253 100644 --- a/packages/core/src/graph/index.ts +++ b/packages/core/src/boot/graph.ts @@ -15,4 +15,4 @@ export { type SlantNode, type WritableGraph } from '@msinternal/botframework-webchat-core-graph'; -export { default as createGraphFromStore } from './createGraphFromStore'; +export { default as createGraphFromStore } from '../graph/createGraphFromStore'; diff --git a/packages/core/src/internal/index.ts b/packages/core/src/boot/internal.ts similarity index 67% rename from packages/core/src/internal/index.ts rename to packages/core/src/boot/internal.ts index 75c39b5f43..1e814e4c8f 100644 --- a/packages/core/src/internal/index.ts +++ b/packages/core/src/boot/internal.ts @@ -3,9 +3,9 @@ export { default as setRawState, setRawStateActionSchema, type SetRawStateAction -} from './actions/setRawState'; +} from '../internal/actions/setRawState'; -export { default as StoreDebugAPIRegistry } from './StoreDebugAPIRegistry'; +export { default as StoreDebugAPIRegistry } from '../internal/StoreDebugAPIRegistry'; export { type StoreDebugAPI } from '../types/StoreDebugAPI'; export { RestrictedDebugAPI, type InferPublic } from '@msinternal/botframework-webchat-core-debug-api'; diff --git a/packages/core/src/constants/ActivityClientState.js b/packages/core/src/constants/ActivityClientState.ts similarity index 79% rename from packages/core/src/constants/ActivityClientState.js rename to packages/core/src/constants/ActivityClientState.ts index 5eee652eba..02dbf17b20 100644 --- a/packages/core/src/constants/ActivityClientState.js +++ b/packages/core/src/constants/ActivityClientState.ts @@ -1,8 +1,8 @@ /** @deprecated This constant is being deprecated, please use string literal instead. Will be remove on or after 2024-07-31. */ -const SEND_FAILED = 'send failed'; +const SEND_FAILED = 'send failed' as const; /** @deprecated This constant is being deprecated, please use string literal instead. Will be remove on or after 2024-07-31. */ -const SENDING = 'sending'; +const SENDING = 'sending' as const; /** @deprecated This constant is being deprecated, please use string literal instead. Will be remove on or after 2024-07-31. */ -const SENT = 'sent'; +const SENT = 'sent' as const; export { SEND_FAILED, SENDING, SENT }; diff --git a/packages/core/src/constants/DictateState.js b/packages/core/src/constants/DictateState.js deleted file mode 100644 index 7aef0394c4..0000000000 --- a/packages/core/src/constants/DictateState.js +++ /dev/null @@ -1,7 +0,0 @@ -const IDLE = 0; -const WILL_START = 1; -const STARTING = 2; -const DICTATING = 3; -const STOPPING = 4; - -export { DICTATING, IDLE, STARTING, STOPPING, WILL_START }; diff --git a/packages/core/src/constants/DictateState.ts b/packages/core/src/constants/DictateState.ts new file mode 100644 index 0000000000..23674bc5f4 --- /dev/null +++ b/packages/core/src/constants/DictateState.ts @@ -0,0 +1,10 @@ +const IDLE = 0 as const; +const WILL_START = 1 as const; +// eslint-disable-next-line no-magic-numbers +const STARTING = 2 as const; +// eslint-disable-next-line no-magic-numbers +const DICTATING = 3 as const; +// eslint-disable-next-line no-magic-numbers +const STOPPING = 4 as const; + +export { DICTATING, IDLE, STARTING, STOPPING, WILL_START }; diff --git a/packages/core/src/createStore.ts b/packages/core/src/createStore.ts index 02abafc5fd..324c0b3931 100644 --- a/packages/core/src/createStore.ts +++ b/packages/core/src/createStore.ts @@ -1,5 +1,5 @@ import { composeWithDevTools } from '@redux-devtools/extension'; -import { applyMiddleware, createStore as createReduxStore, type Store } from 'redux'; +import { applyMiddleware, createStore as createReduxStore, type Middleware, type Store } from 'redux'; import createSagaMiddleware from 'redux-saga'; import sagaError from './actions/sagaError'; @@ -8,7 +8,7 @@ import createSagas from './createSagas'; import { RestrictedStoreDebugAPI } from './types/StoreDebugAPI'; import type { GlobalScopePonyfill } from './types/GlobalScopePonyfill'; -import { StoreDebugAPIRegistry } from './internal'; +import StoreDebugAPIRegistry from './internal/StoreDebugAPIRegistry'; type CreateStoreOptions = { /** @@ -31,7 +31,7 @@ type CreateStoreOptions = { ponyfill?: Partial; }; -function createEnhancerAndSagaMiddleware(getStore, ...middlewares) { +function createEnhancerAndSagaMiddleware(getStore: () => any, ...middlewares: readonly Middleware[]) { const sagaMiddleware = createSagaMiddleware({ onError: (...args) => { const [err] = args; @@ -58,7 +58,11 @@ function createEnhancerAndSagaMiddleware(getStore, ...middlewares) { // The complexity is introduced by the check of ponyfill. // eslint-disable-next-line complexity -export function withOptions(options: CreateStoreOptions, initialState?, ...middlewares): Store { +export function withOptions( + options: CreateStoreOptions, + initialState?: any | undefined, + ...middlewares: readonly Middleware[] +): Store { // IE Mode does not have `globalThis`. const globalThisOrWindow = typeof globalThis === 'undefined' ? window : globalThis; const ponyfillFromOptions: Partial = options.ponyfill || {}; @@ -139,7 +143,7 @@ export function withOptions(options: CreateStoreOptions, initialState?, ...middl * * This store is critical for Web Chat business logics to operate, please use with cautions. */ -export default function createStore(initialState?, ...middlewares): Store { +export default function createStore(initialState?: any, ...middlewares: readonly Middleware[]): Store { return withOptions({}, initialState, ...middlewares); } @@ -150,6 +154,6 @@ export default function createStore(initialState?, ...middlewares): Store { * * @deprecated Use `withOptions` instead and pass `{ devTools: true }` */ -export function withDevTools(initialState?, ...middlewares): Store { +export function withDevTools(initialState?: any, ...middlewares: readonly Middleware[]): Store { return withOptions({ devTools: true }, initialState, ...middlewares); } diff --git a/packages/core/src/graph/createGraphFromStore.ts b/packages/core/src/graph/createGraphFromStore.ts index fa86efd3e2..8436473028 100644 --- a/packages/core/src/graph/createGraphFromStore.ts +++ b/packages/core/src/graph/createGraphFromStore.ts @@ -1,8 +1,9 @@ import { SlantGraph, SlantNodeSchema } from '@msinternal/botframework-webchat-core-graph'; import { parse } from 'valibot'; import type createStore from '../createStore'; +import { getLocalIdFromActivity } from '../reducers/activities/sort/property/LocalId'; +import { getPositionFromActivity } from '../reducers/activities/sort/property/Position'; import type { Activity } from '../reducers/activities/sort/types'; -import { getLocalIdFromActivity, getPositionFromActivity } from '../activity'; function createGraphFromStore(store: ReturnType): SlantGraph { const graph = new SlantGraph(); diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts index fadb704911..6a0cfb78c8 100644 --- a/packages/core/src/index.ts +++ b/packages/core/src/index.ts @@ -38,13 +38,6 @@ import createStore, { withDevTools as createStoreWithDevTools, withOptions as createStoreWithOptions } from './createStore'; -import { parseAction } from './types/external/OrgSchema/Action'; -import { parseClaim } from './types/external/OrgSchema/Claim'; -import { parseCreativeWork } from './types/external/OrgSchema/CreativeWork'; -import { parseDefinedTerm } from './types/external/OrgSchema/DefinedTerm'; -import { parseProject } from './types/external/OrgSchema/Project'; -import { parseThing } from './types/external/OrgSchema/Thing'; -import { parseVoteAction } from './types/external/OrgSchema/VoteAction'; import getActivityLivestreamingMetadata from './utils/getActivityLivestreamingMetadata'; import getOrgSchemaMessage from './utils/getOrgSchemaMessage'; import onErrorResumeNext from './utils/onErrorResumeNext'; @@ -90,13 +83,56 @@ import type { DirectLineSuggestedAction } from './types/external/DirectLineSugge import type { DirectLineThumbnailCard } from './types/external/DirectLineThumbnailCard'; import type { DirectLineVideoCard } from './types/external/DirectLineVideoCard'; import type { Observable } from './types/external/Observable'; -import type { Action as OrgSchemaAction } from './types/external/OrgSchema/Action'; -import type { Claim as OrgSchemaClaim } from './types/external/OrgSchema/Claim'; -import type { CreativeWork as OrgSchemaCreativeWork } from './types/external/OrgSchema/CreativeWork'; -import type { DefinedTerm as OrgSchemaDefinedTerm } from './types/external/OrgSchema/DefinedTerm'; -import type { Project as OrgSchemaProject } from './types/external/OrgSchema/Project'; -import type { Thing as OrgSchemaThing } from './types/external/OrgSchema/Thing'; -import type { UserReview as OrgSchemaUserReview } from './types/external/OrgSchema/UserReview'; + +// #region Schema.org +export { + actionSchema as orgSchemaActionSchema, + parseAction, + type ActionOutput as OrgSchemaAction +} from './types/external/OrgSchema/Action'; +export { + claimSchema as orgSchemaClaimSchema, + parseClaim, + type ClaimOutput as OrgSchemaClaim +} from './types/external/OrgSchema/Claim'; +export { + creativeWorkSchema as orgSchemaCreativeWorkSchema, + parseCreativeWork, + type CreativeWorkOutput as OrgSchemaCreativeWork +} from './types/external/OrgSchema/CreativeWork'; +export { + definedTermSchema as orgSchemaDefinedTermSchema, + parseDefinedTerm, + type DefinedTermOutput as OrgSchemaDefinedTerm +} from './types/external/OrgSchema/DefinedTerm'; +export { + personSchema as orgSchemaPersonSchema, + type PersonOutput as OrgSchemaPerson +} from './types/external/OrgSchema/Person'; +export { + projectSchema as orgSchemaProjectSchema, + parseProject, + type ProjectOutput as OrgSchemaProject +} from './types/external/OrgSchema/Project'; +export { + softwareSourceCodeSchema as orgSchemaSoftwareSourceCodeSchema, + type SoftwareSourceCodeOutput as OrgSchemaSoftwareSourceCode +} from './types/external/OrgSchema/SoftwareSourceCode'; +export { + thingSchema as orgSchemaThingSchema, + parseThing, + type ThingOutput as OrgSchemaThing +} from './types/external/OrgSchema/Thing'; +export { + userReviewSchema as orgSchemaUserReviewSchema, + type UserReviewOutput as OrgSchemaUserReview +} from './types/external/OrgSchema/UserReview'; +export { + voteActionSchema as orgSchemaVoteActionSchema, + parseVoteAction, + type VoteActionOutput as OrgSchemaVoteAction +} from './types/external/OrgSchema/VoteAction'; +// #endregion /** @deprecated */ export { singleToArray, type OneOrMany } from '@msinternal/botframework-webchat-base/utils'; @@ -121,13 +157,6 @@ export { markActivity, muteVoiceRecording, onErrorResumeNext, - parseAction, - parseClaim, - parseCreativeWork, - parseDefinedTerm, - parseProject, - parseThing, - parseVoteAction, postActivity, postVoiceActivity, registerVoiceHandler, @@ -172,13 +201,6 @@ export type { DirectLineVideoCard, GlobalScopePonyfill, Observable, - OrgSchemaAction, - OrgSchemaClaim, - OrgSchemaCreativeWork, - OrgSchemaDefinedTerm, - OrgSchemaProject, - OrgSchemaThing, - OrgSchemaUserReview, SendBoxAttachment, VoiceHandler, VoiceState, diff --git a/packages/core/src/reducers/activities/sort/private/getPartGroupingMetadataMap.spec.ts b/packages/core/src/reducers/activities/sort/private/getPartGroupingMetadataMap.spec.ts index d8202cc344..55a43505ad 100644 --- a/packages/core/src/reducers/activities/sort/private/getPartGroupingMetadataMap.spec.ts +++ b/packages/core/src/reducers/activities/sort/private/getPartGroupingMetadataMap.spec.ts @@ -1,5 +1,6 @@ /* eslint-disable no-restricted-globals */ +import { expect } from '@jest/globals'; import { scenario } from '@testduet/given-when-then'; import type { WebChatActivity } from '../../../../types/WebChatActivity'; import type { LocalId } from '../property/LocalId'; @@ -83,9 +84,8 @@ scenario('getPartGroupingMetadataMap with multiple part grouping', bdd => { .then('should return part grouping metadata', (_, actual) => { expect(actual).toEqual( new Map([ - ['Conversation', { groupingId: '_:conv:00001', position: 1 }] - // TODO: [P0] Currently, it only return the first part grouping. - // ['HowTo', { groupingId: '_:how-to:00001', position: 1 }] + ['Conversation', { groupingId: '_:conv:00001', position: 1 }], + ['HowTo', { groupingId: '_:how-to:00001', position: 1 }] ]) satisfies ReturnType ); }); diff --git a/packages/core/src/reducers/activities/sort/private/getPartGroupingMetadataMap.ts b/packages/core/src/reducers/activities/sort/private/getPartGroupingMetadataMap.ts index cdc387c149..1d37f7b22d 100644 --- a/packages/core/src/reducers/activities/sort/private/getPartGroupingMetadataMap.ts +++ b/packages/core/src/reducers/activities/sort/private/getPartGroupingMetadataMap.ts @@ -1,18 +1,6 @@ -import { IdentifierSchema } from '@msinternal/botframework-webchat-core-graph'; -import { array, literal, number, object, optional, safeParse, string, union } from 'valibot'; import type { WebChatActivity } from '../../../../types/WebChatActivity'; import getOrgSchemaMessage from '../../../../utils/getOrgSchemaMessage'; -// TODO: [P0] Need to fix `getOrgSchemaMessage` before we can move to `NodeReferenceSchema`. -// It is introducing new properties, should be relaxed. -const IsPartOfNodeReferenceSchema = object({ '@id': IdentifierSchema, '@type': string() }); - -const MessageIsPartOfSchema = object({ - '@type': literal('Message'), - isPartOf: union([IsPartOfNodeReferenceSchema, array(IsPartOfNodeReferenceSchema)]), - position: optional(number()) -}); - type PartGroupingMetadataMapEntry = { readonly groupingId: string; readonly position: number | undefined; @@ -24,18 +12,15 @@ function getPartGroupingMetadataMap(activity: WebChatActivity): ReadonlyMap { /** Receives the subscription object when `subscribe` is called */ - start(subscription: Subscription); + start(subscription: Subscription): void; /** Receives the next value in the sequence */ next: NextFunction; diff --git a/packages/core/src/types/external/OrgSchema/Action.spec.ts b/packages/core/src/types/external/OrgSchema/Action.spec.ts index dc68c20b18..541b350f31 100644 --- a/packages/core/src/types/external/OrgSchema/Action.spec.ts +++ b/packages/core/src/types/external/OrgSchema/Action.spec.ts @@ -1,4 +1,8 @@ -import { parseAction } from './Action'; +import { describe, expect, test } from '@jest/globals'; +import { actionSchema, parseAction } from './Action'; +import { parse } from 'valibot'; + +const actionTemplate = parse(actionSchema, {}); describe('Action', () => { describe('actionStatus', () => { @@ -9,8 +13,9 @@ describe('Action', () => { actionStatus: 'ActiveActionStatus' }) ).toEqual({ + ...actionTemplate, '@type': 'Action', - actionStatus: 'ActiveActionStatus' + actionStatus: ['ActiveActionStatus'] })); test('should change invalid into undefined', () => { @@ -18,14 +23,17 @@ describe('Action', () => { expect( parseAction({ '@type': 'Action', + // @ts-expect-error actionStatus: 'ABC' }) ).toEqual({ + ...actionTemplate, '@type': 'Action', - actionStatus: undefined + actionStatus: [] }); } catch (err) { console.error(err); + // @ts-expect-error console.error(err.issues[0].input); throw err; diff --git a/packages/core/src/types/external/OrgSchema/Action.ts b/packages/core/src/types/external/OrgSchema/Action.ts index 6c9b0ced14..6d9e23e25c 100644 --- a/packages/core/src/types/external/OrgSchema/Action.ts +++ b/packages/core/src/types/external/OrgSchema/Action.ts @@ -1,9 +1,10 @@ -import { lazy, parse, picklist, pipe, string, type ObjectEntries } from 'valibot'; +import { lazy, looseObject, parse, pipe, readonly, string, type GenericSchema } from 'valibot'; -import orgSchemaProperty from './private/orgSchemaProperty'; -import { project, type Project } from './Project'; -import { thing, type Thing } from './Thing'; -import { userReview, type UserReview } from './UserReview'; +import { actionStatusSchema, type ActionStatusInput, type ActionStatusOutput } from './ActionStatus'; +import orgSchemaProperties from './private/orgSchemaProperties'; +import { projectSchema, type ProjectInput, type ProjectOutput } from './Project'; +import { thingEntries, type ThingInput, type ThingOutput } from './Thing'; +import { userReviewSchema, type UserReviewInput, type UserReviewOutput } from './UserReview'; /** * An action performed by a direct agent and indirect participants upon a direct object. Optionally happens at a location with the help of an inanimate instrument. The execution of the action may produce a result. Specific action sub-type documentation specifies the exact expectation of each argument/role. @@ -14,50 +15,78 @@ import { userReview, type UserReview } from './UserReview'; * * @see https://schema.org/Action */ -export type Action = Thing & { +type ActionInput = ThingInput & { /** * A sub property of object. The options subject to this action. Supersedes [`option`](https://schema.org/option). */ - actionOption?: string | Thing; + readonly actionOption?: string | ThingInput | readonly (string | ThingInput)[] | undefined; /** * Indicates the current disposition of the Action. * * @see https://schema.org/actionStatus */ - actionStatus?: - | 'ActiveActionStatus' - | 'CompletedActionStatus' - | 'FailedActionStatus' - | 'PotentialActionStatus' - | undefined; + readonly actionStatus?: ActionStatusInput | readonly ActionStatusInput[] | undefined; /** * The service provider, service operator, or service performer; the goods producer. Another party (a seller) may offer those services or goods on behalf of the provider. A provider may also serve as the seller. Supersedes [carrier](https://schema.org/carrier). * * @see https://schema.org/provider */ - provider?: Project | undefined; + readonly provider?: ProjectInput | readonly ProjectInput[] | undefined; /** * The result produced in the action. E.g. John wrote *a book*. */ - result?: Thing | UserReview | undefined; + readonly result?: ThingInput | UserReviewInput | readonly (ThingInput | UserReviewInput)[] | undefined; }; -export const action = (entries?: TEntries | undefined) => - thing({ - actionOption: orgSchemaProperty(string()), - actionStatus: orgSchemaProperty( - pipe( - string(), - picklist(['ActiveActionStatus', 'CompletedActionStatus', 'FailedActionStatus', 'PotentialActionStatus']) - ) - ), - provider: orgSchemaProperty(lazy(() => project())), - result: orgSchemaProperty(userReview()), - - ...entries - }); - -export const parseAction = (data: unknown): Action => parse(action(), data); +/** + * An action performed by a direct agent and indirect participants upon a direct object. Optionally happens at a location with the help of an inanimate instrument. The execution of the action may produce a result. Specific action sub-type documentation specifies the exact expectation of each argument/role. + * + * See also [blog post](http://blog.schema.org/2014/04/announcing-schemaorg-actions.html) and [Actions overview document](https://schema.org/docs/actions.html). + * + * This is partial implementation of https://schema.org/Action. + * + * @see https://schema.org/Action + */ +type ActionOutput = ThingOutput & { + /** + * A sub property of object. The options subject to this action. Supersedes [`option`](https://schema.org/option). + */ + readonly actionOption: readonly (string | ThingOutput)[]; + + /** + * Indicates the current disposition of the Action. + * + * @see https://schema.org/actionStatus + */ + readonly actionStatus: readonly ActionStatusOutput[]; + + /** + * The service provider, service operator, or service performer; the goods producer. Another party (a seller) may offer those services or goods on behalf of the provider. A provider may also serve as the seller. Supersedes [carrier](https://schema.org/carrier). + * + * @see https://schema.org/provider + */ + readonly provider: readonly ProjectOutput[]; + + /** + * The result produced in the action. E.g. John wrote *a book*. + */ + readonly result: readonly (ThingOutput | UserReviewOutput)[]; +}; + +const actionEntries = { + ...thingEntries, + actionOption: orgSchemaProperties(string()), + actionStatus: orgSchemaProperties(actionStatusSchema), + provider: orgSchemaProperties(lazy(() => projectSchema)), + result: orgSchemaProperties(userReviewSchema) +}; + +const actionSchema: GenericSchema = pipe(looseObject(actionEntries), readonly()); + +/** @deprecated Use Valibot.parse(actionSchema) instead. Will be removed on or after 2028-04-23. */ +const parseAction = (action: ActionInput): ActionOutput => parse(actionSchema, action); + +export { actionEntries, actionSchema, parseAction, type ActionInput, type ActionOutput }; diff --git a/packages/core/src/types/external/OrgSchema/ActionStatus.ts b/packages/core/src/types/external/OrgSchema/ActionStatus.ts new file mode 100644 index 0000000000..244c7dce36 --- /dev/null +++ b/packages/core/src/types/external/OrgSchema/ActionStatus.ts @@ -0,0 +1,13 @@ +import { picklist, type InferInput, type InferOutput } from 'valibot'; + +const actionStatusSchema = picklist([ + 'ActiveActionStatus', + 'CompletedActionStatus', + 'FailedActionStatus', + 'PotentialActionStatus' +]); + +type ActionStatusInput = InferInput; +type ActionStatusOutput = InferOutput; + +export { actionStatusSchema, type ActionStatusInput, type ActionStatusOutput }; diff --git a/packages/core/src/types/external/OrgSchema/Claim.spec.ts b/packages/core/src/types/external/OrgSchema/Claim.spec.ts index a409826118..c53c615df4 100644 --- a/packages/core/src/types/external/OrgSchema/Claim.spec.ts +++ b/packages/core/src/types/external/OrgSchema/Claim.spec.ts @@ -1,9 +1,17 @@ -import { parseClaim } from './Claim'; +import { describe, expect, test } from '@jest/globals'; +import { parse } from 'valibot'; +import { claimSchema } from './Claim'; +import { creativeWorkSchema } from './CreativeWork'; +import { projectSchema } from './Project'; + +const claimTemplate = parse(claimSchema, {}); +const creativeWorkTemplate = parse(creativeWorkSchema, {}); +const projectTemplate = parse(projectSchema, {}); describe('Claim', () => { test('should parse appearance', () => expect( - parseClaim({ + parse(claimSchema, { '@type': 'Claim', appearance: { '@type': 'Book', @@ -11,16 +19,20 @@ describe('Claim', () => { } }) ).toEqual({ + ...claimTemplate, '@type': 'Claim', - appearance: { - '@type': 'Book', - name: 'Business @ the Speed of Thought' - } + appearance: [ + { + ...creativeWorkTemplate, + '@type': 'Book', + name: ['Business @ the Speed of Thought'] + } + ] })); test('should parse claimInterpreter', () => expect( - parseClaim({ + parse(claimSchema, { '@type': 'Claim', claimInterpreter: { '@type': 'Project', @@ -28,18 +40,40 @@ describe('Claim', () => { } }) ).toEqual({ + ...claimTemplate, '@type': 'Claim', - claimInterpreter: { - '@type': 'Project', - slogan: 'Empower every person and every organization on the planet to achieve more.' - } + claimInterpreter: [ + { + ...projectTemplate, + '@type': 'Project', + slogan: ['Empower every person and every organization on the planet to achieve more.'] + } + ] })); describe('should parse position', () => { test('as a number', () => - expect(parseClaim({ '@type': 'Claim', position: 1 })).toEqual({ '@type': 'Claim', position: 1 })); + expect( + parse(claimSchema, { + '@type': 'Claim', + position: 1 + }) + ).toEqual({ + ...claimTemplate, + '@type': 'Claim', + position: [1] + })); test('as a string', () => - expect(parseClaim({ '@type': 'Claim', position: 'First' })).toEqual({ '@type': 'Claim', position: 'First' })); + expect( + parse(claimSchema, { + '@type': 'Claim', + position: 'First' + }) + ).toEqual({ + ...claimTemplate, + '@type': 'Claim', + position: ['First'] + })); }); }); diff --git a/packages/core/src/types/external/OrgSchema/Claim.ts b/packages/core/src/types/external/OrgSchema/Claim.ts index 68a6a751ab..bc2da5f95b 100644 --- a/packages/core/src/types/external/OrgSchema/Claim.ts +++ b/packages/core/src/types/external/OrgSchema/Claim.ts @@ -1,8 +1,13 @@ -import { lazy, parse, type ObjectEntries } from 'valibot'; +import { lazy, looseObject, parse, pipe, readonly, type GenericSchema } from 'valibot'; -import { creativeWork, type CreativeWork } from './CreativeWork'; -import { project, type Project } from './Project'; -import orgSchemaProperty from './private/orgSchemaProperty'; +import { + creativeWorkEntries, + creativeWorkSchema, + type CreativeWorkInput, + type CreativeWorkOutput +} from './CreativeWork'; +import { projectSchema, type ProjectInput, type ProjectOutput } from './Project'; +import orgSchemaProperties from './private/orgSchemaProperties'; /** * A [Claim](https://schema.org/Claim) in Schema.org represents a specific, factually-oriented claim that could be the [itemReviewed](https://schema.org/itemReviewed) in a [ClaimReview](https://schema.org/ClaimReview). The content of a claim can be summarized with the [text](https://schema.org/text) property. Variations on well known claims can have their common identity indicated via [sameAs](https://schema.org/sameAs) links, and summarized with a name. Ideally, a [Claim](https://schema.org/Claim) description includes enough contextual information to minimize the risk of ambiguity or inclarity. In practice, many claims are better understood in the context in which they appear or the interpretations provided by claim reviews. @@ -13,28 +18,56 @@ import orgSchemaProperty from './private/orgSchemaProperty'; * * @see https://schema.org/Claim. */ -export type Claim = CreativeWork & { +type ClaimInput = CreativeWorkInput & { /** * Indicates an occurrence of a [Claim](https://schema.org/Claim) in some [CreativeWork](https://schema.org/CreativeWork). * * @see https://schema.org/appearance. */ - appearance?: CreativeWork | undefined; + readonly appearance?: CreativeWorkInput | readonly CreativeWorkInput[] | undefined; /** * For a [Claim](https://schema.org/Claim) interpreted from [MediaObject](https://schema.org/MediaObject) content sed to indicate a claim contained, implied or refined from the content of a [MediaObject](https://schema.org/MediaObject). * * @see https://schema.org/claimInterpreter. */ - claimInterpreter?: Project | undefined; + readonly claimInterpreter?: ProjectInput | readonly ProjectInput[] | undefined; }; -export const claim = (entries?: TEntries | undefined) => - creativeWork({ - appearance: orgSchemaProperty(lazy(() => creativeWork())), - claimInterpreter: orgSchemaProperty(lazy(() => project())), +/** + * A [Claim](https://schema.org/Claim) in Schema.org represents a specific, factually-oriented claim that could be the [itemReviewed](https://schema.org/itemReviewed) in a [ClaimReview](https://schema.org/ClaimReview). The content of a claim can be summarized with the [text](https://schema.org/text) property. Variations on well known claims can have their common identity indicated via [sameAs](https://schema.org/sameAs) links, and summarized with a name. Ideally, a [Claim](https://schema.org/Claim) description includes enough contextual information to minimize the risk of ambiguity or inclarity. In practice, many claims are better understood in the context in which they appear or the interpretations provided by claim reviews. + * + * Beyond [ClaimReview](https://schema.org/ClaimReview), the Claim type can be associated with related creative works - for example a [ScholarlyArticle](https://schema.org/ScholarlyArticle) or [Question](https://schema.org/Question) might be about some [Claim](https://schema.org/Claim). + * + * This is partial implementation of https://schema.org/Claim. + * + * @see https://schema.org/Claim. + */ +type ClaimOutput = CreativeWorkOutput & { + /** + * Indicates an occurrence of a [Claim](https://schema.org/Claim) in some [CreativeWork](https://schema.org/CreativeWork). + * + * @see https://schema.org/appearance. + */ + readonly appearance: readonly CreativeWorkOutput[]; + + /** + * For a [Claim](https://schema.org/Claim) interpreted from [MediaObject](https://schema.org/MediaObject) content sed to indicate a claim contained, implied or refined from the content of a [MediaObject](https://schema.org/MediaObject). + * + * @see https://schema.org/claimInterpreter. + */ + readonly claimInterpreter: readonly ProjectOutput[]; +}; + +const claimEntries = { + ...creativeWorkEntries, + appearance: orgSchemaProperties(lazy(() => creativeWorkSchema)), + claimInterpreter: orgSchemaProperties(lazy(() => projectSchema)) +}; + +const claimSchema: GenericSchema = pipe(looseObject(claimEntries), readonly()); - ...entries - }); +/** @deprecated Use Valibot.parse(claimSchema) instead. Will be removed on or after 2028-04-23. */ +const parseClaim = (claim: ClaimInput): ClaimOutput => parse(claimSchema, claim); -export const parseClaim = (data: unknown): Claim => parse(claim(), data); +export { claimEntries, claimSchema, parseClaim, type ClaimInput, type ClaimOutput }; diff --git a/packages/core/src/types/external/OrgSchema/CreativeWork.parseCreativeWork.spec.ts b/packages/core/src/types/external/OrgSchema/CreativeWork.parseCreativeWork.spec.ts index 9dff5c0162..14436cf206 100644 --- a/packages/core/src/types/external/OrgSchema/CreativeWork.parseCreativeWork.spec.ts +++ b/packages/core/src/types/external/OrgSchema/CreativeWork.parseCreativeWork.spec.ts @@ -1,4 +1,8 @@ -import { parseCreativeWork } from './CreativeWork'; +import { describe, expect, test } from '@jest/globals'; +import { creativeWorkSchema, parseCreativeWork } from './CreativeWork'; +import { parse } from 'valibot'; + +const creativeWorkTemplate = parse(creativeWorkSchema, {}); describe('CreativeWork', () => { test('should parse properties from Thing', () => @@ -8,8 +12,9 @@ describe('CreativeWork', () => { name: 'Business @ the Speed of Thought' }) ).toEqual({ + ...creativeWorkTemplate, '@type': 'CreativeWork', - name: 'Business @ the Speed of Thought' + name: ['Business @ the Speed of Thought'] })); test('should parse thing of Book type', () => @@ -19,8 +24,9 @@ describe('CreativeWork', () => { name: 'Business @ the Speed of Thought' }) ).toEqual({ + ...creativeWorkTemplate, '@type': 'Book', - name: 'Business @ the Speed of Thought' + name: ['Business @ the Speed of Thought'] })); test('should parse citation (singular)', () => @@ -31,9 +37,16 @@ describe('CreativeWork', () => { citation: { '@type': 'Book', name: 'The Road Ahead' } }) ).toEqual({ + ...creativeWorkTemplate, '@type': 'Book', - name: 'Business @ the Speed of Thought', - citation: [{ '@type': 'Book', name: 'The Road Ahead' }] + name: ['Business @ the Speed of Thought'], + citation: [ + { + ...creativeWorkTemplate, + '@type': 'Book', + name: ['The Road Ahead'] + } + ] })); test('should parse citation (plural)', () => @@ -44,8 +57,15 @@ describe('CreativeWork', () => { citation: [{ '@type': 'Book', name: 'The Road Ahead' }] }) ).toEqual({ + ...creativeWorkTemplate, '@type': 'Book', - name: 'Business @ the Speed of Thought', - citation: [{ '@type': 'Book', name: 'The Road Ahead' }] + name: ['Business @ the Speed of Thought'], + citation: [ + { + ...creativeWorkTemplate, + '@type': 'Book', + name: ['The Road Ahead'] + } + ] })); }); diff --git a/packages/core/src/types/external/OrgSchema/CreativeWork.ts b/packages/core/src/types/external/OrgSchema/CreativeWork.ts index 6a4225f900..116201b4fe 100644 --- a/packages/core/src/types/external/OrgSchema/CreativeWork.ts +++ b/packages/core/src/types/external/OrgSchema/CreativeWork.ts @@ -1,9 +1,98 @@ -import { lazy, literal, number, object, parse, string, union, type ObjectEntries } from 'valibot'; - -import { definedTerm, type DefinedTerm } from './DefinedTerm'; +import { lazy, looseObject, number, parse, pipe, readonly, string, union, type GenericSchema } from 'valibot'; + +import { + creativeWorkStatusSchema, + type CreativeWorkStatusInput, + type CreativeWorkStatusOutput +} from './CreativeWorkStatus'; +import { definedTermSchema, type DefinedTermInput, type DefinedTermOutput } from './DefinedTerm'; +import { personSchema, type PersonInput, type PersonOutput } from './Person'; import orgSchemaProperties from './private/orgSchemaProperties'; -import orgSchemaProperty from './private/orgSchemaProperty'; -import { thing, type Thing } from './Thing'; +import { thingEntries, type ThingInput, type ThingOutput } from './Thing'; + +/** + * The most generic kind of creative work, including books, movies, photographs, software programs, etc. + * + * This is partial implementation of https://schema.org/CreativeWork. + * + * @see https://schema.org/CreativeWork + */ +type CreativeWorkInput = ThingInput & { + /** + * An abstract is a short description that summarizes a [CreativeWork](https://schema.org/CreativeWork). + * + * @see https://schema.org/abstract + */ + readonly abstract?: string | readonly string[] | undefined; + + /** + * The author of this content or rating. Please note that author is special in that HTML 5 provides a special mechanism for indicating authorship via the rel tag. That is equivalent to this and may be used interchangeably. + * + * @see https://schema.org/author + */ + readonly author?: PersonInput | string | readonly (PersonInput | string)[] | undefined; + + /** + * A citation or reference to another creative work, such as another publication, web page, scholarly article, etc. + * + * @see https://schema.org/citation + */ + readonly citation?: CreativeWorkInput | readonly CreativeWorkInput[] | undefined; + + /** + * The status of the creative work, such as whether it is incomplete or published. + * + * @see https://schema.org/creativeWorkStatus + */ + readonly creativeWorkStatus?: CreativeWorkStatusInput | readonly CreativeWorkStatusInput[] | undefined; + + /** + * The schema.org [isBasedOn](https://schema.org/isBasedOn) property provides a resource from which this work is derived or from which it is a modification or adaptation. + */ + readonly isBasedOn?: CreativeWorkInput | readonly CreativeWorkInput[] | undefined; + + /** + * Indicates an item or CreativeWork that this item, or CreativeWork (in some sense), is part of. + * + * @see https://schema.org/isPartOf + */ + readonly isPartOf?: CreativeWorkInput | readonly CreativeWorkInput[] | undefined; + + /** + * Keywords or tags used to describe some item. Multiple textual entries in a keywords list are typically delimited by commas, or by repeating the property. + * + * @see https://schema.org/keywords + */ + readonly keywords?: DefinedTermInput | string | readonly (DefinedTermInput | string)[] | undefined; + + /** + * A pattern that something has, for example 'polka dot', 'striped', 'Canadian flag'. Values are typically expressed as text, although links to controlled value schemes are also supported. + * + * @see https://schema.org/pattern + */ + readonly pattern?: DefinedTermInput | readonly DefinedTermInput[] | undefined; + + /** + * The position of an item in a series or sequence of items. + * + * @see https://schema.org/position + */ + readonly position?: number | string | readonly (number | string)[] | undefined; + + /** + * The textual content of this CreativeWork. + * + * @see https://schema.org/text + */ + readonly text?: string | readonly string[] | undefined; + + /** + * The schema.org [usageInfo](https://schema.org/usageInfo) property indicates further information about a [CreativeWork](https://schema.org/CreativeWork). This property is applicable both to works that are freely available and to those that require payment or other transactions. It can reference additional information, e.g. community expectations on preferred linking and citation conventions, as well as purchasing details. For something that can be commercially licensed, usageInfo can provide detailed, resource-specific information about licensing options. + * + * This property can be used alongside the license property which indicates license(s) applicable to some piece of content. The usageInfo property can provide information about other licensing options, e.g. acquiring commercial usage rights for an image that is also available under non-commercial creative commons licenses. + */ + readonly usageInfo?: CreativeWorkInput | readonly CreativeWorkInput[] | undefined; +}; /** * The most generic kind of creative work, including books, movies, photographs, software programs, etc. @@ -12,110 +101,109 @@ import { thing, type Thing } from './Thing'; * * @see https://schema.org/CreativeWork */ -// Due to limitations of TypeScript, when using valibot.lazy(), the output type must be explicitly set. -export type CreativeWork = Thing & { +type CreativeWorkOutput = ThingOutput & { /** * An abstract is a short description that summarizes a [CreativeWork](https://schema.org/CreativeWork). * * @see https://schema.org/abstract */ - abstract?: string | undefined; + readonly abstract: readonly string[]; /** * The author of this content or rating. Please note that author is special in that HTML 5 provides a special mechanism for indicating authorship via the rel tag. That is equivalent to this and may be used interchangeably. * * @see https://schema.org/author */ - author?: Person | string | undefined; + readonly author: readonly (PersonOutput | string)[]; /** * A citation or reference to another creative work, such as another publication, web page, scholarly article, etc. * * @see https://schema.org/citation */ - citation?: readonly CreativeWork[] | undefined; + readonly citation: readonly CreativeWorkOutput[]; /** * The status of the creative work, such as whether it is incomplete or published. * * @see https://schema.org/creativeWorkStatus */ - creativeWorkStatus?: 'Incomplete' | 'Published' | undefined; + readonly creativeWorkStatus: readonly CreativeWorkStatusOutput[]; /** * The schema.org [isBasedOn](https://schema.org/isBasedOn) property provides a resource from which this work is derived or from which it is a modification or adaptation. */ - isBasedOn?: CreativeWork | undefined; + readonly isBasedOn: readonly CreativeWorkOutput[]; + + /** + * Indicates an item or CreativeWork that this item, or CreativeWork (in some sense), is part of. + * + * @see https://schema.org/isPartOf + */ + readonly isPartOf: readonly CreativeWorkOutput[]; /** * Keywords or tags used to describe some item. Multiple textual entries in a keywords list are typically delimited by commas, or by repeating the property. * * @see https://schema.org/keywords */ - keywords?: readonly (DefinedTerm | string)[] | undefined; + readonly keywords: readonly (DefinedTermOutput | string)[]; /** * A pattern that something has, for example 'polka dot', 'striped', 'Canadian flag'. Values are typically expressed as text, although links to controlled value schemes are also supported. * * @see https://schema.org/pattern */ - pattern?: DefinedTerm | undefined; + readonly pattern: readonly DefinedTermOutput[]; /** * The position of an item in a series or sequence of items. * * @see https://schema.org/position */ - position?: number; + readonly position: readonly (number | string)[]; /** * The textual content of this CreativeWork. * * @see https://schema.org/text */ - text?: string | undefined; + readonly text: readonly string[]; /** * The schema.org [usageInfo](https://schema.org/usageInfo) property indicates further information about a [CreativeWork](https://schema.org/CreativeWork). This property is applicable both to works that are freely available and to those that require payment or other transactions. It can reference additional information, e.g. community expectations on preferred linking and citation conventions, as well as purchasing details. For something that can be commercially licensed, usageInfo can provide detailed, resource-specific information about licensing options. * * This property can be used alongside the license property which indicates license(s) applicable to some piece of content. The usageInfo property can provide information about other licensing options, e.g. acquiring commercial usage rights for an image that is also available under non-commercial creative commons licenses. */ - usageInfo?: CreativeWork | undefined; + readonly usageInfo: readonly CreativeWorkOutput[]; }; -type Person = { - '@type': 'Person'; - description?: string | undefined; - image?: string | undefined; - name?: string | undefined; +// Cyclic dependency. +// eslint-disable-next-line prefer-const +let creativeWorkSchema_: GenericSchema; + +const creativeWorkEntries = { + ...thingEntries, + abstract: orgSchemaProperties(string()), + author: orgSchemaProperties(union([lazy(() => personSchema), string()])), + citation: orgSchemaProperties(lazy(() => creativeWorkSchema_)), + creativeWorkStatus: orgSchemaProperties(creativeWorkStatusSchema), + isBasedOn: orgSchemaProperties(lazy(() => creativeWorkSchema_)), + isPartOf: orgSchemaProperties(lazy(() => creativeWorkSchema_)), + keywords: orgSchemaProperties(union([lazy(() => definedTermSchema), string()])), + pattern: orgSchemaProperties(lazy(() => definedTermSchema)), + position: orgSchemaProperties(union([number(), string()])), + text: orgSchemaProperties(string()), + usageInfo: orgSchemaProperties(lazy(() => creativeWorkSchema_)) }; -const person = (entries?: TEntries | undefined) => - object({ - description: orgSchemaProperty(string()), - image: orgSchemaProperty(string()), - name: orgSchemaProperty(string()), - - ...entries - }); - -export const creativeWork = (entries?: TEntries | undefined) => - thing({ - // For forward compatibility, we did not enforce @type must be "CreativeWork" or any other subtypes. - // In future, if Schema.org introduced a new subtype of CreativeWork, we should still able to parse that one as a CreativeWork. - - abstract: orgSchemaProperty(string()), - author: orgSchemaProperty(union([person(), string()])), - citation: orgSchemaProperties(lazy(() => creativeWork())), - creativeWorkStatus: orgSchemaProperty(union([literal('Incomplete'), literal('Published')])), - isBasedOn: orgSchemaProperty(lazy(() => creativeWork())), - keywords: orgSchemaProperties(union([lazy(() => definedTerm()), string()])), - pattern: orgSchemaProperty(lazy(() => definedTerm())), - position: orgSchemaProperty(union([number(), string()])), - text: orgSchemaProperty(string()), - usageInfo: orgSchemaProperty(lazy(() => creativeWork())), - - ...entries - }); - -export const parseCreativeWork = (data: unknown): CreativeWork => parse(creativeWork(), data); +creativeWorkSchema_ = pipe(looseObject(creativeWorkEntries), readonly()); + +// Constantize here, so we are exporting a const than a let. +const creativeWorkSchema = creativeWorkSchema_; + +/** @deprecated Use Valibot.parse(creativeWorkSchema) instead. Will be removed on or after 2028-04-23. */ +const parseCreativeWork = (creativeWork: CreativeWorkInput): CreativeWorkOutput => + parse(creativeWorkSchema_, creativeWork); + +export { creativeWorkEntries, creativeWorkSchema, parseCreativeWork, type CreativeWorkInput, type CreativeWorkOutput }; diff --git a/packages/core/src/types/external/OrgSchema/CreativeWorkStatus.ts b/packages/core/src/types/external/OrgSchema/CreativeWorkStatus.ts new file mode 100644 index 0000000000..c74413ff70 --- /dev/null +++ b/packages/core/src/types/external/OrgSchema/CreativeWorkStatus.ts @@ -0,0 +1,8 @@ +import { picklist, type InferInput, type InferOutput } from 'valibot'; + +const creativeWorkStatusSchema = picklist(['Incomplete', 'Published']); + +type CreativeWorkStatusInput = InferInput; +type CreativeWorkStatusOutput = InferOutput; + +export { creativeWorkStatusSchema, type CreativeWorkStatusInput, type CreativeWorkStatusOutput }; diff --git a/packages/core/src/types/external/OrgSchema/DefinedTerm.ts b/packages/core/src/types/external/OrgSchema/DefinedTerm.ts index 544fd27f9a..9a634440a2 100644 --- a/packages/core/src/types/external/OrgSchema/DefinedTerm.ts +++ b/packages/core/src/types/external/OrgSchema/DefinedTerm.ts @@ -1,15 +1,30 @@ -import { parse, string, type ObjectEntries } from 'valibot'; +import { looseObject, parse, pipe, readonly, string, type GenericSchema } from 'valibot'; -import { thing, type Thing } from './Thing'; -import orgSchemaProperty from './private/orgSchemaProperty'; +import { thingEntries, type ThingInput, type ThingOutput } from './Thing'; +import orgSchemaProperties from './private/orgSchemaProperties'; -export const definedTerm = (entries?: TEntries | undefined) => - thing({ - inDefinedTermSet: orgSchemaProperty(string()), - termCode: orgSchemaProperty(string()), +/** + * A word, name, acronym, phrase, etc. with a formal definition. Often used in the context of category or subject classification, glossaries or dictionaries, product or creative work types, etc. Use the name property for the term being defined, use termCode if the term has an alpha-numeric code allocated, use description to provide the definition of the term. + * + * This is partial implementation of https://schema.org/DefinedTerm. + * + * @see https://schema.org/DefinedTerm + */ +type DefinedTermInput = ThingInput & { + /** + * A [DefinedTermSet](https://schema.org/DefinedTermSet) that contains this term. + * + * @see https://schema.org/inDefinedTermSet + */ + readonly inDefinedTermSet?: string | readonly string[] | undefined; - ...entries - }); + /** + * A code that identifies this [DefinedTerm](https://schema.org/DefinedTerm) within a [DefinedTermSet](https://schema.org/DefinedTermSet). + * + * @see https://schema.org/termCode + */ + readonly termCode?: string | readonly string[] | undefined; +}; /** * A word, name, acronym, phrase, etc. with a formal definition. Often used in the context of category or subject classification, glossaries or dictionaries, product or creative work types, etc. Use the name property for the term being defined, use termCode if the term has an alpha-numeric code allocated, use description to provide the definition of the term. @@ -18,20 +33,34 @@ export const definedTerm = (entries?: TEntries | * * @see https://schema.org/DefinedTerm */ -export type DefinedTerm = Thing & { +type DefinedTermOutput = ThingOutput & { /** * A [DefinedTermSet](https://schema.org/DefinedTermSet) that contains this term. * * @see https://schema.org/inDefinedTermSet */ - inDefinedTermSet?: string | undefined; + readonly inDefinedTermSet: readonly string[]; /** * A code that identifies this [DefinedTerm](https://schema.org/DefinedTerm) within a [DefinedTermSet](https://schema.org/DefinedTermSet). * * @see https://schema.org/termCode */ - termCode?: string | undefined; + readonly termCode: readonly string[]; +}; + +const definedTermEntries = { + ...thingEntries, + inDefinedTermSet: orgSchemaProperties(string()), + termCode: orgSchemaProperties(string()) }; -export const parseDefinedTerm = (data: unknown): DefinedTerm => parse(definedTerm(), data); +const definedTermSchema: GenericSchema = pipe( + looseObject(definedTermEntries), + readonly() +); + +/** @deprecated Use Valibot.parse(definedTermSchema) instead. Will be removed on or after 2028-04-23. */ +const parseDefinedTerm = (definedTerm: DefinedTermInput): DefinedTermOutput => parse(definedTermSchema, definedTerm); + +export { definedTermEntries, definedTermSchema, parseDefinedTerm, type DefinedTermInput, type DefinedTermOutput }; diff --git a/packages/core/src/types/external/OrgSchema/Person.ts b/packages/core/src/types/external/OrgSchema/Person.ts new file mode 100644 index 0000000000..0cdf0aa06a --- /dev/null +++ b/packages/core/src/types/external/OrgSchema/Person.ts @@ -0,0 +1,53 @@ +import { looseObject, parse, pipe, readonly, string, type GenericSchema } from 'valibot'; +import { thingEntries, type ThingInput, type ThingOutput } from './Thing'; +import orgSchemaProperties from './private/orgSchemaProperties'; + +/** + * A person (alive, dead, undead, or fictional). + * + * This is partial implementation of https://schema.org/Person. + * + * @see https://schema.org/Person + */ +type PersonInput = ThingInput & { + /** + * An image of the item. This can be a [URL](https://schema.org/URL) or a fully described [ImageObject](https://schema.org/ImageObject). + * + * Note: `ImageObject` is not supported. + * + * @see https://schema.org/image + */ + readonly image?: string | readonly string[] | undefined; +}; + +/** + * A person (alive, dead, undead, or fictional). + * + * This is partial implementation of https://schema.org/Person. + * + * @see https://schema.org/Person + */ +type PersonOutput = ThingOutput & { + /** + * An image of the item. This can be a [URL](https://schema.org/URL) or a fully described [ImageObject](https://schema.org/ImageObject). + * + * Note: `ImageObject` is not supported. + * + * @see https://schema.org/image + */ + readonly image: readonly string[]; +}; + +const personEntries = { + ...thingEntries, + description: orgSchemaProperties(string()), + image: orgSchemaProperties(string()), + name: orgSchemaProperties(string()) +}; + +const personSchema: GenericSchema = pipe(looseObject(personEntries), readonly()); + +/** @deprecated Use Valibot.parse(personSchema) instead. Will be removed on or after 2028-04-23. */ +const parsePerson = (person: PersonInput): PersonOutput => parse(personSchema, person); + +export { parsePerson, personSchema, type PersonInput, type PersonOutput }; diff --git a/packages/core/src/types/external/OrgSchema/Project.parseProject.spec.ts b/packages/core/src/types/external/OrgSchema/Project.parseProject.spec.ts index 2b6841a81d..b7ac478ac5 100644 --- a/packages/core/src/types/external/OrgSchema/Project.parseProject.spec.ts +++ b/packages/core/src/types/external/OrgSchema/Project.parseProject.spec.ts @@ -1,4 +1,8 @@ -import { parseProject } from './Project'; +import { describe, expect, test } from '@jest/globals'; +import { parseProject, projectSchema } from './Project'; +import { parse } from 'valibot'; + +const projectTemplate = parse(projectSchema, {}); describe('Project', () => { test('should parse', () => { @@ -9,9 +13,10 @@ describe('Project', () => { slogan: 'Empower every person and every organization on the planet to achieve more.' }) ).toEqual({ + ...projectTemplate, '@type': 'Project', - name: 'Microsoft', - slogan: 'Empower every person and every organization on the planet to achieve more.' + name: ['Microsoft'], + slogan: ['Empower every person and every organization on the planet to achieve more.'] }); }); }); diff --git a/packages/core/src/types/external/OrgSchema/Project.ts b/packages/core/src/types/external/OrgSchema/Project.ts index ddaa60b766..02daa253b6 100644 --- a/packages/core/src/types/external/OrgSchema/Project.ts +++ b/packages/core/src/types/external/OrgSchema/Project.ts @@ -1,14 +1,23 @@ -import { parse, string, type ObjectEntries } from 'valibot'; +import { looseObject, parse, pipe, readonly, string, type GenericSchema } from 'valibot'; -import { thing, type Thing } from './Thing'; -import orgSchemaProperty from './private/orgSchemaProperty'; +import orgSchemaProperties from './private/orgSchemaProperties'; +import { thingEntries, type ThingInput, type ThingOutput } from './Thing'; -export const project = (entries?: TEntries | undefined) => - thing({ - slogan: orgSchemaProperty(string()), - - ...entries - }); +/** + * An enterprise (potentially individual but typically collaborative), planned to achieve a particular aim. Use properties from [Organization](https://schema.org/Organization), [subOrganization](https://schema.org/subOrganization)/[parentOrganization](https://schema.org/parentOrganization) to indicate project sub-structures. + * + * This is partial implementation of https://schema.org/Project. + * + * @see https://schema.org/Project + */ +type ProjectInput = ThingInput & { + /** + * A slogan or motto associated with the item. + * + * @see https://schema.org/slogan + */ + readonly slogan?: string | readonly string[] | undefined; +}; /** * An enterprise (potentially individual but typically collaborative), planned to achieve a particular aim. Use properties from [Organization](https://schema.org/Organization), [subOrganization](https://schema.org/subOrganization)/[parentOrganization](https://schema.org/parentOrganization) to indicate project sub-structures. @@ -17,13 +26,23 @@ export const project = (entries?: TEntries | und * * @see https://schema.org/Project */ -export type Project = Thing & { +type ProjectOutput = ThingOutput & { /** * A slogan or motto associated with the item. * * @see https://schema.org/slogan */ - slogan?: string | undefined; + readonly slogan: readonly string[]; }; -export const parseProject = (data: unknown): Project => parse(project(), data); +const projectEntries = { + ...thingEntries, + slogan: orgSchemaProperties(string()) +}; + +const projectSchema: GenericSchema = pipe(looseObject(projectEntries), readonly()); + +/** @deprecated Use Valibot.parse(projectSchema) instead. Will be removed on or after 2028-04-23. */ +const parseProject = (project: ProjectInput): ProjectOutput => parse(projectSchema, project); + +export { projectEntries, parseProject, projectSchema, type ProjectInput, type ProjectOutput }; diff --git a/packages/core/src/types/external/OrgSchema/SoftwareSourceCode.ts b/packages/core/src/types/external/OrgSchema/SoftwareSourceCode.ts new file mode 100644 index 0000000000..843bd795b5 --- /dev/null +++ b/packages/core/src/types/external/OrgSchema/SoftwareSourceCode.ts @@ -0,0 +1,53 @@ +import { looseObject, pipe, readonly, string, type GenericSchema } from 'valibot'; + +import { creativeWorkEntries, type CreativeWorkInput, type CreativeWorkOutput } from './CreativeWork'; +import orgSchemaProperties from './private/orgSchemaProperties'; + +/** + * Computer programming source code. Example: Full (compile ready) solutions, code snippet samples, scripts, templates. + * + * This is partial implementation of https://schema.org/SoftwareSourceCode. + * + * @see https://schema.org/SoftwareSourceCode + */ +type SoftwareSourceCodeInput = CreativeWorkInput & { + /** + * The computer programming language. + * + * @see https://schema.org/programmingLanguage + */ + readonly programmingLanguage?: string | readonly string[] | undefined; +}; + +/** + * Computer programming source code. Example: Full (compile ready) solutions, code snippet samples, scripts, templates. + * + * This is partial implementation of https://schema.org/SoftwareSourceCode. + * + * @see https://schema.org/SoftwareSourceCode + */ +type SoftwareSourceCodeOutput = CreativeWorkOutput & { + /** + * The computer programming language. + * + * @see https://schema.org/programmingLanguage + */ + readonly programmingLanguage: readonly string[]; +}; + +const softwareSourceCodeEntries = { + ...creativeWorkEntries, + programmingLanguage: orgSchemaProperties(string()) +}; + +const softwareSourceCodeSchema: GenericSchema = pipe( + looseObject(softwareSourceCodeEntries), + readonly() +); + +export { + softwareSourceCodeEntries, + softwareSourceCodeSchema, + type SoftwareSourceCodeInput, + type SoftwareSourceCodeOutput +}; diff --git a/packages/core/src/types/external/OrgSchema/Thing.parseThing.spec.ts b/packages/core/src/types/external/OrgSchema/Thing.parseThing.spec.ts index d42a302c5f..c9d4492b67 100644 --- a/packages/core/src/types/external/OrgSchema/Thing.parseThing.spec.ts +++ b/packages/core/src/types/external/OrgSchema/Thing.parseThing.spec.ts @@ -1,27 +1,33 @@ -import { parseThing } from './Thing'; +import { describe, expect, test } from '@jest/globals'; +import { parse } from 'valibot'; +import { thingSchema } from './Thing'; + +const thingTemplate = parse(thingSchema, {}); describe('Thing', () => { test('should parse', () => { expect( - parseThing({ + parse(thingSchema, { '@type': 'Thing', name: 'John Doe' }) ).toEqual({ + ...thingTemplate, '@type': 'Thing', - name: 'John Doe' + name: ['John Doe'] }); }); test('should parse unknown @type', () => { expect( - parseThing({ + parse(thingSchema, { '@type': 'Unknown', name: 'John Doe' }) ).toEqual({ + ...thingTemplate, '@type': 'Unknown', - name: 'John Doe' + name: ['John Doe'] }); }); @@ -30,11 +36,12 @@ describe('Thing', () => { // If unknown properties are removed, we will remove properties that are solely for CreativeWork. test('should not remove unknown properties', () => { expect( - parseThing({ + parse(thingSchema, { '@type': 'Thing', something: 1 }) ).toEqual({ + ...thingTemplate, '@type': 'Thing', something: 1 }); @@ -42,13 +49,14 @@ describe('Thing', () => { test('should set invalid properties to undefined', () => { expect( - parseThing({ + parse(thingSchema, { '@type': 'Thing', name: 1 }) ).toEqual({ + ...thingTemplate, '@type': 'Thing', - name: undefined + name: [] }); }); }); diff --git a/packages/core/src/types/external/OrgSchema/Thing.ts b/packages/core/src/types/external/OrgSchema/Thing.ts index 47f0ed518e..3c6b10292e 100644 --- a/packages/core/src/types/external/OrgSchema/Thing.ts +++ b/packages/core/src/types/external/OrgSchema/Thing.ts @@ -1,10 +1,7 @@ -import { type EmptyObject } from 'type-fest'; -import { lazy, literal, looseObject, optional, parse, pipe, string, type ObjectEntries } from 'valibot'; +import { lazy, literal, looseObject, optional, parse, pipe, readonly, string, type GenericSchema } from 'valibot'; -import { action, type Action } from './Action'; -import { creativeWork, type CreativeWork } from './CreativeWork'; +import { actionSchema, type ActionInput, type ActionOutput } from './Action'; import orgSchemaProperties from './private/orgSchemaProperties'; -import orgSchemaProperty from './private/orgSchemaProperty'; /** * The most generic type of item. @@ -13,88 +10,124 @@ import orgSchemaProperty from './private/orgSchemaProperty'; * * @see https://schema.org/Thing */ -export type Thing = { - '@context'?: 'https://schema.org' | undefined; - '@id'?: string | undefined; - '@type': string; +type ThingInput = { + readonly '@context'?: 'https://schema.org' | undefined; + readonly '@id'?: string | undefined; + readonly '@type'?: string | undefined; /** * An additional type for the item, typically used for adding more specific types from external vocabularies in microdata syntax. This is a relationship between something and a class that the thing is in. Typically the value is a URI-identified RDF class, and in this case corresponds to the use of rdf:type in RDF. Text values can be used sparingly, for cases where useful information can be added without their being an appropriate schema to reference. In the case of text values, the class label should follow the schema.org [style guide](https://schema.org/docs/styleguide.html). * * @see https://schema.org/additionalType */ - additionalType?: string | undefined; + readonly additionalType?: string | readonly string[] | undefined; /** * An alias for the item. * * @see https://schema.org/alternateName */ - alternateName?: string | undefined; + readonly alternateName?: string | readonly string[] | undefined; /** * A description of the item. * * @see https://schema.org/description */ - description?: string | undefined; + readonly description?: string | readonly string[] | undefined; /** * The name of the item. * * @see https://schema.org/name */ - name?: string | undefined; + readonly name?: string | readonly string[] | undefined; /** * Indicates a potential Action, which describes an idealized action in which this thing would play an 'object' role. * * @see https://schema.org/potentialAction */ - potentialAction?: readonly Action[] | undefined; + readonly potentialAction?: ActionInput | readonly ActionInput[] | undefined; /** * URL of the item. * * @see https://schema.org/url */ - url?: string | undefined; + readonly url?: string | readonly string[] | undefined; +}; + +/** + * The most generic type of item. + * + * This is partial implementation of https://schema.org/Thing. + * + * @see https://schema.org/Thing + */ +type ThingOutput = { + readonly '@context'?: 'https://schema.org' | undefined; + readonly '@id'?: string | undefined; + readonly '@type'?: string | undefined; + + /** + * An additional type for the item, typically used for adding more specific types from external vocabularies in microdata syntax. This is a relationship between something and a class that the thing is in. Typically the value is a URI-identified RDF class, and in this case corresponds to the use of rdf:type in RDF. Text values can be used sparingly, for cases where useful information can be added without their being an appropriate schema to reference. In the case of text values, the class label should follow the schema.org [style guide](https://schema.org/docs/styleguide.html). + * + * @see https://schema.org/additionalType + */ + readonly additionalType: readonly string[]; /** - * Indicates an item or CreativeWork that this item, or CreativeWork (in some sense), is part of. + * An alias for the item. * - * @see https://schema.org/isPartOf + * @see https://schema.org/alternateName */ - isPartOf?: CreativeWork | undefined; + readonly alternateName: readonly string[]; + + /** + * A description of the item. + * + * @see https://schema.org/description + */ + readonly description: readonly string[]; + + /** + * The name of the item. + * + * @see https://schema.org/name + */ + readonly name: readonly string[]; + + /** + * Indicates a potential Action, which describes an idealized action in which this thing would play an 'object' role. + * + * @see https://schema.org/potentialAction + */ + readonly potentialAction: readonly ActionOutput[]; + + /** + * URL of the item. + * + * @see https://schema.org/url + */ + readonly url: readonly string[]; }; const thingEntries = { - '@context': optional(pipe(string(), literal('https://schema.org'))), + '@context': optional(pipe(literal('https://schema.org'))), '@id': optional(string()), - '@type': string(), - - additionalType: orgSchemaProperty(string()), - alternateName: orgSchemaProperty(string()), - description: orgSchemaProperty(string()), - isPartOf: orgSchemaProperty(lazy(() => creativeWork())), - name: orgSchemaProperty(string()), - potentialAction: orgSchemaProperties(lazy(() => action())), - url: orgSchemaProperty(string()) + '@type': optional(string()), + additionalType: orgSchemaProperties(string()), + alternateName: orgSchemaProperties(string()), + description: orgSchemaProperties(string()), + name: orgSchemaProperties(string()), + potentialAction: orgSchemaProperties(lazy(() => actionSchema)), + url: orgSchemaProperties(string()) }; -export const thing = (entries?: TEntries | undefined) => - // Forward compatibility is the reason why we use unknown() here and not adhere to JSON-LD which drop unknown fields. - // - // Example: - // - CreativeWork.editor must be type of Person (or any of its subtypes, Patient) - // - Without unknown(), when we parse the CreativeWork, we will drop Patient.diagnosis - // - That means, CreativeWork.editor.diagnosis will be unset despite CreativeWork.editor is of type Patient - // - // We can drop unknown() if there is a way to keep CreativeWork.editor.diagnosis. - // It is okay to drop future/unsupported properties. But not today/supported properties. - looseObject({ - ...thingEntries, - ...entries - }); - -export const parseThing = (data: unknown): Thing => parse(thing(), data); +const thingSchema: GenericSchema = pipe(looseObject(thingEntries), readonly()); + +/** @deprecated Use Valibot.parse(thingSchema) instead. Will be removed on or after 2028-04-23. */ +const parseThing = (thing: ThingInput): ThingOutput => parse(thingSchema, thing); + +export { parseThing, thingEntries, thingSchema, type ThingInput, type ThingOutput }; diff --git a/packages/core/src/types/external/OrgSchema/UserReview.ts b/packages/core/src/types/external/OrgSchema/UserReview.ts index 8ce5d9c322..2088845d9a 100644 --- a/packages/core/src/types/external/OrgSchema/UserReview.ts +++ b/packages/core/src/types/external/OrgSchema/UserReview.ts @@ -1,7 +1,7 @@ -import { parse, string, type ObjectEntries } from 'valibot'; +import { looseObject, parse, pipe, readonly, string, type GenericSchema } from 'valibot'; -import orgSchemaProperty from './private/orgSchemaProperty'; -import { thing, type Thing } from './Thing'; +import orgSchemaProperties from './private/orgSchemaProperties'; +import { thingEntries, type ThingInput, type ThingOutput } from './Thing'; /** * A review created by an end-user (e.g. consumer, purchaser, attendee etc.), in contrast with [`CriticReview`](https://schema.org/CriticReview). @@ -10,18 +10,38 @@ import { thing, type Thing } from './Thing'; * * @see https://schema.org/UserReview */ -export type UserReview = Thing & { +type UserReviewInput = ThingInput & { /** * This Review or Rating is relevant to this part or facet of the itemReviewed. */ - reviewAspect?: string | undefined; + readonly reviewAspect?: string | readonly string[] | undefined; }; -export const userReview = (entries?: TEntries | undefined) => - thing({ - reviewAspect: orgSchemaProperty(string()), +/** + * A review created by an end-user (e.g. consumer, purchaser, attendee etc.), in contrast with [`CriticReview`](https://schema.org/CriticReview). + * + * This is partial implementation of https://schema.org/UserReview. + * + * @see https://schema.org/UserReview + */ +type UserReviewOutput = ThingOutput & { + /** + * This Review or Rating is relevant to this part or facet of the itemReviewed. + */ + readonly reviewAspect: readonly string[]; +}; + +const userReviewEntries = { + ...thingEntries, + reviewAspect: orgSchemaProperties(string()) +}; + +const userReviewSchema: GenericSchema = pipe( + looseObject(userReviewEntries), + readonly() +); - ...entries - }); +/** @deprecated Use Valibot.parse(userReviewSchema) instead. Will be removed on or after 2028-04-23. */ +const parseUserReview = (userReview: UserReviewInput): UserReviewOutput => parse(userReviewSchema, userReview); -export const parseUserReview = (data: unknown): UserReview => parse(userReview(), data); +export { parseUserReview, userReviewEntries, userReviewSchema, type UserReviewInput, type UserReviewOutput }; diff --git a/packages/core/src/types/external/OrgSchema/VoteAction.spec.ts b/packages/core/src/types/external/OrgSchema/VoteAction.spec.ts index 76cf89730b..e4029cd2a7 100644 --- a/packages/core/src/types/external/OrgSchema/VoteAction.spec.ts +++ b/packages/core/src/types/external/OrgSchema/VoteAction.spec.ts @@ -1,4 +1,8 @@ -import { parseVoteAction } from './VoteAction'; +import { describe, expect, test } from '@jest/globals'; +import { parseVoteAction, voteActionSchema } from './VoteAction'; +import { parse } from 'valibot'; + +const voteActionTemplate = parse(voteActionSchema, {}); describe('VoteAction', () => { describe('actionOption', () => { @@ -9,8 +13,9 @@ describe('VoteAction', () => { actionOption: 'upvote' }) ).toEqual({ + ...voteActionTemplate, '@type': 'VoteAction', - actionOption: 'upvote' + actionOption: ['upvote'] })); test('should change invalid into undefined', () => { @@ -18,14 +23,17 @@ describe('VoteAction', () => { expect( parseVoteAction({ '@type': 'Action', + // @ts-expect-error actionOption: 123 }) ).toEqual({ + ...voteActionTemplate, '@type': 'Action', - actionOption: undefined + actionOption: [] }); } catch (err) { console.error(err); + // @ts-expect-error console.error(err.issues[0].input); throw err; diff --git a/packages/core/src/types/external/OrgSchema/VoteAction.ts b/packages/core/src/types/external/OrgSchema/VoteAction.ts index 481eb08e64..bbd06a0d90 100644 --- a/packages/core/src/types/external/OrgSchema/VoteAction.ts +++ b/packages/core/src/types/external/OrgSchema/VoteAction.ts @@ -1,7 +1,7 @@ -import { parse, string, type ObjectEntries } from 'valibot'; +import { looseObject, parse, pipe, readonly, string, type GenericSchema } from 'valibot'; -import { action, type Action } from './Action'; -import orgSchemaProperty from './private/orgSchemaProperty'; +import { actionEntries, type ActionInput, type ActionOutput } from './Action'; +import orgSchemaProperties from './private/orgSchemaProperties'; /** * An action performed by a direct agent and indirect participants upon a direct object. Optionally happens at a location with the help of an inanimate instrument. The execution of the action may produce a result. Specific action sub-type documentation specifies the exact expectation of each argument/role. @@ -12,20 +12,44 @@ import orgSchemaProperty from './private/orgSchemaProperty'; * * @see https://schema.org/Action */ -export type VoteAction = Action & { +type VoteActionInput = ActionInput & { /** * A sub property of object. The options subject to this action. Supersedes [option](https://schema.org/option). * * @see https://schema.org/VoteAction */ - actionOption?: string | undefined; + readonly actionOption?: string | readonly string[] | undefined; }; -export const voteAction = (entries?: TEntries | undefined) => - action({ - actionOption: orgSchemaProperty(string()), +/** + * An action performed by a direct agent and indirect participants upon a direct object. Optionally happens at a location with the help of an inanimate instrument. The execution of the action may produce a result. Specific action sub-type documentation specifies the exact expectation of each argument/role. + * + * See also [blog post](http://blog.schema.org/2014/04/announcing-schemaorg-actions.html) and [Actions overview document](https://schema.org/docs/actions.html). + * + * This is partial implementation of https://schema.org/Action. + * + * @see https://schema.org/Action + */ +type VoteActionOutput = ActionOutput & { + /** + * A sub property of object. The options subject to this action. Supersedes [option](https://schema.org/option). + * + * @see https://schema.org/VoteAction + */ + readonly actionOption: readonly string[]; +}; + +const voteActionEntries = { + ...actionEntries, + actionOption: orgSchemaProperties(string()) +}; + +const voteActionSchema: GenericSchema = pipe( + looseObject(voteActionEntries), + readonly() +); - ...entries - }); +/** @deprecated Use Valibot.parse(voteActionSchema) instead. Will be removed on or after 2028-04-23. */ +const parseVoteAction = (voteAction: VoteActionInput): VoteActionOutput => parse(voteActionSchema, voteAction); -export const parseVoteAction = (data: unknown): VoteAction => parse(voteAction(), data); +export { parseVoteAction, voteActionEntries, voteActionSchema, type VoteActionInput, type VoteActionOutput }; diff --git a/packages/core/src/types/external/OrgSchema/private/orgSchemaProperties.spec.ts b/packages/core/src/types/external/OrgSchema/private/orgSchemaProperties.spec.ts index 66d0e1f9d5..7592867191 100644 --- a/packages/core/src/types/external/OrgSchema/private/orgSchemaProperties.spec.ts +++ b/packages/core/src/types/external/OrgSchema/private/orgSchemaProperties.spec.ts @@ -1,3 +1,4 @@ +import { describe, expect, test } from '@jest/globals'; import { parse, string } from 'valibot'; import orgSchemaProperties from './orgSchemaProperties'; @@ -9,15 +10,15 @@ describe('orgSchemaProperties', () => { }); test('should turn item of invalid type into undefined', () => { - expect(parse(orgSchemaProperties(string()), 0)).toBeUndefined(); + expect(parse(orgSchemaProperties(string()), 0)).toEqual([]); }); test('should turn null into undefined', () => { - expect(parse(orgSchemaProperties(string()), null)).toBeUndefined(); + expect(parse(orgSchemaProperties(string()), null)).toEqual([]); }); test('should keep undefined as-is', () => { - expect(parse(orgSchemaProperties(string()), undefined)).toBeUndefined(); + expect(parse(orgSchemaProperties(string()), undefined)).toEqual([]); }); }); diff --git a/packages/core/src/types/external/OrgSchema/private/orgSchemaProperties.ts b/packages/core/src/types/external/OrgSchema/private/orgSchemaProperties.ts index 2ed9d6ae50..f6169ee19c 100644 --- a/packages/core/src/types/external/OrgSchema/private/orgSchemaProperties.ts +++ b/packages/core/src/types/external/OrgSchema/private/orgSchemaProperties.ts @@ -1,27 +1,54 @@ import { + any, array, fallback, - parse, + optional, pipe, + safeParse, transform, - type ArraySchema, + union, type BaseSchema, - type UndefinedSchema + type GenericSchema, + type InferInput, + type InferOutput } from 'valibot'; -import orgSchemaProperty from './orgSchemaProperty'; +const EMPTY_ARRAY = Object.freeze([]); -const singularToArray = >( +export default function orgSchemaProperties>( schema: T -): ArraySchema | UndefinedSchema => - fallback( - pipe( - array(schema), - transform(value => value.filter(value => typeof value !== 'undefined')) +): GenericSchema | readonly InferInput[] | undefined, readonly InferOutput[] | undefined> { + return optional( + fallback( + union([ + // If it is an array. + pipe( + array(any()), + transform(value => { + // Filter out all `undefined` and invalid values. + const result = value.reduce((output, value) => { + if (typeof value !== 'undefined') { + const result = safeParse(schema, value); + + result.success && output.push(result.output); + } + + return output; + }, []); + + // If it is non-empty, return the frozen array, otherwise, return our empty flywheel. + return result.length ? Object.freeze(result) : EMPTY_ARRAY; + }) + ), + pipe( + // Otherwise, it must match the schema + schema, + // Put it in a frozen array tuple. + transform(value => Object.freeze([value])) + ) + ]), + () => EMPTY_ARRAY ), - value => (value?.value ? [parse(schema, value?.value)] : undefined) + EMPTY_ARRAY ); - -export default function orgSchemaProperties>(schema: T) { - return singularToArray(orgSchemaProperty(schema)); } diff --git a/packages/core/src/types/external/OrgSchema/private/orgSchemaProperty.spec.ts b/packages/core/src/types/external/OrgSchema/private/orgSchemaProperty.spec.ts deleted file mode 100644 index a0eec9f423..0000000000 --- a/packages/core/src/types/external/OrgSchema/private/orgSchemaProperty.spec.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { parse, string } from 'valibot'; - -import orgSchemaProperty from './orgSchemaProperty'; - -describe('orgSchemaProperty', () => { - test('should keep valid type as-is', () => { - expect(parse(orgSchemaProperty(string()), 'abc')).toBe('abc'); - }); - - test('should keep undefined as-is', () => { - expect(parse(orgSchemaProperty(string()), undefined)).toBeUndefined(); - }); - - test('should convert invalid type to undefined', () => { - expect(parse(orgSchemaProperty(string()), null)).toBeUndefined(); - }); - - test('should take the first item from an array', () => { - expect(parse(orgSchemaProperty(string()), ['abc', 'def', 'xyz'])).toBe('abc'); - }); -}); diff --git a/packages/core/src/types/external/OrgSchema/private/orgSchemaProperty.ts b/packages/core/src/types/external/OrgSchema/private/orgSchemaProperty.ts deleted file mode 100644 index ef6e8f16c4..0000000000 --- a/packages/core/src/types/external/OrgSchema/private/orgSchemaProperty.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { array, fallback, optional, pipe, transform, union, type BaseSchema } from 'valibot'; - -const orgSchemaProperty = >(schema: T) => - fallback( - optional( - union([ - pipe( - array(schema), - transform(array => array[0]) - ), - schema - ]) - ), - undefined - ); - -export default orgSchemaProperty; diff --git a/packages/core/src/types/external/OrgSchema/types.ts b/packages/core/src/types/external/OrgSchema/types.ts new file mode 100644 index 0000000000..bd0574f652 --- /dev/null +++ b/packages/core/src/types/external/OrgSchema/types.ts @@ -0,0 +1,15 @@ +export type Inputize< + T extends { + [key in keyof T]?: T[key] extends ReadonlyArray | Array ? never : T[key]; + } +> = { + [key in keyof T]+?: key extends `@${string}` ? T[key] | undefined : T[key] | readonly T[key][] | undefined; +}; + +export type Outputize< + T extends { + [key in keyof T]?: T[key] extends ReadonlyArray | Array ? never : T[key]; + } +> = { + [key in keyof T]+?: key extends `@${string}` ? T[key] | undefined : readonly T[key][] | undefined; +}; diff --git a/packages/core/src/types/internal/GlobalScopeClock.ts b/packages/core/src/types/internal/GlobalScopeClock.ts index 97c4b64f7f..23b2a1733b 100644 --- a/packages/core/src/types/internal/GlobalScopeClock.ts +++ b/packages/core/src/types/internal/GlobalScopeClock.ts @@ -1,24 +1,24 @@ export type GlobalScopeClock = { // eslint-disable-next-line no-restricted-globals - cancelAnimationFrame?: typeof cancelAnimationFrame; + cancelAnimationFrame?: typeof cancelAnimationFrame | undefined; // eslint-disable-next-line no-restricted-globals - cancelIdleCallback?: typeof cancelIdleCallback; + cancelIdleCallback?: typeof cancelIdleCallback | undefined; // eslint-disable-next-line no-restricted-globals - clearImmediate?: typeof clearImmediate; + clearImmediate?: typeof clearImmediate | undefined; // eslint-disable-next-line no-restricted-globals - clearInterval: typeof clearInterval; + clearInterval?: typeof clearInterval | undefined; // eslint-disable-next-line no-restricted-globals - clearTimeout: typeof clearTimeout; + clearTimeout?: typeof clearTimeout | undefined; // eslint-disable-next-line no-restricted-globals Date: typeof Date; // eslint-disable-next-line no-restricted-globals - requestAnimationFrame?: typeof requestAnimationFrame; + requestAnimationFrame?: typeof requestAnimationFrame | undefined; // eslint-disable-next-line no-restricted-globals - requestIdleCallback?: typeof requestIdleCallback; + requestIdleCallback?: typeof requestIdleCallback | undefined; // eslint-disable-next-line no-restricted-globals - setImmediate?: typeof setImmediate; + setImmediate?: typeof setImmediate | undefined; // eslint-disable-next-line no-restricted-globals - setInterval: typeof setInterval; + setInterval?: typeof setInterval | undefined; // eslint-disable-next-line no-restricted-globals - setTimeout: typeof setTimeout; + setTimeout?: typeof setTimeout | undefined; }; diff --git a/packages/core/src/utils/getActivityLivestreamingMetadata.ts b/packages/core/src/utils/getActivityLivestreamingMetadata.ts index 0a2e6cd918..00923f8998 100644 --- a/packages/core/src/utils/getActivityLivestreamingMetadata.ts +++ b/packages/core/src/utils/getActivityLivestreamingMetadata.ts @@ -63,7 +63,8 @@ function eitherChannelDataOrEntities< check(value => !!value) ) }), - transform(({ entities, ...value }) => ({ ...value, streamInfoEntity: entities })) + // This is quite hacky, we should not mutate the parse output to ease metadata extractions. + transform(({ entities, ...value }) => ({ ...value, streamInfoEntity: entities! })) ) ]); } @@ -182,7 +183,7 @@ export default function getActivityLivestreamingMetadata(activity: WebChatActivi type: !( output.text || output.attachments?.length || - ('entities' in output && getOrgSchemaMessage(output.entities)?.abstract) + ('entities' in output && getOrgSchemaMessage(output.entities)?.abstract[0]) ) ? 'contentless' : livestreamMetadata.streamType === 'informative' diff --git a/packages/core/src/utils/getOrgSchemaMessage.spec.ts b/packages/core/src/utils/getOrgSchemaMessage.spec.ts index a45af71ba0..18bebbfeb2 100644 --- a/packages/core/src/utils/getOrgSchemaMessage.spec.ts +++ b/packages/core/src/utils/getOrgSchemaMessage.spec.ts @@ -1,3 +1,6 @@ +import { expect, test } from '@jest/globals'; +import { parse } from 'valibot'; +import { creativeWorkSchema } from '../types/external/OrgSchema/CreativeWork'; import getOrgSchemaMessage from './getOrgSchemaMessage'; test('should get message', () => { @@ -8,7 +11,7 @@ test('should get message', () => { type: 'https://schema.org/Message' }; - expect(getOrgSchemaMessage([expected])).toEqual(expected); + expect(getOrgSchemaMessage([expected])).toEqual(parse(creativeWorkSchema, expected)); }); test('should not get message without @id of empty string', () => { diff --git a/packages/core/src/utils/getOrgSchemaMessage.ts b/packages/core/src/utils/getOrgSchemaMessage.ts index 69308575ee..d36dd162ad 100644 --- a/packages/core/src/utils/getOrgSchemaMessage.ts +++ b/packages/core/src/utils/getOrgSchemaMessage.ts @@ -1,21 +1,21 @@ +import { parse } from 'valibot'; +import { creativeWorkSchema, type CreativeWorkOutput } from '../types/external/OrgSchema/CreativeWork'; import { type WebChatActivity } from '../types/WebChatActivity'; -import { parseCreativeWork, type CreativeWork } from '../types/external/OrgSchema/CreativeWork'; -import { parseThing } from '../types/external/OrgSchema/Thing'; type EntityType = NonNullable[number]; -export default function getOrgSchemaMessage(graph: readonly EntityType[]): CreativeWork | undefined { - const messageEntity = (graph || []).find(entity => { - const isThing = entity.type?.startsWith('https://schema.org/'); +export default function getOrgSchemaMessage(graph: readonly EntityType[]): CreativeWorkOutput | undefined { + for (const entity of graph ?? []) { + const isPossiblySelfMessage = + entity && + typeof entity === 'object' && + 'type' in entity && + entity.type?.startsWith('https://schema.org/') && + '@id' in entity && + entity['@id'] === ''; - if (isThing) { - const thing = parseThing(entity); - - return thing['@id'] === ''; + if (isPossiblySelfMessage) { + return parse(creativeWorkSchema, entity); } - }); - - const message = messageEntity && parseCreativeWork(messageEntity); - - return message && parseCreativeWork(message); + } } diff --git a/packages/core/tsup.config.ts b/packages/core/tsup.config.ts index bde073ebde..70176fc933 100644 --- a/packages/core/tsup.config.ts +++ b/packages/core/tsup.config.ts @@ -6,9 +6,13 @@ const commonConfig = applyConfig(config => ({ ...config, entry: { 'botframework-webchat-core': './src/index.ts', - 'botframework-webchat-core.activity': './src/activity/index.ts', - 'botframework-webchat-core.graph': './src/graph/index.ts', - 'botframework-webchat-core.internal': './src/internal/index.ts' + 'botframework-webchat-core.activity': './src/boot/activity.ts', + 'botframework-webchat-core.graph': './src/boot/graph.ts', + 'botframework-webchat-core.internal': './src/boot/internal.ts', + // Deprecated entrypoint without .js, to be removed on or after 2028-04-24. + 'botframework-webchat-core.deprecated.activity': './src/boot/deprecated/activity.ts', + 'botframework-webchat-core.deprecated.graph': './src/boot/deprecated/graph.ts', + 'botframework-webchat-core.deprecated.internal': './src/boot/deprecated/internal.ts' } })); diff --git a/packages/debug-theme/package.json b/packages/debug-theme/package.json index 24903ef86f..0349e5aa12 100644 --- a/packages/debug-theme/package.json +++ b/packages/debug-theme/package.json @@ -51,6 +51,12 @@ "preversion": "../../scripts/npm/preversion.sh", "start": "../../scripts/npm/notify-build.sh \"src\" \"../component/package.json\"" }, + "pinDependencies": { + "react": [ + "16.8.6", + "using react@16.8.6 to make sure this is the minimum supported version" + ] + }, "localDependencies": { "botframework-webchat-api": "production", "botframework-webchat-component": "production" diff --git a/packages/debug-theme/src/DebugProvider.tsx b/packages/debug-theme/src/DebugProvider.tsx index a5d85cd9b3..e78254d36e 100644 --- a/packages/debug-theme/src/DebugProvider.tsx +++ b/packages/debug-theme/src/DebugProvider.tsx @@ -1,5 +1,5 @@ import { reactNode, validateProps } from '@msinternal/botframework-webchat-react-valibot'; -import { createErrorBoxPolymiddleware, errorBoxComponent } from 'botframework-webchat-api/middleware'; +import { createErrorBoxPolymiddleware, errorBoxComponent } from 'botframework-webchat-api/middleware.js'; import { Components } from 'botframework-webchat-component'; import React, { memo, useMemo } from 'react'; import { object, optional, pipe, type InferInput } from 'valibot'; diff --git a/packages/directlinespeech/package.json b/packages/directlinespeech/package.json index a21325efe5..7e3ddaa3f6 100644 --- a/packages/directlinespeech/package.json +++ b/packages/directlinespeech/package.json @@ -78,15 +78,15 @@ "@babel/cli": "^7.28.6", "@babel/core": "^7.29.0", "@babel/plugin-transform-runtime": "^7.29.0", - "@babel/preset-env": "^7.29.0", + "@babel/preset-env": "^7.29.2", "@types/jest": "^29.5.14", - "@typescript-eslint/eslint-plugin": "^8.56.1", - "@typescript-eslint/parser": "^8.56.1", + "@typescript-eslint/eslint-plugin": "^8.59.0", + "@typescript-eslint/parser": "^8.59.0", "babel-jest": "^29.7.0", - "babel-plugin-istanbul": "^7.0.1", + "babel-plugin-istanbul": "^8.0.0", "babel-plugin-transform-inline-environment-variables": "^0.4.4", "cross-env": "^10.1.0", - "dotenv": "^17.3.1", + "dotenv": "^17.4.2", "eslint": "^8.57.1", "eslint-plugin-node": "^11.1.0", "eslint-plugin-prettier": "^5.5.5", @@ -94,24 +94,24 @@ "global-agent": "^3.0.0", "has-resolved": "^2.0.0", "jest": "^29.7.0", - "prettier": "^3.8.1", + "prettier": "^3.8.3", "serve": "^14.2.6", "simple-update-in": "^2.2.0", "source-map-loader": "^5.0.0", - "webpack": "^5.105.4", - "webpack-cli": "^6.0.1", + "webpack": "^5.106.2", + "webpack-cli": "^7.0.2", "webpack-stats-plugin": "^1.1.3" }, "dependencies": { - "@babel/runtime": "7.28.6", + "@babel/runtime": "7.29.2", "abort-controller": "3.0.0", "base64-arraybuffer": "1.0.2", - "core-js": "3.48.0", - "core-js-pure": "3.48.0", + "core-js": "3.49.0", + "core-js-pure": "3.49.0", "event-as-promise": "2.0.1", "event-target-shim": "6.0.2", "math-random": "2.0.1", - "microsoft-cognitiveservices-speech-sdk": "1.48.0", + "microsoft-cognitiveservices-speech-sdk": "1.17.0", "web-speech-cognitive-services": "8.1.4" } } diff --git a/packages/fluent-theme/package.json b/packages/fluent-theme/package.json index 1e0ad0e943..fcbbc539f9 100644 --- a/packages/fluent-theme/package.json +++ b/packages/fluent-theme/package.json @@ -66,6 +66,10 @@ "@types/react": [ "16", "react@16.8.6 is our baseline" + ], + "react": [ + "16.8.6", + "using react@16.8.6 to make sure this is the minimum supported version" ] }, "localDependencies": { @@ -77,11 +81,11 @@ "@msinternal/botframework-webchat-styles": "0.0.0-0", "@msinternal/botframework-webchat-tsconfig": "0.0.0-0", "@types/math-random": "^1.0.2", - "@types/node": "^25.3.3", + "@types/node": "^25.6.0", "@types/react": "^16.14.69", "concurrently": "^9.2.1", "tsup": "^8.5.1", - "typescript": "^5.9.3" + "typescript": "^6.0.3" }, "dependencies": { "botframework-webchat": "0.0.0-0", @@ -89,7 +93,7 @@ "inject-meta-tag": "0.1.0", "math-random": "2.0.1", "use-ref-from": "0.2.1", - "valibot": "1.2.0" + "valibot": "1.3.1" }, "peerDependencies": { "react": ">= 16.8.6" diff --git a/packages/fluent-theme/src/components/activity/CopilotMessageHeader.tsx b/packages/fluent-theme/src/components/activity/CopilotMessageHeader.tsx index dc94b534db..9e20844fa5 100644 --- a/packages/fluent-theme/src/components/activity/CopilotMessageHeader.tsx +++ b/packages/fluent-theme/src/components/activity/CopilotMessageHeader.tsx @@ -1,6 +1,6 @@ import { validateProps } from '@msinternal/botframework-webchat-react-valibot'; import { hooks } from 'botframework-webchat'; -import { type WebChatActivity } from 'botframework-webchat/internal'; +import { type WebChatActivity } from 'botframework-webchat/internal.js'; import cx from 'classnames'; import React, { memo, useMemo, type CSSProperties } from 'react'; import { custom, object, optional, pipe, readonly, safeParse, string, type InferInput } from 'valibot'; @@ -37,8 +37,8 @@ function CopilotMessageHeader(props: CopilotMessageHeaderProps) { ); const author = useActivityAuthor(activity); - const avatarImage = author?.image || botAvatarImage; - const botTitle = author?.name || activity?.from?.name; + const avatarImage = author?.image[0] || botAvatarImage; + const botTitle = author?.name[0] || activity?.from?.name; return (
diff --git a/packages/fluent-theme/src/components/activity/PartGroupingDecorator.tsx b/packages/fluent-theme/src/components/activity/PartGroupingDecorator.tsx index 31b4e6626d..46aaee2ca3 100644 --- a/packages/fluent-theme/src/components/activity/PartGroupingDecorator.tsx +++ b/packages/fluent-theme/src/components/activity/PartGroupingDecorator.tsx @@ -4,7 +4,7 @@ import { getVoiceActivityRole, PartGrouping, type WebChatActivity -} from 'botframework-webchat/internal'; +} from 'botframework-webchat/internal.js'; import cx from 'classnames'; import React, { memo, useMemo, type ReactNode } from 'react'; import { array, custom, object, optional, pipe, readonly, safeParse } from 'valibot'; @@ -39,7 +39,8 @@ function PartGroupingDecorator(props: PartGroupingDecoratorProps) { const isInGroup = useMemo( () => - restActivities.length > 0 || !!(activity?.entities && getOrgSchemaMessage(activity.entities)?.isPartOf?.['@id']), + restActivities.length > 0 || + !!(activity?.entities && getOrgSchemaMessage(activity.entities)?.isPartOf[0]?.['@id']), [activity, restActivities.length] ); diff --git a/packages/fluent-theme/src/components/activity/private/isAIGeneratedActivity.ts b/packages/fluent-theme/src/components/activity/private/isAIGeneratedActivity.ts index 43924ffdc5..82c6564de3 100644 --- a/packages/fluent-theme/src/components/activity/private/isAIGeneratedActivity.ts +++ b/packages/fluent-theme/src/components/activity/private/isAIGeneratedActivity.ts @@ -1,5 +1,5 @@ -import { getOrgSchemaMessage, type WebChatActivity } from 'botframework-webchat/internal'; +import { getOrgSchemaMessage, type WebChatActivity } from 'botframework-webchat/internal.js'; export default function isAIGeneratedActivity(activity: undefined | WebChatActivity) { - return !!(activity && getOrgSchemaMessage(activity?.entities || [])?.keywords?.includes('AIGeneratedContent')); + return !!(activity && getOrgSchemaMessage(activity?.entities || [])?.keywords.includes('AIGeneratedContent')); } diff --git a/packages/fluent-theme/src/components/activity/private/useActivityAuthor.ts b/packages/fluent-theme/src/components/activity/private/useActivityAuthor.ts index 215d38053c..44a3e54552 100644 --- a/packages/fluent-theme/src/components/activity/private/useActivityAuthor.ts +++ b/packages/fluent-theme/src/components/activity/private/useActivityAuthor.ts @@ -1,16 +1,19 @@ -import { getOrgSchemaMessage, type WebChatActivity } from 'botframework-webchat/internal'; +import { getOrgSchemaMessage, type WebChatActivity } from 'botframework-webchat/internal.js'; +import { orgSchemaPersonSchema, type OrgSchemaPerson } from 'botframework-webchat/schema.js'; import { useMemo } from 'react'; +import { parse } from 'valibot'; -export default function useActivityAuthor(activity?: WebChatActivity | undefined) { +export default function useActivityAuthor(activity?: WebChatActivity | undefined): OrgSchemaPerson | undefined { return useMemo(() => { - const entity = getOrgSchemaMessage(activity?.entities || []); - return typeof entity?.author === 'string' - ? { + const firstAuthor = getOrgSchemaMessage(activity?.entities || [])?.author[0]; + + return typeof firstAuthor === 'string' + ? parse(orgSchemaPersonSchema, { '@type': 'Person', description: undefined, image: undefined, - name: entity?.author - } - : entity?.author; + name: firstAuthor + }) + : firstAuthor; }, [activity]); } diff --git a/packages/fluent-theme/src/components/activity/private/useActivityStyleOptions.ts b/packages/fluent-theme/src/components/activity/private/useActivityStyleOptions.ts index 4dce5f70ec..adb3ffd4c7 100644 --- a/packages/fluent-theme/src/components/activity/private/useActivityStyleOptions.ts +++ b/packages/fluent-theme/src/components/activity/private/useActivityStyleOptions.ts @@ -1,5 +1,5 @@ import { type StrictStyleOptions, hooks } from 'botframework-webchat'; -import { type WebChatActivity } from 'botframework-webchat/internal'; +import { type WebChatActivity } from 'botframework-webchat/internal.js'; import { useMemo } from 'react'; const { useStyleOptions } = hooks; diff --git a/packages/fluent-theme/src/components/activityStatus/VoiceTranscriptActivityStatus.tsx b/packages/fluent-theme/src/components/activityStatus/VoiceTranscriptActivityStatus.tsx index 28f9202f0b..bac530872d 100644 --- a/packages/fluent-theme/src/components/activityStatus/VoiceTranscriptActivityStatus.tsx +++ b/packages/fluent-theme/src/components/activityStatus/VoiceTranscriptActivityStatus.tsx @@ -1,6 +1,6 @@ import { hooks } from 'botframework-webchat'; -import { Timestamp } from 'botframework-webchat/component'; -import { getVoiceActivityRole, getVoiceActivityText, type WebChatActivity } from 'botframework-webchat/internal'; +import { Timestamp } from 'botframework-webchat/component.js'; +import { getVoiceActivityRole, getVoiceActivityText, type WebChatActivity } from 'botframework-webchat/internal.js'; import React, { Fragment, memo } from 'react'; import { useStyles } from '../../styles'; diff --git a/packages/fluent-theme/src/components/icon/FluentIcon.tsx b/packages/fluent-theme/src/components/icon/FluentIcon.tsx index d0e46ccf67..416796237a 100644 --- a/packages/fluent-theme/src/components/icon/FluentIcon.tsx +++ b/packages/fluent-theme/src/components/icon/FluentIcon.tsx @@ -1,6 +1,6 @@ import { validateProps } from '@msinternal/botframework-webchat-react-valibot'; import { useStyles } from '@msinternal/botframework-webchat-styles/react'; -import { createIconComponent } from 'botframework-webchat/internal'; +import { createIconComponent } from 'botframework-webchat/internal.js'; import cx from 'classnames'; import React, { memo, useMemo, type CSSProperties } from 'react'; import { object, optional, pipe, readonly, string, union, type InferInput } from 'valibot'; diff --git a/packages/fluent-theme/src/components/linerActivity/private/LinerActivity.tsx b/packages/fluent-theme/src/components/linerActivity/private/LinerActivity.tsx index e708423966..b78e89cf9d 100644 --- a/packages/fluent-theme/src/components/linerActivity/private/LinerActivity.tsx +++ b/packages/fluent-theme/src/components/linerActivity/private/LinerActivity.tsx @@ -1,4 +1,4 @@ -import { type WebChatActivity } from 'botframework-webchat/internal'; +import { type WebChatActivity } from 'botframework-webchat/internal.js'; import React, { memo } from 'react'; import { useStyles } from '../../../styles/index.js'; diff --git a/packages/fluent-theme/src/components/linerActivity/private/isLinerMessageActivity.ts b/packages/fluent-theme/src/components/linerActivity/private/isLinerMessageActivity.ts index eaf135461b..00317323f1 100644 --- a/packages/fluent-theme/src/components/linerActivity/private/isLinerMessageActivity.ts +++ b/packages/fluent-theme/src/components/linerActivity/private/isLinerMessageActivity.ts @@ -1,4 +1,4 @@ -import { type WebChatActivity } from 'botframework-webchat/internal'; +import { type WebChatActivity } from 'botframework-webchat/internal.js'; export default function isLinerMessageActivity( activity: undefined | WebChatActivity diff --git a/packages/fluent-theme/src/components/preChatActivity/PreChatMessageActivity.tsx b/packages/fluent-theme/src/components/preChatActivity/PreChatMessageActivity.tsx index 440ecb9a65..21a78cc36a 100644 --- a/packages/fluent-theme/src/components/preChatActivity/PreChatMessageActivity.tsx +++ b/packages/fluent-theme/src/components/preChatActivity/PreChatMessageActivity.tsx @@ -1,5 +1,5 @@ import { hooks } from 'botframework-webchat'; -import { type WebChatActivity } from 'botframework-webchat/internal'; +import { type WebChatActivity } from 'botframework-webchat/internal.js'; import cx from 'classnames'; import React, { memo, useMemo } from 'react'; @@ -21,7 +21,7 @@ const PreChatMessageActivity = ({ activity }: Props) => { const author = useActivityAuthor(activity); const html = useMemo( - () => (renderMarkdownAsHTML ? { __html: renderMarkdownAsHTML(author?.description || '') } : { __html: '' }), + () => (renderMarkdownAsHTML ? { __html: renderMarkdownAsHTML(author?.description[0] || '') } : { __html: '' }), [author?.description, renderMarkdownAsHTML] ); @@ -36,9 +36,9 @@ const PreChatMessageActivity = ({ activity }: Props) => { > {author.image && ( {localize('AVATAR_ALT', )} {author.name &&

{author.name}

} diff --git a/packages/fluent-theme/src/components/preChatActivity/StarterPromptsCardAction.tsx b/packages/fluent-theme/src/components/preChatActivity/StarterPromptsCardAction.tsx index b0b4955056..f4e66c94ff 100644 --- a/packages/fluent-theme/src/components/preChatActivity/StarterPromptsCardAction.tsx +++ b/packages/fluent-theme/src/components/preChatActivity/StarterPromptsCardAction.tsx @@ -1,5 +1,5 @@ import { hooks } from 'botframework-webchat'; -import { type DirectLineCardAction } from 'botframework-webchat/internal'; +import { type DirectLineCardAction } from 'botframework-webchat/internal.js'; import cx from 'classnames'; import React, { memo, useCallback, useMemo } from 'react'; import { useRefFrom } from 'use-ref-from'; diff --git a/packages/fluent-theme/src/components/preChatActivity/StarterPromptsToolbar.tsx b/packages/fluent-theme/src/components/preChatActivity/StarterPromptsToolbar.tsx index 2d2dd4f356..0b4b433f85 100644 --- a/packages/fluent-theme/src/components/preChatActivity/StarterPromptsToolbar.tsx +++ b/packages/fluent-theme/src/components/preChatActivity/StarterPromptsToolbar.tsx @@ -1,5 +1,5 @@ import { hooks } from 'botframework-webchat'; -import { type DirectLineCardAction } from 'botframework-webchat/internal'; +import { type DirectLineCardAction } from 'botframework-webchat/internal.js'; import cx from 'classnames'; import React, { memo } from 'react'; diff --git a/packages/fluent-theme/src/components/preChatActivity/isPreChatMessageActivity.ts b/packages/fluent-theme/src/components/preChatActivity/isPreChatMessageActivity.ts index 754fad510d..3579143880 100644 --- a/packages/fluent-theme/src/components/preChatActivity/isPreChatMessageActivity.ts +++ b/packages/fluent-theme/src/components/preChatActivity/isPreChatMessageActivity.ts @@ -1,7 +1,7 @@ -import { getOrgSchemaMessage, type WebChatActivity } from 'botframework-webchat/internal'; +import { getOrgSchemaMessage, type WebChatActivity } from 'botframework-webchat/internal.js'; export default function isPreChatMessageActivity( activity: undefined | WebChatActivity ): activity is WebChatActivity & { type: 'message' } { - return !!(activity && getOrgSchemaMessage(activity?.entities || [])?.keywords?.includes('PreChatMessage')); + return !!(activity && getOrgSchemaMessage(activity?.entities || [])?.keywords.includes('PreChatMessage')); } diff --git a/packages/fluent-theme/src/components/sendBox/ErrorMessage.tsx b/packages/fluent-theme/src/components/sendBox/ErrorMessage.tsx index 1e61f7d6f4..c46cf6be03 100644 --- a/packages/fluent-theme/src/components/sendBox/ErrorMessage.tsx +++ b/packages/fluent-theme/src/components/sendBox/ErrorMessage.tsx @@ -1,4 +1,4 @@ -import { useLiveRegion } from 'botframework-webchat/internal'; +import { useLiveRegion } from 'botframework-webchat/internal.js'; import React, { memo } from 'react'; import { useStyles } from '../../styles'; diff --git a/packages/fluent-theme/src/components/sendBox/SendBox.tsx b/packages/fluent-theme/src/components/sendBox/SendBox.tsx index 05fb2bf184..7d0cfc3379 100644 --- a/packages/fluent-theme/src/components/sendBox/SendBox.tsx +++ b/packages/fluent-theme/src/components/sendBox/SendBox.tsx @@ -1,5 +1,5 @@ import { Components, hooks } from 'botframework-webchat'; -import { usePostVoiceActivity, useShouldShowMicrophoneButton } from 'botframework-webchat/internal'; +import { usePostVoiceActivity, useShouldShowMicrophoneButton } from 'botframework-webchat/internal.js'; import cx from 'classnames'; import React, { memo, diff --git a/packages/fluent-theme/src/components/suggestedActions/SuggestedAction.tsx b/packages/fluent-theme/src/components/suggestedActions/SuggestedAction.tsx index 0210b98e76..038ed5506d 100644 --- a/packages/fluent-theme/src/components/suggestedActions/SuggestedAction.tsx +++ b/packages/fluent-theme/src/components/suggestedActions/SuggestedAction.tsx @@ -1,5 +1,5 @@ import { hooks } from 'botframework-webchat'; -import { type DirectLineCardAction } from 'botframework-webchat/internal'; +import { type DirectLineCardAction } from 'botframework-webchat/internal.js'; import cx from 'classnames'; import React, { MouseEventHandler, memo, useCallback } from 'react'; diff --git a/packages/fluent-theme/src/components/suggestedActions/private/computeSuggestedActionText.ts b/packages/fluent-theme/src/components/suggestedActions/private/computeSuggestedActionText.ts index 3936ea40d7..dcd530eb29 100644 --- a/packages/fluent-theme/src/components/suggestedActions/private/computeSuggestedActionText.ts +++ b/packages/fluent-theme/src/components/suggestedActions/private/computeSuggestedActionText.ts @@ -1,4 +1,4 @@ -import { type DirectLineCardAction } from 'botframework-webchat/internal'; +import { type DirectLineCardAction } from 'botframework-webchat/internal.js'; // Please refer to this article to find out how to compute the "button text" for suggested action. // https://github.com/Microsoft/botframework-sdk/blob/main/specs/botframework-activity/botframework-activity.md#card-action diff --git a/packages/fluent-theme/src/external.umd/botframework-webchat-api/decorator.ts b/packages/fluent-theme/src/external.umd/botframework-webchat-api/decorator.js.ts similarity index 100% rename from packages/fluent-theme/src/external.umd/botframework-webchat-api/decorator.ts rename to packages/fluent-theme/src/external.umd/botframework-webchat-api/decorator.js.ts diff --git a/packages/fluent-theme/src/external.umd/botframework-webchat-api/hook.ts b/packages/fluent-theme/src/external.umd/botframework-webchat-api/hook.js.ts similarity index 100% rename from packages/fluent-theme/src/external.umd/botframework-webchat-api/hook.ts rename to packages/fluent-theme/src/external.umd/botframework-webchat-api/hook.js.ts diff --git a/packages/fluent-theme/src/external.umd/botframework-webchat-api/internal.ts b/packages/fluent-theme/src/external.umd/botframework-webchat-api/internal.js.ts similarity index 100% rename from packages/fluent-theme/src/external.umd/botframework-webchat-api/internal.ts rename to packages/fluent-theme/src/external.umd/botframework-webchat-api/internal.js.ts diff --git a/packages/fluent-theme/src/external.umd/botframework-webchat-api/middleware.ts b/packages/fluent-theme/src/external.umd/botframework-webchat-api/middleware.js.ts similarity index 100% rename from packages/fluent-theme/src/external.umd/botframework-webchat-api/middleware.ts rename to packages/fluent-theme/src/external.umd/botframework-webchat-api/middleware.js.ts diff --git a/packages/fluent-theme/src/external.umd/botframework-webchat-component/component.ts b/packages/fluent-theme/src/external.umd/botframework-webchat-component/component.js.ts similarity index 100% rename from packages/fluent-theme/src/external.umd/botframework-webchat-component/component.ts rename to packages/fluent-theme/src/external.umd/botframework-webchat-component/component.js.ts diff --git a/packages/fluent-theme/src/external.umd/botframework-webchat-component/decorator.ts b/packages/fluent-theme/src/external.umd/botframework-webchat-component/decorator.js.ts similarity index 100% rename from packages/fluent-theme/src/external.umd/botframework-webchat-component/decorator.ts rename to packages/fluent-theme/src/external.umd/botframework-webchat-component/decorator.js.ts diff --git a/packages/fluent-theme/src/external.umd/botframework-webchat-component/hook.ts b/packages/fluent-theme/src/external.umd/botframework-webchat-component/hook.js.ts similarity index 100% rename from packages/fluent-theme/src/external.umd/botframework-webchat-component/hook.ts rename to packages/fluent-theme/src/external.umd/botframework-webchat-component/hook.js.ts diff --git a/packages/fluent-theme/src/external.umd/botframework-webchat-component/internal.ts b/packages/fluent-theme/src/external.umd/botframework-webchat-component/internal.js.ts similarity index 100% rename from packages/fluent-theme/src/external.umd/botframework-webchat-component/internal.ts rename to packages/fluent-theme/src/external.umd/botframework-webchat-component/internal.js.ts diff --git a/packages/fluent-theme/src/private/FluentThemeProvider.tsx b/packages/fluent-theme/src/private/FluentThemeProvider.tsx index 1166fcdea1..2e30b70ab9 100644 --- a/packages/fluent-theme/src/private/FluentThemeProvider.tsx +++ b/packages/fluent-theme/src/private/FluentThemeProvider.tsx @@ -1,19 +1,19 @@ /* eslint-disable prefer-arrow-callback */ import { reactNode, validateProps } from '@msinternal/botframework-webchat-react-valibot'; -import { ThemeProvider } from 'botframework-webchat/component'; +import { ThemeProvider } from 'botframework-webchat/component.js'; import { createActivityBorderMiddleware, createActivityGroupingMiddleware, DecoratorComposer, WebChatDecorator, type DecoratorMiddleware -} from 'botframework-webchat/decorator'; +} from 'botframework-webchat/decorator.js'; import { isVoiceTranscriptActivity, type ActivityMiddleware, type ActivityStatusMiddleware, type TypingIndicatorMiddleware -} from 'botframework-webchat/internal'; +} from 'botframework-webchat/internal.js'; import React, { memo, useMemo } from 'react'; import { custom, object, optional, pipe, readonly, string, type InferInput } from 'valibot'; diff --git a/packages/fluent-theme/src/private/composePipeline.tsx b/packages/fluent-theme/src/private/composePipeline.tsx index 810e2f3ad6..53ae1c9a1d 100644 --- a/packages/fluent-theme/src/private/composePipeline.tsx +++ b/packages/fluent-theme/src/private/composePipeline.tsx @@ -39,11 +39,15 @@ export function composePipeline< return StageWrapper; }, PassthroughComponent); - return memo(function Pipeline(props: PipelineProps) { + const Pipeline: PipelineComponent = function Pipeline(props: PipelineProps) { const { request, ...restProps } = props; return ; - }); + }; + + Pipeline.displayName = 'Pipeline'; + + return memo(Pipeline); } -export type { NextComponent, PipelineProps, PipelineComponent, StageComponent }; +export type { NextComponent, PipelineComponent, PipelineProps, StageComponent }; diff --git a/packages/fluent-theme/src/stylesheet/FluentThemeStylesheet.tsx b/packages/fluent-theme/src/stylesheet/FluentThemeStylesheet.tsx index 16ac838eed..a0de45a524 100644 --- a/packages/fluent-theme/src/stylesheet/FluentThemeStylesheet.tsx +++ b/packages/fluent-theme/src/stylesheet/FluentThemeStylesheet.tsx @@ -1,7 +1,7 @@ // TODO: [P2] This component can be replaced by `bindProps`. import { validateProps } from '@msinternal/botframework-webchat-react-valibot'; -import { useStyleOptions } from 'botframework-webchat/hook'; -import { InjectStyleElements } from 'botframework-webchat/internal'; +import { useStyleOptions } from 'botframework-webchat/hook.js'; +import { InjectStyleElements } from 'botframework-webchat/internal.js'; import React, { memo, type FunctionComponent } from 'react'; import { never, object, optional, pipe, readonly, string, undefinedable, type InferInput } from 'valibot'; diff --git a/packages/isomorphic-react-dom/package.json b/packages/isomorphic-react-dom/package.json index 293f3ae062..6bf83b901a 100644 --- a/packages/isomorphic-react-dom/package.json +++ b/packages/isomorphic-react-dom/package.json @@ -25,8 +25,8 @@ "devDependencies": { "@babel/cli": "^7.28.6", "@babel/core": "^7.29.0", - "@babel/preset-env": "^7.29.0", - "webpack": "^5.105.4", - "webpack-cli": "^6.0.1" + "@babel/preset-env": "^7.29.2", + "webpack": "^5.106.2", + "webpack-cli": "^7.0.2" } } diff --git a/packages/isomorphic-react/package.json b/packages/isomorphic-react/package.json index b76c09977e..a79ebfd57c 100644 --- a/packages/isomorphic-react/package.json +++ b/packages/isomorphic-react/package.json @@ -25,8 +25,8 @@ "devDependencies": { "@babel/cli": "^7.28.6", "@babel/core": "^7.29.0", - "@babel/preset-env": "^7.29.0", - "webpack": "^5.105.4", - "webpack-cli": "^6.0.1" + "@babel/preset-env": "^7.29.2", + "webpack": "^5.106.2", + "webpack-cli": "^7.0.2" } } diff --git a/packages/react-hooks/package.json b/packages/react-hooks/package.json index a8ca025a54..2ec04a7dd7 100644 --- a/packages/react-hooks/package.json +++ b/packages/react-hooks/package.json @@ -51,6 +51,12 @@ "preversion": "../../scripts/npm/preversion.sh", "start": "../../scripts/npm/notify-build.sh \"src\" \"../base/package.json\"" }, + "pinDependencies": { + "react": [ + "16.8.6", + "using react@16.8.6 to make sure this is the minimum supported version" + ] + }, "localDependencies": { "@msinternal/botframework-webchat-base": "development" }, diff --git a/packages/react-hooks/src/useMemoWithPrevious.ts b/packages/react-hooks/src/useMemoWithPrevious.ts index ceb92cbf79..cdc0cdf284 100644 --- a/packages/react-hooks/src/useMemoWithPrevious.ts +++ b/packages/react-hooks/src/useMemoWithPrevious.ts @@ -3,7 +3,7 @@ import { useEffect, useMemo, useRef, type DependencyList } from 'react'; export default function useMemoWithPrevious(factory: (prevValue: T | undefined) => T, deps: DependencyList): T { const prevValueRef = useRef(); // We are building a `useMemo`-like hook, `deps` is passed as-is and `factory` is not one fo the dependencies. - // eslint-disable-next-line react-hooks/exhaustive-deps + // eslint-disable-next-line react-hooks/exhaustive-deps, react-hooks/use-memo const value = useMemo(() => factory(prevValueRef.current), deps); useEffect(() => { diff --git a/packages/react-valibot/package.json b/packages/react-valibot/package.json index 6fa2c17b48..1493de0293 100644 --- a/packages/react-valibot/package.json +++ b/packages/react-valibot/package.json @@ -54,6 +54,10 @@ "@types/react": [ "16", "react@16.8.6 is our baseline" + ], + "react": [ + "16.8.6", + "using react@16.8.6 to make sure this is the minimum supported version" ] }, "localDependencies": { @@ -64,7 +68,7 @@ "@types/jest": "^29.5.14", "@types/react": "^16.14.69", "tsup": "^8.5.1", - "typescript": "^5.9.3" + "typescript": "^6.0.3" }, "peerDependencies": { "react": ">= 16.8.6", diff --git a/packages/react-valibot/src/tsconfig.json b/packages/react-valibot/src/tsconfig.json index 1a8e530c21..281599ac3f 100644 --- a/packages/react-valibot/src/tsconfig.json +++ b/packages/react-valibot/src/tsconfig.json @@ -1,6 +1,6 @@ { "compilerOptions": { - "allowSyntheticDefaultImports": true, + "allowSyntheticDefaultImports": true }, "extends": "@msinternal/botframework-webchat-tsconfig/current" } diff --git a/packages/redux-store/package.json b/packages/redux-store/package.json index be0980d16d..2eb91c104b 100644 --- a/packages/redux-store/package.json +++ b/packages/redux-store/package.json @@ -49,6 +49,10 @@ "@types/react": [ "16", "react@16.8.6 is our baseline" + ], + "react": [ + "16.8.6", + "using react@16.8.6 to make sure this is the minimum supported version" ] }, "localDependencies": { @@ -61,11 +65,11 @@ "@msinternal/botframework-webchat-tsconfig": "0.0.0-0", "@types/react": "^16.14.69", "tsup": "^8.5.1", - "typescript": "^5.9.3" + "typescript": "^6.0.3" }, "dependencies": { "botframework-webchat-core": "0.0.0-0", - "valibot": "1.2.0" + "valibot": "1.3.1" }, "peerDependencies": { "react": ">= 16.8.6" diff --git a/packages/redux-store/src/suggestedActions/SuggestedActionsComposer.tsx b/packages/redux-store/src/suggestedActions/SuggestedActionsComposer.tsx index 205c82b0c0..515634b93b 100644 --- a/packages/redux-store/src/suggestedActions/SuggestedActionsComposer.tsx +++ b/packages/redux-store/src/suggestedActions/SuggestedActionsComposer.tsx @@ -5,7 +5,7 @@ import { WebChatActivity, type DirectLineCardAction } from 'botframework-webchat-core'; -import { setRawState } from 'botframework-webchat-core/internal'; +import { setRawState } from 'botframework-webchat-core/internal.js'; import { reactNode, validateProps } from '@msinternal/botframework-webchat-react-valibot'; import React, { memo, useCallback, useEffect, useMemo, useState } from 'react'; import { type Action } from 'redux'; diff --git a/packages/repack/adaptivecards/package.json b/packages/repack/adaptivecards/package.json index e097ff318d..bbdd860298 100644 --- a/packages/repack/adaptivecards/package.json +++ b/packages/repack/adaptivecards/package.json @@ -27,7 +27,7 @@ }, "localDependencies": {}, "devDependencies": { - "esbuild": "^0.27.3" + "esbuild": "^0.28.0" }, "dependencies": { "adaptivecards": "3.0.6" diff --git a/packages/repack/base64-js/package.json b/packages/repack/base64-js/package.json index 29282dfe35..3778aff6ab 100644 --- a/packages/repack/base64-js/package.json +++ b/packages/repack/base64-js/package.json @@ -22,7 +22,7 @@ "pinDependencies": {}, "localDependencies": {}, "devDependencies": { - "esbuild": "^0.27.3" + "esbuild": "^0.28.0" }, "dependencies": { "base64-js": "1.5.1" diff --git a/packages/repack/botframework-directlinejs/package.json b/packages/repack/botframework-directlinejs/package.json index 3c4a5c01bf..cc045808df 100644 --- a/packages/repack/botframework-directlinejs/package.json +++ b/packages/repack/botframework-directlinejs/package.json @@ -25,6 +25,6 @@ "botframework-directlinejs": "0.15.8" }, "devDependencies": { - "esbuild": "^0.27.3" + "esbuild": "^0.28.0" } } diff --git a/packages/repack/html-react-parser/package.json b/packages/repack/html-react-parser/package.json index 09d398c2a7..fa77c54379 100644 --- a/packages/repack/html-react-parser/package.json +++ b/packages/repack/html-react-parser/package.json @@ -24,9 +24,9 @@ "pinDependencies": {}, "localDependencies": {}, "devDependencies": { - "esbuild": "^0.27.3" + "esbuild": "^0.28.0" }, "dependencies": { - "html-react-parser": "5.2.17" + "html-react-parser": "6.0.1" } } diff --git a/packages/repack/microsoft-cognitiveservices-speech-sdk/package.json b/packages/repack/microsoft-cognitiveservices-speech-sdk/package.json index dc2d81e565..e3bd53a754 100644 --- a/packages/repack/microsoft-cognitiveservices-speech-sdk/package.json +++ b/packages/repack/microsoft-cognitiveservices-speech-sdk/package.json @@ -28,17 +28,12 @@ "precommit:typecheck": "tsc --project ./src --emitDeclarationOnly false --esModuleInterop true --noEmit --pretty false", "start": "../../../scripts/npm/notify-build.sh \"src\"" }, - "pinDependencies": { - "microsoft-cognitiveservices-speech-sdk": [ - "1.17.0", - "<=1.45.0 is using new protocol that does not connect may need some tune." - ] - }, + "pinDependencies": {}, "localDependencies": {}, "devDependencies": { - "esbuild": "^0.27.3" + "esbuild": "^0.28.0" }, "dependencies": { - "microsoft-cognitiveservices-speech-sdk": "1.48.0" + "microsoft-cognitiveservices-speech-sdk": "1.49.0" } } diff --git a/packages/repack/react-dom/package.json b/packages/repack/react-dom/package.json index 93511e55a2..d8e2a55a4d 100644 --- a/packages/repack/react-dom/package.json +++ b/packages/repack/react-dom/package.json @@ -35,7 +35,7 @@ "localDependencies": {}, "devDependencies": { "@types/react-dom": "^18.3.7", - "esbuild": "^0.27.3" + "esbuild": "^0.28.0" }, "dependencies": { "react-dom": "18.3.1" diff --git a/packages/repack/react-dom@baseline/package.json b/packages/repack/react-dom@baseline/package.json index 90dbc4888f..a9391d9b59 100644 --- a/packages/repack/react-dom@baseline/package.json +++ b/packages/repack/react-dom@baseline/package.json @@ -37,7 +37,7 @@ "devDependencies": { "@msinternal/object-assign": "0.0.0-0", "@types/react-dom": "^16.9.25", - "esbuild": "^0.27.3" + "esbuild": "^0.28.0" }, "dependencies": { "react-dom": "16.8.6" diff --git a/packages/repack/react-dom@umd/package.json b/packages/repack/react-dom@umd/package.json index 451213cbe5..926617862e 100644 --- a/packages/repack/react-dom@umd/package.json +++ b/packages/repack/react-dom@umd/package.json @@ -24,6 +24,6 @@ "pinDependencies": {}, "localDependencies": {}, "devDependencies": { - "esbuild": "^0.27.3" + "esbuild": "^0.28.0" } } diff --git a/packages/repack/react-is/package.json b/packages/repack/react-is/package.json index 25b3dc80da..714d353902 100644 --- a/packages/repack/react-is/package.json +++ b/packages/repack/react-is/package.json @@ -34,7 +34,7 @@ "localDependencies": {}, "devDependencies": { "@types/react-is": "^16.7.5", - "esbuild": "^0.27.3" + "esbuild": "^0.28.0" }, "dependencies": { "react-is": "16.13.1" diff --git a/packages/repack/react/package.json b/packages/repack/react/package.json index a5d5f19f72..07a001508b 100644 --- a/packages/repack/react/package.json +++ b/packages/repack/react/package.json @@ -36,7 +36,7 @@ "localDependencies": {}, "devDependencies": { "@types/react": "^18.3.28", - "esbuild": "^0.27.3" + "esbuild": "^0.28.0" }, "dependencies": { "react": "18.3.1" diff --git a/packages/repack/react@baseline/package.json b/packages/repack/react@baseline/package.json index 9e1a3b8225..f582470e2a 100644 --- a/packages/repack/react@baseline/package.json +++ b/packages/repack/react@baseline/package.json @@ -37,7 +37,7 @@ "devDependencies": { "@msinternal/object-assign": "0.0.0-0", "@types/react": "^16.14.69", - "esbuild": "^0.27.3" + "esbuild": "^0.28.0" }, "dependencies": { "react": "16.8.6" diff --git a/packages/repack/react@umd/package.json b/packages/repack/react@umd/package.json index 6e742327ba..672c78fa8b 100644 --- a/packages/repack/react@umd/package.json +++ b/packages/repack/react@umd/package.json @@ -24,6 +24,6 @@ "pinDependencies": {}, "localDependencies": {}, "devDependencies": { - "esbuild": "^0.27.3" + "esbuild": "^0.28.0" } } diff --git a/packages/styles/package.json b/packages/styles/package.json index f9dd4c0674..5f80acbcf4 100644 --- a/packages/styles/package.json +++ b/packages/styles/package.json @@ -70,7 +70,12 @@ "preversion": "../../scripts/npm/preversion.sh", "start": "../../scripts/npm/notify-build.sh \"src\" \"../base/package.json\"" }, - "pinDependencies": {}, + "pinDependencies": { + "react": [ + "16.8.6", + "using react@16.8.6 to make sure this is the minimum supported version" + ] + }, "localDependencies": { "@msinternal/botframework-webchat-base": "development", "@msinternal/botframework-webchat-tsconfig": "development" @@ -79,12 +84,12 @@ "@jridgewell/sourcemap-codec": "^1.5.5", "@msinternal/botframework-webchat-base": "0.0.0-0", "@msinternal/botframework-webchat-tsconfig": "0.0.0-0", - "@types/node": "^25.3.3", + "@types/node": "^25.6.0", "cross-env": "^10.1.0", - "esbuild": "^0.27.3", + "esbuild": "^0.28.0", "tsup": "^8.5.1", - "type-fest": "^5.4.4", - "typescript": "^5.9.3" + "type-fest": "^5.6.0", + "typescript": "^6.0.3" }, "peerDependencies": { "react": ">= 16.8.6" diff --git a/packages/styles/src/build/tsconfig.json b/packages/styles/src/build/tsconfig.json index fb7143e3bd..873eefab5c 100644 --- a/packages/styles/src/build/tsconfig.json +++ b/packages/styles/src/build/tsconfig.json @@ -1,5 +1,6 @@ { "compilerOptions": { + "ignoreDeprecations": "6.0", // Required for tsup@8.5.1 to work in typescript@6.0.3 "module": "nodenext", "moduleResolution": "nodenext", "types": ["node"] diff --git a/packages/support/cldr-data-downloader/package.json b/packages/support/cldr-data-downloader/package.json index 4de9619309..dccf41e83d 100644 --- a/packages/support/cldr-data-downloader/package.json +++ b/packages/support/cldr-data-downloader/package.json @@ -45,7 +45,7 @@ "build:pre:local-dependencies": "../../../scripts/npm/build-local-dependencies.sh", "build:pre:watch": "../../../scripts/npm/build-watch.sh", "build:run": "echo This package does not need to be built.", - "bump": "npm run bump:dev && npm run bump:prod && (npm audit fix || exit 0)", + "bump": "vg bump prod && vg bump dev && (npm audit fix || exit 0)", "eslint": "npm run precommit", "postversion": "../../../scripts/npm/postversion.sh", "precommit": "npm run precommit:eslint -- src", @@ -56,7 +56,7 @@ "pinDependencies": {}, "localDependencies": {}, "dependencies": { - "adm-zip": "0.5.16", + "adm-zip": "0.5.17", "nopt": "9.0.0", "progress": "2.0.3", "q": "1.5.1" diff --git a/packages/support/cldr-data/package.json b/packages/support/cldr-data/package.json index bd99ff4780..5ce09cd096 100644 --- a/packages/support/cldr-data/package.json +++ b/packages/support/cldr-data/package.json @@ -45,7 +45,7 @@ "build:pre:local-dependencies": "../../../scripts/npm/build-local-dependencies.sh", "build:pre:watch": "../../../scripts/npm/build-watch.sh", "build:run": "node ./src/install.mjs && node ./src/patch.mjs && touch ./package.json", - "bump": "npm run bump:dev && npm run bump:prod && (npm audit fix || exit 0)", + "bump": "vg bump prod && vg bump dev && (npm audit fix || exit 0)", "eslint": "npm run precommit", "postversion": "../../../scripts/npm/postversion.sh", "precommit": "npm run precommit:eslint -- src", @@ -66,6 +66,6 @@ "@msinternal/botframework-webchat-cldr-data-downloader": "0.0.0-0", "glob": "8.1.0", "read-package-up": "12.0.0", - "read-pkg": "10.0.0" + "read-pkg": "10.1.0" } } diff --git a/packages/test/harness/package.json b/packages/test/harness/package.json index 767dd4a5b5..cfabac58a0 100644 --- a/packages/test/harness/package.json +++ b/packages/test/harness/package.json @@ -58,23 +58,23 @@ "localDependencies": {}, "devDependencies": { "concurrently": "^9.2.1", - "esbuild": "^0.27.3", + "esbuild": "^0.28.0", "express": "^5.2.1", "global-agent": "^3.0.0", "http-proxy-middleware": "^2.0.9", "istanbul-lib-coverage": "^3.2.2", "jest": "^29.7.0", "jest-environment-node": "^29.7.0", - "jest-image-snapshot": "^6.5.1", - "selenium-webdriver": "^4.41.0", + "jest-image-snapshot": "^6.5.2", + "selenium-webdriver": "^4.43.0", "serve": "^14.2.6", "strip-ansi": "^6.0.1" }, "dependencies": { "abort-controller": "3.0.0", - "axe-core": "4.11.1", - "core-js": "3.48.0", - "core-js-pure": "3.48.0", + "axe-core": "4.11.3", + "core-js": "3.49.0", + "core-js-pure": "3.49.0", "event-target-shim": "6.0.2", "expect": "25.5.0", "lolex": "6.0.0", diff --git a/packages/test/page-object/package.json b/packages/test/page-object/package.json index 166373d265..2ed8939c9b 100644 --- a/packages/test/page-object/package.json +++ b/packages/test/page-object/package.json @@ -34,18 +34,18 @@ "localDependencies": {}, "devDependencies": { "concurrently": "^9.2.1", - "esbuild": "^0.27.3" + "esbuild": "^0.28.0" }, "dependencies": { "base64-arraybuffer": "1.0.2", "bent": "7.3.12", "classnames": "2.5.1", - "core-js": "3.48.0", - "core-js-pure": "3.48.0", + "core-js": "3.49.0", + "core-js-pure": "3.49.0", "event-iterator": "2.0.0", "event-target-shim": "6.0.2", "math-random": "2.0.1", - "microsoft-cognitiveservices-speech-sdk": "1.48.0", + "microsoft-cognitiveservices-speech-sdk": "1.49.0", "prop-types": "15.8.1", "simple-update-in": "2.2.0" } diff --git a/packages/test/web-server/package.json b/packages/test/web-server/package.json index a0eb029c66..6c6651c0bf 100644 --- a/packages/test/web-server/package.json +++ b/packages/test/web-server/package.json @@ -24,7 +24,7 @@ "localDependencies": {}, "devDependencies": { "tsup": "^8.5.1", - "typescript": "^5.9.3" + "typescript": "^6.0.3" }, "dependencies": { "selfsigned": "5.5.0", diff --git a/packages/tsconfig/src/current/tsconfig.json b/packages/tsconfig/src/current/tsconfig.json index 9bdd69c62e..c0914a8868 100644 --- a/packages/tsconfig/src/current/tsconfig.json +++ b/packages/tsconfig/src/current/tsconfig.json @@ -1,12 +1,12 @@ { "compilerOptions": { + "ignoreDeprecations": "6.0", // Required for tsup@8.5.1 to work in typescript@6.0.3 "jsx": "react", "module": "ESNext", "moduleResolution": "Bundler", "noEmit": true, "skipLibCheck": true, - "target": "ESNext", - "types": [] // Platform neutrality: disable loading default types + "target": "ESNext" }, "extends": "@tsconfig/strictest/tsconfig.json" } diff --git a/packages/tsconfig/src/legacy/tsconfig.json b/packages/tsconfig/src/legacy/tsconfig.json index 432d170f8b..c808fddff1 100644 --- a/packages/tsconfig/src/legacy/tsconfig.json +++ b/packages/tsconfig/src/legacy/tsconfig.json @@ -1,13 +1,13 @@ { "compilerOptions": { "allowSyntheticDefaultImports": true, + "ignoreDeprecations": "6.0", // Required for tsup@8.5.1 to work in typescript@6.0.3 "jsx": "react", "module": "ESNext", "moduleResolution": "Bundler", "noEmit": true, "skipLibCheck": true, "sourceMap": true, - "target": "ESNext", - "types": [] // Platform neutrality: disable loading default types + "target": "ESNext" } } diff --git a/packages/vibe-grep/package.json b/packages/vibe-grep/package.json index 4aa4cd09d7..8e253cc369 100644 --- a/packages/vibe-grep/package.json +++ b/packages/vibe-grep/package.json @@ -30,7 +30,7 @@ "pinDependencies": {}, "localDependencies": {}, "dependencies": { - "@ast-grep/napi": "0.41.0", - "yaml": "2.8.2" + "@ast-grep/napi": "0.42.1", + "yaml": "2.8.3" } } diff --git a/samples/01.getting-started/k.direct-line-token/javascript/bot/package-lock.json b/samples/01.getting-started/k.direct-line-token/javascript/bot/package-lock.json index f2cdbead34..e1f17d15bf 100644 --- a/samples/01.getting-started/k.direct-line-token/javascript/bot/package-lock.json +++ b/samples/01.getting-started/k.direct-line-token/javascript/bot/package-lock.json @@ -9,9 +9,9 @@ "version": "1.0.0", "license": "MIT", "dependencies": { - "botbuilder": "^4.23.3", - "dotenv": "^17.2.3", - "restify": "^11.1.0" + "botbuilder": "4.23.3", + "dotenv": "17.4.2", + "restify": "11.1.0" }, "devDependencies": { "node-dev": "^8.0.0" @@ -113,9 +113,9 @@ } }, "node_modules/@azure/identity": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/@azure/identity/-/identity-4.13.0.tgz", - "integrity": "sha512-uWC0fssc+hs1TGGVkkghiaFkkS7NkTxfnCH+Hdg+yTehTpMcehpok4PgUKKdyCH+9ldu6FhiHRv84Ntqj1vVcw==", + "version": "4.13.1", + "resolved": "https://registry.npmjs.org/@azure/identity/-/identity-4.13.1.tgz", + "integrity": "sha512-5C/2WD5Vb1lHnZS16dNQRPMjN6oV/Upba+C9nBIs15PmOi6A3ZGs4Lr2u60zw4S04gi+u3cEXiqTVP7M4Pz3kw==", "dependencies": { "@azure/abort-controller": "^2.0.0", "@azure/core-auth": "^1.9.0", @@ -124,8 +124,8 @@ "@azure/core-tracing": "^1.0.0", "@azure/core-util": "^1.11.0", "@azure/logger": "^1.0.0", - "@azure/msal-browser": "^4.2.0", - "@azure/msal-node": "^3.5.0", + "@azure/msal-browser": "^5.5.0", + "@azure/msal-node": "^5.1.0", "open": "^10.1.0", "tslib": "^2.2.0" }, @@ -134,24 +134,24 @@ } }, "node_modules/@azure/identity/node_modules/@azure/msal-common": { - "version": "15.13.3", - "resolved": "https://registry.npmjs.org/@azure/msal-common/-/msal-common-15.13.3.tgz", - "integrity": "sha512-shSDU7Ioecya+Aob5xliW9IGq1Ui8y4EVSdWGyI1Gbm4Vg61WpP95LuzcY214/wEjSn6w4PZYD4/iVldErHayQ==", + "version": "16.5.1", + "resolved": "https://registry.npmjs.org/@azure/msal-common/-/msal-common-16.5.1.tgz", + "integrity": "sha512-WS9w9SfI8SEYO7mTnxGeZ3UwQfhAVYCWglYF2/7GNx3ioHiAs2gPkl9eSwVs8cPrmiGh+zi9ai/OOKoq4cyzDw==", "engines": { "node": ">=0.8.0" } }, "node_modules/@azure/identity/node_modules/@azure/msal-node": { - "version": "3.8.4", - "resolved": "https://registry.npmjs.org/@azure/msal-node/-/msal-node-3.8.4.tgz", - "integrity": "sha512-lvuAwsDpPDE/jSuVQOBMpLbXuVuLsPNRwWCyK3/6bPlBk0fGWegqoZ0qjZclMWyQ2JNvIY3vHY7hoFmFmFQcOw==", + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/@azure/msal-node/-/msal-node-5.1.4.tgz", + "integrity": "sha512-G4LXGGggok1QC48uKu64/SV2DPRDlddmV8EieK8pflsNYMj9/Zz+Y9OHoEBhT15h+zpdwXXLYA/7PJCR/yZ8aw==", "dependencies": { - "@azure/msal-common": "15.13.3", + "@azure/msal-common": "16.5.1", "jsonwebtoken": "^9.0.0", "uuid": "^8.3.0" }, "engines": { - "node": ">=16" + "node": ">=20" } }, "node_modules/@azure/identity/node_modules/uuid": { @@ -175,20 +175,20 @@ } }, "node_modules/@azure/msal-browser": { - "version": "4.27.0", - "resolved": "https://registry.npmjs.org/@azure/msal-browser/-/msal-browser-4.27.0.tgz", - "integrity": "sha512-bZ8Pta6YAbdd0o0PEaL1/geBsPrLEnyY/RDWqvF1PP9RUH8EMLvUMGoZFYS6jSlUan6KZ9IMTLCnwpWWpQRK/w==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@azure/msal-browser/-/msal-browser-5.8.0.tgz", + "integrity": "sha512-X7IZV77bN56l7sbLjkcbQJX1t3U4tgxqztDr/XFbUcUfKk+z2FavcLgKP+OYUNj0wl/pEEtV9lldW9siY8BuHQ==", "dependencies": { - "@azure/msal-common": "15.13.3" + "@azure/msal-common": "16.5.1" }, "engines": { "node": ">=0.8.0" } }, "node_modules/@azure/msal-browser/node_modules/@azure/msal-common": { - "version": "15.13.3", - "resolved": "https://registry.npmjs.org/@azure/msal-common/-/msal-common-15.13.3.tgz", - "integrity": "sha512-shSDU7Ioecya+Aob5xliW9IGq1Ui8y4EVSdWGyI1Gbm4Vg61WpP95LuzcY214/wEjSn6w4PZYD4/iVldErHayQ==", + "version": "16.5.1", + "resolved": "https://registry.npmjs.org/@azure/msal-common/-/msal-common-16.5.1.tgz", + "integrity": "sha512-WS9w9SfI8SEYO7mTnxGeZ3UwQfhAVYCWglYF2/7GNx3ioHiAs2gPkl9eSwVs8cPrmiGh+zi9ai/OOKoq4cyzDw==", "engines": { "node": ">=0.8.0" } @@ -331,13 +331,13 @@ } }, "node_modules/axios": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.13.2.tgz", - "integrity": "sha512-VPk9ebNqPcy5lRGuSlKx752IlDatOjT9paPlm8A7yOuW2Fbvp4X3JznJtT4f0GzGLLiWE9W8onz51SqLYwzGaA==", + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.15.2.tgz", + "integrity": "sha512-wLrXxPtcrPTsNlJmKjkPnNPK2Ihe0hn0wGSaTEiHRPxwjvJwT3hKmXF4dpqxmPO9SoNb2FsYXj/xEo0gHN+D5A==", "dependencies": { - "follow-redirects": "^1.15.6", - "form-data": "^4.0.4", - "proxy-from-env": "^1.1.0" + "follow-redirects": "^1.15.11", + "form-data": "^4.0.5", + "proxy-from-env": "^2.1.0" } }, "node_modules/base64-js": { @@ -769,9 +769,9 @@ } }, "node_modules/dotenv": { - "version": "17.2.3", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.2.3.tgz", - "integrity": "sha512-JVUnt+DUIzu87TABbhPmNfVdBDt18BLOWjMUFJMSi/Qqg7NTYtabbvSNJGOJ7afbRuv9D/lngizHtP7QyLQ+9w==", + "version": "17.4.2", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.4.2.tgz", + "integrity": "sha512-nI4U3TottKAcAD9LLud4Cb7b2QztQMUEfHbvhTH09bqXTxnSie8WnjPALV/WMCrJZ6UV/qHJ6L03OqO3LcdYZw==", "engines": { "node": ">=12" }, @@ -1020,9 +1020,9 @@ } }, "node_modules/follow-redirects": { - "version": "1.15.11", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.11.tgz", - "integrity": "sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==", + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.16.0.tgz", + "integrity": "sha512-y5rN/uOsadFT/JfYwhxRS5R7Qce+g3zG97+JrtFZlC9klX/W5hD7iiLzScI4nZqUS7DNUdhPgw4xI8W2LuXlUw==", "funding": [ { "type": "individual", @@ -1507,9 +1507,9 @@ } }, "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.18.1.tgz", + "integrity": "sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q==" }, "node_modules/lodash.includes": { "version": "4.3.0", @@ -1825,14 +1825,17 @@ "integrity": "sha512-mqn0kFRl0EoqhnL0GQ0veqFHyIN1yig9RHh/InzORTUiZHFRAur+aMtRkELNwGs9aNwKS6tg/An4NYBPGwvtzQ==" }, "node_modules/proxy-from-env": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", - "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-2.1.0.tgz", + "integrity": "sha512-cJ+oHTW1VAEa8cJslgmUZrc+sjRKgAKl3Zyse6+PV38hZe/V6Z14TbCuXcan9F9ghlz4QrFr2c92TNF82UkYHA==", + "engines": { + "node": ">=10" + } }, "node_modules/qs": { - "version": "6.14.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.0.tgz", - "integrity": "sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==", + "version": "6.15.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.15.1.tgz", + "integrity": "sha512-6YHEFRL9mfgcAvql/XhwTvf5jKcOiiupt2FiJxHkiX1z4j7WL8J/jRHYLluORvc1XxB5rV20KoeK00gVJamspg==", "dependencies": { "side-channel": "^1.1.0" }, diff --git a/samples/01.getting-started/k.direct-line-token/javascript/bot/package.json b/samples/01.getting-started/k.direct-line-token/javascript/bot/package.json index 0aad3ea30c..a038ddb49c 100644 --- a/samples/01.getting-started/k.direct-line-token/javascript/bot/package.json +++ b/samples/01.getting-started/k.direct-line-token/javascript/bot/package.json @@ -25,9 +25,9 @@ } }, "dependencies": { - "botbuilder": "^4.23.3", - "dotenv": "^17.2.3", - "restify": "^11.1.0" + "botbuilder": "4.23.3", + "dotenv": "17.4.2", + "restify": "11.1.0" }, "devDependencies": { "node-dev": "^8.0.0" diff --git a/samples/01.getting-started/k.direct-line-token/javascript/web/package-lock.json b/samples/01.getting-started/k.direct-line-token/javascript/web/package-lock.json index e2f903a13d..8bd5fb08cd 100644 --- a/samples/01.getting-started/k.direct-line-token/javascript/web/package-lock.json +++ b/samples/01.getting-started/k.direct-line-token/javascript/web/package-lock.json @@ -9,9 +9,9 @@ "version": "1.0.0", "license": "MIT", "dependencies": { - "dotenv": "^17.2.3", - "http-proxy": "^1.18.1", - "restify": "^11.1.0" + "dotenv": "17.4.2", + "http-proxy": "1.18.1", + "restify": "11.1.0" }, "devDependencies": { "node-dev": "^8.0.0" @@ -243,9 +243,9 @@ "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" }, "node_modules/dotenv": { - "version": "17.2.3", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.2.3.tgz", - "integrity": "sha512-JVUnt+DUIzu87TABbhPmNfVdBDt18BLOWjMUFJMSi/Qqg7NTYtabbvSNJGOJ7afbRuv9D/lngizHtP7QyLQ+9w==", + "version": "17.4.2", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.4.2.tgz", + "integrity": "sha512-nI4U3TottKAcAD9LLud4Cb7b2QztQMUEfHbvhTH09bqXTxnSie8WnjPALV/WMCrJZ6UV/qHJ6L03OqO3LcdYZw==", "engines": { "node": ">=12" }, @@ -441,9 +441,9 @@ } }, "node_modules/follow-redirects": { - "version": "1.15.11", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.11.tgz", - "integrity": "sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==", + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.16.0.tgz", + "integrity": "sha512-y5rN/uOsadFT/JfYwhxRS5R7Qce+g3zG97+JrtFZlC9klX/W5hD7iiLzScI4nZqUS7DNUdhPgw4xI8W2LuXlUw==", "funding": [ { "type": "individual", @@ -770,9 +770,9 @@ } }, "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.18.1.tgz", + "integrity": "sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q==" }, "node_modules/lru-cache": { "version": "7.18.3", @@ -984,9 +984,9 @@ "integrity": "sha512-mqn0kFRl0EoqhnL0GQ0veqFHyIN1yig9RHh/InzORTUiZHFRAur+aMtRkELNwGs9aNwKS6tg/An4NYBPGwvtzQ==" }, "node_modules/qs": { - "version": "6.14.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.0.tgz", - "integrity": "sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==", + "version": "6.15.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.15.1.tgz", + "integrity": "sha512-6YHEFRL9mfgcAvql/XhwTvf5jKcOiiupt2FiJxHkiX1z4j7WL8J/jRHYLluORvc1XxB5rV20KoeK00gVJamspg==", "dependencies": { "side-channel": "^1.1.0" }, diff --git a/samples/01.getting-started/k.direct-line-token/javascript/web/package.json b/samples/01.getting-started/k.direct-line-token/javascript/web/package.json index f4ae23f1d0..ab6ee0f56f 100644 --- a/samples/01.getting-started/k.direct-line-token/javascript/web/package.json +++ b/samples/01.getting-started/k.direct-line-token/javascript/web/package.json @@ -21,9 +21,9 @@ } }, "dependencies": { - "dotenv": "^17.2.3", - "http-proxy": "^1.18.1", - "restify": "^11.1.0" + "dotenv": "17.4.2", + "http-proxy": "1.18.1", + "restify": "11.1.0" }, "devDependencies": { "node-dev": "^8.0.0" diff --git a/samples/04.api/e.piping-to-redux/package.json b/samples/04.api/e.piping-to-redux/package.json index 0f87f2465c..0a9fbda727 100644 --- a/samples/04.api/e.piping-to-redux/package.json +++ b/samples/04.api/e.piping-to-redux/package.json @@ -28,13 +28,13 @@ ] }, "dependencies": { - "botframework-webchat": "^4.18.1-main.20250804.93043a9", - "react": "^16.8.6", - "react-dom": "^16.8.6", - "react-redux": "^7.2.9", - "redux": "^5.0.1" + "botframework-webchat": "4.18.1-main.20260416.88357ae", + "react": "16.8.6", + "react-dom": "16.8.6", + "react-redux": "7.2.9", + "redux": "5.0.1" }, "devDependencies": { - "esbuild": "^0.27.2" + "esbuild": "^0.28.0" } } diff --git a/samples/04.api/f.selectable-activity/package.json b/samples/04.api/f.selectable-activity/package.json index 87c817be6e..b058d89ae2 100644 --- a/samples/04.api/f.selectable-activity/package.json +++ b/samples/04.api/f.selectable-activity/package.json @@ -27,12 +27,12 @@ ] }, "dependencies": { - "botframework-webchat": "^4.18.1-main.20250804.93043a9", - "botframework-webchat-api": "^4.18.1-main.20250804.93043a9", - "react": "^16.8.6", - "react-dom": "^16.8.6" + "botframework-webchat": "4.18.1-main.20260416.88357ae", + "botframework-webchat-api": "4.18.1-main.20260416.88357ae", + "react": "16.8.6", + "react-dom": "16.8.6" }, "devDependencies": { - "esbuild": "^0.27.2" + "esbuild": "^0.28.0" } } diff --git a/samples/04.api/g.chat-send-history/package.json b/samples/04.api/g.chat-send-history/package.json index 7ce1bc8134..690d6095bc 100644 --- a/samples/04.api/g.chat-send-history/package.json +++ b/samples/04.api/g.chat-send-history/package.json @@ -24,12 +24,12 @@ ] }, "dependencies": { - "botframework-webchat": "^4.18.1-main.20250804.93043a9", - "react": "^16.8.6", - "react-dom": "^16.8.6", - "use-state-with-ref": "^0.1.0" + "botframework-webchat": "4.18.1-main.20260416.88357ae", + "react": "16.8.6", + "react-dom": "16.8.6", + "use-state-with-ref": "0.2.1" }, "devDependencies": { - "esbuild": "^0.27.2" + "esbuild": "^0.28.0" } } diff --git a/samples/04.api/h.clear-after-idle/package.json b/samples/04.api/h.clear-after-idle/package.json index 73c57e7773..f366d1482c 100644 --- a/samples/04.api/h.clear-after-idle/package.json +++ b/samples/04.api/h.clear-after-idle/package.json @@ -24,12 +24,12 @@ ] }, "dependencies": { - "botframework-webchat": "^4.18.1-main.20250804.93043a9", - "classnames": "^2.5.1", - "react": "^16.8.6", - "react-dom": "^16.8.6" + "botframework-webchat": "4.18.1-main.20260416.88357ae", + "classnames": "2.5.1", + "react": "16.8.6", + "react-dom": "16.8.6" }, "devDependencies": { - "esbuild": "^0.27.2" + "esbuild": "^0.28.0" } } diff --git a/samples/06.recomposing-ui/a.minimizable-web-chat/package.json b/samples/06.recomposing-ui/a.minimizable-web-chat/package.json index fde859c7a3..6a073d01ea 100644 --- a/samples/06.recomposing-ui/a.minimizable-web-chat/package.json +++ b/samples/06.recomposing-ui/a.minimizable-web-chat/package.json @@ -24,12 +24,12 @@ ] }, "dependencies": { - "botframework-webchat": "^4.18.1-main.20250804.93043a9", - "classnames": "^2.5.1", - "react": "^16.8.6", - "react-dom": "^16.8.6" + "botframework-webchat": "4.18.1-main.20260416.88357ae", + "classnames": "2.5.1", + "react": "16.8.6", + "react-dom": "16.8.6" }, "devDependencies": { - "esbuild": "^0.27.2" + "esbuild": "^0.28.0" } } diff --git a/samples/06.recomposing-ui/b.speech-ui/package.json b/samples/06.recomposing-ui/b.speech-ui/package.json index cebe2fd224..38e909819d 100644 --- a/samples/06.recomposing-ui/b.speech-ui/package.json +++ b/samples/06.recomposing-ui/b.speech-ui/package.json @@ -28,14 +28,14 @@ ] }, "dependencies": { - "botframework-webchat": "^4.18.1-main.20250804.93043a9", - "classnames": "^2.5.1", - "react": "^16.8.6", - "react-dom": "^16.8.6", - "react-redux": "^7.2.9", - "redux": "^5.0.1" + "botframework-webchat": "4.18.1-main.20260416.88357ae", + "classnames": "2.5.1", + "react": "16.8.6", + "react-dom": "16.8.6", + "react-redux": "7.2.9", + "redux": "5.0.1" }, "devDependencies": { - "esbuild": "^0.27.2" + "esbuild": "^0.28.0" } } diff --git a/samples/06.recomposing-ui/c.smart-display/package.json b/samples/06.recomposing-ui/c.smart-display/package.json index 96b5374dd1..7734cfb9f5 100644 --- a/samples/06.recomposing-ui/c.smart-display/package.json +++ b/samples/06.recomposing-ui/c.smart-display/package.json @@ -28,16 +28,16 @@ ] }, "dependencies": { - "botframework-webchat": "^4.18.1-main.20250804.93043a9", - "classnames": "^2.5.1", - "punycode": "^2.3.1", - "react": "^16.8.6", - "react-dom": "^16.8.6", - "react-film": "^4.0.0", - "react-redux": "^7.2.9", - "redux": "^5.0.1" + "botframework-webchat": "4.18.1-main.20260416.88357ae", + "classnames": "2.5.1", + "punycode": "2.3.1", + "react": "16.8.6", + "react-dom": "16.8.6", + "react-film": "4.0.0", + "react-redux": "7.2.9", + "redux": "5.0.1" }, "devDependencies": { - "esbuild": "^0.27.2" + "esbuild": "^0.28.0" } } diff --git a/samples/06.recomposing-ui/d.plain-ui/package.json b/samples/06.recomposing-ui/d.plain-ui/package.json index 47de93b42f..87321f7635 100644 --- a/samples/06.recomposing-ui/d.plain-ui/package.json +++ b/samples/06.recomposing-ui/d.plain-ui/package.json @@ -24,11 +24,11 @@ ] }, "dependencies": { - "botframework-webchat": "^4.18.1-main.20250804.93043a9", - "react": "^16.8.6", - "react-dom": "^16.8.6" + "botframework-webchat": "4.18.1-main.20260416.88357ae", + "react": "16.8.6", + "react-dom": "16.8.6" }, "devDependencies": { - "esbuild": "^0.27.2" + "esbuild": "^0.28.0" } } diff --git a/samples/06.recomposing-ui/e.extending-ui/package.json b/samples/06.recomposing-ui/e.extending-ui/package.json index aa1a85f499..ba0461074d 100644 --- a/samples/06.recomposing-ui/e.extending-ui/package.json +++ b/samples/06.recomposing-ui/e.extending-ui/package.json @@ -24,11 +24,11 @@ ] }, "dependencies": { - "botframework-webchat": "^4.18.1-main.20250804.93043a9", - "react": "^16.8.6", - "react-dom": "^16.8.6" + "botframework-webchat": "4.18.1-main.20260416.88357ae", + "react": "16.8.6", + "react-dom": "16.8.6" }, "devDependencies": { - "esbuild": "^0.27.2" + "esbuild": "^0.28.0" } } diff --git a/samples/package-lock.json b/samples/package-lock.json index fdce02acac..50d9dfcf3b 100644 --- a/samples/package-lock.json +++ b/samples/package-lock.json @@ -28,14 +28,14 @@ "name": "@msinternal/sample-customization-piping-to-redux", "version": "0.1.0", "dependencies": { - "botframework-webchat": "^4.18.1-main.20250804.93043a9", - "react": "^16.8.6", - "react-dom": "^16.8.6", - "react-redux": "^7.2.9", - "redux": "^5.0.1" + "botframework-webchat": "4.18.1-main.20260416.88357ae", + "react": "16.8.6", + "react-dom": "16.8.6", + "react-redux": "7.2.9", + "redux": "5.0.1" }, "devDependencies": { - "esbuild": "^0.27.2" + "esbuild": "^0.28.0" } }, "04.api/e.piping-to-redux/node_modules/react": { @@ -85,13 +85,13 @@ "name": "@msinternal/sample-customization-selectable-activity", "version": "0.1.0", "dependencies": { - "botframework-webchat": "^4.18.1-main.20250804.93043a9", - "botframework-webchat-api": "^4.18.1-main.20250804.93043a9", - "react": "^16.8.6", - "react-dom": "^16.8.6" + "botframework-webchat": "4.18.1-main.20260416.88357ae", + "botframework-webchat-api": "4.18.1-main.20260416.88357ae", + "react": "16.8.6", + "react-dom": "16.8.6" }, "devDependencies": { - "esbuild": "^0.27.2" + "esbuild": "^0.28.0" } }, "04.api/f.selectable-activity/node_modules/react": { @@ -136,13 +136,13 @@ "name": "@msinternal/sample-chat-send-history", "version": "0.1.0", "dependencies": { - "botframework-webchat": "^4.18.1-main.20250804.93043a9", - "react": "^16.8.6", - "react-dom": "^16.8.6", - "use-state-with-ref": "^0.1.0" + "botframework-webchat": "4.18.1-main.20260416.88357ae", + "react": "16.8.6", + "react-dom": "16.8.6", + "use-state-with-ref": "0.2.1" }, "devDependencies": { - "esbuild": "^0.27.2" + "esbuild": "^0.28.0" } }, "04.api/g.chat-send-history/node_modules/react": { @@ -187,13 +187,13 @@ "name": "@msinternal/sample-clear-after-idle", "version": "0.1.0", "dependencies": { - "botframework-webchat": "^4.18.1-main.20250804.93043a9", - "classnames": "^2.5.1", - "react": "^16.8.6", - "react-dom": "^16.8.6" + "botframework-webchat": "4.18.1-main.20260416.88357ae", + "classnames": "2.5.1", + "react": "16.8.6", + "react-dom": "16.8.6" }, "devDependencies": { - "esbuild": "^0.27.2" + "esbuild": "^0.28.0" } }, "04.api/h.clear-after-idle/node_modules/react": { @@ -238,13 +238,13 @@ "name": "@msinternal/sample-customization-minimizable-web-chat", "version": "0.1.0", "dependencies": { - "botframework-webchat": "^4.18.1-main.20250804.93043a9", - "classnames": "^2.5.1", - "react": "^16.8.6", - "react-dom": "^16.8.6" + "botframework-webchat": "4.18.1-main.20260416.88357ae", + "classnames": "2.5.1", + "react": "16.8.6", + "react-dom": "16.8.6" }, "devDependencies": { - "esbuild": "^0.27.2" + "esbuild": "^0.28.0" } }, "06.recomposing-ui/a.minimizable-web-chat/node_modules/react": { @@ -289,15 +289,15 @@ "name": "@msinternal/sample-customization-speech-ui", "version": "0.1.0", "dependencies": { - "botframework-webchat": "^4.18.1-main.20250804.93043a9", - "classnames": "^2.5.1", - "react": "^16.8.6", - "react-dom": "^16.8.6", - "react-redux": "^7.2.9", - "redux": "^5.0.1" + "botframework-webchat": "4.18.1-main.20260416.88357ae", + "classnames": "2.5.1", + "react": "16.8.6", + "react-dom": "16.8.6", + "react-redux": "7.2.9", + "redux": "5.0.1" }, "devDependencies": { - "esbuild": "^0.27.2" + "esbuild": "^0.28.0" } }, "06.recomposing-ui/b.speech-ui/node_modules/react": { @@ -347,17 +347,17 @@ "name": "@msinternal/sample-customization-smart-display", "version": "0.1.0", "dependencies": { - "botframework-webchat": "^4.18.1-main.20250804.93043a9", - "classnames": "^2.5.1", - "punycode": "^2.3.1", - "react": "^16.8.6", - "react-dom": "^16.8.6", - "react-film": "^4.0.0", - "react-redux": "^7.2.9", - "redux": "^5.0.1" + "botframework-webchat": "4.18.1-main.20260416.88357ae", + "classnames": "2.5.1", + "punycode": "2.3.1", + "react": "16.8.6", + "react-dom": "16.8.6", + "react-film": "4.0.0", + "react-redux": "7.2.9", + "redux": "5.0.1" }, "devDependencies": { - "esbuild": "^0.27.2" + "esbuild": "^0.28.0" } }, "06.recomposing-ui/c.smart-display/node_modules/react": { @@ -407,12 +407,12 @@ "name": "@msinternal/sample-customization-plain-ui", "version": "0.1.0", "dependencies": { - "botframework-webchat": "^4.18.1-main.20250804.93043a9", - "react": "^16.8.6", - "react-dom": "^16.8.6" + "botframework-webchat": "4.18.1-main.20260416.88357ae", + "react": "16.8.6", + "react-dom": "16.8.6" }, "devDependencies": { - "esbuild": "^0.27.2" + "esbuild": "^0.28.0" } }, "06.recomposing-ui/d.plain-ui/node_modules/react": { @@ -457,12 +457,12 @@ "name": "@msinternal/sample-customization-extending-ui", "version": "0.1.0", "dependencies": { - "botframework-webchat": "^4.18.1-main.20250804.93043a9", - "react": "^16.8.6", - "react-dom": "^16.8.6" + "botframework-webchat": "4.18.1-main.20260416.88357ae", + "react": "16.8.6", + "react-dom": "16.8.6" }, "devDependencies": { - "esbuild": "^0.27.2" + "esbuild": "^0.28.0" } }, "06.recomposing-ui/e.extending-ui/node_modules/react": { @@ -503,6 +503,43 @@ "object-assign": "^4.1.1" } }, + "node_modules/@azure/abort-controller": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-2.1.2.tgz", + "integrity": "sha512-nBrLsEWm4J2u5LpAPjxADTlq3trDgVZZXHNKabeXZtpq3d3AbN/KGO82R87rdDz5/lYB024rtEf10/q0urNgsA==", + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@azure/core-auth": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/@azure/core-auth/-/core-auth-1.10.1.tgz", + "integrity": "sha512-ykRMW8PjVAn+RS6ww5cmK9U2CyH9p4Q88YJwvUslfuMmN98w/2rdGRLPqJYObapBCdzBVeDgYWdJnFPFb7qzpg==", + "dependencies": { + "@azure/abort-controller": "^2.1.2", + "@azure/core-util": "^1.13.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/@azure/core-util": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/@azure/core-util/-/core-util-1.13.1.tgz", + "integrity": "sha512-XPArKLzsvl0Hf0CaGyKHUyVgF7oDnhKoP85Xv6M4StF/1AhfORhZudHtOyf2s+FcbuQ9dPRAjB8J2KvRRMUK2A==", + "dependencies": { + "@azure/abort-controller": "^2.1.2", + "@typespec/ts-http-runtime": "^0.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, "node_modules/@babel/code-frame": { "version": "7.27.1", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", @@ -575,19 +612,19 @@ } }, "node_modules/@babel/runtime": { - "version": "7.28.2", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.28.2.tgz", - "integrity": "sha512-KHp2IflsnGywDjBWDkR9iEqiWSpc8GIi0lgTT3mOElT0PP1tG26P4tmFI2YvAdzgq9RGyoHZQEIEdZy6Ec5xCA==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.28.6.tgz", + "integrity": "sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/runtime-corejs3": { - "version": "7.28.2", - "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.28.2.tgz", - "integrity": "sha512-FVFaVs2/dZgD3Y9ZD+AKNKjyGKzwu0C54laAXWUXgLcVXcCX6YZ6GhK2cp7FogSN2OA0Fu+QT8dP3FUdo9ShSQ==", + "version": "7.29.2", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.29.2.tgz", + "integrity": "sha512-Lc94FOD5+0aXhdb0Tdg3RUtqT6yWbI/BbFWvlaSJ3gAb9Ks+99nHRDKADVqC37er4eCB0fHyWT+y+K3QOvJKbw==", "dependencies": { - "core-js-pure": "^3.43.0" + "core-js-pure": "^3.48.0" }, "engines": { "node": ">=6.9.0" @@ -732,9 +769,9 @@ "license": "MIT" }, "node_modules/@esbuild/aix-ppc64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.2.tgz", - "integrity": "sha512-GZMB+a0mOMZs4MpDbj8RJp4cw+w1WV5NYD6xzgvzUJ5Ek2jerwfO2eADyI6ExDSUED+1X8aMbegahsJi+8mgpw==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.0.tgz", + "integrity": "sha512-lhRUCeuOyJQURhTxl4WkpFTjIsbDayJHih5kZC1giwE+MhIzAb7mEsQMqMf18rHLsrb5qI1tafG20mLxEWcWlA==", "cpu": [ "ppc64" ], @@ -748,9 +785,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.2.tgz", - "integrity": "sha512-DVNI8jlPa7Ujbr1yjU2PfUSRtAUZPG9I1RwW4F4xFB1Imiu2on0ADiI/c3td+KmDtVKNbi+nffGDQMfcIMkwIA==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.0.tgz", + "integrity": "sha512-wqh0ByljabXLKHeWXYLqoJ5jKC4XBaw6Hk08OfMrCRd2nP2ZQ5eleDZC41XHyCNgktBGYMbqnrJKq/K/lzPMSQ==", "cpu": [ "arm" ], @@ -764,9 +801,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.2.tgz", - "integrity": "sha512-pvz8ZZ7ot/RBphf8fv60ljmaoydPU12VuXHImtAs0XhLLw+EXBi2BLe3OYSBslR4rryHvweW5gmkKFwTiFy6KA==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.0.tgz", + "integrity": "sha512-+WzIXQOSaGs33tLEgYPYe/yQHf0WTU0X42Jca3y8NWMbUVhp7rUnw+vAsRC/QiDrdD31IszMrZy+qwPOPjd+rw==", "cpu": [ "arm64" ], @@ -780,9 +817,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.2.tgz", - "integrity": "sha512-z8Ank4Byh4TJJOh4wpz8g2vDy75zFL0TlZlkUkEwYXuPSgX8yzep596n6mT7905kA9uHZsf/o2OJZubl2l3M7A==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.0.tgz", + "integrity": "sha512-+VJggoaKhk2VNNqVL7f6S189UzShHC/mR9EE8rDdSkdpN0KflSwWY/gWjDrNxxisg8Fp1ZCD9jLMo4m0OUfeUA==", "cpu": [ "x64" ], @@ -796,9 +833,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.2.tgz", - "integrity": "sha512-davCD2Zc80nzDVRwXTcQP/28fiJbcOwvdolL0sOiOsbwBa72kegmVU0Wrh1MYrbuCL98Omp5dVhQFWRKR2ZAlg==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.0.tgz", + "integrity": "sha512-0T+A9WZm+bZ84nZBtk1ckYsOvyA3x7e2Acj1KdVfV4/2tdG4fzUp91YHx+GArWLtwqp77pBXVCPn2We7Letr0Q==", "cpu": [ "arm64" ], @@ -812,9 +849,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.2.tgz", - "integrity": "sha512-ZxtijOmlQCBWGwbVmwOF/UCzuGIbUkqB1faQRf5akQmxRJ1ujusWsb3CVfk/9iZKr2L5SMU5wPBi1UWbvL+VQA==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.0.tgz", + "integrity": "sha512-fyzLm/DLDl/84OCfp2f/XQ4flmORsjU7VKt8HLjvIXChJoFFOIL6pLJPH4Yhd1n1gGFF9mPwtlN5Wf82DZs+LQ==", "cpu": [ "x64" ], @@ -828,9 +865,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.2.tgz", - "integrity": "sha512-lS/9CN+rgqQ9czogxlMcBMGd+l8Q3Nj1MFQwBZJyoEKI50XGxwuzznYdwcav6lpOGv5BqaZXqvBSiB/kJ5op+g==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.0.tgz", + "integrity": "sha512-l9GeW5UZBT9k9brBYI+0WDffcRxgHQD8ShN2Ur4xWq/NFzUKm3k5lsH4PdaRgb2w7mI9u61nr2gI2mLI27Nh3Q==", "cpu": [ "arm64" ], @@ -844,9 +881,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.2.tgz", - "integrity": "sha512-tAfqtNYb4YgPnJlEFu4c212HYjQWSO/w/h/lQaBK7RbwGIkBOuNKQI9tqWzx7Wtp7bTPaGC6MJvWI608P3wXYA==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.0.tgz", + "integrity": "sha512-BXoQai/A0wPO6Es3yFJ7APCiKGc1tdAEOgeTNy3SsB491S3aHn4S4r3e976eUnPdU+NbdtmBuLncYir2tMU9Nw==", "cpu": [ "x64" ], @@ -860,9 +897,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.2.tgz", - "integrity": "sha512-vWfq4GaIMP9AIe4yj1ZUW18RDhx6EPQKjwe7n8BbIecFtCQG4CfHGaHuh7fdfq+y3LIA2vGS/o9ZBGVxIDi9hw==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.0.tgz", + "integrity": "sha512-CjaaREJagqJp7iTaNQjjidaNbCKYcd4IDkzbwwxtSvjI7NZm79qiHc8HqciMddQ6CKvJT6aBd8lO9kN/ZudLlw==", "cpu": [ "arm" ], @@ -876,9 +913,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.2.tgz", - "integrity": "sha512-hYxN8pr66NsCCiRFkHUAsxylNOcAQaxSSkHMMjcpx0si13t1LHFphxJZUiGwojB1a/Hd5OiPIqDdXONia6bhTw==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.0.tgz", + "integrity": "sha512-RVyzfb3FWsGA55n6WY0MEIEPURL1FcbhFE6BffZEMEekfCzCIMtB5yyDcFnVbTnwk+CLAgTujmV/Lgvih56W+A==", "cpu": [ "arm64" ], @@ -892,9 +929,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.2.tgz", - "integrity": "sha512-MJt5BRRSScPDwG2hLelYhAAKh9imjHK5+NE/tvnRLbIqUWa+0E9N4WNMjmp/kXXPHZGqPLxggwVhz7QP8CTR8w==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.0.tgz", + "integrity": "sha512-KBnSTt1kxl9x70q+ydterVdl+Cn0H18ngRMRCEQfrbqdUuntQQ0LoMZv47uB97NljZFzY6HcfqEZ2SAyIUTQBQ==", "cpu": [ "ia32" ], @@ -908,9 +945,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.2.tgz", - "integrity": "sha512-lugyF1atnAT463aO6KPshVCJK5NgRnU4yb3FUumyVz+cGvZbontBgzeGFO1nF+dPueHD367a2ZXe1NtUkAjOtg==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.0.tgz", + "integrity": "sha512-zpSlUce1mnxzgBADvxKXX5sl8aYQHo2ezvMNI8I0lbblJtp8V4odlm3Yzlj7gPyt3T8ReksE6bK+pT3WD+aJRg==", "cpu": [ "loong64" ], @@ -924,9 +961,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.2.tgz", - "integrity": "sha512-nlP2I6ArEBewvJ2gjrrkESEZkB5mIoaTswuqNFRv/WYd+ATtUpe9Y09RnJvgvdag7he0OWgEZWhviS1OTOKixw==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.0.tgz", + "integrity": "sha512-2jIfP6mmjkdmeTlsX/9vmdmhBmKADrWqN7zcdtHIeNSCH1SqIoNI63cYsjQR8J+wGa4Y5izRcSHSm8K3QWmk3w==", "cpu": [ "mips64el" ], @@ -940,9 +977,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.2.tgz", - "integrity": "sha512-C92gnpey7tUQONqg1n6dKVbx3vphKtTHJaNG2Ok9lGwbZil6DrfyecMsp9CrmXGQJmZ7iiVXvvZH6Ml5hL6XdQ==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.0.tgz", + "integrity": "sha512-bc0FE9wWeC0WBm49IQMPSPILRocGTQt3j5KPCA8os6VprfuJ7KD+5PzESSrJ6GmPIPJK965ZJHTUlSA6GNYEhg==", "cpu": [ "ppc64" ], @@ -956,9 +993,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.2.tgz", - "integrity": "sha512-B5BOmojNtUyN8AXlK0QJyvjEZkWwy/FKvakkTDCziX95AowLZKR6aCDhG7LeF7uMCXEJqwa8Bejz5LTPYm8AvA==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.0.tgz", + "integrity": "sha512-SQPZOwoTTT/HXFXQJG/vBX8sOFagGqvZyXcgLA3NhIqcBv1BJU1d46c0rGcrij2B56Z2rNiSLaZOYW5cUk7yLQ==", "cpu": [ "riscv64" ], @@ -972,9 +1009,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.2.tgz", - "integrity": "sha512-p4bm9+wsPwup5Z8f4EpfN63qNagQ47Ua2znaqGH6bqLlmJ4bx97Y9JdqxgGZ6Y8xVTixUnEkoKSHcpRlDnNr5w==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.0.tgz", + "integrity": "sha512-SCfR0HN8CEEjnYnySJTd2cw0k9OHB/YFzt5zgJEwa+wL/T/raGWYMBqwDNAC6dqFKmJYZoQBRfHjgwLHGSrn3Q==", "cpu": [ "s390x" ], @@ -988,9 +1025,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.2.tgz", - "integrity": "sha512-uwp2Tip5aPmH+NRUwTcfLb+W32WXjpFejTIOWZFw/v7/KnpCDKG66u4DLcurQpiYTiYwQ9B7KOeMJvLCu/OvbA==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.0.tgz", + "integrity": "sha512-us0dSb9iFxIi8srnpl931Nvs65it/Jd2a2K3qs7fz2WfGPHqzfzZTfec7oxZJRNPXPnNYZtanmRc4AL/JwVzHQ==", "cpu": [ "x64" ], @@ -1004,9 +1041,9 @@ } }, "node_modules/@esbuild/netbsd-arm64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.2.tgz", - "integrity": "sha512-Kj6DiBlwXrPsCRDeRvGAUb/LNrBASrfqAIok+xB0LxK8CHqxZ037viF13ugfsIpePH93mX7xfJp97cyDuTZ3cw==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.0.tgz", + "integrity": "sha512-CR/RYotgtCKwtftMwJlUU7xCVNg3lMYZ0RzTmAHSfLCXw3NtZtNpswLEj/Kkf6kEL3Gw+BpOekRX0BYCtklhUw==", "cpu": [ "arm64" ], @@ -1020,9 +1057,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.2.tgz", - "integrity": "sha512-HwGDZ0VLVBY3Y+Nw0JexZy9o/nUAWq9MlV7cahpaXKW6TOzfVno3y3/M8Ga8u8Yr7GldLOov27xiCnqRZf0tCA==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.0.tgz", + "integrity": "sha512-nU1yhmYutL+fQ71Kxnhg8uEOdC0pwEW9entHykTgEbna2pw2dkbFSMeqjjyHZoCmt8SBkOSvV+yNmm94aUrrqw==", "cpu": [ "x64" ], @@ -1036,9 +1073,9 @@ } }, "node_modules/@esbuild/openbsd-arm64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.2.tgz", - "integrity": "sha512-DNIHH2BPQ5551A7oSHD0CKbwIA/Ox7+78/AWkbS5QoRzaqlev2uFayfSxq68EkonB+IKjiuxBFoV8ESJy8bOHA==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.0.tgz", + "integrity": "sha512-cXb5vApOsRsxsEl4mcZ1XY3D4DzcoMxR/nnc4IyqYs0rTI8ZKmW6kyyg+11Z8yvgMfAEldKzP7AdP64HnSC/6g==", "cpu": [ "arm64" ], @@ -1052,9 +1089,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.2.tgz", - "integrity": "sha512-/it7w9Nb7+0KFIzjalNJVR5bOzA9Vay+yIPLVHfIQYG/j+j9VTH84aNB8ExGKPU4AzfaEvN9/V4HV+F+vo8OEg==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.0.tgz", + "integrity": "sha512-8wZM2qqtv9UP3mzy7HiGYNH/zjTA355mpeuA+859TyR+e+Tc08IHYpLJuMsfpDJwoLo1ikIJI8jC3GFjnRClzA==", "cpu": [ "x64" ], @@ -1068,9 +1105,9 @@ } }, "node_modules/@esbuild/openharmony-arm64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.2.tgz", - "integrity": "sha512-LRBbCmiU51IXfeXk59csuX/aSaToeG7w48nMwA6049Y4J4+VbWALAuXcs+qcD04rHDuSCSRKdmY63sruDS5qag==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.0.tgz", + "integrity": "sha512-FLGfyizszcef5C3YtoyQDACyg95+dndv79i2EekILBofh5wpCa1KuBqOWKrEHZg3zrL3t5ouE5jgr94vA+Wb2w==", "cpu": [ "arm64" ], @@ -1084,9 +1121,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.2.tgz", - "integrity": "sha512-kMtx1yqJHTmqaqHPAzKCAkDaKsffmXkPHThSfRwZGyuqyIeBvf08KSsYXl+abf5HDAPMJIPnbBfXvP2ZC2TfHg==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.0.tgz", + "integrity": "sha512-1ZgjUoEdHZZl/YlV76TSCz9Hqj9h9YmMGAgAPYd+q4SicWNX3G5GCyx9uhQWSLcbvPW8Ni7lj4gDa1T40akdlw==", "cpu": [ "x64" ], @@ -1100,9 +1137,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.2.tgz", - "integrity": "sha512-Yaf78O/B3Kkh+nKABUF++bvJv5Ijoy9AN1ww904rOXZFLWVc5OLOfL56W+C8F9xn5JQZa3UX6m+IktJnIb1Jjg==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.0.tgz", + "integrity": "sha512-Q9StnDmQ/enxnpxCCLSg0oo4+34B9TdXpuyPeTedN/6+iXBJ4J+zwfQI28u/Jl40nOYAxGoNi7mFP40RUtkmUA==", "cpu": [ "arm64" ], @@ -1116,9 +1153,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.2.tgz", - "integrity": "sha512-Iuws0kxo4yusk7sw70Xa2E2imZU5HoixzxfGCdxwBdhiDgt9vX9VUCBhqcwY7/uh//78A1hMkkROMJq9l27oLQ==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.0.tgz", + "integrity": "sha512-zF3ag/gfiCe6U2iczcRzSYJKH1DCI+ByzSENHlM2FcDbEeo5Zd2C86Aq0tKUYAJJ1obRP84ymxIAksZUcdztHA==", "cpu": [ "ia32" ], @@ -1132,9 +1169,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.2.tgz", - "integrity": "sha512-sRdU18mcKf7F+YgheI/zGf5alZatMUTKj/jNS6l744f9u3WFu4v7twcUI9vu4mknF4Y9aDlblIie0IM+5xxaqQ==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.0.tgz", + "integrity": "sha512-pEl1bO9mfAmIC+tW5btTmrKaujg3zGtUmWNdCw/xs70FBjwAL3o9OEKNHvNmnyylD6ubxUERiEhdsL0xBQ9efw==", "cpu": [ "x64" ], @@ -1248,16 +1285,16 @@ } }, "node_modules/@redux-saga/core": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@redux-saga/core/-/core-1.3.0.tgz", - "integrity": "sha512-L+i+qIGuyWn7CIg7k1MteHGfttKPmxwZR5E7OsGikCL2LzYA0RERlaUY00Y3P3ZV2EYgrsYlBrGs6cJP5OKKqA==", - "dependencies": { - "@babel/runtime": "^7.6.3", - "@redux-saga/deferred": "^1.2.1", - "@redux-saga/delay-p": "^1.2.1", - "@redux-saga/is": "^1.1.3", - "@redux-saga/symbols": "^1.1.3", - "@redux-saga/types": "^1.2.1", + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@redux-saga/core/-/core-1.4.2.tgz", + "integrity": "sha512-nIMLGKo6jV6Wc1sqtVQs1iqbB3Kq20udB/u9XEaZQisT6YZ0NRB8+4L6WqD/E+YziYutd27NJbG8EWUPkb7c6Q==", + "dependencies": { + "@babel/runtime": "^7.28.4", + "@redux-saga/deferred": "^1.3.1", + "@redux-saga/delay-p": "^1.3.1", + "@redux-saga/is": "^1.2.1", + "@redux-saga/symbols": "^1.2.1", + "@redux-saga/types": "^1.3.1", "typescript-tuple": "^2.2.1" }, "funding": { @@ -1266,36 +1303,36 @@ } }, "node_modules/@redux-saga/deferred": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@redux-saga/deferred/-/deferred-1.2.1.tgz", - "integrity": "sha512-cmin3IuuzMdfQjA0lG4B+jX+9HdTgHZZ+6u3jRAOwGUxy77GSlTi4Qp2d6PM1PUoTmQUR5aijlA39scWWPF31g==" + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@redux-saga/deferred/-/deferred-1.3.1.tgz", + "integrity": "sha512-0YZ4DUivWojXBqLB/TmuRRpDDz7tyq1I0AuDV7qi01XlLhM5m51W7+xYtIckH5U2cMlv9eAuicsfRAi1XHpXIg==" }, "node_modules/@redux-saga/delay-p": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@redux-saga/delay-p/-/delay-p-1.2.1.tgz", - "integrity": "sha512-MdiDxZdvb1m+Y0s4/hgdcAXntpUytr9g0hpcOO1XFVyyzkrDu3SKPgBFOtHn7lhu7n24ZKIAT1qtKyQjHqRd+w==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@redux-saga/delay-p/-/delay-p-1.3.1.tgz", + "integrity": "sha512-597I7L5MXbD/1i3EmcaOOjL/5suxJD7p5tnbV1PiWnE28c2cYiIHqmSMK2s7us2/UrhOL2KTNBiD0qBg6KnImg==", "dependencies": { - "@redux-saga/symbols": "^1.1.3" + "@redux-saga/symbols": "^1.2.1" } }, "node_modules/@redux-saga/is": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@redux-saga/is/-/is-1.1.3.tgz", - "integrity": "sha512-naXrkETG1jLRfVfhOx/ZdLj0EyAzHYbgJWkXbB3qFliPcHKiWbv/ULQryOAEKyjrhiclmr6AMdgsXFyx7/yE6Q==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@redux-saga/is/-/is-1.2.1.tgz", + "integrity": "sha512-x3aWtX3GmQfEvn8dh0ovPbsXgK9JjpiR24wKztpGbZP8JZUWWvUgKrvnWZ/T/4iphOBftyVc9VrIwhAnsM+OFA==", "dependencies": { - "@redux-saga/symbols": "^1.1.3", - "@redux-saga/types": "^1.2.1" + "@redux-saga/symbols": "^1.2.1", + "@redux-saga/types": "^1.3.1" } }, "node_modules/@redux-saga/symbols": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@redux-saga/symbols/-/symbols-1.1.3.tgz", - "integrity": "sha512-hCx6ZvU4QAEUojETnX8EVg4ubNLBFl1Lps4j2tX7o45x/2qg37m3c6v+kSp8xjDJY+2tJw4QB3j8o8dsl1FDXg==" + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@redux-saga/symbols/-/symbols-1.2.1.tgz", + "integrity": "sha512-3dh+uDvpBXi7EUp/eO+N7eFM4xKaU4yuGBXc50KnZGzIrR/vlvkTFQsX13zsY8PB6sCFYAgROfPSRUj8331QSA==" }, "node_modules/@redux-saga/types": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@redux-saga/types/-/types-1.2.1.tgz", - "integrity": "sha512-1dgmkh+3so0+LlBWRhGA33ua4MYr7tUOj+a9Si28vUi0IUFNbff1T3sgpeDJI/LaC75bBYnQ0A3wXjn0OrRNBA==" + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@redux-saga/types/-/types-1.3.1.tgz", + "integrity": "sha512-YRCrJdhQLobGIQ8Cj1sta3nn6DrZDTSUnrIYhS2e5V590BmfVDleKoAquclAiKSBKWJwmuXTb+b4BL6rSHnahw==" }, "node_modules/@shikijs/core": { "version": "2.5.0", @@ -1459,6 +1496,39 @@ "@types/node": "*" } }, + "node_modules/@typespec/ts-http-runtime": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@typespec/ts-http-runtime/-/ts-http-runtime-0.3.5.tgz", + "integrity": "sha512-yURCknZhvywvQItHMMmFSo+fq5arCUIyz/CVk7jD89MSai7dkaX8ufjCWp3NttLojoTVbcE72ri+be/TnEbMHw==", + "dependencies": { + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/@typespec/ts-http-runtime/node_modules/agent-base": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", + "engines": { + "node": ">= 14" + } + }, + "node_modules/@typespec/ts-http-runtime/node_modules/https-proxy-agent": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, "node_modules/@ungap/structured-clone": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", @@ -1484,12 +1554,11 @@ } }, "node_modules/adaptivecards": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/adaptivecards/-/adaptivecards-3.0.2.tgz", - "integrity": "sha512-ioniHtm8c5uENw6jmddnntpjC4MvSOjN2Xrg9YhxuTtoVqz0XoYrInRIq0uf9WmONm7p+wqjAqBkoI6IRDeNwA==", - "license": "MIT", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/adaptivecards/-/adaptivecards-3.0.6.tgz", + "integrity": "sha512-WDCIb2WXZ7cOHJ9HIHRNdhSt861HySVOdN2xPk2aKHAF3JvD8QGQ8/XcNFrDJxCteOog8MM7EBlXfSAR8JXKAg==", "peerDependencies": { - "swiper": "^8.2.6" + "swiper": "^12.1.2" } }, "node_modules/agent-base": { @@ -1508,53 +1577,6 @@ "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" }, - "node_modules/asn1.js": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", - "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", - "dependencies": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "safer-buffer": "^2.1.0" - } - }, - "node_modules/asn1.js-rfc2560": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/asn1.js-rfc2560/-/asn1.js-rfc2560-5.0.1.tgz", - "integrity": "sha512-1PrVg6kuBziDN3PGFmRk3QrjpKvP9h/Hv5yMrFZvC1kpzP6dQRzf5BpKstANqHBkaOUmTpakJWhicTATOA/SbA==", - "dependencies": { - "asn1.js-rfc5280": "^3.0.0" - }, - "peerDependencies": { - "asn1.js": "^5.0.0" - } - }, - "node_modules/asn1.js-rfc5280": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/asn1.js-rfc5280/-/asn1.js-rfc5280-3.0.0.tgz", - "integrity": "sha512-Y2LZPOWeZ6qehv698ZgOGGCZXBQShObWnGthTrIFlIQjuV1gg2B8QOhWFRExq/MR1VnPpIIe7P9vX2vElxv+Pg==", - "dependencies": { - "asn1.js": "^5.0.0" - } - }, - "node_modules/async-disk-cache": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/async-disk-cache/-/async-disk-cache-2.1.0.tgz", - "integrity": "sha512-iH+boep2xivfD9wMaZWkywYIURSmsL96d6MoqrC94BnGSvXE4Quf8hnJiHGFYhw/nLeIa1XyRaf4vvcvkwAefg==", - "dependencies": { - "debug": "^4.1.1", - "heimdalljs": "^0.2.3", - "istextorbinary": "^2.5.1", - "mkdirp": "^0.5.0", - "rimraf": "^3.0.0", - "rsvp": "^4.8.5", - "username-sync": "^1.0.2" - }, - "engines": { - "node": "8.* || >= 10.*" - } - }, "node_modules/babel-plugin-macros": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", @@ -1570,11 +1592,6 @@ "npm": ">=6" } }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, "node_modules/base64-arraybuffer": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz", @@ -1612,26 +1629,10 @@ "is-stream": "^2.0.0" } }, - "node_modules/binaryextensions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/binaryextensions/-/binaryextensions-2.3.0.tgz", - "integrity": "sha512-nAihlQsYGyc5Bwq6+EsubvANYGExeJKHDO3RjnvwU042fawQTQfM3Kxn7IHUXQOz4bzfwsGYYHGSvXyW4zOGLg==", - "engines": { - "node": ">=0.8" - }, - "funding": { - "url": "https://bevry.me/fund" - } - }, - "node_modules/bn.js": { - "version": "4.12.2", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.2.tgz", - "integrity": "sha512-n4DSx829VRTRByMRGdjQ9iqsN0Bh4OolPsFnaZBLcbi8iXcB+kJ9s7EnRt4wILZNV3kPLHkRVfOc/HvhC3ovDw==" - }, "node_modules/botframework-directlinejs": { - "version": "0.15.6", - "resolved": "https://registry.npmjs.org/botframework-directlinejs/-/botframework-directlinejs-0.15.6.tgz", - "integrity": "sha512-l7zRsFb22eEAglGgopqw+3G2kCy3iBMJqTCKykJi2M/VNJikxyjJTIVx3bvuHq7KpUfiTxSZrnr61d7+ulEaYw==", + "version": "0.15.8", + "resolved": "https://registry.npmjs.org/botframework-directlinejs/-/botframework-directlinejs-0.15.8.tgz", + "integrity": "sha512-w/rt2NPSuKMU02zFuJ5E456j2xjAJskgaR6L0sEb6/osmC+zcRlP9ghAjKEmgO9Bquu9NYVwVtahIiRCdKpqDA==", "dependencies": { "@babel/runtime": "7.26.10", "botframework-streaming": "4.23.0", @@ -1671,118 +1672,25 @@ "integrity": "sha512-KmkCs6SjE6t4ihrfW9JelAPQIIIFbJweaaSLTh/4AO+c58JlDcb+GbdPt8yr5lRcFg4rPswRFRRhBGpWwh0K/Q==" }, "node_modules/botframework-directlinespeech-sdk": { - "version": "4.18.1-main.20250804.93043a9", - "resolved": "https://registry.npmjs.org/botframework-directlinespeech-sdk/-/botframework-directlinespeech-sdk-4.18.1-main.20250804.93043a9.tgz", - "integrity": "sha512-HCdOcQtNHMrXdsniXkKyZRtBZCz9f4kgVlt2QTVIOt5wJUZrwxR+31S0kBfcSDjejJ5VyTZUjpnjU7RbJr6BwQ==", + "version": "4.18.1-main.20260416.88357ae", + "resolved": "https://registry.npmjs.org/botframework-directlinespeech-sdk/-/botframework-directlinespeech-sdk-4.18.1-main.20260416.88357ae.tgz", + "integrity": "sha512-fEwT+BltKzpk3CJECJJJ0twVj906OqaNwduHlkhhHuJGoWNzJLqR2pvGVZpHSkRhRtgKfs82UZofQqjbC8nz0g==", "dependencies": { - "@babel/runtime": "7.28.2", + "@babel/runtime": "7.28.6", "abort-controller": "3.0.0", "base64-arraybuffer": "1.0.2", - "core-js": "3.44.0", - "core-js-pure": "3.44.0", - "event-as-promise": "2.0.0", + "core-js": "3.48.0", + "core-js-pure": "3.48.0", + "event-as-promise": "2.0.1", "event-target-shim": "6.0.2", "math-random": "2.0.1", - "microsoft-cognitiveservices-speech-sdk": "1.17.0", - "web-speech-cognitive-services": "8.1.3" + "microsoft-cognitiveservices-speech-sdk": "1.48.0", + "web-speech-cognitive-services": "8.1.4" }, "engines": { "node": ">= 10.14.2" } }, - "node_modules/botframework-directlinespeech-sdk/node_modules/@angular/common": { - "version": "21.0.6", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-21.0.6.tgz", - "integrity": "sha512-Yd8PF0dR37FAzqEcBHAyVCiSGMJOezSJe6rV/4BC6AVLfaZ7oZLl8CNVxKsod2UHd6rKxt1hzx05QdVcVvYNeA==", - "peer": true, - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0" - }, - "peerDependencies": { - "@angular/core": "21.0.6", - "rxjs": "^6.5.3 || ^7.4.0" - } - }, - "node_modules/botframework-directlinespeech-sdk/node_modules/@angular/core": { - "version": "21.0.6", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-21.0.6.tgz", - "integrity": "sha512-SvWbOkkrsqprYJSBmzQEWkWjfZB/jkRYyFp2ClMJBPqOLxP1a+i3Om2rolcNQjZPz87bs9FszwgRlXUy7sw5cQ==", - "peer": true, - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0" - }, - "peerDependencies": { - "@angular/compiler": "21.0.6", - "rxjs": "^6.5.3 || ^7.4.0", - "zone.js": "~0.15.0 || ~0.16.0" - }, - "peerDependenciesMeta": { - "@angular/compiler": { - "optional": true - }, - "zone.js": { - "optional": true - } - } - }, - "node_modules/botframework-directlinespeech-sdk/node_modules/microsoft-cognitiveservices-speech-sdk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/microsoft-cognitiveservices-speech-sdk/-/microsoft-cognitiveservices-speech-sdk-1.17.0.tgz", - "integrity": "sha512-RVUCpTeu1g+R4HB/PaLQmEfsdHzwEa6+2phgCiPA4lGIiR7ILEL7qZHHUWAG6W4zcjnWeiLnL7tVgMbyd5XGgA==", - "dependencies": { - "agent-base": "^6.0.1", - "asn1.js-rfc2560": "^5.0.1", - "asn1.js-rfc5280": "^3.0.0", - "async-disk-cache": "^2.1.0", - "https-proxy-agent": "^4.0.0", - "simple-lru-cache": "0.0.2", - "url-parse": "^1.4.7", - "uuid": "^3.3.3", - "ws": "^7.3.1", - "xmlhttprequest-ts": "^1.0.1" - } - }, - "node_modules/botframework-directlinespeech-sdk/node_modules/rxjs": { - "version": "7.8.2", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", - "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", - "peer": true, - "dependencies": { - "tslib": "^2.1.0" - } - }, - "node_modules/botframework-directlinespeech-sdk/node_modules/uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", - "bin": { - "uuid": "bin/uuid" - } - }, - "node_modules/botframework-directlinespeech-sdk/node_modules/xmlhttprequest-ts": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/xmlhttprequest-ts/-/xmlhttprequest-ts-1.0.1.tgz", - "integrity": "sha512-x+7u8NpBcwfBCeGqUpdGrR6+kGUGVjKc4wolyCz7CQqBZQp7VIyaF1xAvJ7ApRzvLeuiC4BbmrA6CWH9NqxK/g==", - "dependencies": { - "tslib": "^1.9.2" - }, - "peerDependencies": { - "@angular/common": ">= 5.0.0", - "@angular/core": ">= 5.0.0" - } - }, - "node_modules/botframework-directlinespeech-sdk/node_modules/xmlhttprequest-ts/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, "node_modules/botframework-streaming": { "version": "4.23.0", "resolved": "https://registry.npmjs.org/botframework-streaming/-/botframework-streaming-4.23.0.tgz", @@ -1795,60 +1703,62 @@ } }, "node_modules/botframework-webchat": { - "version": "4.18.1-main.20250804.93043a9", - "resolved": "https://registry.npmjs.org/botframework-webchat/-/botframework-webchat-4.18.1-main.20250804.93043a9.tgz", - "integrity": "sha512-JOTxvLBCh6FeWIqnpRI7AsIiRqx9MaUiADEjEOwsNFRdvp/rJ/JMum3VU2EEgOhHmll7MnsnAN3YIubA05GNrA==", - "dependencies": { - "@babel/runtime": "7.28.2", - "adaptivecards": "3.0.2", - "botframework-directlinejs": "0.15.6", - "botframework-directlinespeech-sdk": "4.18.1-main.20250804.93043a9", - "botframework-webchat-api": "4.18.1-main.20250804.93043a9", - "botframework-webchat-component": "4.18.1-main.20250804.93043a9", - "botframework-webchat-core": "4.18.1-main.20250804.93043a9", + "version": "4.18.1-main.20260416.88357ae", + "resolved": "https://registry.npmjs.org/botframework-webchat/-/botframework-webchat-4.18.1-main.20260416.88357ae.tgz", + "integrity": "sha512-qn92mVO46zb2HldNTp+gdmAcAri3tN9SRGlw2PZujakhncGC+A9ao7xL6sCCczuk42Zycx7gaWBWhQbPqyirNw==", + "dependencies": { + "@babel/runtime": "7.28.6", + "adaptivecards": "3.0.6", + "botframework-directlinejs": "0.15.8", + "botframework-directlinespeech-sdk": "4.18.1-main.20260416.88357ae", + "botframework-webchat-api": "4.18.1-main.20260416.88357ae", + "botframework-webchat-component": "4.18.1-main.20260416.88357ae", + "botframework-webchat-core": "4.18.1-main.20260416.88357ae", "classnames": "2.5.1", - "core-js": "3.44.0", - "katex": "0.16.22", + "core-js": "3.48.0", + "katex": "0.16.33", "math-random": "2.0.1", - "mdast-util-from-markdown": "2.0.2", + "mdast-util-from-markdown": "2.0.3", "memoize-one": "6.0.0", "micromark": "4.0.2", "micromark-extension-gfm": "3.0.0", "micromark-util-character": "2.1.1", - "microsoft-cognitiveservices-speech-sdk": "1.45.0", + "micromark-util-sanitize-uri": "2.0.1", + "microsoft-cognitiveservices-speech-sdk": "1.48.0", "prop-types": "15.8.1", "punycode": "2.3.1", - "sanitize-html": "2.17.0", + "sanitize-html": "2.17.1", "shiki": "2.5.0", - "swiper": "8.4.7", "url-search-params-polyfill": "8.2.5", - "use-ref-from": "0.1.0", + "use-ref-from": "0.2.1", "uuid": "8.3.2", - "valibot": "1.1.0", - "web-speech-cognitive-services": "8.1.3", + "valibot": "1.2.0", + "web-speech-cognitive-services": "8.1.4", "whatwg-fetch": "3.6.20" }, "peerDependencies": { "react": ">= 16.8.6", + "react-chain-of-responsibility": "0.4.2", "react-dom": ">= 16.8.6" } }, "node_modules/botframework-webchat-api": { - "version": "4.18.1-main.20250804.93043a9", - "resolved": "https://registry.npmjs.org/botframework-webchat-api/-/botframework-webchat-api-4.18.1-main.20250804.93043a9.tgz", - "integrity": "sha512-dQBrFBFURGHzjJ4Scg5DN1RbeDD0nHtZA8H+yE5qHis2DIz6qgwjk4n5jqgDfEdWLccljaql/fsIHHBGNdwrcQ==", + "version": "4.18.1-main.20260416.88357ae", + "resolved": "https://registry.npmjs.org/botframework-webchat-api/-/botframework-webchat-api-4.18.1-main.20260416.88357ae.tgz", + "integrity": "sha512-TcwV4/P/1iD0CLfhf+wL4zfDsPzx9/rw+hr4IhphwAWuPVfGYFXZZBSIL/tTO5sF2r3y84e6TU+HX4zoJ/W1qw==", "dependencies": { - "botframework-webchat-core": "4.18.1-main.20250804.93043a9", - "globalize": "1.7.0", - "iter-fest": "0.3.0", + "botframework-webchat-core": "4.18.1-main.20260416.88357ae", + "globalize": "1.7.1", + "iter-fest": "0.3.1", "math-random": "2.0.1", "prop-types": "15.8.1", - "react-chain-of-responsibility": "0.3.0", + "react-chain-of-responsibility": "0.4.2", "react-redux": "7.2.9", "redux": "5.0.1", "simple-update-in": "2.2.0", - "use-ref-from": "0.1.0", - "valibot": "1.1.0" + "use-reduce-memo": "0.1.0", + "use-ref-from": "0.2.1", + "valibot": "1.2.0" }, "peerDependencies": { "react": ">= 16.8.6", @@ -1861,37 +1771,38 @@ "integrity": "sha512-M9/ELqF6fy8FwmkpnF0S3YKOqMyoWJ4+CS5Efg2ct3oY9daQvd/Pc71FpGZsVsbl3Cpb+IIcjBDUnnyBdQbq4w==" }, "node_modules/botframework-webchat-component": { - "version": "4.18.1-main.20250804.93043a9", - "resolved": "https://registry.npmjs.org/botframework-webchat-component/-/botframework-webchat-component-4.18.1-main.20250804.93043a9.tgz", - "integrity": "sha512-RFcj0QlWl70NTg/s3Yu+kNDEEaDTbW8cHnQYPSzGqDLQAq6udbz2p6Ssxob6I5jOvUSajpfnbt2klTKuuqVzmg==", + "version": "4.18.1-main.20260416.88357ae", + "resolved": "https://registry.npmjs.org/botframework-webchat-component/-/botframework-webchat-component-4.18.1-main.20260416.88357ae.tgz", + "integrity": "sha512-6VN6fECZg9xcjZ+vBBhh32yFYFaicMdbPjZd3hsQtnvstG0WMHX70sZLhLRrZUHmlEQijsuKwGxafMSum5AJ2g==", "dependencies": { "@emotion/css": "11.13.5", "base64-js": "1.5.1", - "botframework-webchat-api": "4.18.1-main.20250804.93043a9", - "botframework-webchat-core": "4.18.1-main.20250804.93043a9", + "botframework-webchat-api": "4.18.1-main.20260416.88357ae", + "botframework-webchat-core": "4.18.1-main.20260416.88357ae", "classnames": "2.5.1", "compute-scroll-into-view": "1.0.20", "deep-freeze-strict": "1.1.1", "markdown-it": "13.0.2", "math-random": "2.0.1", - "mdast-util-from-markdown": "2.0.2", + "mdast-util-from-markdown": "2.0.3", "memoize-one": "6.0.0", "merge-refs": "2.0.0", "prop-types": "15.8.1", "punycode": "2.3.1", - "react-chain-of-responsibility": "0.3.0", - "react-dictate-button": "4.0.0", + "react-chain-of-responsibility": "0.4.2", + "react-dictate-button": "4.0.1", "react-film": "4.0.0", "react-redux": "7.2.9", - "react-say": "2.2.0", + "react-say": "2.2.1", "react-scroll-to-bottom": "4.2.1-main.53844f5", "react-wrap-with": "0.1.0", "redux": "5.0.1", "simple-update-in": "2.2.0", - "use-propagate": "0.2.1", - "use-ref-from": "0.1.0", - "use-state-with-ref": "0.1.0", - "valibot": "1.1.0" + "use-propagate": "0.2.2", + "use-reduce-memo": "0.1.0", + "use-ref-from": "0.2.1", + "use-state-with-ref": "0.2.1", + "valibot": "1.2.0" }, "peerDependencies": { "react": ">= 16.8.6", @@ -1904,19 +1815,22 @@ "integrity": "sha512-M9/ELqF6fy8FwmkpnF0S3YKOqMyoWJ4+CS5Efg2ct3oY9daQvd/Pc71FpGZsVsbl3Cpb+IIcjBDUnnyBdQbq4w==" }, "node_modules/botframework-webchat-core": { - "version": "4.18.1-main.20250804.93043a9", - "resolved": "https://registry.npmjs.org/botframework-webchat-core/-/botframework-webchat-core-4.18.1-main.20250804.93043a9.tgz", - "integrity": "sha512-05FKLfyUmoKHW3P0tofc09Q7eRG3zjHzg/86cp7HxAWnKu/hJJWpabM7nVGI9BAy78pHNrGkEDE/KedEQWNRwA==", + "version": "4.18.1-main.20260416.88357ae", + "resolved": "https://registry.npmjs.org/botframework-webchat-core/-/botframework-webchat-core-4.18.1-main.20260416.88357ae.tgz", + "integrity": "sha512-3jnsPdserlV/0fKyrmJ2lwl2YKREHHss7xOlsw7art3IN4AeIRk6IGVRCQIyfjDY26VY8OxhiDgqupg5yHEHQg==", "dependencies": { - "@babel/runtime": "7.28.2", + "@babel/runtime": "7.28.6", "@redux-devtools/extension": "3.3.0", + "core-js-pure": "3.48.0", + "iter-fest": "0.3.1", "jwt-decode": "4.0.0", "math-random": "2.0.1", - "mime": "4.0.7", + "mime": "4.1.0", "redux": "5.0.1", - "redux-saga": "1.3.0", + "redux-saga": "1.4.2", "simple-update-in": "2.2.0", - "valibot": "1.1.0" + "uuid": "8.3.2", + "valibot": "1.2.0" }, "engines": { "node": ">=12.0.0" @@ -1935,15 +1849,6 @@ "resolved": "https://registry.npmjs.org/redux/-/redux-5.0.1.tgz", "integrity": "sha512-M9/ELqF6fy8FwmkpnF0S3YKOqMyoWJ4+CS5Efg2ct3oY9daQvd/Pc71FpGZsVsbl3Cpb+IIcjBDUnnyBdQbq4w==" }, - "node_modules/brace-expansion": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", - "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, "node_modules/buffer": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", @@ -2042,20 +1947,23 @@ "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "engines": { + "node": ">= 12" + } + }, "node_modules/compute-scroll-into-view": { "version": "1.0.20", "resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-1.0.20.tgz", "integrity": "sha512-UCB0ioiyj8CRjtrvaceBLqqhZCVP+1B8+NWQhmdsm0VXOJtobBCf1dBQmebCCo34qZmUwZfIH2MZLqNHazrfjg==" }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" - }, "node_modules/core-js": { - "version": "3.44.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.44.0.tgz", - "integrity": "sha512-aFCtd4l6GvAXwVEh3XbbVqJGHDJt0OZRa+5ePGx3LLwi12WfexqQxcsohb2wgsa/92xtl19Hd66G/L+TaAxDMw==", + "version": "3.48.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.48.0.tgz", + "integrity": "sha512-zpEHTy1fjTMZCKLHUZoVeylt9XrzaIN2rbPXEt0k+q7JE5CkCZdo6bNq55bn24a69CH7ErAVLKijxJja4fw+UQ==", "hasInstallScript": true, "funding": { "type": "opencollective", @@ -2063,9 +1971,9 @@ } }, "node_modules/core-js-pure": { - "version": "3.44.0", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.44.0.tgz", - "integrity": "sha512-gvMQAGB4dfVUxpYD0k3Fq8J+n5bB6Ytl15lqlZrOIXFzxOhtPaObfkQGHtMRdyjIf7z2IeNULwi1jEwyS+ltKQ==", + "version": "3.48.0", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.48.0.tgz", + "integrity": "sha512-1slJgk89tWC51HQ1AEqG+s2VuwpTRr8ocu4n20QUcH1v9lAN0RXen0Q0AABa/DK1I7RrNWLucplOHMx8hfTGTw==", "hasInstallScript": true, "funding": { "type": "opencollective", @@ -2193,15 +2101,6 @@ "url": "https://github.com/fb55/entities?sponsor=1" } }, - "node_modules/dom7": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/dom7/-/dom7-4.0.6.tgz", - "integrity": "sha512-emjdpPLhpNubapLFdjNL9tP06Sr+GZkrIHEXLWvOGsytACUrkbeIdjO5g77m00BrHTznnlcNqgmn7pCN192TBA==", - "license": "MIT", - "dependencies": { - "ssr-window": "^4.0.0" - } - }, "node_modules/domelementtype": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", @@ -2242,21 +2141,6 @@ "url": "https://github.com/fb55/domutils?sponsor=1" } }, - "node_modules/editions": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/editions/-/editions-2.3.1.tgz", - "integrity": "sha512-ptGvkwTvGdGfC0hfhKg0MT+TRLRKGtUiWGBInxOm5pz7ssADezahjCUaYuZ8Dr+C05FW0AECIIPt4WBxVINEhA==", - "dependencies": { - "errlop": "^2.0.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=0.8" - }, - "funding": { - "url": "https://bevry.me/fund" - } - }, "node_modules/emoji-regex-xs": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/emoji-regex-xs/-/emoji-regex-xs-1.0.0.tgz", @@ -2273,17 +2157,6 @@ "url": "https://github.com/fb55/entities?sponsor=1" } }, - "node_modules/errlop": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/errlop/-/errlop-2.2.0.tgz", - "integrity": "sha512-e64Qj9+4aZzjzzFpZC7p5kmm/ccCrbLhAJplhsDXQFs87XTsXwOpH4s1Io2s90Tau/8r2j9f4l/thhDevRjzxw==", - "engines": { - "node": ">=0.8" - }, - "funding": { - "url": "https://bevry.me/fund" - } - }, "node_modules/error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -2294,9 +2167,9 @@ } }, "node_modules/esbuild": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.27.2.tgz", - "integrity": "sha512-HyNQImnsOC7X9PMNaCIeAm4ISCQXs5a5YasTXVliKv4uuBo1dKrG0A+uQS8M5eXjVMnLg3WgXaKvprHlFJQffw==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.0.tgz", + "integrity": "sha512-sNR9MHpXSUV/XB4zmsFKN+QgVG82Cc7+/aaxJ8Adi8hyOac+EXptIp45QBPaVyX3N70664wRbTcLTOemCAnyqw==", "dev": true, "hasInstallScript": true, "bin": { @@ -2306,32 +2179,32 @@ "node": ">=18" }, "optionalDependencies": { - "@esbuild/aix-ppc64": "0.27.2", - "@esbuild/android-arm": "0.27.2", - "@esbuild/android-arm64": "0.27.2", - "@esbuild/android-x64": "0.27.2", - "@esbuild/darwin-arm64": "0.27.2", - "@esbuild/darwin-x64": "0.27.2", - "@esbuild/freebsd-arm64": "0.27.2", - "@esbuild/freebsd-x64": "0.27.2", - "@esbuild/linux-arm": "0.27.2", - "@esbuild/linux-arm64": "0.27.2", - "@esbuild/linux-ia32": "0.27.2", - "@esbuild/linux-loong64": "0.27.2", - "@esbuild/linux-mips64el": "0.27.2", - "@esbuild/linux-ppc64": "0.27.2", - "@esbuild/linux-riscv64": "0.27.2", - "@esbuild/linux-s390x": "0.27.2", - "@esbuild/linux-x64": "0.27.2", - "@esbuild/netbsd-arm64": "0.27.2", - "@esbuild/netbsd-x64": "0.27.2", - "@esbuild/openbsd-arm64": "0.27.2", - "@esbuild/openbsd-x64": "0.27.2", - "@esbuild/openharmony-arm64": "0.27.2", - "@esbuild/sunos-x64": "0.27.2", - "@esbuild/win32-arm64": "0.27.2", - "@esbuild/win32-ia32": "0.27.2", - "@esbuild/win32-x64": "0.27.2" + "@esbuild/aix-ppc64": "0.28.0", + "@esbuild/android-arm": "0.28.0", + "@esbuild/android-arm64": "0.28.0", + "@esbuild/android-x64": "0.28.0", + "@esbuild/darwin-arm64": "0.28.0", + "@esbuild/darwin-x64": "0.28.0", + "@esbuild/freebsd-arm64": "0.28.0", + "@esbuild/freebsd-x64": "0.28.0", + "@esbuild/linux-arm": "0.28.0", + "@esbuild/linux-arm64": "0.28.0", + "@esbuild/linux-ia32": "0.28.0", + "@esbuild/linux-loong64": "0.28.0", + "@esbuild/linux-mips64el": "0.28.0", + "@esbuild/linux-ppc64": "0.28.0", + "@esbuild/linux-riscv64": "0.28.0", + "@esbuild/linux-s390x": "0.28.0", + "@esbuild/linux-x64": "0.28.0", + "@esbuild/netbsd-arm64": "0.28.0", + "@esbuild/netbsd-x64": "0.28.0", + "@esbuild/openbsd-arm64": "0.28.0", + "@esbuild/openbsd-x64": "0.28.0", + "@esbuild/openharmony-arm64": "0.28.0", + "@esbuild/sunos-x64": "0.28.0", + "@esbuild/win32-arm64": "0.28.0", + "@esbuild/win32-ia32": "0.28.0", + "@esbuild/win32-x64": "0.28.0" } }, "node_modules/escape-string-regexp": { @@ -2347,11 +2220,11 @@ } }, "node_modules/event-as-promise": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/event-as-promise/-/event-as-promise-2.0.0.tgz", - "integrity": "sha512-veBES20Er4NLmbcpvTJxmdSeQt1YP+NmK/6CKlx2kkkitCZ0gRYi/Q6iwx5iwBBeHdGcD4W4uHxitv6oPB2X3A==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/event-as-promise/-/event-as-promise-2.0.1.tgz", + "integrity": "sha512-g0Wpfse1Gf9Pc8RLggBMti+LxHRmnHxGgv/lQeBlwL31xvFSjLS1ab8g9K5XrtSh8fcK8CHAV7h3zMgjg0LFBA==", "dependencies": { - "event-as-promise": "^2.0.0" + "event-as-promise": "^2.0.1" } }, "node_modules/event-target-shim": { @@ -2371,11 +2244,6 @@ "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==", "license": "MIT" }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" - }, "node_modules/function-bind": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", @@ -2385,31 +2253,10 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/globalize": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/globalize/-/globalize-1.7.0.tgz", - "integrity": "sha512-faR46vTIbFCeAemyuc9E6/d7Wrx9k2ae2L60UhakztFg6VuE42gENVJNuPFtt7Sdjrk9m2w8+py7Jj+JTNy59w==", - "license": "MIT", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/globalize/-/globalize-1.7.1.tgz", + "integrity": "sha512-PFymRL0PtitFOlSniuwwwNfkooi3cLQJo9Uke1+j1DsGfUkkHkwneImqVtGcqKI0TuzhAlHt7hAcgK324902HA==", "dependencies": { "cldrjs": "^0.5.4" } @@ -2423,6 +2270,14 @@ "node": ">=4" } }, + "node_modules/handler-chain": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/handler-chain/-/handler-chain-0.1.1.tgz", + "integrity": "sha512-5eo8F9UTUiFCMtDUF1ipva1tvOCGE+vFr33aFHSISjTqXfGywCRV2aE6TzPkMhaw1pArOv3wv2Wz3Rh+AJJ8bA==", + "dependencies": { + "handler-chain": "^0.1.1" + } + }, "node_modules/hasown": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", @@ -2469,19 +2324,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/heimdalljs": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/heimdalljs/-/heimdalljs-0.2.6.tgz", - "integrity": "sha512-o9bd30+5vLBvBtzCPwwGqpry2+n0Hi6H1+qwt6y+0kwRHGGF8TFIhJPmnuM0xO97zaKrDZMwO/V56fAnn8m/tA==", - "dependencies": { - "rsvp": "~3.2.1" - } - }, - "node_modules/heimdalljs/node_modules/rsvp": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-3.2.1.tgz", - "integrity": "sha512-Rf4YVNYpKjZ6ASAmibcwTNciQ5Co5Ztq6iZPEykHpkoflnD/K5ryE/rHehFsTm4NJj8nKDhbi3eKBWGogmNnkg==" - }, "node_modules/hoist-non-react-statics": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", @@ -2587,6 +2429,26 @@ "url": "https://github.com/fb55/entities?sponsor=1" } }, + "node_modules/http-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", + "dependencies": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/http-proxy-agent/node_modules/agent-base": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", + "engines": { + "node": ">= 14" + } + }, "node_modules/https-proxy-agent": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-4.0.0.tgz", @@ -2627,9 +2489,9 @@ ] }, "node_modules/immutable": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.7.tgz", - "integrity": "sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==" + "version": "4.3.8", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.8.tgz", + "integrity": "sha512-d/Ld9aLbKpNwyl0KiM2CT1WYvkitQ1TSvmRtkcV8FKStiDoA7Slzgjmb/1G2yhKM1p0XeNOieaTbFZmU1d3Xuw==" }, "node_modules/import-fresh": { "version": "3.3.0", @@ -2647,21 +2509,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, "node_modules/inline-style-parser": { "version": "0.2.4", "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.2.4.tgz", @@ -2707,28 +2554,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/istextorbinary": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/istextorbinary/-/istextorbinary-2.6.0.tgz", - "integrity": "sha512-+XRlFseT8B3L9KyjxxLjfXSLMuErKDsd8DBNrsaxoViABMEZlOSCstwmw0qpoFX3+U6yWU1yhLudAe6/lETGGA==", - "dependencies": { - "binaryextensions": "^2.1.2", - "editions": "^2.2.0", - "textextensions": "^2.5.0" - }, - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://bevry.me/fund" - } - }, "node_modules/iter-fest": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/iter-fest/-/iter-fest-0.3.0.tgz", - "integrity": "sha512-t76cnHCl9MEZRaUb0VBwTXP8dWjxbcTYm91VGWfQYjSMXKkjdOAIjUsaMYuLIy9jxk9fT55XIlb4Y/HACK/zlw==", + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/iter-fest/-/iter-fest-0.3.1.tgz", + "integrity": "sha512-XL7DGglVGVevTuQAAhVAN3MbADeKyDcijPToBKUxZHpOSUJT22CfvGqsV1t34LyoVxDDL3MGPbHZVx20Lky0og==", "dependencies": { - "iter-fest": "^0.3.0" + "iter-fest": "^0.3.1" }, "peerDependencies": { "core-js-pure": "^3.37.1" @@ -2764,9 +2595,9 @@ "integrity": "sha512-UfpWE/VZn0iP50d8cz9NrZLM9lSWhcJ+0Gt/nm4by88UL+J1SiKN8/5dkjMmbEzwL2CAe+67GsegCbIKtbp75A==" }, "node_modules/katex": { - "version": "0.16.22", - "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.22.tgz", - "integrity": "sha512-XCHRdUw4lf3SKBaJe4EvgqIuWwkPSo9XoeO8GjQW94Bp7TWv9hNhzZjZ+OH9yf1UmLygb7DIT5GSFQiyt16zYg==", + "version": "0.16.33", + "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.33.tgz", + "integrity": "sha512-q3N5u+1sY9Bu7T4nlXoiRBXWfwSefNGoKeOwekV+gw0cAXQlz2Ww6BLcmBxVDeXBMUDQv6fK5bcNaJLxob3ZQA==", "funding": [ "https://opencollective.com/katex", "https://github.com/sponsors/katex" @@ -2778,14 +2609,6 @@ "katex": "cli.js" } }, - "node_modules/katex/node_modules/commander": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", - "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", - "engines": { - "node": ">= 12" - } - }, "node_modules/lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", @@ -2834,9 +2657,9 @@ "license": "CC0-1.0" }, "node_modules/mdast-util-from-markdown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.2.tgz", - "integrity": "sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.3.tgz", + "integrity": "sha512-W4mAWTvSlKvf8L6J+VN9yLSqQ9AOAAvHuoDAmPkz4dHf553m5gVj2ejadHJhoJmcmxEnOv6Pa8XJhpxE93kb8Q==", "dependencies": { "@types/mdast": "^4.0.0", "@types/unist": "^3.0.0", @@ -3394,9 +3217,9 @@ } }, "node_modules/micromark-util-sanitize-uri": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.0.tgz", - "integrity": "sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz", + "integrity": "sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==", "funding": [ { "type": "GitHub Sponsors", @@ -3407,7 +3230,6 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", "dependencies": { "micromark-util-character": "^2.0.0", "micromark-util-encode": "^2.0.0", @@ -3469,10 +3291,11 @@ "license": "MIT" }, "node_modules/microsoft-cognitiveservices-speech-sdk": { - "version": "1.45.0", - "resolved": "https://registry.npmjs.org/microsoft-cognitiveservices-speech-sdk/-/microsoft-cognitiveservices-speech-sdk-1.45.0.tgz", - "integrity": "sha512-etTSMGxDELxBQtNL8cgq2bwMrE6CjgfC8oIqKH9I9ghFs4/ITyLXy9HZuo0wQItN1zfDH3FhBeR72TmApe6pCQ==", + "version": "1.48.0", + "resolved": "https://registry.npmjs.org/microsoft-cognitiveservices-speech-sdk/-/microsoft-cognitiveservices-speech-sdk-1.48.0.tgz", + "integrity": "sha512-D/8cZn0+vWE18PHloEXfeSHjxuCTYs1zjMulQ4EgpjIrLdtaqSqa9guDBXPnxFnnysWRnZZwyfM/uoiKZvEXXw==", "dependencies": { + "@azure/core-auth": "^1.9.0", "@types/webrtc": "^0.0.37", "agent-base": "^6.0.1", "bent": "^7.3.12", @@ -3494,9 +3317,9 @@ } }, "node_modules/microsoft-cognitiveservices-speech-sdk/node_modules/ws": { - "version": "8.18.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz", - "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.20.0.tgz", + "integrity": "sha512-sAt8BhgNbzCtgGbt2OxmpuryO63ZoDk/sqaB/znQm94T4fCEsy/yV+7CdC1kJhOU9lboAEU7R3kquuycDoibVA==", "engines": { "node": ">=10.0.0" }, @@ -3514,9 +3337,9 @@ } }, "node_modules/mime": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/mime/-/mime-4.0.7.tgz", - "integrity": "sha512-2OfDPL+e03E0LrXaGYOtTFIYhiuzep94NSsuhrNULq+stylcJedcHdzHtz0atMUuGwJfFYs0YL5xeC/Ca2x0eQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-4.1.0.tgz", + "integrity": "sha512-X5ju04+cAzsojXKes0B/S4tcYtFAJ6tTMuSPBEn9CPGlrWr8Fiw7qYeLT0XyH80HSoAoqWCaz+MWKh22P7G1cw==", "funding": [ "https://github.com/sponsors/broofa" ], @@ -3527,41 +3350,6 @@ "node": ">=16" } }, - "node_modules/minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" - }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, "node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", @@ -3614,19 +3402,11 @@ } }, "node_modules/on-error-resume-next": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/on-error-resume-next/-/on-error-resume-next-2.0.2.tgz", - "integrity": "sha512-xGi+R6gp5OyWz/BbGIxyXbdcaGl0SFjvCyC0HgquupNC5t15L+7B/KYwLQ47EPRfpegmX0uOa85GAj4NO4Ujlg==", - "dependencies": { - "on-error-resume-next": "^2.0.2" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/on-error-resume-next/-/on-error-resume-next-2.0.3.tgz", + "integrity": "sha512-M/0RUYYlgKwoVhtdMNHSp//HxuqdAM5gDXtwitDfupoW+L773ZEitgqaYzZIuPFNZA3jf83bffkx4tm0QQxnuw==", "dependencies": { - "wrappy": "1" + "on-error-resume-next": "^2.0.3" } }, "node_modules/oniguruma-to-es": { @@ -3674,14 +3454,6 @@ "resolved": "https://registry.npmjs.org/parse-srcset/-/parse-srcset-1.0.2.tgz", "integrity": "sha512-/2qh0lav6CmI15FzA3i/2Bzk2zCgQhGMkvhOhKNcBVQ1ldgpbfiNTVslmooUmWJcADi1f1kIeynbDRVzNlfR6Q==" }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/path-parse": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", @@ -3703,9 +3475,9 @@ "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" }, "node_modules/postcss": { - "version": "8.5.6", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz", - "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==", + "version": "8.5.10", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.10.tgz", + "integrity": "sha512-pMMHxBOZKFU6HgAZ4eyGnwXF/EvPGGqUr0MnZ5+99485wwW41kW91A4LOGxSHhgugZmSChL5AlElNdwlNgcnLQ==", "funding": [ { "type": "opencollective", @@ -3757,11 +3529,6 @@ "node": ">=6" } }, - "node_modules/querystringify": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", - "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" - }, "node_modules/react": { "version": "18.3.1", "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", @@ -3776,30 +3543,43 @@ } }, "node_modules/react-chain-of-responsibility": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/react-chain-of-responsibility/-/react-chain-of-responsibility-0.3.0.tgz", - "integrity": "sha512-ord5r2WtHbioakZ7EG3LPHR3zCpMzmNAHtb+rTkaU0SRB7xj3YvWgPQDhoPeBDMgPoCKuBsYabJhNVYoFPODpQ==", + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/react-chain-of-responsibility/-/react-chain-of-responsibility-0.4.2.tgz", + "integrity": "sha512-khBaWO1rSLSUw6Ydr3lYFgONwmrx9rSOClrLCyn7cq40QxVJSh5utq1rbey+Pr24trWmQdC9qweTuKG2RptTXw==", "dependencies": { - "react-chain-of-responsibility": "^0.3.0" + "handler-chain": "^0.1.0", + "react-chain-of-responsibility": "^0.4.2", + "valibot": "^1.1.0" }, "peerDependencies": { - "react": ">=16.8.0" + "react": ">=16.8.6" } }, "node_modules/react-dictate-button": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/react-dictate-button/-/react-dictate-button-4.0.0.tgz", - "integrity": "sha512-v+92/yHShDzCapCZm2Y6UoKEKzt32gCJWFTIcJxRTwySfP8+eulUG/2U2ttu74YD6i0z9dYsRfFEHHwC+UfwKQ==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/react-dictate-button/-/react-dictate-button-4.0.1.tgz", + "integrity": "sha512-UvXx3RhJfGD4I7UkUEtBGBRyKRQrh90gzFsde53sJUhJ0V8iTJo8dthtNBMuanYTUyGdZdfdPCjv5ozIlEPvAQ==", "dependencies": { - "@babel/runtime-corejs3": "^7.14.0", - "core-js": "^3.12.1", - "react-dictate-button": "^4.0.0", + "@babel/runtime-corejs3": "^7.28.4", + "react-dictate-button": "^4.0.1", "use-ref-from": "^0.1.0" }, "peerDependencies": { "react": ">=16.8.6" } }, + "node_modules/react-dictate-button/node_modules/use-ref-from": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/use-ref-from/-/use-ref-from-0.1.0.tgz", + "integrity": "sha512-PRjmfhUGUKghhOjKV1dBU66M7CASdb4NkMsaaWLdJA81yOZFlVL7Pi3O9aD+68pRh0VrRQjZfS6Ux3vPy1VhRg==", + "dependencies": { + "@babel/runtime-corejs3": "^7.24.1", + "use-ref-from": "^0.1.0" + }, + "peerDependencies": { + "react": ">=16.8.0" + } + }, "node_modules/react-dom": { "version": "18.3.1", "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", @@ -3873,12 +3653,12 @@ "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" }, "node_modules/react-say": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/react-say/-/react-say-2.2.0.tgz", - "integrity": "sha512-PbP3InO5bXeWEZyYi/QCu3CPsPKzT+1V/LnlxRsJ8gyL2utaEm1/cg+8WR2n6aHutzgvRP1Cq01jk9oYwectQA==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/react-say/-/react-say-2.2.1.tgz", + "integrity": "sha512-Iew40Wql10+IC659S1CRbziEO272XeJmWfmLbnSLqyGpCwELTBxTefHvFUvKwEAuJv8Bk+ezjcw0NxgDAZdzWA==", "dependencies": { "prop-types": "^15.8.1", - "react-say": "^2.2.0" + "react-say": "^2.2.1" }, "peerDependencies": { "react": ">= 16.8.6" @@ -3970,11 +3750,11 @@ } }, "node_modules/redux-saga": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/redux-saga/-/redux-saga-1.3.0.tgz", - "integrity": "sha512-J9RvCeAZXSTAibFY0kGw6Iy4EdyDNW7k6Q+liwX+bsck7QVsU78zz8vpBRweEfANxnnlG/xGGeOvf6r8UXzNJQ==", + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/redux-saga/-/redux-saga-1.4.2.tgz", + "integrity": "sha512-QLIn/q+7MX/B+MkGJ/K6R3//60eJ4QNy65eqPsJrfGezbxdh1Jx+37VRKE2K4PsJnNET5JufJtgWdT30WBa+6w==", "dependencies": { - "@redux-saga/core": "^1.3.0" + "@redux-saga/core": "^1.4.2" } }, "node_modules/regenerator-runtime": { @@ -4003,11 +3783,6 @@ "resolved": "https://registry.npmjs.org/regex-utilities/-/regex-utilities-2.3.0.tgz", "integrity": "sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng==" }, - "node_modules/requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" - }, "node_modules/resolve": { "version": "1.22.8", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", @@ -4034,29 +3809,6 @@ "node": ">=4" } }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "deprecated": "Rimraf versions prior to v4 are no longer supported", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rsvp": { - "version": "4.8.5", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", - "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", - "engines": { - "node": "6.* || >= 7.*" - } - }, "node_modules/rxjs": { "version": "5.5.12", "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.12.tgz", @@ -4068,15 +3820,10 @@ "npm": ">=2.0.0" } }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, "node_modules/sanitize-html": { - "version": "2.17.0", - "resolved": "https://registry.npmjs.org/sanitize-html/-/sanitize-html-2.17.0.tgz", - "integrity": "sha512-dLAADUSS8rBwhaevT12yCezvioCA+bmUTPH/u57xKPT8d++voeYE6HeluA/bPbQ15TwDBG2ii+QZIEmYx8VdxA==", + "version": "2.17.1", + "resolved": "https://registry.npmjs.org/sanitize-html/-/sanitize-html-2.17.1.tgz", + "integrity": "sha512-ehFCW+q1a4CSOWRAdX97BX/6/PDEkCqw7/0JXZAGQV57FQB3YOkTa/rrzHPeJ+Aghy4vZAFfWMYyfxIiB7F/gw==", "dependencies": { "deepmerge": "^4.2.2", "escape-string-regexp": "^4.0.0", @@ -4096,14 +3843,6 @@ "loose-envify": "^1.1.0" } }, - "node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/shiki": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/shiki/-/shiki-2.5.0.tgz", @@ -4119,11 +3858,6 @@ "@types/hast": "^3.0.4" } }, - "node_modules/simple-lru-cache": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/simple-lru-cache/-/simple-lru-cache-0.0.2.tgz", - "integrity": "sha512-uEv/AFO0ADI7d99OHDmh1QfYzQk/izT1vCmu/riQfh7qjBVUUgRT87E5s5h7CxWCA/+YoZerykpEthzVrW3LIw==" - }, "node_modules/simple-update-in": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/simple-update-in/-/simple-update-in-2.2.0.tgz", @@ -4156,12 +3890,6 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/ssr-window": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/ssr-window/-/ssr-window-4.0.2.tgz", - "integrity": "sha512-ISv/Ch+ig7SOtw7G2+qkwfVASzazUnvlDTwypdLoPoySv+6MqlOV10VwPSE6EWkGjhW50lUmghPmpYZXMu/+AQ==", - "license": "MIT" - }, "node_modules/stringify-entities": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz", @@ -4210,9 +3938,9 @@ } }, "node_modules/swiper": { - "version": "8.4.7", - "resolved": "https://registry.npmjs.org/swiper/-/swiper-8.4.7.tgz", - "integrity": "sha512-VwO/KU3i9IV2Sf+W2NqyzwWob4yX9Qdedq6vBtS0rFqJ6Fa5iLUJwxQkuD4I38w0WDJwmFl8ojkdcRFPHWD+2g==", + "version": "12.1.3", + "resolved": "https://registry.npmjs.org/swiper/-/swiper-12.1.3.tgz", + "integrity": "sha512-XcWlVmkHFICI4fuoJKgbp8PscDcS4i7pBH8nwJRBi3dpQvhCySwsWRYm4bOf/BzKVWkHOYaFw7qz9uBSrY3oug==", "funding": [ { "type": "patreon", @@ -4223,12 +3951,7 @@ "url": "http://opencollective.com/swiper" } ], - "hasInstallScript": true, - "license": "MIT", - "dependencies": { - "dom7": "^4.0.4", - "ssr-window": "^4.0.2" - }, + "peer": true, "engines": { "node": ">= 4.7.0" } @@ -4241,17 +3964,6 @@ "node": ">=0.10.0" } }, - "node_modules/textextensions": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/textextensions/-/textextensions-2.6.0.tgz", - "integrity": "sha512-49WtAWS+tcsy93dRt6P0P3AMD2m5PvXRhuEA0kaXos5ZLlujtYmpmFsB+QvWUSxE1ZsstmYXfQ7L40+EcQgpAQ==", - "engines": { - "node": ">=0.8" - }, - "funding": { - "url": "https://bevry.me/fund" - } - }, "node_modules/tr46": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", @@ -4269,8 +3981,7 @@ "node_modules/tslib": { "version": "2.8.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", - "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", - "peer": true + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==" }, "node_modules/type-fest": { "version": "4.41.0", @@ -4373,15 +4084,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/url-parse": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", - "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", - "dependencies": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, "node_modules/url-search-params-polyfill": { "version": "8.2.5", "resolved": "https://registry.npmjs.org/url-search-params-polyfill/-/url-search-params-polyfill-8.2.5.tgz", @@ -4389,22 +4091,21 @@ "license": "MIT" }, "node_modules/use-propagate": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/use-propagate/-/use-propagate-0.2.1.tgz", - "integrity": "sha512-sEqlR9Zq63fCmJbxD33j3+nRkR4tAiu6K6/P++ks4A9ZLJjKZcgllaaufTBSW29dQzjWdaMT2JsPwBskamWwQQ==", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/use-propagate/-/use-propagate-0.2.2.tgz", + "integrity": "sha512-cuOqTG8JKwkd1DHJAy1fkwIMhjVRZSdSvELJCXsROvmS49yd8CEXg4UDaDC7Qqsea0FAa1d8cFMY5pnodZul1w==", "dependencies": { - "use-propagate": "^0.2.1", + "use-propagate": "^0.2.2", "use-ref-from": "^0.1.0" }, "peerDependencies": { "react": ">=16.8.0" } }, - "node_modules/use-ref-from": { + "node_modules/use-propagate/node_modules/use-ref-from": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/use-ref-from/-/use-ref-from-0.1.0.tgz", "integrity": "sha512-PRjmfhUGUKghhOjKV1dBU66M7CASdb4NkMsaaWLdJA81yOZFlVL7Pi3O9aD+68pRh0VrRQjZfS6Ux3vPy1VhRg==", - "license": "MIT", "dependencies": { "@babel/runtime-corejs3": "^7.24.1", "use-ref-from": "^0.1.0" @@ -4413,23 +4114,41 @@ "react": ">=16.8.0" } }, - "node_modules/use-state-with-ref": { + "node_modules/use-reduce-memo": { "version": "0.1.0", - "resolved": "https://registry.npmjs.org/use-state-with-ref/-/use-state-with-ref-0.1.0.tgz", - "integrity": "sha512-l8/Dsu9XjhhhFSsBWmit+7WYsRSrKHafp+eJURhhVvv9K9fVIKxDaEAq/dW4pHgxCYcjWgD6EaofiW8NiwGabQ==", + "resolved": "https://registry.npmjs.org/use-reduce-memo/-/use-reduce-memo-0.1.0.tgz", + "integrity": "sha512-dJK1fMqvI7Lzh5xdKsZkZiqbvTyNtovQB7E3IWJp5tOeG7kdxZKdD5XSROiRGwAfB0qctgzJMcsCTp+m7y77UA==", "dependencies": { - "@babel/runtime-corejs3": "^7.23.6", - "use-ref-from": "^0.1.0", - "use-state-with-ref": "^0.1.0" + "handler-chain": "^0.1.0", + "use-reduce-memo": "^0.1.0", + "valibot": "^1.1.0" }, "peerDependencies": { "react": ">=16.8.0" } }, - "node_modules/username-sync": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/username-sync/-/username-sync-1.0.3.tgz", - "integrity": "sha512-m/7/FSqjJNAzF2La448c/aEom0gJy7HY7Y509h6l0ePvEkFictAGptwWaj1msWJ38JbfEDOUoE8kqFee9EHKdA==" + "node_modules/use-ref-from": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/use-ref-from/-/use-ref-from-0.2.1.tgz", + "integrity": "sha512-iwRcKtgIPP4K++mR3LO5DLUf4WMfBWyAM20oUL9jbKfywoMTiRScUixGv0HkhlJxFm6uFv5yDnr5YwcSiJSm1g==", + "dependencies": { + "use-ref-from": "^0.2.1" + }, + "peerDependencies": { + "react": ">=16.8.0" + } + }, + "node_modules/use-state-with-ref": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/use-state-with-ref/-/use-state-with-ref-0.2.1.tgz", + "integrity": "sha512-6EPhnqXsdzEVnOQub5VoDmrTLI2PqKp8zIIw/fvfdW9F/qLboIZG5ifaRQpAon8Upu3QYnIYZ+8h+YYQdXUnCw==", + "dependencies": { + "use-ref-from": "^0.2.1", + "use-state-with-ref": "^0.2.1" + }, + "peerDependencies": { + "react": ">=16.8.0" + } }, "node_modules/uuid": { "version": "8.3.2", @@ -4441,9 +4160,9 @@ } }, "node_modules/valibot": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/valibot/-/valibot-1.1.0.tgz", - "integrity": "sha512-Nk8lX30Qhu+9txPYTwM0cFlWLdPFsFr6LblzqIySfbZph9+BFsAHsNvHOymEviUepeIW6KFHzpX8TKhbptBXXw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/valibot/-/valibot-1.2.0.tgz", + "integrity": "sha512-mm1rxUsmOxzrwnX5arGS+U4T25RdvpPjPN4yR0u9pUBov9+zGVtO84tif1eY4r6zWxVxu3KzIyknJy3rxfRZZg==", "peerDependencies": { "typescript": ">=5" }, @@ -4480,18 +4199,18 @@ } }, "node_modules/web-speech-cognitive-services": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/web-speech-cognitive-services/-/web-speech-cognitive-services-8.1.3.tgz", - "integrity": "sha512-StlM8XsScA6Z/HGl4aAR9dmIe/+B5Tlc0ke1Bp7T/TSafzjszzDvXp/65u9vfbnJ2ZuCX+ie8IXR2y6q5rgYww==", + "version": "8.1.4", + "resolved": "https://registry.npmjs.org/web-speech-cognitive-services/-/web-speech-cognitive-services-8.1.4.tgz", + "integrity": "sha512-1d/2F5RDAMTJmJdSWWssKzmTsA6hkXz4kz3QzBpDvgjxWjDo4j2erb6KydyfaRzDRk4Pij4MtR1CtpzZtU9rSA==", "dependencies": { "base64-arraybuffer": "^1.0.2", - "event-as-promise": "^2.0.0", + "event-as-promise": "^2.0.1", "event-target-shim": "^6.0.2", "memoize-one": "^6.0.0", - "on-error-resume-next": "^2.0.2", + "on-error-resume-next": "^2.0.3", "simple-update-in": "^2.2.0", - "valibot": "^1.1.0", - "web-speech-cognitive-services": "^8.1.3" + "valibot": "^1.2.0", + "web-speech-cognitive-services": "^8.1.4" }, "peerDependencies": { "microsoft-cognitiveservices-speech-sdk": "^1.17.0" @@ -4517,11 +4236,6 @@ "webidl-conversions": "^3.0.0" } }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" - }, "node_modules/ws": { "version": "7.5.10", "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", @@ -4543,10 +4257,9 @@ } }, "node_modules/yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "license": "ISC", + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.3.tgz", + "integrity": "sha512-vIYeF1u3CjlhAFekPPAk2h/Kv4T3mAkMox5OymRiJQB0spDP10LHvt+K7G9Ny6NuuMAb25/6n1qyUjAcGNf/AA==", "engines": { "node": ">= 6" }