// Copyright 2020-2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Fix incorrect type definitions in date formatting.
- Fix the Jest configuration to not use the deprecated
tsConfig
spelling oftsconfig
. - Fix removeEventListener bug for WithTooltip.
- Reset
isAudioOn
state totrue
whenLocalAudioOutputProvider
unmounts.
- Added some key properties to
ModalButtonGroup
, which quiets some React warnings. - Added an optional prop
onPopOverClick
to pass a callback function to thePopOver
UI component. This callback will be called when thePopOver
UI component is clicked. - Added
--no-fail-on-empty-changeset
flag in deploy script to not fail for empty changeset. - Add
WithTooltip
docs, warning log if no container is found, and some additional flexibility.
- Bumped react and react-dom version to 17.
- Updated versions of testing-library family of packages.
- Corrected the detection of
yesterday
in said code. - Wraped actions in tests with
act
, as React requests.
- Fix getAttendee populate name even after the attendee has left the meeting
- Fixed the
MicrophoneActivity
component'sclassName
prop overridden by theMicVolumeIndicator
componentclassName
. - NotificatonGroups don't accept pointer-events.
- Clean up timeouts when
useFocusIn
anduseMouseMove
hooks are unmounted.
- Allow the
PopOver
UI component to stay open for multiple clicks. - Added
WithTooltip()
HOC and updatedRosterHeader
,RosterCell
,PopOverMenu
,PopOver
,NavbarItem
,ControlbarItem
, andChatBubbleConatiner
to support tooltips. - Added documentation for components that support tooltips, exposed
WithTooltip
component and related interfaces/types.
- Render roster without waiting for getAtendee callback.
- Update
MeetingProvider
and corresponding documentation to support re-usableMeetingManager
instance.
- [Docs] Fix broken link in RosterAttendee story
- Fix LocalVideo not rendering on initial attempt
- Fix inconsistent snapshot for EditableChatBubble
- [Docs] Fix mdx style rendering
- Confirm video device exists when requesting user device permission
- Add JoinedFromAnotherDevice meeting status
- Allow property passthough to IconButton in NavbarItem
- Fix icon preventing clicks on
Select
components - Fix Github Actions build-storybook error
- [Docs] Fix ContentShare docs
- Fix non-overridable Mic prop in
RosterAttendee
- Fix incorrect fill-rule property on
ZoomIn
andZoomOut
- [Demo] Fix closing roster from stopping active speaker detection.
- Fix serverless deploy script to work on Windows
- [Tests] Update outdated snapshots
- [Chat Demo] Fix double API calls on channel click.
- NotificatonGroups don't accept pointer-events
- Add
useSelectAudioInputDevice
,useSelectAudioOutputDevice
hooks - Added Echo icon
- Added poorConnection property to DeskPhone icon
- Added optional 'id' prop for ui components
- Added optional
timestamp
prop in ChatBubble - Added forwardRef for ChatBubbleContainer
- Added optional img to MessageAttachment
- Added a classname to PopOverMenu component for styling access
- Added forwardRef for Textarea
- Added
useDevicePermissionStatus
hook as an exported component from the library. - Added a "dismissible" prop to Modal to optionally allow persistent modals
- Added ZoomIn and ZoomOut icons
- Added style variants to Caution icon
- Update Jest major version
- Changed RosterHeader 'title' prop to all for elements as well as strings
- Changed senderName to optional in ChatBubble
- Moved children inside of a div in ChatBubble
- Changed
MeetingManager
to strictly enforceDevicePermissionStatus
type. - Update
realtimeUnsubscribeFromVolumeIndicator
interface to also accept a callback param. - Refactored NavBar to allow static width
- Refactored NavBarItem to use IconButton directly
- Change control bar theme opacity to 1
- [Chat Demo] Rename misspelled file names and imports
- Set amazon-chime-sdk-js in package.json dependencies
- Remove playwright tests, scripts, and dependency
- Removed content in ChatBubble
- Removed showName in ChatBubble
- Removed unused import statements from NavBar
- Fix meeting manager to handle
setSinkId
error
- Remove needless camera selection when joining meeting
- [Demo] Fix demo test speakers
- [Demo] Add Chat Demo app
- Allow arbitrary to be passed to RosterProvider
- Allow for simlucast configuration in MeetingProvider
- Updated button focus states to increase their accessibility
- [Documentation] Update README with solutions of common issues
- Fixed ModalBody component to allow custom classNames
- Fixed PopOver components to allow custom classNames
- Fixed small visual errors in chat componnets.
- Fixed broken snapshot tests for Badge component.
- Fixed slight spacing issue in ChatBubbleContainer.
- Fixed issue where checkmark in PopOverItem wouldn't change on hover/focus.
- Removed unused import in ChatBubble component.
- Fix InfiniteList to make it more flexible.
- Fix Popover Submenu being hidden.
- Added Lock and Pin icons
- Export Chat components and utilities
- Added Attachment, Dock, and Emoji picker icons
- Added HandRaise and ListHandRaise icons
- Added ConnectionProblem icon
- Added linkColors for incoming and outgoing chat in chatBubble
- Changed ChatBubbleContainer props to be more flexible.
- Changed Record icon
- Slight style changes to Modal and PopOver components.
- Changed Badge props to be more flexible.
- Changed PopOver component styling.
- Bumped chime-sdk-js version to 1.22.
- Added try/catch block to MeetingManager leave() function.
- [Demo] Changed handling audio binding asynchronously.
- Removed DateHeader component
- [Demo] Removed use of depricated methods.
- [Demo] Removed call MeetingManager.leave() on leave button click. (duplicate)
- Docs rename variable
rosterArray
from the attendees list toattendees
- Add base styles to ChannelList
- Fixed createChatBubbleList unit test that was incorrectly named and not running
- Fixed TS error inside /InfiniteList/index.tsx.
- Add
tabIndex
to BaseProps - Add
Like
,Dislike
,Feedback
icons - Add
isSelected
prop to NavBarItem - Add optional children to RosterHeader for custom element rendering
- Add optional
icon
property forRadio
andRadioGroup
to allow for rendering an icon instead of a label - Add Document icon and MessageAttachment components.
- Add stories and tests for all ChatBubble components.
- Add class to DateHeader component.
- Add Attachment icon
- Added passthrough for a react node in the subtitle of PopOverHeader
- Add
buttonProps
passthrough forRosterCell
andPopOverMenu
- Changed ChannelList props to accept and children instead of PopOverItem props.
- Added extra scroll functionality to the InfiniteList component when a new message is sent.
- Changed Message type to only include needed properties.
- Changed ChatBubble to composed components to support redact and edit.
- Changed RosterCell to support extra icons and menus when running late
- Changed ChatBubble component props for simplicity.
- Removed createChatBubbleList function.
- Removed exports and stories for unreleased chat components
- Fixed
useToggleLocalMute
not working when mounted before audioVideo initialized - Fixed missing
audioVideo
deps inuseLocalAudioInputActivityPreview
- Fixed
leadingIcon
alignment inSearchInput
- Rename icon (ContentShare > ScreenShare) to fix conflicting names
- Remove unused import in Select
- Temporarily removed ChannelList component snapshot test
- [Demo] Fixed so a user leaves a meeting when they press the back button in the browser or navigate back to home
- Add
useLocalAudioInputActivityPreview
hook for direct access to microphone input value - Add chat message component
- Add
isSelected
prop toControlBarButton
component - Add
UpAndDownCaret
icon component - Add channel list component for chat
- Add
children
prop for ControlBarItem to allow for custom PopOver content - Added styleMessageList function
- Added Chat DateHeader component
- Added formatDate utility function
- Adjust clear behavior and minor styling of inputs
- Changed RosterCell CSS to ensure vertical alignment of icons
- [DEMO] Upgrade
webpack-dev-server
to fixnode-forge
security vulnerability alert - Updated
Select
caret icon - Allow layout prop for VideoTileGrid
- Changed Message component to ChatBubble and moved InfiniteList to /Chat/MessageList
- Add PostLogger support to MeetingProvider
- Add
useBandwidthMetrics
hook, add bandwidth stats to demo - Add missing exported hooks to index.ts
- Add documentation for UserActivityProvider and RosterProvider
- [Demo] Default to nearest available region
- [Docs] Upgrade storybook to v6
- Update Device selector to use hooks instead of local state
- Fixed
css
prop not taking precedence over media queries - Fixed incorrect device permission status
- Fixed
useAttendeeStatus
returning incorrect video state for local user when mounting
- Add Github documentation link to README
- Add SDK log level selection ability to demo and library
- Added npm run build to the github actions publishing workflow
- Improve consistency and accuracy of docs for Hooks and Providers
- Fix
npm run build:release
running on windows OS - Update Storybook to 5.3
- Improve docs for SDK components
- Portrait video support, minor style fixes
- [Demo] Update demo dependencies
- Fixed reversed labels for mute/unmute control in
AudioInputControl
- Fixed
PreviewVideo
component when selecting new video input device - Fixed incorrect Storybook docs rendering
- Add NPM and CI Flow badge to README
- Move StyledSystem to peer dependencies
- Test script to run /Modal/index.test.tsx and /Button/PrimaryButton/index.test.tsx in playwright across 3 browsers
- Add Play, Pause and Sound disabled SVG icons
- Add initial roster components
- Add connected components to lib directory
- Add types required in
AudioOutputProvider
- Add sound disabled to
AudioOutputControl
- Add
LocalAudioOutputProvider
toMeetingView
- Add
ContentShareControlProvider
for content share control methods - Add
device-utils
needed in audio, video providers in library connected components - Add audio, video device types to types in library
- Add
useToggleLocalMute
to demo - Add
Modal
,ModalButtonGroup
to librarysrc/index
- Add code style checking script
- Add postbuild script
- RemoteVideos, RemoteVideo components
- CSS reset, public domain version
- Set up customized MDX documentation and add docs for Badge component
- Add patch version bump for each merge
- Add docs for Button component, re-organize docs
- Add docs for all Form components
- Add mic volume indicator component
- Add serverless setup for the meeting demo
- Add publish script.
- ActiveSpeaker, ActiveTile providers and hooks
- Add docs for PopOver component
- Add github action workflow that automates publishing to npm
- Add docs for Grid component
- Add docs for the Modal component
- Add docs for Heading and ControlBar components
- Add SDK components documentation
- Add docs for Flex component
- Add Navbar component
- Add github actions workflow check for changes to workflows with 'push' or 'pull_request' trigger types
- Add docs for MeetingProvider and hooks
- Add docs or Label and Portal components
- Add docs for Navbar, Roster and Notification components
- Add notification
Severity
,ActionType
enums to index exports - Add notification
NotificationType
,Action
interfaces to index exports - Add docs for
MeetingControls
- Add introduction documentation
- Add styles around
DeviceSelection
in demo - Add documentation around
DeviceSelection
anduseAudioInputActivityPreview
hook - Add docs for all icon components
- Added documentation for Modal component again, after being reverted
- Add RosterAttendee component, connected MicVolumeIndicator
- Add docs for Themes
- Add theme switcher to demo nav
- Add docs for local devices and meeting status providers
- Add docs for VideoGrid and VideoTile components
- Add
Grid
unit test. - Add a story to display all icons in one place for reference
- Add versioning tag to demo app
- Add third party dependency attributes to NOTICE file
- Add component to manage visibility of controlbar
- Add third party licence text
- Add InfiniteList container component
- Added delay for more consistent animation snapshotting with playwright.
npm run test
script changed to only include /components and /utils- Update prebuild script to trigger git actions on git push event
- Changed relative imports and
MeetingView
to accomodate imports of connected components from library - Updated the
ContentShareControl
with SDK components - Changed
ScreenShare
toContentShare
in library and demo - Update
AudioInputControl
to use hooks and SDK components - Updated end meeting control, meeting controls container in demo app with SDK components
- Changed
Modal
toModalButtonGroup
in ModalButtonGroup component - Changed
endMeeting
to callleaveMeeting
and avoid cleanups with both calls in demoMeetingManager
npm run build:release
will run code style check as part of the build.- Update
RosterHeader
for filtering - Import components relatively using alias
- Update demo app README
- Update
Modal
to SDK Modal component and minor change toCard
component in the demo - Updating demo with basic video grid
- Add enforcement of passing test coverage thresholds.
- Update codestyle script to ignore non-source files within
demo/meeting
app. - Moved components into /ui directory
- Change license from ISC to Apache-2.0
- Move provider, hooks and connected components from demo to library
- Add clear button to input component
- SIP Meeting implementation and related imports
- Update import in
useDevicePermissionStatus
hook - Renamed
MeetingControlsContainer
toMeetingControls
- Changed play, pause icons in
ContentShareControl
to popover actions - Changed IconButton props to accept dynamic width and height
- Changed test script so you can properly test one file
- Changed jest exclude config to exclude playwright tests
- Changed disabled microphone icon prop to muted
- Changed modal size properties to theme object
- Update grid to support active speaker
- Updated prebuild script to ignore CHANGELOG verification for BOT submitted PR's
- Added
npm run build:publish
script - Changed `prebuild:publish' to run npm install prior to running scripts to make sure all dependencies are available
- Update roster with mobile design
- [Desktop only] Integrate navbar, roster toggle in demo
- Take callback for fetching attendees. Take in meeting/attendee info for joining meeting
- Update Home view index file name
- Provide fallback message when no devices are found
- Rename
NotificationProvider
hooks - Update publish github action to deploy storybook documentation
- Remake
AudioActivityPreview
intouseLocalAudioInputActivityPreview
hook - Refactor styles from SDK Component
DeviceSelection
and move them to demo - Moved
ActivityBar
from library to demo, since it seemed more tightly related our demo - Updated package.json to state sdk as peer dependency
- Stop local video, if enabled, when selecting "none" as video input source
- Add volume indicator, stop local video when selecting none as video source
- Add redirection to home on page refresh in demo
- Changed
NotificationGroup
minor styles - Updated VideoTileGrid to take in prop for fallback view. Updated demo meeting view with meeting info
- Use route HOME constant as BASE_URL to replace runtime BASE_URL generation
- Make Microphone red when connection is poor. Adjust MicActivity %s
- Updated Portal storybook documentation to only show documentation without visual documentation
- Change className to include
ch-
prefix for all UI components - Change
data-testid
in some components to maintain consistency - Use MeetingManager to maintain active speakers
- Change storybook layouts so that there's a more consistent look
- Add
useMeetingStatus
hook - Renamed
MeetingManager
subscriptions for consistency - Improve Storybook documentaions according to the guidance of technical writing
- NOTICE includes correct copyright text
- LICENSE includes full Apache license
- Update typescript build tree to exclude test-helper and demo's folder from library build process
- Changed hard coded labels in components to take labels in prop and updated related docs
- Updated
ContentTile
static color to refer theme color
- Removed active state button tests.
- 'styled-reset' package due to license incompatibility
- Reverted
Add docs for the Modal component
commit to fix CSSProperties compatibility error - Removed
MeetingStatusProvider
- Removed minor version bumping for each merge.
- Fixed prebuild for PR and Push
- Fix react state update errors for
MeetingStatusProvider
,MeetingRoster
andMeetingJoinDetails
- Fix roster showing stale attendees
AudioActivityPreview
to show mic progress track on audio input device change- Fixed release execution bug
- Fixed bug in verdaccio clean up
- Fix demo application not allowing to select video / audio via popover
- Fixed some demo layout issues
- Fixed issue in demo when reselecting a device in the control bar
- Fix roster not including attendees when rejoining meeting
- Fix mobile portrait local video being too large
- Fix content share not resetting when leaving a meeting
- Fix demo form, add display names back to form components
- Fix race condition where content share would stop but grey bg would persist
- Fix end meeting
- Fix video grid, input bugs on iOS
- Fix microphone poorConnection SVG warning in devtools
- Fix search input snapshot tests for new layout