From 8079480f1c2aa51eaa76e0fd7a138e1cdc28cd03 Mon Sep 17 00:00:00 2001 From: bang9 Date: Mon, 29 Apr 2024 11:05:49 +0900 Subject: [PATCH 1/2] chore: remove unused mdx files --- .gitignore | 5 +- docs/TOC.mdx | 105 ---------------------------------- docs/core-components.mdx | 0 docs/features.mdx | 2 - docs/introduction.mdx | 120 --------------------------------------- docs/localization.mdx | 0 docs/modules.mdx | 0 docs/themes.mdx | 0 docs/ui-components.mdx | 0 9 files changed, 4 insertions(+), 228 deletions(-) delete mode 100644 docs/TOC.mdx delete mode 100644 docs/core-components.mdx delete mode 100644 docs/features.mdx delete mode 100644 docs/introduction.mdx delete mode 100644 docs/localization.mdx delete mode 100644 docs/modules.mdx delete mode 100644 docs/themes.mdx delete mode 100644 docs/ui-components.mdx diff --git a/.gitignore b/.gitignore index 3087e015a..1d79fb3ee 100644 --- a/.gitignore +++ b/.gitignore @@ -36,4 +36,7 @@ yarn-error.log* .idea/ -*storybook.log \ No newline at end of file +*storybook.log + +# docs +/docs diff --git a/docs/TOC.mdx b/docs/TOC.mdx deleted file mode 100644 index c15f3b5d9..000000000 --- a/docs/TOC.mdx +++ /dev/null @@ -1,105 +0,0 @@ -# Table of Contents - -* Introduction - * Overview - * Send first message - * Migration guide - * Change log (tentative location) -* Features -* Core components - * Overview - * SendbirdProvider - * SendbirdSelectors - * useSendbirdStateContext - * withSendBird() -* Localization - * Overview - * Text - * Date -* Modules - * Overview - * ChannelList - * ChannelSettings - * Channel - * OpenChannel - * OpenChannelSettings - * MessageSearch - * CreateChannel - * EditUserProfile -* UI components - * Overview -* Themes - * Overview - * Style -* API reference - link to API reference provided by engineers - -Introduction -What is UIKIt? -How is it different from Chat SDK? -What should users expect? - -Learn about UIKit -UIKit 더 알아보기 -기본 구조 설명/ UIKit architecture explanation + diagram -Core components -Brief description of what the core components are -Modules -Brief description of what modules are and how to customize them -UI Components -Brief description of what UI components are - -Features -A features table - -Feature -Description -Channel type -Typing indicator - - -Group channel -Read receipt - - -Group channel -Delivery receipt - - -Group channel -File sharing - - -Open channel, Group channel -Unread message counts - - -Group channel -Reactions - - -Group channel -Message search - - -Group channel -Message threading - - -Group channel -Moderation - - -Group channel - - -Channel types -Brief sentence or two on what kind of channel types we offer and link to Chat SDK docs - -Core components -What are core components? -What do core components do? How do you initialize/implement them? -Modules -What are modules? -What do modules do? How do you initialize/implement each module? -Explanation on the architecture of modules -UI Components diff --git a/docs/core-components.mdx b/docs/core-components.mdx deleted file mode 100644 index e69de29bb..000000000 diff --git a/docs/features.mdx b/docs/features.mdx deleted file mode 100644 index 99a5481b3..000000000 --- a/docs/features.mdx +++ /dev/null @@ -1,2 +0,0 @@ -# Features - diff --git a/docs/introduction.mdx b/docs/introduction.mdx deleted file mode 100644 index 36f37f893..000000000 --- a/docs/introduction.mdx +++ /dev/null @@ -1,120 +0,0 @@ -# Introduction - -### Overview - -Sendbird UIKit for React is a set of prebuilt UI components that allows you to easily craft an in-app chat with all -the essential messaging features. Our development kit includes light and dark themes, text fonts, colors and more. -You can customize these components to create an interactive messaging interface unique to your brand identity. - -Sendbird UIKit supports both open channels and group channels. -Follow the guide below to start sending a message from scratch with React. -> Note: This library isn't designed to work with other frameworks such as Vue or Angular. - -### Requirements - -The dependencies for UIKit for React are: - -* React 16.8.0 or higher -* React DOM 16.8.0 or higher -* Sendbird Chat SDK for JavaScript 3.1 or higher -* css-vars-ponyfill 2.3.2 -* date-fns 2.16.1 - -System Requirements: -* nodejs 14 or higher -* npm or yarn latest versions - -### Supported browsers - -| Browser | Supported versions | -|---------|--------------------| -| Chrome | Modern Versions | -| Firefox | Modern Versions | -| Safari | 11 or higher | -| Edge | 13 or higher | - -### Send first message - -##### Before you start -Before installing Sendbird Chat SDK, you need to create a Sendbird application on the Sendbird Dashboard, which comprises everything required in a chat service including users, messages, and channels. You will need the App ID of your Sendbird application when initializing the Chat SDK. -> Note: Each Sendbird application can be integrated with a single client app. Within the same application, users can communicate with each other across all platforms, whether they are on mobile devices or on the web. - -You can start building a modern messaging experience in your app by first installing Sendbird UIKit. This developer kit is an add-on feature to Sendbird Chat SDK so installing it will also install the core Chat SDK. - -##### Step 1 - -Install UIKit -You can install UIKit for React through -npm: `npm install sendbird-uikit --save` - -Enter the following code on the command line with npm. -The minimum requirements listed above must be installed on your system to use npm. - -When using yarn, enter the following command: `yarn add sendbird-uikit` - -Next, import UIKit components to your app. - -``` -import SendBirdProvider from "sendbird-uikit/SendbirdProvider"; - -import "sendbird-uikit/dist/index.css"; -``` - -##### Step 2 - -Implement UIKit to your web app -Once you're done installing Sendbird UIKit, you can now implement it to your web app by using the -App component. The App component is a group of essential UI components needed to build a functioning chat interface. -You can also use our common components to your web app if you wish to make the interface more tailored to your needs. - -Add the following pattern to use the App component: - -``` -import SendBirdApp from "sendbird-uikit/App"; -import "sendbird-uikit/dist/index.css"; - -const App = () => { - return ( -
- -
- ); -}; - -Specify the dimensions of your chat interface. - -.App { - Font-family: sans-serif; - Text-align: center; - height: 100vh; - width: 100vw; -} - -``` - -##### Step 3 - -Send your first message -You can now run the app to send a message. First, create a group channel by clicking on the icon in the top-left corner. Then, you can select users you wish to invite as members to your channel. -Once the channel has been created, enter your first message and send. - -You've successfully sent your first message with Sendbird. - -### Use UIKit with SSR frameworks - -You can use UIKit with SSR frameworks such as Gatsby or NextJS by importing it dynamically on the client side. These frameworks support the following plug-in and workflow: - -* [Loadable components](https://www.gatsbyjs.org/docs/using-client-side-only-packages/#workaround-3-load-client-side-dependent-components-with-loadable-components) of Gatsby -* [Dynamic imports](https://nextjs.org/docs/advanced-features/dynamic-import#with-no-ssr) of NextJS -You may refer to NextJS [sample](https://codesandbox.io/s/cocky-hawking-h3zbs?file=/components/Chat.jsx:97-157) for better understanding. You will need your own Sendbird application ID and user ID to use the sample. - - -### Migration guide -Todo - -### Change log (tentative location) -Todo diff --git a/docs/localization.mdx b/docs/localization.mdx deleted file mode 100644 index e69de29bb..000000000 diff --git a/docs/modules.mdx b/docs/modules.mdx deleted file mode 100644 index e69de29bb..000000000 diff --git a/docs/themes.mdx b/docs/themes.mdx deleted file mode 100644 index e69de29bb..000000000 diff --git a/docs/ui-components.mdx b/docs/ui-components.mdx deleted file mode 100644 index e69de29bb..000000000 From f967bab728b0eb4405eb52b32595185dd46e7e66 Mon Sep 17 00:00:00 2001 From: bang9 Date: Mon, 29 Apr 2024 11:41:53 +0900 Subject: [PATCH 2/2] feat: add build docs scripts --- package.json | 2 + scripts/build_docs.mjs | 47 ++++++++++ ts_debt/README.md | 2 - ts_debt/story_files.yml | 72 -------------- typedoc.json | 203 ++++++++++++++++++++++++++++++++++++++++ yarn.lock | 75 ++++++++++++++- 6 files changed, 326 insertions(+), 75 deletions(-) create mode 100644 scripts/build_docs.mjs delete mode 100644 ts_debt/story_files.yml create mode 100644 typedoc.json diff --git a/package.json b/package.json index 91adb1996..b92f73606 100644 --- a/package.json +++ b/package.json @@ -53,6 +53,7 @@ "storybook": "storybook dev -p 6006", "start:storybook": "yarn storybook", "start:apps:testing": "yarn workspace @uikit-app/testing dev", + "build:docs": "node ./scripts/build_docs.mjs", "build:storybook": "storybook build", "build:apps:testing": "yarn workspace @uikit-app/testing build" }, @@ -137,6 +138,7 @@ "stylelint": "^13.0.0", "stylelint-config-sass-guidelines": "^7.0.0", "ts-pattern": "^4.2.2", + "typedoc": "^0.25.13", "typescript": "^5.4.5", "vite": "^5.1.5", "vite-plugin-svgr": "^4.2.0" diff --git a/scripts/build_docs.mjs b/scripts/build_docs.mjs new file mode 100644 index 000000000..b0d68984d --- /dev/null +++ b/scripts/build_docs.mjs @@ -0,0 +1,47 @@ +import { execSync } from 'child_process'; +import { promises as fs } from 'fs'; +import moduleExports from '../rollup.module-exports.mjs'; + +function removeDuplicates(items) { + return [...new Set(items)]; +} +const order = [ + 'src/modules/App', + 'src/modules/GroupChannel', + 'src/modules/GroupChannelList', + 'src/modules', + 'src/ui', + 'src/hooks', + 'src/utils', +]; +async function updateEntryPoints() { + const modulePaths = removeDuplicates(Object.values(moduleExports)).sort((a, b) => { + const aOrder = order.findIndex((o) => a.startsWith(o)) ?? -1; + const bOrder = order.findIndex((o) => b.startsWith(o)) ?? -1; + if (aOrder === -1) return 1; + if (bOrder === -1) return -1; + if (aOrder !== bOrder) return aOrder - bOrder; + return a.localeCompare(b); + }); + const typedoc = JSON.parse(await fs.readFile('typedoc.json', 'utf-8')); + typedoc.entryPoints = modulePaths; + await fs.writeFile('typedoc.json', JSON.stringify(typedoc, null, 2)); +} + +function execTypedoc() { + execSync('npx typedoc', (error, stdout, stderr) => { + if (error) { + console.error(`exec error: ${error}`); + return; + } + console.log(`stdout: ${stdout}`); + console.error(`stderr: ${stderr}`); + }); +} + +async function run() { + await updateEntryPoints(); + execTypedoc(); +} + +run(); diff --git a/ts_debt/README.md b/ts_debt/README.md index 73c31e058..f38b3c0d6 100644 --- a/ts_debt/README.md +++ b/ts_debt/README.md @@ -1,8 +1,6 @@ This directory has a list of remaining files to be migrated: They are split into three categories: -* Source files (high priority) -* Story files (medium priority) * Test files (low priority) See the list in respective .yml files. diff --git a/ts_debt/story_files.yml b/ts_debt/story_files.yml deleted file mode 100644 index 91ecc3371..000000000 --- a/ts_debt/story_files.yml +++ /dev/null @@ -1,72 +0,0 @@ -./modules/App/stories/index.stories.js: index.stories.js -./modules/App/stories/integrated.stories.js: integrated.stories.js -./modules/App/stories/theme.stories.js: theme.stories.js -./modules/ChannelList/stories/index.stories.js: index.stories.js -./modules/OpenChannelApp/stories/index.stories.js: index.stories.js -./modules/OpenChannelApp/stories/openchannel-mobile.stories.js: openchannel-mobile.stories.js -./modules/OpenChannelList/stories/index.stories.js: index.stories.js -./ui/Accordion/stories/Accordion.stories.js: Accordion.stories.js -./ui/Accordion/stories/AccordionGroup.stories.js: AccordionGroup.stories.js -./ui/AdminMessage/stories/AdminMessage.stories.js: AdminMessage.stories.js -./ui/Avatar/stories/MutedAvatarOverlay.stories.js: MutedAvatarOverlay.stories.js -./ui/Avatar/stories/index.stories.js: index.stories.js -./ui/Badge/stories/Badge.stories.js: Badge.stories.js -./ui/BottomSheet/stories/BottomSheet.stories.js: BottomSheet.stories.js -./ui/Button/stories/Button.stories.js: Button.stories.js -./ui/ChannelAvatar/stories/ChannelAvatar.stories.js: ChannelAvatar.stories.js -./ui/ChannelAvatar/stories/OpenChannelAvatar.stories.js: OpenChannelAvatar.stories.js -./ui/Checkbox/stories/Checkbox.stories.js: Checkbox.stories.js -./ui/ConnectionStatus/stories/ConnectionStatus.stories.js: ConnectionStatus.stories.js -./ui/ContextMenu/stories/ContextMenu.stories.js: ContextMenu.stories.js -./ui/DateSeparator/stories/DateSeparator.stories.js: DateSeparator.stories.js -./ui/Docs/stories/Doc.stories.js: Doc.stories.js -./ui/EmojiReactions/stories/EmojiReactions.stories.js: EmojiReactions.stories.js -./ui/FileMessageItemBody/stories/FileMessageItemBody.stories.js: FileMessageItemBody.stories.js -./ui/FileViewer/stories/FileViewer.stories.js: FileViewer.stories.js -./ui/Icon/stories/Icon.stories.js: Icon.stories.js -./ui/IconButton/stories/index.stories.js: index.stories.js -./ui/ImageRenderer/stories/ImageRenderer.stories.js: ImageRenderer.stories.js -./ui/Input/stories/Input.stories.js: Input.stories.js -./ui/Label/stories/index.stories.js: index.stories.js -./ui/LegacyChannelHeader/stories/index.stories.js: index.stories.js -./ui/LegacyEditUserProfile/stories/EditUserProfile.stories.js: EditUserProfile.stories.js -./ui/LinkLabel/stories/LinkLabel.stories.js: LinkLabel.stories.js -./ui/Loader/stories/Loader.stories.js: Loader.stories.js -./ui/MentionLabel/stories/MentionLabel.stories.js: MentionLabel.stories.js -./ui/MentionUserLabel/stories/MentionUserLabel.stories.js: MentionUserLabel.stories.js -./ui/MessageContent/stories/MessageContent.stories.js: MessageContent.stories.js -./ui/MessageInput/stories/index.stories.js: index.stories.js -./ui/MessageItemMenu/stories/MessageItemMenu.stories.js: MessageItemMenu.stories.js -./ui/MessageItemReactionMenu/stories/MessageItemReactionMenu.stories.js: MessageItemReactionMenu.stories.js -./ui/MessageSearchFileItem/stories/MessageSearchFileItem.stories.js: MessageSearchFileItem.stories.js -./ui/MessageSearchItem/stories/MessageSearchItem.stories.js: MessageSearchItem.stories.js -./ui/MessageStatus/stories/MessageStatus.stories.js: MessageStatus.stories.js -./ui/OGMessageItemBody/stories/OGMessageItemBody.stories.js: OGMessageItemBody.stories.js -./ui/OpenChannelAdminMessage/stories/OpenChannelAdminMessage.stories.js: OpenChannelAdminMessage.stories.js -./ui/OpenchannelConversationHeader/stories/OpenchannelConversationHeader.stories.js: OpenchannelConversationHeader.stories.js -./ui/OpenchannelFileMessage/stories/OpenchannelFileMessage.stories.js: OpenchannelFileMessage.stories.js -./ui/OpenchannelOGMessage/stories/OpenchannelOGMessage.stories.js: OpenchannelOGMessage.stories.js -./ui/OpenchannelThumbnailMessage/stories/OpenchannelThumbnailMessage.stories.js: OpenchannelThumbnailMessage.stories.js -./ui/OpenchannelUserMessage/stories/OpenchannelUserMessage.stories.js: OpenchannelUserMessage.stories.js -./ui/PlaceHolder/stories/PlaceHolder.stories.js: PlaceHolder.stories.js -./ui/PlaybackTime/stories/PlaybackTime.stories.js: PlaybackTime.stories.js -./ui/ProgressBar/stories/ProgressBar.stories.js: ProgressBar.stories.js -./ui/QuoteMessage/stories/QuoteMessage.stories.js: QuoteMessage.stories.js -./ui/QuoteMessageInput/stories/QuoteMessageInput.stories.js: QuoteMessageInput.stories.js -./ui/ReactionBadge/stories/ReactionBadge.stories.js: ReactionBadge.stories.js -./ui/ReactionButton/stories/ReactionButton.stories.js: ReactionButton.stories.js -./ui/SortByRow/stories/SortByRow.stories.js: SortByRow.stories.js -./ui/TextButton/stories/TextButton.stories.js: TextButton.stories.js -./ui/TextMessageItemBody/stories/TextMessageItemBody.stories.js: TextMessageItemBody.stories.js -./ui/ThreadReplies/stories/ThreadReplies.stories.js: ThreadReplies.stories.js -./ui/ThumbnailMessageItemBody/stories/ThumbnailMessageItemBody.stories.js: ThumbnailMessageItemBody.stories.js -./ui/Toggle/stories/Toggle.stories.js: Toggle.stories.js -./ui/Tooltip/stories/Tooltip.stories.js: Tooltip.stories.js -./ui/TooltipWrapper/stories/TooltipWrapper.stories.js: TooltipWrapper.stories.js -./ui/UnknownMessageItemBody/stories/UnknownMessageItemBody.stories.js: UnknownMessageItemBody.stories.js -./ui/UserListItem/stories/UserListItem.stories.js: UserListItem.stories.js -./ui/UserProfile/stories/UserProfile.stories.js: UserProfile.stories.js -./ui/VoiceMessageInput/stories/VoiceMessageInput.stories.js: VoiceMessageInput.stories.js -./ui/VoiceMessageItemBody/stories/VoiceMessageItemBody.stories.js: VoiceMessageItemBody.stories.js -./ui/Word/stories/Word.stories.js: Word.stories.js -./ui/stories/index.stories.js: index.stories.js diff --git a/typedoc.json b/typedoc.json new file mode 100644 index 000000000..ae07b7cc3 --- /dev/null +++ b/typedoc.json @@ -0,0 +1,203 @@ +{ + "name": "Sendbird UIKit React", + "entryPoints": [ + "src/modules/App/index.tsx", + "src/modules/GroupChannel/components/FileViewer/index.tsx", + "src/modules/GroupChannel/components/FrozenNotification/index.tsx", + "src/modules/GroupChannel/components/GroupChannelHeader/index.tsx", + "src/modules/GroupChannel/components/GroupChannelUI/index.tsx", + "src/modules/GroupChannel/components/Message/index.tsx", + "src/modules/GroupChannel/components/MessageInputWrapper/index.tsx", + "src/modules/GroupChannel/components/MessageList/getMessagePartsInfo.ts", + "src/modules/GroupChannel/components/MessageList/index.tsx", + "src/modules/GroupChannel/components/RemoveMessageModal/index.tsx", + "src/modules/GroupChannel/components/SuggestedMentionList/index.tsx", + "src/modules/GroupChannel/components/SuggestedReplies/index.tsx", + "src/modules/GroupChannel/components/TypingIndicator.tsx", + "src/modules/GroupChannel/components/UnreadCount/index.tsx", + "src/modules/GroupChannel/context/GroupChannelProvider.tsx", + "src/modules/GroupChannel/index.tsx", + "src/modules/GroupChannelList/components/AddGroupChannel/index.tsx", + "src/modules/GroupChannelList/components/GroupChannelListHeader/index.tsx", + "src/modules/GroupChannelList/components/GroupChannelListItem/index.tsx", + "src/modules/GroupChannelList/components/GroupChannelListUI/index.tsx", + "src/modules/GroupChannelList/components/GroupChannelPreviewAction.tsx", + "src/modules/GroupChannelList/context/GroupChannelListProvider.tsx", + "src/modules/GroupChannelList/index.tsx", + "src/modules/Channel/components/ChannelHeader/index.tsx", + "src/modules/Channel/components/ChannelUI/index.tsx", + "src/modules/Channel/components/FileViewer/index.tsx", + "src/modules/Channel/components/FrozenNotification/index.tsx", + "src/modules/Channel/components/Message/index.tsx", + "src/modules/Channel/components/MessageInputWrapper/index.tsx", + "src/modules/Channel/components/MessageList/index.tsx", + "src/modules/Channel/components/RemoveMessageModal/index.tsx", + "src/modules/Channel/components/SuggestedMentionList/index.tsx", + "src/modules/Channel/components/TypingIndicator.tsx", + "src/modules/Channel/components/UnreadCount/index.tsx", + "src/modules/Channel/context/ChannelProvider.tsx", + "src/modules/Channel/context/hooks/useHandleUploadFiles.tsx", + "src/modules/Channel/context/hooks/useInitialMessagesFetch.ts", + "src/modules/Channel/index.tsx", + "src/modules/ChannelList/components/AddChannel/index.tsx", + "src/modules/ChannelList/components/ChannelListHeader/index.tsx", + "src/modules/ChannelList/components/ChannelListUI/index.tsx", + "src/modules/ChannelList/components/ChannelPreview/index.tsx", + "src/modules/ChannelList/components/ChannelPreviewAction.tsx", + "src/modules/ChannelList/context/ChannelListProvider.tsx", + "src/modules/ChannelList/index.tsx", + "src/modules/ChannelSettings/components/ChannelProfile/index.tsx", + "src/modules/ChannelSettings/components/ChannelSettingsUI/ChannelSettingsHeader.tsx", + "src/modules/ChannelSettings/components/ChannelSettingsUI/index.tsx", + "src/modules/ChannelSettings/components/EditDetailsModal/index.tsx", + "src/modules/ChannelSettings/components/LeaveChannel/index.tsx", + "src/modules/ChannelSettings/components/ModerationPanel/index.tsx", + "src/modules/ChannelSettings/components/UserListItem/index.tsx", + "src/modules/ChannelSettings/components/UserPanel/index.tsx", + "src/modules/ChannelSettings/context/ChannelSettingsProvider.tsx", + "src/modules/ChannelSettings/index.tsx", + "src/modules/CreateChannel/components/CreateChannelUI/index.tsx", + "src/modules/CreateChannel/components/InviteUsers/index.tsx", + "src/modules/CreateChannel/components/SelectChannelType.tsx", + "src/modules/CreateChannel/context/CreateChannelProvider.tsx", + "src/modules/CreateChannel/index.tsx", + "src/modules/CreateOpenChannel/components/CreateOpenChannelUI/index.tsx", + "src/modules/CreateOpenChannel/context/CreateOpenChannelProvider.tsx", + "src/modules/CreateOpenChannel/index.tsx", + "src/modules/EditUserProfile/components/EditUserProfileUI/index.tsx", + "src/modules/EditUserProfile/context/EditUserProfileProvider.tsx", + "src/modules/EditUserProfile/index.tsx", + "src/modules/Message/context/MessageProvider.tsx", + "src/modules/Message/hooks/useDirtyGetMentions.ts", + "src/modules/MessageSearch/components/MessageSearchUI/index.tsx", + "src/modules/MessageSearch/context/MessageSearchProvider.tsx", + "src/modules/MessageSearch/index.tsx", + "src/modules/OpenChannel/components/FrozenChannelNotification/index.tsx", + "src/modules/OpenChannel/components/OpenChannelHeader/index.tsx", + "src/modules/OpenChannel/components/OpenChannelInput/index.tsx", + "src/modules/OpenChannel/components/OpenChannelMessage/index.tsx", + "src/modules/OpenChannel/components/OpenChannelMessageList/index.tsx", + "src/modules/OpenChannel/components/OpenChannelUI/index.tsx", + "src/modules/OpenChannel/context/OpenChannelProvider.tsx", + "src/modules/OpenChannel/index.tsx", + "src/modules/OpenChannelList/components/OpenChannelListUI/index.tsx", + "src/modules/OpenChannelList/components/OpenChannelPreview/index.tsx", + "src/modules/OpenChannelList/context/OpenChannelListProvider.tsx", + "src/modules/OpenChannelList/index.tsx", + "src/modules/OpenChannelSettings/components/EditDetailsModal.tsx", + "src/modules/OpenChannelSettings/components/OpenChannelProfile/index.tsx", + "src/modules/OpenChannelSettings/components/OpenChannelSettingsUI/index.tsx", + "src/modules/OpenChannelSettings/components/OperatorUI/index.tsx", + "src/modules/OpenChannelSettings/components/ParticipantUI/index.tsx", + "src/modules/OpenChannelSettings/context/OpenChannelSettingsProvider.tsx", + "src/modules/OpenChannelSettings/index.tsx", + "src/modules/Thread/components/ParentMessageInfo/index.tsx", + "src/modules/Thread/components/ParentMessageInfo/ParentMessageInfoItem.tsx", + "src/modules/Thread/components/ThreadHeader/index.tsx", + "src/modules/Thread/components/ThreadList/index.tsx", + "src/modules/Thread/components/ThreadList/ThreadListItem.tsx", + "src/modules/Thread/components/ThreadMessageInput/index.tsx", + "src/modules/Thread/components/ThreadUI/index.tsx", + "src/modules/Thread/context/ThreadProvider.tsx", + "src/modules/Thread/index.tsx", + "src/modules/Thread/types.tsx", + "src/ui/Accordion/AccordionGroup.tsx", + "src/ui/Accordion/index.tsx", + "src/ui/AdminMessage/index.tsx", + "src/ui/Avatar/index.tsx", + "src/ui/Avatar/MutedAvatarOverlay.tsx", + "src/ui/Badge/index.tsx", + "src/ui/BottomSheet/index.tsx", + "src/ui/Button/index.tsx", + "src/ui/ChannelAvatar/index.tsx", + "src/ui/ChannelAvatar/OpenChannelAvatar.tsx", + "src/ui/Checkbox/index.tsx", + "src/ui/ConnectionStatus/index.tsx", + "src/ui/ContextMenu/index.tsx", + "src/ui/DateSeparator/index.tsx", + "src/ui/EmojiReactions/index.tsx", + "src/ui/FeedbackIconButton/index.tsx", + "src/ui/FileMessageItemBody/index.tsx", + "src/ui/FileViewer/index.tsx", + "src/ui/Icon/index.tsx", + "src/ui/IconButton/index.tsx", + "src/ui/ImageRenderer/index.tsx", + "src/ui/Input/index.tsx", + "src/ui/Label/index.tsx", + "src/ui/LinkLabel/index.tsx", + "src/ui/Loader/index.tsx", + "src/ui/MentionLabel/index.tsx", + "src/ui/MentionUserLabel/index.tsx", + "src/ui/MessageContent/index.tsx", + "src/ui/MessageFeedbackFailedModal/index.tsx", + "src/ui/MessageFeedbackModal/index.tsx", + "src/ui/MessageInput/hooks/usePaste/index.ts", + "src/ui/MessageInput/index.tsx", + "src/ui/MessageItemMenu/index.tsx", + "src/ui/MessageItemReactionMenu/index.tsx", + "src/ui/MessageSearchFileItem/index.tsx", + "src/ui/MessageSearchItem/index.tsx", + "src/ui/MessageStatus/index.tsx", + "src/ui/MessageTemplate/index.tsx", + "src/ui/MobileFeedbackMenu/index.tsx", + "src/ui/Modal/index.tsx", + "src/ui/OGMessageItemBody/index.tsx", + "src/ui/OpenChannelAdminMessage/index.tsx", + "src/ui/OpenchannelConversationHeader/index.tsx", + "src/ui/OpenchannelFileMessage/index.tsx", + "src/ui/OpenchannelOGMessage/index.tsx", + "src/ui/OpenchannelThumbnailMessage/index.tsx", + "src/ui/OpenchannelUserMessage/index.tsx", + "src/ui/PlaceHolder/index.tsx", + "src/ui/PlaybackTime/index.tsx", + "src/ui/ProgressBar/index.tsx", + "src/ui/QuoteMessage/index.tsx", + "src/ui/QuoteMessageInput/index.tsx", + "src/ui/ReactionBadge/index.tsx", + "src/ui/ReactionButton/index.tsx", + "src/ui/SortByRow/index.tsx", + "src/ui/TemplateMessageItemBody/FallbackTemplateMessageItemBody.tsx", + "src/ui/TemplateMessageItemBody/index.tsx", + "src/ui/TemplateMessageItemBody/LoadingTemplateMessageItemBody.tsx", + "src/ui/TextButton/index.tsx", + "src/ui/TextMessageItemBody/index.tsx", + "src/ui/ThreadReplies/index.tsx", + "src/ui/ThumbnailMessageItemBody/index.tsx", + "src/ui/Toggle/index.tsx", + "src/ui/Tooltip/index.tsx", + "src/ui/TooltipWrapper/index.tsx", + "src/ui/TypingIndicatorBubble/index.tsx", + "src/ui/UnknownMessageItemBody/index.tsx", + "src/ui/UserListItem/index.tsx", + "src/ui/UserProfile/index.tsx", + "src/ui/VoiceMessageInput/index.tsx", + "src/ui/VoiceMessageItemBody/index.tsx", + "src/ui/Word/index.tsx", + "src/hooks/useModal/index.tsx", + "src/hooks/useSendbirdStateContext.tsx", + "src/hooks/VoicePlayer/index.tsx", + "src/hooks/VoicePlayer/useVoicePlayer.tsx", + "src/hooks/VoiceRecorder/index.tsx", + "src/hooks/VoiceRecorder/useVoiceRecorder.tsx", + "src/utils/exports/getOutgoingMessageState.ts", + "src/utils/isVoiceMessage.ts", + "src/utils/messages.ts", + "src/index.ts", + "src/_externals/lamejs/lame.all.js", + "src/lib/Sendbird.tsx", + "src/lib/selectors.ts", + "src/lib/SendbirdSdkContext.tsx", + "src/lib/handlers/ConnectionHandler.ts", + "src/lib/handlers/GroupChannelHandler.ts", + "src/lib/handlers/OpenChannelHandler.ts", + "src/lib/handlers/UserEventHandler.ts", + "src/lib/handlers/SessionHandler.ts", + "src/lib/pubSub/topics.ts" + ], + "out": "docs", + "sort": [ + "static-first", + "visibility" + ], + "includeVersion": true +} \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index 0d1f19cb4..6a72d1228 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2725,6 +2725,7 @@ __metadata: stylelint: ^13.0.0 stylelint-config-sass-guidelines: ^7.0.0 ts-pattern: ^4.2.2 + typedoc: ^0.25.13 typescript: ^5.4.5 vite: ^5.1.5 vite-plugin-svgr: ^4.2.0 @@ -4756,6 +4757,13 @@ __metadata: languageName: node linkType: hard +"ansi-sequence-parser@npm:^1.1.0": + version: 1.1.1 + resolution: "ansi-sequence-parser@npm:1.1.1" + checksum: ead5b15c596e8e85ca02951a844366c6776769dcc9fd1bd3a0db11bb21364554822c6a439877fb599e7e1ffa0b5f039f1e5501423950457f3dcb2f480c30b188 + languageName: node + linkType: hard + "ansi-styles@npm:^2.2.1": version: 2.2.1 resolution: "ansi-styles@npm:2.2.1" @@ -10681,6 +10689,13 @@ __metadata: languageName: node linkType: hard +"jsonc-parser@npm:^3.2.0": + version: 3.2.1 + resolution: "jsonc-parser@npm:3.2.1" + checksum: 656d9027b91de98d8ab91b3aa0d0a4cab7dc798a6830845ca664f3e76c82d46b973675bbe9b500fae1de37fd3e81aceacbaa2a57884bf2f8f29192150d2d1ef7 + languageName: node + linkType: hard + "jsonfile@npm:^4.0.0": version: 4.0.0 resolution: "jsonfile@npm:4.0.0" @@ -11018,6 +11033,13 @@ __metadata: languageName: node linkType: hard +"lunr@npm:^2.3.9": + version: 2.3.9 + resolution: "lunr@npm:2.3.9" + checksum: 176719e24fcce7d3cf1baccce9dd5633cd8bdc1f41ebe6a180112e5ee99d80373fe2454f5d4624d437e5a8319698ca6837b9950566e15d2cae5f2a543a3db4b8 + languageName: node + linkType: hard + "lz-string@npm:^1.5.0": version: 1.5.0 resolution: "lz-string@npm:1.5.0" @@ -11156,6 +11178,15 @@ __metadata: languageName: node linkType: hard +"marked@npm:^4.3.0": + version: 4.3.0 + resolution: "marked@npm:4.3.0" + bin: + marked: bin/marked.js + checksum: 0db6817893952c3ec710eb9ceafb8468bf5ae38cb0f92b7b083baa13d70b19774674be04db5b817681fa7c5c6a088f61300815e4dd75a59696f4716ad69f6260 + languageName: node + linkType: hard + "mathml-tag-names@npm:^2.1.3": version: 2.1.3 resolution: "mathml-tag-names@npm:2.1.3" @@ -11403,7 +11434,7 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:^9.0.1, minimatch@npm:^9.0.4": +"minimatch@npm:^9.0.1, minimatch@npm:^9.0.3, minimatch@npm:^9.0.4": version: 9.0.4 resolution: "minimatch@npm:9.0.4" dependencies: @@ -14270,6 +14301,18 @@ __metadata: languageName: node linkType: hard +"shiki@npm:^0.14.7": + version: 0.14.7 + resolution: "shiki@npm:0.14.7" + dependencies: + ansi-sequence-parser: ^1.1.0 + jsonc-parser: ^3.2.0 + vscode-oniguruma: ^1.7.0 + vscode-textmate: ^8.0.0 + checksum: 2aec3b3519df977c4391df9e1825cb496e9a4d7e11395f05a0da77e4fa2f7c3d9d6e6ee94029ac699533017f2b25637ee68f6d39f05f311535c2704d0329b520 + languageName: node + linkType: hard + "side-channel@npm:^1.0.4, side-channel@npm:^1.0.6": version: 1.0.6 resolution: "side-channel@npm:1.0.6" @@ -15518,6 +15561,22 @@ __metadata: languageName: node linkType: hard +"typedoc@npm:^0.25.13": + version: 0.25.13 + resolution: "typedoc@npm:0.25.13" + dependencies: + lunr: ^2.3.9 + marked: ^4.3.0 + minimatch: ^9.0.3 + shiki: ^0.14.7 + peerDependencies: + typescript: 4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x + bin: + typedoc: bin/typedoc + checksum: 703d1f48137300b0ef3df1998a25ae745db3ca0b126f8dd1f7262918f11243a94d24dfc916cdba2baeb5a7d85d5a94faac811caf7f4fa6b7d07144dc02f7639f + languageName: node + linkType: hard + "typescript@npm:^5.2.2, typescript@npm:^5.4.5": version: 5.4.5 resolution: "typescript@npm:5.4.5" @@ -16003,6 +16062,20 @@ __metadata: languageName: node linkType: hard +"vscode-oniguruma@npm:^1.7.0": + version: 1.7.0 + resolution: "vscode-oniguruma@npm:1.7.0" + checksum: 53519d91d90593e6fb080260892e87d447e9b200c4964d766772b5053f5699066539d92100f77f1302c91e8fc5d9c772fbe40fe4c90f3d411a96d5a9b1e63f42 + languageName: node + linkType: hard + +"vscode-textmate@npm:^8.0.0": + version: 8.0.0 + resolution: "vscode-textmate@npm:8.0.0" + checksum: 127780dfea89559d70b8326df6ec344cfd701312dd7f3f591a718693812b7852c30b6715e3cfc8b3200a4e2515b4c96f0843c0eacc0a3020969b5de262c2a4bb + languageName: node + linkType: hard + "w3c-xmlserializer@npm:^4.0.0": version: 4.0.0 resolution: "w3c-xmlserializer@npm:4.0.0"