botframework-webchat-api
Advanced tools
Changelog
[4.15.1] - 2022-03-04
Map
object polyfill is required for IE11 when using NPM version of Web Chat:
Map
object polyfill is not required when using ES5 bundle of Web Chat from our CDN (webchat-es5.js
)core-js
package, it can be loaded by import 'core-js/features/map'
packages/bundle/src/polyfill.ts
suggestedActionBackground
and suggestedActionXXXBackground
are being deprecated in favor of suggestedActionBackgroundColor
and suggestedActionBackgroundColorOnXXX
respectively, for consistencies when porting to other platformssuggestedActionDisabledXXX
is being renamed to suggestedActionXXXOnDisabled
, for consistencies with other style optionssuggestedActionXXXOnActive
, suggestedActionXXXOnFocus
, suggestedActionXXXOnHover
are introduced for styling per user gesturessuggestedActionKeyboardFocusIndicatorXXX
are introduced for styling the "focus ring" when focused using a keyboardeslint-plugin-security
, consolidate .eslintrc.yml
at project root, and treat warnings as errors, by @compulim, in PR #4079suggestedActionXXXOnActive
, suggestedActionXXXOnFocus
, suggestedActionXXXOnHover
, suggestedActionKeyboardFocusIndicatorXXX
suggestedActionDisabledXXX
become suggestedActionXXXOnDisabled
sendBoxButtonXXXOnActive
, sendBoxButtonXXXOnFocus
, sendBoxButtonXXXOnHover
, sendBoxButtonKeyboardFocusIndicatorXXX
role="heading"
to titles of rich card, by @compulim, in PR #4074StyleOptions.suggestedActionsStackedOverflow
, by @compulim, in PR #4083box-sizing: border-box
to all descendants under Adaptive Cards, by @compulim, in PR #4084core/package-lock.json
, removed playground/host
, and added script to rebase URLs in package-lock.json
, by @compulim, in PR #4106role="feed"
/role="article"
for chat history and its messagesaria-activedescendant
for chat historyuseFocus
and useLocalizer
aria-label
for links in Markdown and skip unrecognized attributes or invalid curly brackets, by @compulim, in PR #4095RegExp
, by @compulim, in PR #4191babel-loader
, by @compulim, in PR #5322@babel/cli@7.15.7
@babel/core@7.15.8
@babel/plugin-proposal-object-rest-spread@7.15.6
@babel/plugin-transform-runtime@7.15.8
@babel/preset-env@7.15.8
@babel/preset-typescript@7.15.0
@types/node@16.10.9
@types/react@17.0.29
@typescript-eslint/eslint-plugin@4.33.0
@typescript-eslint/parser@4.33.0
babel-jest@27.2.5
botbuilder@4.15.0
concurrently@6.3.0
core-js@3.18.3
esbuild@0.12.29
eslint-plugin-prettier@3.4.1
eslint-plugin-react@7.26.1
eslint@7.32.0
istanbul-lib-coverage@3.0.2
jest-environment-node@27.2.5
jest-junit@13.0.0
jest@27.2.5
node-dev@7.1.0
node-fetch@2.6.7
prettier@2.4.1
react-scripts@5.0.0
restify@8.6.0
selenium-webdriver@4.0.0
serve@13.0.2
strip-ansi@6.0.1
terser-webpack-plugin@5.2.4
webpack-cli@4.9.0
webpack@5.58.2
05.custom-components/b.send-typing-indicator
to reply with message
activity, instead of typing
activity, in PR #4063, by @compulimChangelog
[4.14.1] - 2021-09-07
react-scripts
to devDependencies
, in PR #4023cldr-data
and cldr-data-downloader
, in PR #3998
./src
folderfs.readFileSync()
from require()
when reading JSON filesnode:fs.mkdir()
and removed mkdirp
node:assert
to Jest/dist/
folder from project rooteslint
read-pkg-up
to determines parent package.json
lerna
to run the install
script, we need to relax how cldr-data
read from parent package.json
react
to >= 16.8.6
, in PR #3996@babel/cli@7.14.5
@babel/core@7.14.6
@babel/plugin-proposal-class-properties@7.14.5
@babel/plugin-proposal-object-rest-spread@7.14.7
@babel/plugin-transform-runtime@7.14.5
@babel/preset-env@7.14.7
@babel/preset-react@7.14.5
@babel/preset-typescript@7.14.5
@babel/runtime@7.14.6
@emotion/react@11.4.0
@fluentui/react@8.22.3
@types/node@16.3.1
@types/react-dom@17.0.9
@types/react@17.0.14
@typescript-eslint/eslint-plugin@4.28.3
@typescript-eslint/parser@4.28.3
babel-jest@27.0.6
concurrently@6.2.0
core-js@3.15.2
dotenv@10.0.0
esbuild@0.12.15
eslint-plugin-prettier@3.4.0
eslint-plugin-react@7.24.0
eslint@7.30.0
http-proxy-middleware@2.0.1
husky@7.0.1
jest-environment-node@27.0.6
jest-image-snapshot@4.5.1
jest-junit@12.2.0
jest@27.0.6
lint-staged@11.0.0
node-dev@7.0.0
nodemon@2.0.12
p-defer@4.0.0
prettier@2.3.2
sanitize-html@2.4.0
selenium-webdriver@4.0.0-beta.4
serve@12.0.0
strip-ansi@6.0.0
typescript@4.3.5
webpack@5.45.1
Changelog
[4.14.0] - 2021-07-09
scrollToEndButtonBehavior
is introduced to control when the scroll to end button should show (formerly "new messages" button):
styleOptions.hideScrollToEndButton
has been deprecated. To hide the scroll to end button, set styleOptions.scrollToEndButtonBehavior
to false
;styleOptions.newMessageButtonFontSize
has been renamed to styleOptions.scrollToEndButtonFontSize
to better reflect its purpose.localTimestamp
and localTimezone
(if available) to all outgoing activities, by @compulim, in PR #3896scrollToEndButtonBehavior
to control when the scroll to end button should show, removed hideScrollToEndButton
, and renamed newMessagesButtonFontSize
to scrollToEndButtonFontSize
, by @compulim, in PR #3926.
scrollToEndButtonBehavior
:
"unread"
;"unread"
will show when there are any unread and offscreen messages (default);"any"
will show when there are any offscreen messages;false
will always hide the button.scrollToEndButtonMiddleware
to customize the appearance of the scroll to end button.*.d.ts
) for all public interfaces, by @compulim, in PR #3931 and #3946AudioContext
when clicking on microphone button, by @compulim, in PR #3974aria-hidden
from elements that have a focusable child, by @corinagum in PR #3836aria-labelledby
from carousel, by @corinagum in PR #3836adaptiveCardHostConfig
to accessible text color-contrasts, by @corinagum in PR #3853>= 10.14.2
from >= 12.0.0
, by @compulim in PR #3854husky
, lint-staged
and corresponding precommit
scripts, by @compulim, in PR #3871role="presentation"
to all decorative <svg>
, by @compulim, in PR #3903channelData['webchat:fallback-text']
field for screen reader text, before stripping Markdown from activity.text
field, by @compulim, in PR #3917role="menubar"
) must have at least 1 or more role="menuitem"
, by @compulim, in PR #3950p-defer
, by @compulim, in PR #3978@azure/storage-blob@12.5.0
@babel/cli@7.13.14
@babel/core@7.13.14
@babel/plugin-proposal-async-generator-functions@7.13.8
@babel/plugin-proposal-class-properties@7.13.0
@babel/plugin-proposal-object-rest-spread@7.13.8
@babel/plugin-transform-runtime@7.13.10
@babel/preset-env@7.13.12
@babel/preset-react@7.13.13
@babel/preset-typescript@7.13.0
@babel/runtime@7.13.10
@babel/standalone@7.13.14
@fluentui/react@8.9.0
@types/node@14.14.37
@types/react@17.0.3
@typescript-eslint/eslint-plugin@4.21.0
@typescript-eslint/parser@4.21.0
abort-controller-es5@1.2.0
abort-controller@3.0.0
babel-loader@8.2.2
base64-arraybuffer@0.2.0
botbuilder-dialogs@4.12.0
botbuilder@4.12.0
classnames@2.3.1
concurrently@6.0.1
copy-webpack-plugin@6.4.1
core-js@3.10.0
cross-env@7.0.3
css-loader@5.2.0
dotenv@8.2.0
eslint-config-standard@16.0.2
eslint-plugin-import@2.22.1
eslint-plugin-node@11.1.0
eslint-plugin-promise@4.3.1
eslint-plugin-react@7.23.1
eslint-plugin-react@7.23.1
eslint-plugin-standard@5.0.0
eslint@7.23.0
event-iterator@2.0.0
global-agent@2.2.0
html-webpack-plugin@4.5.2
http-proxy-middleware@1.1.0
husky@6.0.0
jest-image-snapshot@4.4.1
lerna@4.0.0
lint-staged@10.5.4
lolex@6.0.0
math-random@2.0.1
msal@1.4.9
node-dev@6.6.0
nodemon@2.0.7
office-ui-fabric-react@7.165.2
p-defer-es5@1.2.1
p-defer@3.0.0
prettier@2.2.1
react-redux@7.2.3
react-scripts@4.0.3
redux@4.0.5
restify@8.5.1
selenium-webdriver@4.0.0-beta.2
simple-update-in@2.2.0
source-map-loader@1.1.3
string-similarity@4.0.4
style-loader@2.0.0
uuid@8.3.2
webpack-cli@4.6.0
webpack-stats-plugin@1.0.3
webpack@4.46.0
microsoft-cognitiveservices-speech-sdk@1.17.0
, by @compulim, in PR #3907Changelog
[4.13.0] - 2021-04-05
@babel/cli@7.13.10
@babel/core@7.13.10
@babel/plugin-proposal-class-properties@7.13.0
@babel/plugin-proposal-object-rest-spread@7.13.8
@babel/plugin-transform-runtime@7.13.10
@babel/preset-env@7.13.10
@babel/preset-react@7.12.13
@babel/preset-typescript@7.13.0
@babel/runtime@7.13.10
@types/node@14.14.35
@types/react@16.9.55
@typescript-eslint/eslint-plugin@4.18.0
@typescript-eslint/parser@4.18.0
babel-jest@26.6.3
eslint-plugin-prettier@3.3.1
eslint-plugin-react-hooks@4.2.0
eslint-plugin-react@7.22.0
eslint@7.22.0
husky@4.3.0
jest-image-snapshot@4.2.0
jest-junit@12.0.0
jest-trx-results-processor@2.2.0
jest@26.6.3
lint-staged@10.5.1
lolex@6.0.0
node-dev@6.4.0
node-fetch@2.6.1
prettier@2.2.1
source-map-loader@1.1.2
terser-webpack-plugin@4.2.3
typescript@4.2.3
webpack-cli@4.2.0
webpack-stats-plugin@1.0.2
webpack@4.44.2
Changelog
[4.12.0] - 2021-03-01
flow
layout to suggested actions, by @compulim in PR #3641 and PR #3748autoScrollSnapOnActivity
to true
to pause auto-scroll after more than one activity is shown, or a number to pause after X number of activitiesautoScrollSnapOnPage
to true
to pause auto-scroll when a page is filled, or a number between 0
and 1
to pause after % of page is filledautoScrollSnapOnActivityOffset
and autoScrollSnapOnPageOffset
to a number (in pixels) to overscroll/underscroll after the pausesendBoxButtonAlignment
for button alignment in multi-line text mode, by @compulim in PR #3668DIRECT_LINE_SPEECH.md
for instructionsenterKeyHint
props warning, by @compulim in PR #3703containerRole
to default style options, by @nfreear in PR #3669useObserveTranscriptFocus
hook, by @compulim in PR #3755HOOKS.md
verbiage, by @corinagum in PR #3564<s>
on sanitize markdown, by @corinagum in PR #3646aria-labelledby
, by @compulim in PR #3697ACCESSIBILITY.md
, by @corinagum in PR #3689webpack.config.js
to use default settings of ['browser', 'module', 'main']
and resolved issues with uuid
package in IE11, by @compulim in PR #3726aria-pressed
on Adaptive Cards selected buttons, by @amal-khalaf in PR #3710aria-pressed
and aria-role
is not properly set on Adaptive Cards submit buttons, by @amal-khalaf in PR #374412.0.0
, by @compulim in PR #3753<ErrorBoundary>
to wrap around attachment renderer, by @compulim in PR #3761role="group"
to the focusable transcript to enable aria-activedescendant
, by @compulim in PR #3765@babel/cli@7.12.1
@babel/core@7.12.3
@babel/plugin-proposal-class-properties@7.12.1
@babel/plugin-proposal-object-rest-spread@7.12.1
@babel/plugin-transform-runtime@7.12.1
@babel/preset-env@7.12.1
@babel/preset-react@7.12.5
@babel/preset-typescript@7.12.1
@babel/runtime@7.12.5
@types/node@14.14.6
@types/react@16.9.55
@typescript-eslint/eslint-plugin@4.6.1
@typescript-eslint/parser@4.6.1
babel-jest@26.6.3
eslint-plugin-prettier@3.1.4
eslint-plugin-react-hooks@4.2.0
eslint-plugin-react@7.21.5
eslint@7.12.1
husky@4.3.0
jest-image-snapshot@4.2.0
jest-junit@12.0.0
jest-trx-results-processor@2.2.0
jest@26.6.3
lint-staged@10.5.1
lolex@6.0.0
node-dev@6.2.0
node-fetch@2.6.1
prettier@2.1.2
source-map-loader@1.1.2
terser-webpack-plugin@4.2.3
typescript@4.0.5
webpack-cli@4.2.0
webpack-stats-plugin@1.0.2
webpack@4.44.2
window.opener.postMessage
, by @corinagum in PR #3696