This repository has been archived by the owner on Aug 30, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 17
/
Copy pathChannelSettings.js.map
1 lines (1 loc) · 144 KB
/
ChannelSettings.js.map
1
{"version":3,"file":"ChannelSettings.js","sources":["../src/smart-components/ChannelSettings/components/EditDetails.jsx","../src/smart-components/ChannelSettings/components/ChannelProfile.jsx","../src/smart-components/ChannelSettings/components/AdminPanel/MembersModal.tsx","../src/smart-components/ChannelSettings/components/MembersAccordion.jsx","../src/smart-components/ChannelSettings/components/UserListItem.tsx","../src/smart-components/ChannelSettings/components/AdminPanel/OperatorsModal.tsx","../src/smart-components/ChannelSettings/components/AdminPanel/AddOperatorsModal.tsx","../src/smart-components/ChannelSettings/components/AdminPanel/OperatorList.tsx","../src/smart-components/ChannelSettings/components/AdminPanel/InviteMembersModal.tsx","../src/smart-components/ChannelSettings/components/AdminPanel/MemberList.tsx","../src/smart-components/ChannelSettings/components/AdminPanel/BannedMembersModal.tsx","../src/smart-components/ChannelSettings/components/AdminPanel/BannedMemberList.tsx","../src/smart-components/ChannelSettings/components/AdminPanel/MutedMembersModal.tsx","../src/smart-components/ChannelSettings/components/AdminPanel/MutedMemberList.tsx","../src/smart-components/ChannelSettings/components/AdminPanel/index.tsx","../src/smart-components/ChannelSettings/index.jsx"],"sourcesContent":["import React, { useState, useRef, useContext } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { LocalizationContext } from '../../../lib/LocalizationContext';\nimport Modal from '../../../ui/Modal';\nimport Input, { InputLabel } from '../../../ui/Input';\nimport Avatar from '../../../ui/Avatar/index';\nimport { Type as ButtonType } from '../../../ui/Button/type';\nimport Label, { LabelColors, LabelTypography } from '../../../ui/Label';\nimport TextButton from '../../../ui/TextButton';\nimport ChannelAvatar from '../../../ui/ChannelAvatar/index';\n\nconst EditDetails = (props) => {\n const {\n onSubmit,\n onCancel,\n channel,\n userId,\n theme,\n } = props;\n const inputRef = useRef(null);\n const formRef = useRef(null);\n const hiddenInputRef = useRef(null);\n const [currentImg, setCurrentImg] = useState(null);\n const [newFile, setNewFile] = useState(null);\n const { stringSet } = useContext(LocalizationContext);\n const title = channel.name;\n return (\n <Modal\n titleText={stringSet.MODAL__CHANNEL_INFORMATION__TITLE}\n submitText={stringSet.BUTTON__SAVE}\n onCancel={onCancel}\n onSubmit={() => {\n if (title !== '' && !inputRef.current.value) {\n if (formRef.current.reportValidity) { // might not work in explorer\n formRef.current.reportValidity();\n }\n return;\n }\n onSubmit(newFile, inputRef.current.value);\n onCancel();\n }}\n type={ButtonType.PRIMARY}\n >\n <form\n className=\"channel-profile-form\"\n ref={formRef}\n onSubmit={(e) => { e.preventDefault(); }}\n >\n <div className=\"channel-profile-form__img-section\">\n <InputLabel>\n {stringSet.MODAL__CHANNEL_INFORMATION__CHANNEL_IMAGE}\n </InputLabel>\n <div className=\"channel-profile-form__avatar\">\n {\n currentImg\n ? (\n <Avatar\n height=\"80px\"\n width=\"80px\"\n src={currentImg}\n />\n ) : (\n <ChannelAvatar\n height={80}\n width={80}\n channel={channel}\n userId={userId}\n theme={theme}\n />\n )\n }\n </div>\n <input\n ref={hiddenInputRef}\n type=\"file\"\n accept=\"image/gif, image/jpeg, image/png\"\n style={{ display: 'none' }}\n onChange={(e) => {\n setCurrentImg(URL.createObjectURL(e.target.files[0]));\n setNewFile(e.target.files[0]);\n hiddenInputRef.current.value = '';\n }}\n />\n <TextButton\n className=\"channel-profile-form__avatar-button\"\n onClick={() => hiddenInputRef.current.click()}\n notUnderline\n >\n <Label type={LabelTypography.BUTTON_1} color={LabelColors.PRIMARY}>\n {stringSet.MODAL__CHANNEL_INFORMATION__UPLOAD}\n </Label>\n </TextButton>\n </div>\n <div className=\"channel-profile-form__name-section\">\n <InputLabel>\n {stringSet.MODAL__CHANNEL_INFORMATION__CHANNEL_NAME}\n </InputLabel>\n <Input\n required={title !== ''}\n name=\"channel-profile-form__name\"\n ref={inputRef}\n value={title}\n placeHolder={stringSet.MODAL__CHANNEL_INFORMATION__INPUT__PLACE_HOLDER}\n />\n </div>\n </form>\n </Modal>\n );\n};\n\nEditDetails.propTypes = {\n onSubmit: PropTypes.func.isRequired,\n onCancel: PropTypes.func.isRequired,\n channel: PropTypes.shape({\n name: PropTypes.string,\n }).isRequired,\n userId: PropTypes.string.isRequired,\n theme: PropTypes.string.isRequired,\n};\n\nexport default EditDetails;\n","import React, { useState, useContext } from 'react';\nimport PropTypes from 'prop-types';\n\nimport './channel-profile.scss';\n\nimport { LocalizationContext } from '../../../lib/LocalizationContext';\nimport Label, { LabelColors, LabelTypography } from '../../../ui/Label';\nimport EditDetailsModal from './EditDetails';\nimport TextButton from '../../../ui/TextButton';\nimport ChannelAvatar from '../../../ui/ChannelAvatar/index';\n\nconst ChannelProfile = (props) => {\n const {\n disabled,\n channel,\n userId,\n theme,\n onChannelInfoChange,\n } = props;\n const [showModal, setShowModal] = useState(false);\n const { stringSet } = useContext(LocalizationContext);\n\n const getChannelName = () => {\n if (channel && channel.name && channel.name !== 'Group Channel') {\n return channel.name;\n }\n if (channel && (channel.name === 'Group Channel' || !channel.name)) {\n return channel.members.map((member) => member.nickname || stringSet.NO_NAME).join(', ');\n }\n return stringSet.NO_TITLE;\n };\n\n return (\n <div className=\"sendbird-channel-profile\">\n <div className=\"sendbird-channel-profile--inner\">\n <div className=\"sendbird-channel-profile__avatar\">\n <ChannelAvatar\n channel={channel}\n userId={userId}\n theme={theme}\n width={80}\n height={80}\n />\n </div>\n <Label\n className=\"sendbird-channel-profile__title\"\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {getChannelName()}\n </Label>\n <TextButton\n disabled={disabled}\n className=\"sendbird-channel-profile__edit\"\n onClick={() => {\n if (disabled) { return; }\n setShowModal(true);\n }}\n notUnderline\n >\n <Label\n type={LabelTypography.BUTTON_1}\n color={disabled ? LabelColors.ONBACKGROUND_2 : LabelColors.PRIMARY}\n >\n {stringSet.CHANNEL_SETTING__PROFILE__EDIT}\n </Label>\n </TextButton>\n {\n showModal && (\n <EditDetailsModal\n onCancel={() => setShowModal(false)}\n onSubmit={onChannelInfoChange}\n channel={channel}\n userId={userId}\n theme={theme}\n />\n )\n }\n </div>\n </div>\n );\n};\n\nChannelProfile.propTypes = {\n channel: PropTypes.shape({\n name: PropTypes.string,\n members: PropTypes.arrayOf(\n PropTypes.shape({\n nickname: PropTypes.string,\n }),\n ),\n }).isRequired,\n userId: PropTypes.string.isRequired,\n theme: PropTypes.string,\n disabled: PropTypes.bool,\n onChannelInfoChange: PropTypes.func,\n};\n\nChannelProfile.defaultProps = {\n theme: 'light',\n disabled: false,\n onChannelInfoChange: () => { },\n};\n\nexport default ChannelProfile;\n","import React, {\n ReactElement,\n useEffect,\n useState,\n} from 'react'\n\nimport { SendbirdTypes } from '../../../../types';\n\nimport Modal from '../../../../ui/Modal';\nimport UserListItem from '../../../../ui/UserListItem';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\nimport { noop } from '../../../../utils/utils';\n\ninterface Props {\n hideModal(): void;\n currentUser?: string;\n channel: SendbirdTypes[\"GroupChannel\"];\n}\n\nexport default function MembersModal({\n hideModal,\n channel,\n currentUser,\n}: Props): ReactElement {\n const [members, setMembers] = useState([]);\n const [memberQuery, setMemberQuery] = useState(null);\n\n useEffect(() => {\n const memberListQuery = channel.createMemberListQuery();\n memberListQuery.limit = 20;\n memberListQuery.next((members, error) => {\n if (error) {\n return;\n }\n setMembers(members);\n });\n setMemberQuery(memberListQuery);\n }, [])\n return (\n <div>\n <Modal\n hideFooter\n onCancel={() => hideModal()}\n onSubmit={noop}\n titleText=\"All Members\"\n >\n <div\n className=\"sendbird-more-members__popup-scroll\"\n onScroll={(e) => {\n const { hasNext } = memberQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n\n if (hasNext && fetchMore) {\n memberQuery.next((o, error) => {\n if (error) {\n return;\n }\n setMembers([\n ...members,\n ...o,\n ])\n });\n }\n }}\n >\n { members.map((member) => (\n <UserListItem\n user={member}\n key={member.userId}\n currentUser={currentUser}\n action={({ parentRef, actionRef }) => (\n <>\n {channel.myRole === 'operator' && (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <IconButton\n className=\"sendbird-user-message__more__menu\"\n width=\"32px\"\n height=\"32px\"\n onClick={toggleDropdown}\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.MORE}\n fillColor={IconColors.CONTENT_INVERSE}\n />\n </IconButton>\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentContainRef={parentRef}\n parentRef={actionRef} // for catching location(x, y) of MenuItems\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n if ((member.role !== 'operator')) {\n channel.addOperators([member.userId], () => {\n setMembers(members.map(m => {\n if(m.userId === member.userId) {\n return {\n ...member,\n role: 'operator',\n };\n }\n return m;\n }));\n closeDropdown();\n });\n } else {\n channel.removeOperators([member.userId], () => {\n setMembers(members.map(m => {\n if(m.userId === member.userId) {\n return {\n ...member,\n role: '',\n };\n }\n return m;\n }));\n closeDropdown();\n });\n }\n }}\n >\n { member.role !== 'operator' ? 'Promote to operator' : 'Demote operator'}\n </MenuItem>\n {\n // No muted members in broadcast channel\n !channel.isBroadcast && (\n <MenuItem\n onClick={() => {\n if (member.isMuted) {\n channel.unmuteUser(member, () => {\n setMembers(members.map(m => {\n if(m.userId === member.userId) {\n return {\n ...member,\n isMuted: false,\n };\n }\n return m;\n }));\n closeDropdown();\n })\n } else {\n channel.muteUser(member, () => {\n setMembers(members.map(m => {\n if(m.userId === member.userId) {\n return {\n ...member,\n isMuted: true,\n };\n }\n return m;\n }));\n closeDropdown();\n });\n }\n }}\n >\n { member.isMuted ? 'Unmute' : 'Mute' }\n </MenuItem>\n )\n }\n <MenuItem\n onClick={() => {\n channel.banUser(member, -1, '', () => {\n setMembers(members.filter(({ userId }) => {\n return userId !== member.userId;\n }));\n });\n }}\n >\n Ban\n </MenuItem>\n </MenuItems>\n )}\n />\n )}\n </>\n )}\n />\n ))}\n </div>\n </Modal>\n </div>\n );\n}\n","import React, { useState, useRef, useContext } from 'react';\nimport PropTypes from 'prop-types';\n\nimport './members-accordion.scss';\n\nimport { LocalizationContext } from '../../../lib/LocalizationContext';\nimport { UserProfileContext } from '../../../lib/UserProfileContext';\nimport Button, { ButtonTypes, ButtonSizes } from '../../../ui/Button';\nimport Avatar from '../../../ui/Avatar/index';\nimport Label, { LabelTypography, LabelColors } from '../../../ui/Label';\nimport InviteMembers from '../../InviteMembers';\nimport MembersModal from './AdminPanel/MembersModal';\nimport UserProfile from '../../../ui/UserProfile';\nimport ContextMenu, { MenuItems } from '../../../ui/ContextMenu';\n\nconst SHOWN_MEMBER_MAX = 10;\n\nconst UserListItem = ({ member = {}, currentUser = '' }) => {\n const avatarRef = useRef(null);\n const {\n disableUserProfile,\n renderUserProfile,\n } = useContext(UserProfileContext);\n const { stringSet } = useContext(LocalizationContext);\n return (\n <div className=\"sendbird-members-accordion__member\">\n <div className=\"sendbird-members-accordion__member-avatar\">\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n onClick={() => {\n if (!disableUserProfile) {\n toggleDropdown();\n }\n }}\n ref={avatarRef}\n src={member.profileUrl}\n width={24}\n height={24}\n />\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n openLeft\n parentRef={avatarRef}\n // for catching location(x, y) of MenuItems\n parentContainRef={avatarRef}\n // for toggling more options(menus & reactions)\n closeDropdown={closeDropdown}\n style={{ paddingTop: 0, paddingBottom: 0 }}\n >\n {\n renderUserProfile\n ? renderUserProfile({\n user: member,\n currentUserId: currentUser,\n close: closeDropdown,\n })\n : (\n <UserProfile\n user={member}\n currentUserId={currentUser}\n onSuccess={closeDropdown}\n />\n )\n }\n </MenuItems>\n )}\n />\n </div>\n <Label type={LabelTypography.SUBTITLE_2} color={LabelColors.ONBACKGROUND_1}>\n {member.nickname || stringSet.NO_NAME}\n {\n (currentUser === member.userId) && (\n stringSet.YOU\n )\n }\n </Label>\n </div>\n );\n};\n\nUserListItem.propTypes = {\n member: PropTypes.shape({\n userId: PropTypes.string,\n profileUrl: PropTypes.string,\n nickname: PropTypes.string,\n }).isRequired,\n currentUser: PropTypes.string.isRequired,\n};\n\nconst MembersAccordion = ({\n channel,\n disabled,\n currentUser,\n userQueryCreator,\n onInviteMembers,\n swapParams,\n}) => {\n const members = channel.members || [];\n const [showMoreModal, setShowMoreModal] = useState(false);\n const [showAddUserModal, setShowAddUserModal] = useState(false);\n const { stringSet } = useContext(LocalizationContext);\n return (\n <div className=\"sendbird-members-accordion\">\n <div className=\"sendbird-members-accordion__list\">\n {\n members.slice(0, SHOWN_MEMBER_MAX).map((member) => (\n <UserListItem\n member={member}\n currentUser={currentUser}\n key={member.userId}\n />\n ))\n }\n </div>\n <div className=\"sendbird-members-accordion__footer\">\n {\n members.length >= SHOWN_MEMBER_MAX && (\n <Button\n className=\"sendbird-members-accordion__footer__all-members\"\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => setShowMoreModal(true)}\n >\n {stringSet.CHANNEL_SETTING__MEMBERS__SEE_ALL_MEMBERS}\n </Button>\n )\n }\n {\n members.length >= SHOWN_MEMBER_MAX && showMoreModal && (\n <MembersModal\n currentUser={currentUser}\n hideModal={() => {\n setShowMoreModal(false);\n }}\n channel={channel}\n />\n )\n }\n <Button\n className=\"sendbird-members-accordion__footer__invite-users\"\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n disabled={disabled}\n onClick={() => {\n if (disabled) { return; }\n setShowAddUserModal(true);\n }}\n >\n {stringSet.CHANNEL_SETTING__MEMBERS__INVITE_MEMBER}\n </Button>\n {\n showAddUserModal && (\n <InviteMembers\n swapParams={swapParams}\n titleText={stringSet.MODAL__INVITE_MEMBER__TITLE}\n submitText={stringSet.BUTTON__INVITE}\n closeModal={() => setShowAddUserModal(false)}\n idsToFilter={members.map((member) => (member.userId))}\n userQueryCreator={userQueryCreator}\n onSubmit={onInviteMembers}\n />\n )\n }\n </div>\n </div>\n );\n};\n\nMembersAccordion.propTypes = {\n swapParams: PropTypes.bool,\n disabled: PropTypes.bool,\n channel: PropTypes.shape({\n members: PropTypes.arrayOf(PropTypes.shape({})),\n }),\n currentUser: PropTypes.string,\n userQueryCreator: PropTypes.func.isRequired,\n onInviteMembers: PropTypes.func.isRequired,\n};\n\nMembersAccordion.defaultProps = {\n swapParams: false,\n currentUser: '',\n disabled: false,\n channel: {},\n};\n\nexport default MembersAccordion;\n","// might move to reusable/UI\n\nimport React, { ReactElement, useRef, useContext } from 'react';\n\nimport { LocalizationContext } from '../../../lib/LocalizationContext';\nimport { UserProfileContext } from '../../../lib/UserProfileContext';\nimport Avatar from '../../../ui/Avatar/index';\nimport MutedAvatarOverlay from '../../../ui/Avatar/MutedAvatarOverlay';\nimport Label, { LabelTypography, LabelColors } from '../../../ui/Label';\nimport UserProfile from '../../../ui/UserProfile';\nimport ContextMenu, { MenuItems } from '../../../ui/ContextMenu';\n\nimport './user-list-item.scss';\nimport { SendbirdTypes } from '../../../types';\n\nconst COMPONENT_NAME = 'sendbird-user-list-item--small';\n\ninterface ActionProps {\n actionRef: React.RefObject<HTMLInputElement>;\n parentRef: React.RefObject<HTMLInputElement>;\n}\n\ntype CustomUser = SendbirdTypes['User'] & {\n isMuted: boolean;\n role: string;\n};\n\ninterface Props {\n user: CustomUser;\n currentUser?: string;\n className?: string;\n action?(props: ActionProps): ReactElement;\n}\n\nconst UserListItem = ({\n user,\n className,\n currentUser,\n action,\n}: Props): ReactElement => {\n const actionRef = useRef(null);\n const parentRef = useRef(null);\n const avatarRef = useRef(null);\n const { stringSet } = useContext(LocalizationContext);\n const {\n disableUserProfile,\n renderUserProfile,\n } = useContext(UserProfileContext);\n const injectingClassNames = Array.isArray(className) ? className : [className];\n return (\n <div\n ref={parentRef}\n className={[\n COMPONENT_NAME, ...injectingClassNames,\n ].join(' ')}\n >\n {\n user.isMuted && (\n <MutedAvatarOverlay />\n )\n }\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n onClick={() => {\n if (!disableUserProfile) {\n toggleDropdown();\n }\n }}\n ref={avatarRef}\n className={`${COMPONENT_NAME}__avatar`}\n src={user.profileUrl}\n width={24}\n height={24}\n />\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n openLeft\n parentRef={avatarRef}\n // for catching location(x, y) of MenuItems\n parentContainRef={avatarRef}\n // for toggling more options(menus & reactions)\n closeDropdown={closeDropdown}\n style={{ paddingTop: 0, paddingBottom: 0 }}\n >\n {\n renderUserProfile\n ? renderUserProfile({\n user,\n currentUserId: currentUser,\n close: closeDropdown,\n })\n : (\n <UserProfile\n user={user}\n currentUserId={currentUser}\n onSuccess={closeDropdown}\n />\n )\n }\n </MenuItems>\n )}\n />\n <Label\n className={`${COMPONENT_NAME}__title`}\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {user.nickname || stringSet.NO_NAME}\n {\n (currentUser === user.userId) && (\n \" (You)\"\n )\n }\n </Label>\n { // if there is now nickname, display userId\n !user.nickname && (\n <Label\n className={`${COMPONENT_NAME}__subtitle`}\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {user.userId}\n </Label>\n )\n }\n {\n user.role === 'operator' && (\n <Label\n className={`${COMPONENT_NAME}__operator`}\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n Operator\n </Label>\n )\n }\n {\n action && (\n <div ref={actionRef} className={`${COMPONENT_NAME}__action`}>\n { action({ actionRef, parentRef }) }\n </div>\n )\n }\n </div>\n );\n}\n\nexport default UserListItem;\n","import React, {\n ReactElement,\n useEffect,\n useState,\n} from 'react'\n\n\nimport { SendbirdTypes } from '../../../../types';\n\nimport Modal from '../../../../ui/Modal';\nimport UserListItem from '../../../../ui/UserListItem';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\nimport { noop } from '../../../../utils/utils';\n\ninterface Props {\n hideModal(): void;\n channel: SendbirdTypes[\"GroupChannel\"];\n currentUser?: string;\n}\n\nexport default function OperatorsModal({\n hideModal,\n channel,\n currentUser,\n}: Props): ReactElement {\n const [operators, setOperators] = useState([]);\n const [operatorQuery, setOperatorQuery] = useState(null);\n\n useEffect(() => {\n const operatorListQuery = channel.createOperatorListQuery();\n operatorListQuery.limit = 20;\n operatorListQuery.next((operators, error) => {\n if (error) {\n return;\n }\n setOperators(operators);\n });\n setOperatorQuery(operatorListQuery);\n }, [])\n return (\n <div>\n <Modal\n hideFooter\n onCancel={() => hideModal()}\n onSubmit={noop}\n titleText=\"All operators\"\n >\n <div\n className=\"sendbird-more-members__popup-scroll\"\n onScroll={(e) => {\n const { hasNext } = operatorQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n\n if (hasNext && fetchMore) {\n operatorQuery.next((o, error) => {\n if (error) {\n return;\n }\n setOperators([\n ...operators,\n ...o,\n ])\n });\n }\n }}\n >\n { operators.map((member) => (\n <UserListItem\n currentUser={currentUser}\n user={member}\n key={member.userId}\n action={({ parentRef, actionRef }) => (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <IconButton\n className=\"sendbird-user-message__more__menu\"\n width=\"32px\"\n height=\"32px\"\n onClick={toggleDropdown}\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.MORE}\n fillColor={IconColors.CONTENT_INVERSE}\n />\n </IconButton>\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentContainRef={parentRef}\n parentRef={actionRef} // for catching location(x, y) of MenuItems\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n channel.removeOperators([member.userId], (response, error) => {\n if (error) {\n return;\n }\n setOperators(operators.filter(({ userId }) => {\n return userId !== member.userId;\n }));\n });\n closeDropdown();\n }}\n >\n Dismiss operator\n </MenuItem>\n </MenuItems>\n )}\n />\n )}\n />\n ))}\n </div>\n </Modal>\n </div>\n )\n}\n","import React, {\n ReactElement,\n useEffect,\n useState,\n useContext,\n} from 'react'\n\n\nimport { SendbirdTypes } from '../../../../types';\n\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport Modal from '../../../../ui/Modal';\nimport Label, {\n LabelTypography,\n LabelColors,\n} from '../../../../ui/Label';\nimport { Type as ButtonType } from '../../../../ui/Button/type';\nimport UserListItem from '../../../../ui/UserListItem';\n\ninterface Props {\n hideModal(): void;\n onSubmit(members: Array<string>): void;\n channel: SendbirdTypes[\"GroupChannel\"];\n}\n\nexport default function AddOperatorsModal({\n hideModal,\n channel,\n onSubmit,\n}: Props): ReactElement {\n const [members, setMembers] = useState([]);\n const [selectedMembers, setSelectedMembers] = useState({});\n const [memberQuery, setMemberQuery] = useState(null);\n const { stringSet } = useContext(LocalizationContext);\n\n useEffect(() => {\n const memberListQuery = channel.createMemberListQuery();\n memberListQuery.limit = 20;\n memberListQuery.next((members, error) => {\n if (error) {\n return;\n }\n setMembers(members);\n });\n setMemberQuery(memberListQuery);\n }, [])\n\n const selectedCount = Object.keys(selectedMembers).filter((m) => selectedMembers[m]).length;\n return (\n <div>\n <Modal\n type={ButtonType.PRIMARY}\n submitText=\"Add\"\n onCancel={() => hideModal()}\n onSubmit={() => {\n const members = Object.keys(selectedMembers).filter((m) => selectedMembers[m]);\n onSubmit(members);\n }}\n titleText=\"Select members\"\n >\n <Label\n color={(selectedCount > 0) ? LabelColors.PRIMARY : LabelColors.ONBACKGROUND_3}\n type={LabelTypography.CAPTION_1}\n >\n {`${selectedCount} ${stringSet.MODAL__INVITE_MEMBER__SELECTEC}`}\n </Label>\n <div\n className=\"sendbird-more-members__popup-scroll\"\n onScroll={(e) => {\n const { hasNext } = memberQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n\n if (hasNext && fetchMore) {\n memberQuery.next((o, error) => {\n if (error) {\n return;\n }\n setMembers([\n ...members,\n ...o,\n ])\n });\n }\n }}\n >\n { members.map((member) => (\n <UserListItem\n checkBox\n checked={selectedMembers[member.userId]}\n onChange={\n (event) => {\n const modifiedSelectedMembers = {\n ...selectedMembers,\n [event.target.id]: event.target.checked,\n };\n if (!event.target.checked) {\n delete modifiedSelectedMembers[event.target.id];\n }\n setSelectedMembers(modifiedSelectedMembers);\n }\n }\n user={member}\n key={member.userId}\n />\n ))}\n </div>\n </Modal>\n </div>\n );\n}\n","import React, {\n ReactElement,\n useEffect,\n useState,\n useCallback,\n useContext,\n} from 'react';\n\nimport { SendbirdTypes } from '../../../../types';\n\nimport withSendbirdContext from '../../../../lib/SendbirdSdkContext';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { getSdk } from '../../../../lib/selectors';\nimport Button, { ButtonTypes, ButtonSizes } from '../../../../ui/Button';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\n\nimport UserListItem from '../UserListItem';\nimport OperatorsModal from './OperatorsModal';\nimport AddOperatorsModal from './AddOperatorsModal';\n\ninterface Props {\n sdk: SendbirdTypes[\"SendBirdInstance\"];\n channel: SendbirdTypes[\"GroupChannel\"];\n}\n\nexport const OperatorList = ({ sdk, channel }: Props): ReactElement => {\n const [operators, setOperators] = useState([]);\n const [showMore, setShowMore] = useState(false);\n const [showAdd, setShowAdd] = useState(false);\n const [hasNext, setHasNext] = useState(false);\n const { stringSet } = useContext(LocalizationContext);\n\n useEffect(() => {\n if (!channel) {\n setOperators([]);\n return;\n }\n\n const operatorListQuery = channel.createOperatorListQuery();\n operatorListQuery.limit = 10;\n operatorListQuery.next((operators, error) => {\n if (error) {\n return;\n }\n setOperators(operators);\n setHasNext(operatorListQuery.hasNext);\n });\n }, [channel]);\n\n const refershList = useCallback(\n () => {\n if (!channel) {\n setOperators([]);\n return;\n }\n const operatorListQuery = channel.createOperatorListQuery();\n operatorListQuery.limit = 10;\n operatorListQuery.next((operators, error) => {\n if (error) {\n return;\n }\n setOperators(operators);\n setHasNext(operatorListQuery.hasNext);\n });\n },\n [channel],\n );\n\n return (\n <>\n {\n operators.map((operator) => (\n <UserListItem\n key={operator.userId}\n user={operator}\n currentUser={sdk.currentUser.userId}\n action={({ actionRef, parentRef }) => {\n return (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <IconButton\n className=\"sendbird-user-message__more__menu\"\n width=\"32px\"\n height=\"32px\"\n onClick={toggleDropdown}\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.MORE}\n fillColor={IconColors.CONTENT_INVERSE}\n />\n </IconButton>\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentContainRef={parentRef}\n parentRef={actionRef} // for catching location(x, y) of MenuItems\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n channel.removeOperators([operator.userId], (response, error) => {\n if (error) {\n return;\n }\n setOperators(operators.filter(({ userId }) => {\n return userId !== operator.userId;\n }))\n });\n closeDropdown();\n }}\n >\n Dismiss operator\n </MenuItem>\n </MenuItems>\n )}\n />\n );\n }}\n />\n ))\n }\n {\n hasNext && (\n <div\n className=\"sendbird-channel-settings-accordion__footer\"\n >\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => {\n setShowMore(true);\n }}\n >\n {stringSet.CHANNEL_SETTING__OPERATORS__TITLE_ALL}\n </Button>\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => {\n setShowAdd(true);\n }}\n >\n {stringSet.CHANNEL_SETTING__OPERATORS__TITLE_ADD}\n </Button>\n </div>\n )\n }\n {\n showMore && (\n <OperatorsModal\n currentUser={sdk.currentUser.userId}\n hideModal={() => {\n setShowMore(false);\n refershList();\n }}\n channel={channel}\n />\n )\n }\n {\n showAdd && (\n <AddOperatorsModal\n hideModal={() => setShowAdd(false)}\n channel={channel}\n onSubmit={(members) => {\n setShowAdd(false);\n channel.addOperators(members, () => {\n refershList();\n });\n }}\n />\n )\n }\n </>\n );\n}\n\nconst mapStoreToProps = (store) => ({\n sdk: getSdk(store),\n});\n\nexport default withSendbirdContext(OperatorList, mapStoreToProps);\n","import React, { ReactElement, useEffect, useState } from 'react'\n\n\nimport { SendbirdTypes } from '../../../../types';\n\nimport Modal from '../../../../ui/Modal';\nimport { Type as ButtonType } from '../../../../ui/Button/type';\nimport UserListItem from '../../../../ui/UserListItem';\n\ninterface Props {\n hideModal(): void;\n onSubmit(members: Array<string>): void;\n channel: SendbirdTypes['GroupChannel'];\n userQueryCreator(): SendbirdTypes['UserListQuery'];\n}\n\nexport default function InviteMembers({\n hideModal,\n userQueryCreator,\n onSubmit,\n}: Props): ReactElement {\n const [members, setMembers] = useState([]);\n const [selectedMembers, setSelectedMembers] = useState({});\n const [userQuery, setUserQuery] = useState(null);\n\n useEffect(() => {\n const userListQuery = userQueryCreator();\n userListQuery.limit = 20;\n userListQuery.next((members, error) => {\n if (error) {\n return;\n }\n setMembers(members);\n });\n setUserQuery(userListQuery);\n }, [])\n return (\n <div>\n <Modal\n disabled={Object.keys(selectedMembers).length === 0}\n submitText=\"Invite\"\n type={ButtonType.PRIMARY}\n onCancel={() => hideModal()}\n onSubmit={() => {\n const members = Object.keys(selectedMembers).filter((m) => selectedMembers[m]);\n onSubmit(members);\n }}\n titleText=\"Select members\"\n >\n <div\n className=\"sendbird-more-members__popup-scroll\"\n onScroll={(e) => {\n const { hasNext } = userQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n\n if (hasNext && fetchMore) {\n userQuery.next((o, error) => {\n if (error) {\n return;\n }\n setMembers([\n ...members,\n ...o,\n ])\n });\n }\n }}\n >\n { members.map((member) => (\n <UserListItem\n checkBox\n checked={selectedMembers[member.userId]}\n onChange={\n (event) => {\n const modifiedSelectedMembers = {\n ...selectedMembers,\n [event.target.id]: event.target.checked,\n };\n if (!event.target.checked) {\n delete modifiedSelectedMembers[event.target.id];\n }\n setSelectedMembers(modifiedSelectedMembers);\n }\n }\n user={member}\n key={member.userId}\n />\n ))}\n </div>\n </Modal>\n </div>\n );\n}\n","import React, {\n ReactElement,\n useEffect,\n useState,\n useCallback,\n} from 'react';\n\nimport { SendbirdTypes } from '../../../../types';\n\nimport withSendbirdContext from '../../../../lib/SendbirdSdkContext';\nimport { getSdk } from '../../../../lib/selectors';\nimport Button, { ButtonTypes, ButtonSizes } from '../../../../ui/Button';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\n\nimport UserListItem from '../UserListItem';\nimport MembersModal from './MembersModal';\nimport InviteMembers from './InviteMembersModal';\n\ninterface Props {\n sdk: SendbirdTypes['SendBirdInstance'];\n channel: SendbirdTypes['GroupChannel'];\n userQueryCreator(): SendbirdTypes['UserListQuery'];\n userId: string;\n}\n\nexport const MemberList = ({\n sdk,\n channel,\n userQueryCreator,\n userId,\n}: Props): ReactElement => {\n const [members, setMembers] = useState([]);\n const [hasNext, setHasNext] = useState(false);\n const [showAllMembers, setShowAllMembers] = useState(false);\n const [showInviteMembers, setShowInviteMembers] = useState(false);\n\n useEffect(() => {\n if (!channel) {\n setMembers([]);\n return;\n }\n\n const memberUserListQuery = channel.createMemberListQuery();\n memberUserListQuery.limit = 10;\n memberUserListQuery.next((members, error) => {\n if (error) {\n return;\n }\n setMembers(members);\n setHasNext(memberUserListQuery.hasNext);\n });\n }, [channel]);\n\n const refershList = useCallback(\n () => {\n if (!channel) {\n setMembers([]);\n return;\n }\n const memberUserListQuery = channel.createMemberListQuery();\n memberUserListQuery.limit = 10;\n memberUserListQuery.next((members, error) => {\n if (error) {\n return;\n }\n setMembers(members);\n setHasNext(memberUserListQuery.hasNext);\n });\n },\n [channel],\n );\n\n return (\n <>\n {\n members.map((member) => (\n <UserListItem\n key={member.userId}\n user={member}\n currentUser={sdk.currentUser.userId}\n action={\n (userId !== member.userId)\n ? ({ actionRef, parentRef }) => (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <IconButton\n className=\"sendbird-user-message__more__menu\"\n width=\"32px\"\n height=\"32px\"\n onClick={toggleDropdown}\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.MORE}\n fillColor={IconColors.CONTENT_INVERSE}\n />\n </IconButton>\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentContainRef={parentRef}\n parentRef={actionRef} // for catching location(x, y) of MenuItems\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n if ((member.role !== 'operator')) {\n channel.addOperators([member.userId], () => {\n refershList();\n closeDropdown();\n });\n } else {\n channel.removeOperators([member.userId], () => {\n refershList();\n closeDropdown();\n });\n }\n }}\n >\n {member.role !== 'operator' ? 'Promote to operator' : 'Demote operator'}\n </MenuItem>\n {\n // No muted members in broadcast channel\n !channel.isBroadcast && (\n <MenuItem\n onClick={() => {\n if (member.isMuted) {\n channel.unmuteUser(member, () => {\n refershList();\n closeDropdown();\n })\n } else {\n channel.muteUser(member, () => {\n refershList();\n closeDropdown();\n });\n }\n }}\n >\n { member.isMuted ? 'Unmute' : 'Mute'}\n </MenuItem>\n )\n }\n <MenuItem\n onClick={() => {\n channel.banUser(member, -1, '', () => {\n refershList();\n closeDropdown();\n });\n }}\n >\n Ban\n </MenuItem>\n </MenuItems>\n )}\n />\n )\n : null\n }\n />\n ))\n }\n <div\n className=\"sendbird-channel-settings-accordion__footer\"\n >\n {\n hasNext && (\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => setShowAllMembers(true)}\n >\n All members\n </Button>\n )\n }\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => setShowInviteMembers(true)}\n >\n Invite members\n </Button>\n </div>\n {\n showAllMembers && (\n <MembersModal\n currentUser={sdk.currentUser.userId}\n channel={channel}\n hideModal={() => {\n setShowAllMembers(false);\n refershList();\n }}\n />\n )\n }\n {\n showInviteMembers && (\n <InviteMembers\n userQueryCreator={userQueryCreator}\n onSubmit={(selectedMembers: Array<string>) => {\n channel.inviteWithUserIds(selectedMembers, () => {\n setShowInviteMembers(false);\n refershList();\n });\n }}\n channel={channel}\n hideModal={() => setShowInviteMembers(false)}\n />\n )\n }\n </>\n );\n}\n\nconst mapStoreToProps = (store) => ({\n sdk: getSdk(store),\n});\n\nexport default withSendbirdContext(MemberList, mapStoreToProps);\n","import React, {\n ReactElement,\n useEffect,\n useState,\n} from 'react'\n\nimport { SendbirdTypes } from '../../../../types';\n\nimport Modal from '../../../../ui/Modal';\nimport UserListItem from '../../../../ui/UserListItem';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\n\nimport { noop } from '../../../../utils/utils';\n\ninterface Props {\n hideModal(): void;\n channel: SendbirdTypes[\"GroupChannel\"];\n}\n\nexport default function BannedMembersModal({\n hideModal,\n channel,\n}: Props): ReactElement {\n const [members, setMembers] = useState([]);\n const [memberQuery, setMemberQuery] = useState(null);\n\n useEffect(() => {\n const bannedUserListQuery = channel.createBannedUserListQuery();\n bannedUserListQuery.next((users, error) => {\n if (error) {\n return;\n }\n setMembers(users);\n });\n setMemberQuery(bannedUserListQuery);\n }, []);\n return (\n <div>\n <Modal\n hideFooter\n onCancel={() => hideModal()}\n onSubmit={noop}\n titleText=\"Muted members\"\n >\n <div\n className=\"sendbird-more-members__popup-scroll\"\n onScroll={(e) => {\n const { hasNext } = memberQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n\n if (hasNext && fetchMore) {\n memberQuery.next((o, error) => {\n if (error) {\n return;\n }\n setMembers([\n ...members,\n ...o,\n ])\n });\n }\n }}\n >\n { members.map((member) => (\n <UserListItem\n user={member}\n key={member.userId}\n action={({ parentRef, actionRef }) => (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <IconButton\n className=\"sendbird-user-message__more__menu\"\n width=\"32px\"\n height=\"32px\"\n onClick={toggleDropdown}\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.MORE}\n fillColor={IconColors.CONTENT_INVERSE}\n />\n </IconButton>\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentContainRef={parentRef}\n parentRef={actionRef} // for catching location(x, y) of MenuItems\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n channel.unbanUser(member, () => {\n closeDropdown();\n setMembers(members.filter(m => {\n return (m.userId !== member.userId);\n }));\n })\n }}\n >\n Unban\n </MenuItem>\n </MenuItems>\n )}\n />\n )\n }\n />\n ))}\n </div>\n </Modal>\n </div>\n );\n}\n","import React, {\n ReactElement,\n useEffect,\n useState,\n useCallback,\n} from 'react';\n\nimport { SendbirdTypes } from '../../../../types';\n\nimport withSendbirdContext from '../../../../lib/SendbirdSdkContext';\nimport { getSdk } from '../../../../lib/selectors';\nimport Button, { ButtonTypes, ButtonSizes } from '../../../../ui/Button';\nimport\n Label, {\n LabelTypography,\n LabelColors,\n} from '../../../../ui/Label';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\n\nimport UserListItem from '../UserListItem';\nimport BannedMembersModal from './BannedMembersModal';\n\ninterface Props {\n sdk: SendbirdTypes[\"SendBirdInstance\"];\n channel: SendbirdTypes[\"GroupChannel\"];\n}\n\nexport const BannedMemberList = ({ channel }: Props): ReactElement => {\n const [members, setMembers] = useState([]);\n const [hasNext, setHasNext] = useState(false);\n const [showModal, setShowModal] = useState(false);\n\n useEffect(() => {\n if (!channel) {\n setMembers([]);\n return;\n }\n\n const bannedUserListQuery = channel.createBannedUserListQuery();\n bannedUserListQuery.next((users, error) => {\n if (error) {\n return;\n }\n setMembers(users);\n setHasNext(bannedUserListQuery.hasNext);\n });\n }, [channel]);\n\n const refreshList = useCallback(() => {\n if (!channel) {\n setMembers([]);\n return;\n }\n\n const bannedUserListQuery = channel.createBannedUserListQuery();\n bannedUserListQuery.next(function(users, error) {\n if (error) {\n return;\n }\n setMembers(users);\n setHasNext(bannedUserListQuery.hasNext);\n });\n }, [channel]);\n return (\n <>\n {\n members.map((member) => (\n <UserListItem\n key={member.userId}\n user={member}\n action={({ actionRef, parentRef }) => {\n return (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <IconButton\n className=\"sendbird-user-message__more__menu\"\n width=\"32px\"\n height=\"32px\"\n onClick={toggleDropdown}\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.MORE}\n fillColor={IconColors.CONTENT_INVERSE}\n />\n </IconButton>\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentContainRef={parentRef}\n parentRef={actionRef} // for catching location(x, y) of MenuItems\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n channel.unbanUser(member, () => {\n closeDropdown();\n refreshList();\n })\n }}\n >\n Unban\n </MenuItem>\n </MenuItems>\n )}\n />\n )\n }}\n />\n ))\n }\n {\n members && members.length === 0 && (\n <Label\n className=\"sendbird-channel-settings__empty-list\"\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_3}\n >\n No banned members yet\n </Label>\n )\n }\n {\n hasNext && (\n <div\n className=\"sendbird-channel-settings-accordion__footer\"\n >\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => {\n setShowModal(true);\n }}\n >\n All banned members\n </Button>\n </div>\n )\n }\n {\n showModal && (\n <BannedMembersModal\n channel={channel}\n hideModal={() => {\n setShowModal(false);\n refreshList();\n }}\n />\n )\n }\n </>\n );\n}\n\nconst mapStoreToProps = (store) => ({\n sdk: getSdk(store),\n});\n\nexport default withSendbirdContext(BannedMemberList, mapStoreToProps);\n","import React, {\n ReactElement,\n useEffect,\n useState,\n} from 'react'\n\n\nimport { SendbirdTypes } from '../../../../types';\n\nimport Modal from '../../../../ui/Modal';\nimport UserListItem from '../../../../ui/UserListItem';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\nimport { noop } from '../../../../utils/utils';\n\ninterface Props {\n hideModal(): void;\n channel: SendbirdTypes[\"GroupChannel\"];\n currentUser?: string;\n}\n\nexport default function MutedMembersModal({\n hideModal,\n channel,\n currentUser,\n}: Props): ReactElement {\n const [members, setMembers] = useState([]);\n const [memberQuery, setMemberQuery] = useState(null);\n\n useEffect(() => {\n const memberUserListQuery = channel.createMemberListQuery();\n memberUserListQuery.limit = 10;\n memberUserListQuery.mutedMemberFilter = 'muted';\n memberUserListQuery.next((members, error) => {\n if (error) {\n return;\n }\n setMembers(members);\n });\n setMemberQuery(memberUserListQuery);\n }, []);\n return (\n <div>\n <Modal\n hideFooter\n onCancel={() => hideModal()}\n onSubmit={noop}\n titleText=\"Muted members\"\n >\n <div\n className=\"sendbird-more-members__popup-scroll\"\n onScroll={(e) => {\n const { hasNext } = memberQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n\n if (hasNext && fetchMore) {\n memberQuery.next((o, error) => {\n if (error) {\n return;\n }\n setMembers([\n ...members,\n ...o,\n ])\n });\n }\n }}\n >\n { members.map((member) => (\n <UserListItem\n currentUser={currentUser}\n user={member}\n key={member.userId}\n action={({ actionRef, parentRef }) => (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <IconButton\n className=\"sendbird-user-message__more__menu\"\n width=\"32px\"\n height=\"32px\"\n onClick={toggleDropdown}\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.MORE}\n fillColor={IconColors.CONTENT_INVERSE}\n />\n </IconButton>\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentContainRef={parentRef}\n parentRef={actionRef} // for catching location(x, y) of MenuItems\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n channel.unmuteUser(member, () => {\n closeDropdown();\n setMembers(members.filter(m => {\n return (m.userId !== member.userId);\n }));\n })\n }}\n >\n Unmute\n </MenuItem>\n </MenuItems>\n )}\n />\n )}\n />\n ))}\n </div>\n </Modal>\n </div>\n );\n}\n","import React, {\n ReactElement,\n useEffect,\n useState,\n useCallback,\n} from 'react';\n\nimport { SendbirdTypes } from '../../../../types';\n\nimport withSendbirdContext from '../../../../lib/SendbirdSdkContext';\nimport { getSdk } from '../../../../lib/selectors';\nimport Button, { ButtonTypes, ButtonSizes } from '../../../../ui/Button';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\nimport\n Label, {\n LabelTypography,\n LabelColors,\n} from '../../../../ui/Label';\nimport UserListItem from '../UserListItem';\nimport MutedMembersModal from './MutedMembersModal';\n\ninterface Props {\n sdk: SendbirdTypes[\"SendBirdInstance\"];\n channel: SendbirdTypes[\"GroupChannel\"];\n}\n\nexport const MutedMemberList = ({ sdk, channel }: Props): ReactElement => {\n const [members, setMembers] = useState([]);\n const [hasNext, setHasNext] = useState(false);\n const [showModal, setShowModal] = useState(false);\n\n useEffect(() => {\n if (!channel) {\n setMembers([]);\n return;\n }\n\n const memberUserListQuery = channel.createMemberListQuery();\n memberUserListQuery.limit = 10;\n memberUserListQuery.mutedMemberFilter = 'muted';\n memberUserListQuery.next((members, error) => {\n if (error) {\n return;\n }\n setMembers(members);\n setHasNext(memberUserListQuery.hasNext);\n });\n }, [channel]);\n\n const refreshList = useCallback(() => {\n if (!channel) {\n setMembers([]);\n return;\n }\n\n const memberUserListQuery = channel.createMemberListQuery();\n memberUserListQuery.limit = 10;\n memberUserListQuery.mutedMemberFilter = 'muted';\n memberUserListQuery.next((members, error) => {\n if (error) {\n return;\n }\n setMembers(members);\n setHasNext(memberUserListQuery.hasNext);\n });\n }, [channel]);\n return (\n <>\n {\n members.map((member) => (\n <UserListItem\n key={member.userId}\n user={member}\n currentUser={sdk.currentUser.userId}\n action={({ actionRef, parentRef }) => {\n return (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <IconButton\n className=\"sendbird-user-message__more__menu\"\n width=\"32px\"\n height=\"32px\"\n onClick={toggleDropdown}\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.MORE}\n fillColor={IconColors.CONTENT_INVERSE}\n />\n </IconButton>\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n closeDropdown={closeDropdown}\n openLeft\n parentContainRef={parentRef}\n parentRef={actionRef} // for catching location(x, y) of MenuItems\n >\n <MenuItem\n onClick={() => {\n channel.unmuteUser(member, () => {\n refreshList();\n closeDropdown();\n })\n }}\n >\n Unmute\n </MenuItem>\n </MenuItems>\n )}\n />\n );\n }\n }\n />\n ))\n }\n {\n members && members.length === 0 && (\n <Label\n className=\"sendbird-channel-settings__empty-list\"\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_3}\n >\n No muted members yet\n </Label>\n )\n }\n {\n hasNext && (\n <div\n className=\"sendbird-channel-settings-accordion__footer\"\n >\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => {\n setShowModal(true);\n }}\n >\n All muted members\n </Button>\n </div>\n )\n }\n {\n showModal && (\n <MutedMembersModal\n currentUser={sdk.currentUser.userId}\n channel={channel}\n hideModal={() => {\n setShowModal(false);\n refreshList();\n }}\n />\n )\n }\n </>\n );\n}\n\nconst mapStoreToProps = (store) => ({\n sdk: getSdk(store),\n});\n\nexport default withSendbirdContext(MutedMemberList, mapStoreToProps);\n","import './index.scss';\nimport React, {\n ReactElement,\n useEffect,\n useState,\n useContext,\n} from 'react';\nimport { SendbirdTypes } from '../../../../types';\n\nimport Accordion, { AccordionGroup } from '../../../../ui/Accordion';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport\n Label, {\n LabelTypography,\n LabelColors,\n} from '../../../../ui/Label';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport Badge from '../../../../ui/Badge';\n\nimport OperatorList from './OperatorList';\nimport MemberList from './MemberList';\nimport BannedMemberList from './BannedMemberList';\nimport MutedMemberList from './MutedMemberList';\n\nconst kFormatter = (num: number): string|number => {\n return Math.abs(num) > 999\n ? `${(Math.abs(num)/1000).toFixed(1)}K`\n : num;\n}\n\ninterface Props {\n channel: SendbirdTypes['GroupChannel'];\n userQueryCreator(): SendbirdTypes['UserListQuery'];\n userId: string;\n}\n\nexport default function AdminPannel({\n userQueryCreator,\n channel,\n userId,\n}: Props): ReactElement {\n const [frozen, setFrozen] = useState(false);\n\n // work around for\n // https://sendbird.slack.com/archives/G01290GCDCN/p1595922832000900\n // SDK bug - after frozen/unfrozen myRole becomes \"none\"\n useEffect(() => {\n setFrozen(channel.isFrozen);\n }, [channel]);\n const { stringSet } = useContext(LocalizationContext);\n return (\n <AccordionGroup className=\"sendbird-channel-settings__operator\">\n <Accordion\n className=\"sendbird-channel-settings__operators-list\"\n id=\"operators\"\n renderTitle={() => (\n <>\n <Icon\n type={IconTypes.OPERATOR}\n fillColor={IconColors.PRIMARY}\n width={24}\n height={24}\n className=\"sendbird-channel-settings__accordion-icon\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.CHANNEL_SETTING__OPERATORS__TITLE}\n </Label>\n </>\n )}\n renderContent={() => (\n <>\n <OperatorList channel={channel} />\n </>\n )}\n />\n <Accordion\n className=\"sendbird-channel-settings__members-list\"\n id=\"members\"\n renderTitle={() => (\n <>\n <Icon\n type={IconTypes.MEMBERS}\n fillColor={IconColors.PRIMARY}\n width={24}\n height={24}\n className=\"sendbird-channel-settings__accordion-icon\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.CHANNEL_SETTING__MEMBERS__TITLE}\n </Label>\n <Badge count={kFormatter(channel.memberCount)} />\n </>\n )}\n renderContent={() => (\n <>\n <MemberList\n userQueryCreator={userQueryCreator}\n channel={channel}\n userId={userId}\n />\n </>\n )}\n />\n {\n // No muted members in broadcast channel\n !channel.isBroadcast && (\n <Accordion\n id=\"mutedMembers\"\n className=\"sendbird-channel-settings__muted-members-list\"\n renderTitle={() => (\n <>\n <Icon\n type={IconTypes.MUTE}\n fillColor={IconColors.PRIMARY}\n width={24}\n height={24}\n className=\"sendbird-channel-settings__accordion-icon\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.CHANNEL_SETTING__MUTED_MEMBERS__TITLE}\n </Label>\n </>\n )}\n renderContent={() => (\n <>\n <MutedMemberList channel={channel} />\n </>\n )}\n />\n )\n }\n <Accordion\n className=\"sendbird-channel-settings__banned-members-list\"\n id=\"bannedMembers\"\n renderTitle={() => (\n <>\n <Icon\n type={IconTypes.BAN}\n fillColor={IconColors.PRIMARY}\n width={24}\n height={24}\n className=\"sendbird-channel-settings__accordion-icon\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.CHANNEL_SETTING__BANNED_MEMBERS__TITLE}\n </Label>\n </>\n )}\n renderContent={() => (\n <>\n <BannedMemberList channel={channel} />\n </>\n )}\n />\n {\n // cannot frozen broadcast channel\n !channel.isBroadcast && (\n <div className=\"sendbird-channel-settings__freeze\">\n <Icon\n type={IconTypes.FREEZE}\n fillColor={IconColors.PRIMARY}\n width={24}\n height={24}\n className=\"sendbird-channel-settings__accordion-icon\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.CHANNEL_SETTING__FREEZE_CHANNEL}\n </Label>\n <div className=\"sendbird-channel-settings__frozen-icon\">\n {\n frozen\n ? (\n <Icon\n onClick={() => {\n channel.unfreeze(() => {\n setFrozen(false);\n });\n }}\n type={IconTypes.TOGGLE_ON}\n fillColor={IconColors.PRIMARY}\n width={44}\n height={24}\n />\n )\n : (\n <Icon\n onClick={() => {\n channel.freeze(() => {\n setFrozen(true);\n });\n }}\n type={IconTypes.TOGGLE_OFF}\n fillColor={IconColors.PRIMARY}\n width={44}\n height={24}\n />\n )\n }\n </div>\n </div>\n )\n }\n </AccordionGroup>\n );\n}\n","import React, { useEffect, useState, useContext } from 'react';\nimport PropTypes from 'prop-types';\n\nimport withSendbirdContext from '../../lib/SendbirdSdkContext';\nimport { UserProfileProvider } from '../../lib/UserProfileContext';\nimport { LocalizationContext } from '../../lib/LocalizationContext';\n\nimport './index.scss';\nimport Badge from '../../ui/Badge';\nimport Label, { LabelTypography, LabelColors } from '../../ui/Label';\nimport Icon, { IconTypes, IconColors } from '../../ui/Icon';\nimport IconButton from '../../ui/IconButton';\n\nimport ChannelProfile from './components/ChannelProfile';\nimport MembersAccordion from './components/MembersAccordion';\nimport LeaveChannelModal from './components/LeaveChannel';\nimport AdminPanel from './components/AdminPanel';\nimport PlaceHolder from '../../ui/PlaceHolder';\nimport PlaceHolderTypes from '../../ui/PlaceHolder/type';\nimport { uuidv4 } from '../../utils/uuid';\nimport { createDefaultUserListQuery } from '../ChannelList/components/utils';\n\nconst COMPONENT_CLASS_NAME = 'sendbird-channel-settings';\n\nconst kFormatter = (num) => (\n Math.abs(num) > 999\n ? `${(Math.abs(num) / 1000).toFixed(1)}K`\n : num\n);\n\nfunction ChannelSettings(props) {\n const {\n className,\n onCloseClick,\n channelUrl,\n disableUserProfile,\n renderUserProfile,\n onChannelModified,\n renderChannelProfile,\n onBeforeUpdateChannel,\n } = props;\n\n const {\n stores: { sdkStore },\n config: {\n userListQuery,\n theme,\n userId,\n logger,\n isOnline,\n },\n queries = {},\n } = props;\n\n const { config = {} } = props;\n const userDefinedDisableUserProfile = disableUserProfile || config.disableUserProfile;\n const userDefinedRenderProfile = renderUserProfile || config.renderUserProfile;\n\n const userFilledApplicationUserListQuery = queries.applicationUserListQuery;\n const { stringSet } = useContext(LocalizationContext);\n\n const { sdk, initialized } = sdkStore;\n\n // hack to kepp track of channel updates by triggering useEffect\n const [channelUpdateId, setChannelUpdateId] = useState(uuidv4());\n const [channel, setChannel] = useState(null);\n const [invalidChannel, setInvalidChannel] = useState(false);\n const [showAccordion, setShowAccordion] = useState(false);\n const [showLeaveChannelModal, setShowLeaveChannelModal] = useState(false);\n\n const componentClassNames = (\n Array.isArray(className)\n ? [COMPONENT_CLASS_NAME, ...className]\n : [COMPONENT_CLASS_NAME, className]\n ).join(' ');\n\n useEffect(() => {\n logger.info('ChannelSettings: Setting up');\n if (!channelUrl || !initialized || !sdk) {\n logger.warning('ChannelSettings: Setting up failed', 'No channelUrl or sdk uninitialized');\n setInvalidChannel(false);\n } else {\n if (!sdk || !sdk.GroupChannel) {\n logger.warning('ChannelSettings: No GroupChannel');\n return;\n }\n sdk.GroupChannel.getChannel(channelUrl, (groupChannel) => {\n if (!groupChannel) {\n logger.warning('ChannelSettings: Channel not found');\n setInvalidChannel(true);\n } else {\n logger.info('ChannelSettings: Fetched group channel', groupChannel);\n setInvalidChannel(false);\n setChannel(groupChannel);\n }\n });\n }\n }, [channelUrl, initialized, channelUpdateId]);\n\n if (!channel || invalidChannel) {\n return (\n <div className={componentClassNames}>\n <div className=\"sendbird-channel-settings__header\">\n <Label type={LabelTypography.H_2} color={LabelColors.ONBACKGROUND_1}>\n {stringSet.CHANNEL_SETTING__HEADER__TITLE}\n </Label>\n <Icon\n className=\"sendbird-channel-settings__close-icon\"\n type={IconTypes.CLOSE}\n height=\"24px\"\n width=\"24px\"\n onClick={() => {\n logger.info('ChannelSettings: Click close');\n onCloseClick();\n }}\n />\n </div>\n <div>\n <PlaceHolder type={PlaceHolderTypes.WRONG} />\n </div>\n </div>\n );\n }\n\n return (\n <UserProfileProvider\n className={componentClassNames}\n disableUserProfile={userDefinedDisableUserProfile}\n renderUserProfile={userDefinedRenderProfile}\n >\n <div className=\"sendbird-channel-settings__header\">\n <Label type={LabelTypography.H_2} color={LabelColors.ONBACKGROUND_1}>\n {stringSet.CHANNEL_SETTING__HEADER__TITLE}\n </Label>\n <div className=\"sendbird-channel-settings__header-icon\">\n <IconButton\n width=\"32px\"\n height=\"32px\"\n onClick={() => {\n logger.info('ChannelSettings: Click close');\n onCloseClick();\n }}\n >\n <Icon\n className=\"sendbird-channel-settings__close-icon\"\n type={IconTypes.CLOSE}\n height=\"22px\"\n width=\"22px\"\n />\n </IconButton>\n </div>\n </div>\n <div className=\"sendbird-channel-settings__scroll-area\">\n {\n renderChannelProfile\n ? renderChannelProfile({ channel })\n : (\n <ChannelProfile\n disabled={!isOnline}\n channel={channel}\n userId={userId}\n theme={theme}\n onChannelInfoChange={(currentImg, currentTitle) => {\n logger.info('ChannelSettings: Channel information being updated');\n const swapParams = sdk.getErrorFirstCallback();\n if (onBeforeUpdateChannel) {\n const params = onBeforeUpdateChannel(currentTitle, currentImg, channel.data);\n // swapParams\n channel.updateChannel(params, (response, error) => {\n let groupChannel = response;\n if (swapParams) {\n groupChannel = error;\n }\n\n onChannelModified(groupChannel);\n setChannelUpdateId(uuidv4());\n });\n return;\n }\n channel.updateChannel(\n currentTitle,\n currentImg,\n channel.data,\n (response, error) => {\n let groupChannel = response;\n if (swapParams) {\n groupChannel = error;\n }\n logger.info('ChannelSettings: Channel information updated', groupChannel);\n onChannelModified(groupChannel);\n setChannelUpdateId(uuidv4());\n },\n );\n }}\n />\n )\n }\n {\n channel.myRole === 'operator'\n ? (\n <AdminPanel\n channel={channel}\n userId={userId}\n onChannelModified={(groupChannel) => {\n // setChannelUpdateId(uuidv4());\n onChannelModified(groupChannel);\n }}\n userQueryCreator={\n () => ((userListQuery && typeof userListQuery === 'function')\n ? userListQuery()\n : createDefaultUserListQuery({ sdk, userFilledApplicationUserListQuery })\n )\n }\n />\n )\n : (\n <>\n {/* Move to different file */}\n <div\n className={[\n 'sendbird-channel-settings__panel-item',\n 'sendbird-channel-settings__members',\n ].join(' ')}\n role=\"switch\"\n aria-checked={showAccordion}\n onKeyDown={() => setShowAccordion(!showAccordion)}\n onClick={() => setShowAccordion(!showAccordion)}\n tabIndex={0}\n >\n <Icon\n className=\"sendbird-channel-settings__panel-icon-left\"\n type={IconTypes.MEMBERS}\n fillColor={IconColors.PRIMARY}\n height=\"24px\"\n width=\"24px\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.CHANNEL_SETTING__MEMBERS__TITLE}\n <Badge count={kFormatter(channel.memberCount)} />\n </Label>\n <Icon\n className={[\n 'sendbird-channel-settings__panel-icon-right',\n 'sendbird-channel-settings__panel-icon--chevron',\n (showAccordion ? 'sendbird-channel-settings__panel-icon--open' : ''),\n ].join(' ')}\n type={IconTypes.CHEVRON_RIGHT}\n height=\"24px\"\n width=\"24px\"\n />\n </div>\n {\n showAccordion && (\n <MembersAccordion\n currentUser={userId}\n disabled={!isOnline}\n // eslint-disable-next-line\n userQueryCreator={\n () => ((userListQuery && typeof userListQuery === 'function')\n ? userListQuery()\n : createDefaultUserListQuery({ sdk, userFilledApplicationUserListQuery })\n )\n }\n swapParams={\n sdk && sdk.getErrorFirstCallback && sdk.getErrorFirstCallback()\n }\n channel={channel}\n members={channel.members}\n onInviteMembers={(selectedMembers) => {\n logger.info('ChannelSettings: Inviting new users');\n channel.inviteWithUserIds(selectedMembers)\n .then((res) => {\n onChannelModified(res);\n setChannelUpdateId(uuidv4());\n logger.info('ChannelSettings: Inviting new users success!', res);\n });\n }}\n />\n )\n }\n </>\n )\n }\n\n <div\n className={[\n 'sendbird-channel-settings__panel-item',\n 'sendbird-channel-settings__leave-channel',\n !isOnline ? 'sendbird-channel-settings__panel-item__disabled' : '',\n ].join(' ')}\n role=\"button\"\n disabled\n onKeyDown={() => {\n if (!isOnline) { return; }\n setShowLeaveChannelModal(true);\n }}\n onClick={() => {\n if (!isOnline) { return; }\n setShowLeaveChannelModal(true);\n }}\n tabIndex={0}\n >\n <Icon\n className={[\n 'sendbird-channel-settings__panel-icon-left',\n 'sendbird-channel-settings__panel-icon__leave',\n ].join(' ')}\n type={IconTypes.LEAVE}\n fillColor={IconColors.ERROR}\n height=\"24px\"\n width=\"24px\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.CHANNEL_SETTING__LEAVE_CHANNEL__TITLE}\n </Label>\n </div>\n {\n showLeaveChannelModal && (\n <LeaveChannelModal\n onCloseModal={() => setShowLeaveChannelModal(false)}\n onLeaveChannel={() => {\n logger.info('ChannelSettings: Leaving channel', channel);\n channel.leave()\n .then(() => {\n logger.info('ChannelSettings: Leaving channel successful!', channel);\n onCloseClick();\n });\n }}\n />\n )\n }\n </div>\n </UserProfileProvider>\n );\n}\n\nChannelSettings.propTypes = {\n className: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n onCloseClick: PropTypes.func,\n onChannelModified: PropTypes.func,\n onBeforeUpdateChannel: PropTypes.func,\n renderChannelProfile: PropTypes.oneOfType([\n PropTypes.element,\n PropTypes.func,\n ]),\n disableUserProfile: PropTypes.bool,\n renderUserProfile: PropTypes.func,\n channelUrl: PropTypes.string.isRequired,\n queries: PropTypes.shape({\n applicationUserListQuery: PropTypes.shape({\n limit: PropTypes.number,\n userIdsFilter: PropTypes.arrayOf(PropTypes.string),\n metaDataKeyFilter: PropTypes.string,\n metaDataValuesFilter: PropTypes.arrayOf(PropTypes.string),\n }),\n }),\n // from withSendbirdContext\n stores: PropTypes.shape({\n sdkStore: PropTypes.shape({\n sdk: PropTypes.shape({\n getErrorFirstCallback: PropTypes.func,\n GroupChannel: PropTypes.oneOfType([\n PropTypes.shape({\n getChannel: PropTypes.func,\n }),\n PropTypes.func,\n ]),\n createApplicationUserListQuery: PropTypes.any,\n }),\n initialized: PropTypes.bool,\n }),\n }).isRequired,\n config: PropTypes.shape({\n userId: PropTypes.string,\n theme: PropTypes.string,\n userListQuery: PropTypes.func,\n isOnline: PropTypes.bool,\n logger: PropTypes.shape({\n info: PropTypes.func,\n error: PropTypes.func,\n warning: PropTypes.func,\n }),\n }).isRequired,\n};\n\nChannelSettings.defaultProps = {\n className: '',\n onBeforeUpdateChannel: null,\n queries: {},\n disableUserProfile: false,\n renderUserProfile: null,\n renderChannelProfile: null,\n onCloseClick: () => { },\n onChannelModified: () => { },\n};\n\nexport default withSendbirdContext(ChannelSettings);\n"],"names":["EditDetails","props","onSubmit","onCancel","channel","userId","theme","inputRef","useRef","formRef","hiddenInputRef","useState","currentImg","setCurrentImg","newFile","setNewFile","useContext","LocalizationContext","stringSet","title","name","React","MODAL__CHANNEL_INFORMATION__TITLE","BUTTON__SAVE","current","value","reportValidity","ButtonType","PRIMARY","e","preventDefault","MODAL__CHANNEL_INFORMATION__CHANNEL_IMAGE","display","URL","createObjectURL","target","files","click","LabelTypography","BUTTON_1","LabelColors","MODAL__CHANNEL_INFORMATION__UPLOAD","MODAL__CHANNEL_INFORMATION__CHANNEL_NAME","MODAL__CHANNEL_INFORMATION__INPUT__PLACE_HOLDER","propTypes","PropTypes","func","isRequired","shape","string","ChannelProfile","disabled","onChannelInfoChange","showModal","setShowModal","getChannelName","members","map","member","nickname","NO_NAME","join","NO_TITLE","SUBTITLE_2","ONBACKGROUND_1","ONBACKGROUND_2","CHANNEL_SETTING__PROFILE__EDIT","EditDetailsModal","arrayOf","bool","defaultProps","MembersModal","_a","hideModal","currentUser","_b","setMembers","_c","memberQuery","setMemberQuery","useEffect","memberListQuery","createMemberListQuery","limit","next","error","noop","hasNext","fetchMore","clientHeight","scrollTop","scrollHeight","o","UserListItem","parentRef","actionRef","myRole","toggleDropdown","IconTypes","MORE","IconColors","CONTENT_INVERSE","closeDropdown","role","addOperators","m","removeOperators","isBroadcast","isMuted","unmuteUser","muteUser","banUser","filter","SHOWN_MEMBER_MAX","avatarRef","UserProfileContext","disableUserProfile","renderUserProfile","profileUrl","paddingTop","paddingBottom","user","currentUserId","close","UserProfile","YOU","MembersAccordion","userQueryCreator","onInviteMembers","swapParams","showMoreModal","setShowMoreModal","showAddUserModal","setShowAddUserModal","slice","length","ButtonTypes","SECONDARY","ButtonSizes","SMALL","CHANNEL_SETTING__MEMBERS__SEE_ALL_MEMBERS","CHANNEL_SETTING__MEMBERS__INVITE_MEMBER","InviteMembers","MODAL__INVITE_MEMBER__TITLE","BUTTON__INVITE","COMPONENT_NAME","className","action","injectingClassNames","Array","isArray","__spreadArray","SUBTITLE_1","CAPTION_3","OperatorsModal","operators","setOperators","operatorQuery","setOperatorQuery","operatorListQuery","createOperatorListQuery","response","AddOperatorsModal","selectedMembers","setSelectedMembers","_d","selectedCount","Object","keys","ONBACKGROUND_3","CAPTION_1","MODAL__INVITE_MEMBER__SELECTEC","event","modifiedSelectedMembers","id","checked","OperatorList","sdk","showMore","setShowMore","showAdd","setShowAdd","_e","setHasNext","refershList","useCallback","operator","CHANNEL_SETTING__OPERATORS__TITLE_ALL","CHANNEL_SETTING__OPERATORS__TITLE_ADD","mapStoreToProps","store","getSdk","withSendbirdContext","userQuery","setUserQuery","userListQuery","MemberList","showAllMembers","setShowAllMembers","showInviteMembers","setShowInviteMembers","memberUserListQuery","inviteWithUserIds","BannedMembersModal","bannedUserListQuery","createBannedUserListQuery","users","unbanUser","BannedMemberList","refreshList","MutedMembersModal","mutedMemberFilter","MutedMemberList","kFormatter","num","Math","abs","toFixed","AdminPannel","frozen","setFrozen","isFrozen","OPERATOR","CHANNEL_SETTING__OPERATORS__TITLE","MEMBERS","CHANNEL_SETTING__MEMBERS__TITLE","memberCount","MUTE","CHANNEL_SETTING__MUTED_MEMBERS__TITLE","BAN","CHANNEL_SETTING__BANNED_MEMBERS__TITLE","FREEZE","CHANNEL_SETTING__FREEZE_CHANNEL","unfreeze","TOGGLE_ON","freeze","TOGGLE_OFF","COMPONENT_CLASS_NAME","ChannelSettings","onCloseClick","channelUrl","onChannelModified","renderChannelProfile","onBeforeUpdateChannel","sdkStore","stores","config","logger","isOnline","queries","userDefinedDisableUserProfile","userDefinedRenderProfile","userFilledApplicationUserListQuery","applicationUserListQuery","initialized","uuidv4","channelUpdateId","setChannelUpdateId","setChannel","invalidChannel","setInvalidChannel","showAccordion","setShowAccordion","showLeaveChannelModal","setShowLeaveChannelModal","componentClassNames","info","warning","GroupChannel","getChannel","groupChannel","H_2","CHANNEL_SETTING__HEADER__TITLE","CLOSE","PlaceHolderTypes","WRONG","currentTitle","getErrorFirstCallback","params","data","updateChannel","AdminPanel","createDefaultUserListQuery","CHEVRON_RIGHT","then","res","LEAVE","ERROR","CHANNEL_SETTING__LEAVE_CHANNEL__TITLE","LeaveChannelModal","leave","oneOfType","element","number","userIdsFilter","metaDataKeyFilter","metaDataValuesFilter","createApplicationUserListQuery","any"],"mappings":";;;;;;;;;;;;AAYA,IAAMA,WAAW,GAAG,SAAdA,WAAc,CAACC,KAAD,EAAW;AAC7B,MACEC,SADF,GAMID,KANJ,CACEC,QADF;AAAA,MAEEC,QAFF,GAMIF,KANJ,CAEEE,QAFF;AAAA,MAGEC,OAHF,GAMIH,KANJ,CAGEG,OAHF;AAAA,MAIEC,MAJF,GAMIJ,KANJ,CAIEI,MAJF;AAAA,MAKEC,KALF,GAMIL,KANJ,CAKEK,KALF;AAOA,MAAMC,QAAQ,GAAGC,MAAM,CAAC,IAAD,CAAvB;AACA,MAAMC,OAAO,GAAGD,MAAM,CAAC,IAAD,CAAtB;AACA,MAAME,cAAc,GAAGF,MAAM,CAAC,IAAD,CAA7B;;AACA,kBAAoCG,QAAQ,CAAC,IAAD,CAA5C;AAAA;AAAA,MAAOC,UAAP;AAAA,MAAmBC,aAAnB;;AACA,mBAA8BF,QAAQ,CAAC,IAAD,CAAtC;AAAA;AAAA,MAAOG,OAAP;AAAA,MAAgBC,UAAhB;;AACA,oBAAsBC,UAAU,CAACC,mBAAD,CAAhC;AAAA,MAAQC,SAAR,eAAQA,SAAR;;AACA,MAAMC,KAAK,GAAGf,OAAO,CAACgB,IAAtB;AACA,sBACEC,6BAAC,KAAD;AACE,IAAA,SAAS,EAAEH,SAAS,CAACI,iCADvB;AAEE,IAAA,UAAU,EAAEJ,SAAS,CAACK,YAFxB;AAGE,IAAA,QAAQ,EAAEpB,QAHZ;AAIE,IAAA,QAAQ,EAAE,oBAAM;AACd,UAAIgB,KAAK,KAAK,EAAV,IAAgB,CAACZ,QAAQ,CAACiB,OAAT,CAAiBC,KAAtC,EAA6C;AAC3C,YAAIhB,OAAO,CAACe,OAAR,CAAgBE,cAApB,EAAoC;AAAE;AACpCjB,UAAAA,OAAO,CAACe,OAAR,CAAgBE,cAAhB;AACD;;AACD;AACD;;AACDxB,MAAAA,SAAQ,CAACY,OAAD,EAAUP,QAAQ,CAACiB,OAAT,CAAiBC,KAA3B,CAAR;;AACAtB,MAAAA,QAAQ;AACT,KAbH;AAcE,IAAA,IAAI,EAAEwB,IAAU,CAACC;AAdnB,kBAgBEP;AACE,IAAA,SAAS,EAAC,sBADZ;AAEE,IAAA,GAAG,EAAEZ,OAFP;AAGE,IAAA,QAAQ,EAAE,kBAACoB,CAAD,EAAO;AAAEA,MAAAA,CAAC,CAACC,cAAF;AAAqB;AAH1C,kBAKET;AAAK,IAAA,SAAS,EAAC;AAAf,kBACEA,6BAAC,UAAD,QACGH,SAAS,CAACa,yCADb,CADF,eAIEV;AAAK,IAAA,SAAS,EAAC;AAAf,KAEIT,UAAU,gBAENS,6BAAC,MAAD;AACE,IAAA,MAAM,EAAC,MADT;AAEE,IAAA,KAAK,EAAC,MAFR;AAGE,IAAA,GAAG,EAAET;AAHP,IAFM,gBAQNS,6BAAC,aAAD;AACE,IAAA,MAAM,EAAE,EADV;AAEE,IAAA,KAAK,EAAE,EAFT;AAGE,IAAA,OAAO,EAAEjB,OAHX;AAIE,IAAA,MAAM,EAAEC,MAJV;AAKE,IAAA,KAAK,EAAEC;AALT,IAVR,CAJF,eAwBEe;AACE,IAAA,GAAG,EAAEX,cADP;AAEE,IAAA,IAAI,EAAC,MAFP;AAGE,IAAA,MAAM,EAAC,kCAHT;AAIE,IAAA,KAAK,EAAE;AAAEsB,MAAAA,OAAO,EAAE;AAAX,KAJT;AAKE,IAAA,QAAQ,EAAE,kBAACH,CAAD,EAAO;AACfhB,MAAAA,aAAa,CAACoB,GAAG,CAACC,eAAJ,CAAoBL,CAAC,CAACM,MAAF,CAASC,KAAT,CAAe,CAAf,CAApB,CAAD,CAAb;AACArB,MAAAA,UAAU,CAACc,CAAC,CAACM,MAAF,CAASC,KAAT,CAAe,CAAf,CAAD,CAAV;AACA1B,MAAAA,cAAc,CAACc,OAAf,CAAuBC,KAAvB,GAA+B,EAA/B;AACD;AATH,IAxBF,eAmCEJ,6BAAC,UAAD;AACE,IAAA,SAAS,EAAC,qCADZ;AAEE,IAAA,OAAO,EAAE;AAAA,aAAMX,cAAc,CAACc,OAAf,CAAuBa,KAAvB,EAAN;AAAA,KAFX;AAGE,IAAA,YAAY;AAHd,kBAKEhB,6BAAC,KAAD;AAAO,IAAA,IAAI,EAAEiB,eAAe,CAACC,QAA7B;AAAuC,IAAA,KAAK,EAAEC,WAAW,CAACZ;AAA1D,KACGV,SAAS,CAACuB,kCADb,CALF,CAnCF,CALF,eAkDEpB;AAAK,IAAA,SAAS,EAAC;AAAf,kBACEA,6BAAC,UAAD,QACGH,SAAS,CAACwB,wCADb,CADF,eAIErB,6BAAC,KAAD;AACE,IAAA,QAAQ,EAAEF,KAAK,KAAK,EADtB;AAEE,IAAA,IAAI,EAAC,4BAFP;AAGE,IAAA,GAAG,EAAEZ,QAHP;AAIE,IAAA,KAAK,EAAEY,KAJT;AAKE,IAAA,WAAW,EAAED,SAAS,CAACyB;AALzB,IAJF,CAlDF,CAhBF,CADF;AAkFD,CAjGD;;AAmGA3C,WAAW,CAAC4C,SAAZ,GAAwB;AACtB1C,EAAAA,QAAQ,EAAE2C,SAAS,CAACC,IAAV,CAAeC,UADH;AAEtB5C,EAAAA,QAAQ,EAAE0C,SAAS,CAACC,IAAV,CAAeC,UAFH;AAGtB3C,EAAAA,OAAO,EAAEyC,SAAS,CAACG,KAAV,CAAgB;AACvB5B,IAAAA,IAAI,EAAEyB,SAAS,CAACI;AADO,GAAhB,EAENF,UALmB;AAMtB1C,EAAAA,MAAM,EAAEwC,SAAS,CAACI,MAAV,CAAiBF,UANH;AAOtBzC,EAAAA,KAAK,EAAEuC,SAAS,CAACI,MAAV,CAAiBF;AAPF,CAAxB;;ACpGA,IAAMG,cAAc,GAAG,SAAjBA,cAAiB,CAACjD,KAAD,EAAW;AAChC,MACEkD,QADF,GAMIlD,KANJ,CACEkD,QADF;AAAA,MAEE/C,OAFF,GAMIH,KANJ,CAEEG,OAFF;AAAA,MAGEC,MAHF,GAMIJ,KANJ,CAGEI,MAHF;AAAA,MAIEC,KAJF,GAMIL,KANJ,CAIEK,KAJF;AAAA,MAKE8C,mBALF,GAMInD,KANJ,CAKEmD,mBALF;;AAOA,kBAAkCzC,QAAQ,CAAC,KAAD,CAA1C;AAAA;AAAA,MAAO0C,SAAP;AAAA,MAAkBC,YAAlB;;AACA,oBAAsBtC,UAAU,CAACC,mBAAD,CAAhC;AAAA,MAAQC,SAAR,eAAQA,SAAR;;AAEA,MAAMqC,cAAc,GAAG,SAAjBA,cAAiB,GAAM;AAC3B,QAAInD,OAAO,IAAIA,OAAO,CAACgB,IAAnB,IAA2BhB,OAAO,CAACgB,IAAR,KAAiB,eAAhD,EAAiE;AAC/D,aAAOhB,OAAO,CAACgB,IAAf;AACD;;AACD,QAAIhB,OAAO,KAAKA,OAAO,CAACgB,IAAR,KAAiB,eAAjB,IAAoC,CAAChB,OAAO,CAACgB,IAAlD,CAAX,EAAoE;AAClE,aAAOhB,OAAO,CAACoD,OAAR,CAAgBC,GAAhB,CAAoB,UAACC,MAAD;AAAA,eAAYA,MAAM,CAACC,QAAP,IAAmBzC,SAAS,CAAC0C,OAAzC;AAAA,OAApB,EAAsEC,IAAtE,CAA2E,IAA3E,CAAP;AACD;;AACD,WAAO3C,SAAS,CAAC4C,QAAjB;AACD,GARD;;AAUA,sBACEzC;AAAK,IAAA,SAAS,EAAC;AAAf,kBACEA;AAAK,IAAA,SAAS,EAAC;AAAf,kBACEA;AAAK,IAAA,SAAS,EAAC;AAAf,kBACEA,6BAAC,aAAD;AACE,IAAA,OAAO,EAAEjB,OADX;AAEE,IAAA,MAAM,EAAEC,MAFV;AAGE,IAAA,KAAK,EAAEC,KAHT;AAIE,IAAA,KAAK,EAAE,EAJT;AAKE,IAAA,MAAM,EAAE;AALV,IADF,CADF,eAUEe,6BAAC,KAAD;AACE,IAAA,SAAS,EAAC,iCADZ;AAEE,IAAA,IAAI,EAAEiB,eAAe,CAACyB,UAFxB;AAGE,IAAA,KAAK,EAAEvB,WAAW,CAACwB;AAHrB,KAKGT,cAAc,EALjB,CAVF,eAiBElC,6BAAC,UAAD;AACE,IAAA,QAAQ,EAAE8B,QADZ;AAEE,IAAA,SAAS,EAAC,gCAFZ;AAGE,IAAA,OAAO,EAAE,mBAAM;AACb,UAAIA,QAAJ,EAAc;AAAE;AAAS;;AACzBG,MAAAA,YAAY,CAAC,IAAD,CAAZ;AACD,KANH;AAOE,IAAA,YAAY;AAPd,kBASEjC,6BAAC,KAAD;AACE,IAAA,IAAI,EAAEiB,eAAe,CAACC,QADxB;AAEE,IAAA,KAAK,EAAEY,QAAQ,GAAGX,WAAW,CAACyB,cAAf,GAAgCzB,WAAW,CAACZ;AAF7D,KAIGV,SAAS,CAACgD,8BAJb,CATF,CAjBF,EAkCIb,SAAS,iBACPhC,6BAAC8C,WAAD;AACE,IAAA,QAAQ,EAAE;AAAA,aAAMb,YAAY,CAAC,KAAD,CAAlB;AAAA,KADZ;AAEE,IAAA,QAAQ,EAAEF,mBAFZ;AAGE,IAAA,OAAO,EAAEhD,OAHX;AAIE,IAAA,MAAM,EAAEC,MAJV;AAKE,IAAA,KAAK,EAAEC;AALT,IAnCN,CADF,CADF;AAiDD,CAtED;;AAwEA4C,cAAc,CAACN,SAAf,GAA2B;AACzBxC,EAAAA,OAAO,EAAEyC,SAAS,CAACG,KAAV,CAAgB;AACvB5B,IAAAA,IAAI,EAAEyB,SAAS,CAACI,MADO;AAEvBO,IAAAA,OAAO,EAAEX,SAAS,CAACuB,OAAV,CACPvB,SAAS,CAACG,KAAV,CAAgB;AACdW,MAAAA,QAAQ,EAAEd,SAAS,CAACI;AADN,KAAhB,CADO;AAFc,GAAhB,EAONF,UARsB;AASzB1C,EAAAA,MAAM,EAAEwC,SAAS,CAACI,MAAV,CAAiBF,UATA;AAUzBzC,EAAAA,KAAK,EAAEuC,SAAS,CAACI,MAVQ;AAWzBE,EAAAA,QAAQ,EAAEN,SAAS,CAACwB,IAXK;AAYzBjB,EAAAA,mBAAmB,EAAEP,SAAS,CAACC;AAZN,CAA3B;AAeAI,cAAc,CAACoB,YAAf,GAA8B;AAC5BhE,EAAAA,KAAK,EAAE,OADqB;AAE5B6C,EAAAA,QAAQ,EAAE,KAFkB;AAG5BC,EAAAA,mBAAmB,EAAE,+BAAM;AAHC,CAA9B;;SC7EwBmB,aAAaC;MACnCC,SAAS;MACTrE,OAAO;MACPsE,WAAW;;AAEL,MAAAC,KAAwBhE,QAAQ,CAAC,EAAD,CAAhC;AAAA,MAAC6C,OAAO,QAAR;AAAA,MAAUoB,UAAU,QAApB;;AACA,MAAAC,KAAgClE,QAAQ,CAAC,IAAD,CAAxC;AAAA,MAACmE,WAAW,QAAZ;AAAA,MAAcC,cAAc,QAA5B;;AAENC,EAAAA,SAAS,CAAC;AACR,QAAMC,eAAe,GAAG7E,OAAO,CAAC8E,qBAAR,EAAxB;AACAD,IAAAA,eAAe,CAACE,KAAhB,GAAwB,EAAxB;AACAF,IAAAA,eAAe,CAACG,IAAhB,CAAqB,UAAC5B,OAAD,EAAU6B,KAAV;AACnB,UAAIA,KAAJ,EAAW;AACT;AACD;;AACDT,MAAAA,UAAU,CAACpB,OAAD,CAAV;AACD,KALD;AAMAuB,IAAAA,cAAc,CAACE,eAAD,CAAd;AACD,GAVQ,EAUN,EAVM,CAAT;AAWA,sBACE5D,uDACEA,6BAAC,KAAD;AACE,IAAA,UAAU,MADZ;AAEE,IAAA,QAAQ,EAAE;AAAM,aAAAoD,SAAS,EAAT;AAAW,KAF7B;AAGE,IAAA,QAAQ,EAAEa,IAHZ;AAIE,IAAA,SAAS,EAAC;AAJZ,kBAMEjE;AACE,IAAA,SAAS,EAAC,qCADZ;AAEE,IAAA,QAAQ,EAAE,kBAACQ,CAAD;AACA,UAAA0D,OAAO,GAAKT,WAAW,QAAvB;AACR,UAAM3C,MAAM,GAAGN,CAAC,CAACM,MAAjB;AACA,UAAMqD,SAAS,GACbrD,MAAM,CAACsD,YAAP,GAAsBtD,MAAM,CAACuD,SAA7B,KAA2CvD,MAAM,CAACwD,YADpD;;AAIA,UAAIJ,OAAO,IAAIC,SAAf,EAA0B;AACxBV,QAAAA,WAAW,CAACM,IAAZ,CAAiB,UAACQ,CAAD,EAAIP,KAAJ;AACf,cAAIA,KAAJ,EAAW;AACT;AACD;;AACDT,UAAAA,UAAU,iCACLpB,UACAoC,EAFK,CAAV;AAID,SARD;AASD;AACF;AApBH,KAsBIpC,OAAO,CAACC,GAAR,CAAY,UAACC,MAAD;AAAY,wBACxBrC,6BAACwE,cAAD;AACE,MAAA,IAAI,EAAEnC,MADR;AAEE,MAAA,GAAG,EAAEA,MAAM,CAACrD,MAFd;AAGE,MAAA,WAAW,EAAEqE,WAHf;AAIE,MAAA,MAAM,EAAE,gBAACF,EAAD;YAAGsB,SAAS;YAAEC,SAAS;AAAO,4BACpC1E,4DACGjB,OAAO,CAAC4F,MAAR,KAAmB,UAAnB,iBACC3E,6BAAC,WAAD;AACE,UAAA,WAAW,EAAE,qBAAC4E,cAAD;AAAoB,gCAC/B5E,6BAAC,UAAD;AACE,cAAA,SAAS,EAAC,mCADZ;AAEE,cAAA,KAAK,EAAC,MAFR;AAGE,cAAA,MAAM,EAAC,MAHT;AAIE,cAAA,OAAO,EAAE4E;AAJX,4BAME5E,6BAAC,IAAD;AACE,cAAA,KAAK,EAAC,MADR;AAEE,cAAA,MAAM,EAAC,MAFT;AAGE,cAAA,IAAI,EAAE6E,SAAS,CAACC,IAHlB;AAIE,cAAA,SAAS,EAAEC,UAAU,CAACC;AAJxB,cANF,CAD+B;AAchC,WAfH;AAgBE,UAAA,SAAS,EAAE,mBAACC,aAAD;AAAmB,gCAC5BjF,6BAAC,SAAD;AACE,cAAA,gBAAgB,EAAEyE,SADpB;AAEE,cAAA,SAAS,EAAEC,SAFb;AAAA;AAGE,cAAA,aAAa,EAAEO,aAHjB;AAIE,cAAA,QAAQ;AAJV,4BAMEjF,6BAAC,QAAD;AACE,cAAA,OAAO,EAAE;AACP,oBAAKqC,MAAM,CAAC6C,IAAP,KAAgB,UAArB,EAAkC;AAChCnG,kBAAAA,OAAO,CAACoG,YAAR,CAAqB,CAAC9C,MAAM,CAACrD,MAAR,CAArB,EAAsC;AACpCuE,oBAAAA,UAAU,CAACpB,OAAO,CAACC,GAAR,CAAY,UAAAgD,CAAA;AACrB,0BAAGA,CAAC,CAACpG,MAAF,KAAaqD,MAAM,CAACrD,MAAvB,EAA+B;AAC7B,qDACKqD;AACH6C,0BAAAA,IAAI,EAAE;0BAFR;AAID;;AACD,6BAAOE,CAAP;AACD,qBARU,CAAD,CAAV;AASAH,oBAAAA,aAAa;AACd,mBAXD;AAYD,iBAbD,MAaO;AACLlG,kBAAAA,OAAO,CAACsG,eAAR,CAAwB,CAAChD,MAAM,CAACrD,MAAR,CAAxB,EAAyC;AACvCuE,oBAAAA,UAAU,CAACpB,OAAO,CAACC,GAAR,CAAY,UAAAgD,CAAA;AACrB,0BAAGA,CAAC,CAACpG,MAAF,KAAaqD,MAAM,CAACrD,MAAvB,EAA+B;AAC7B,qDACKqD;AACH6C,0BAAAA,IAAI,EAAE;0BAFR;AAID;;AACD,6BAAOE,CAAP;AACD,qBARU,CAAD,CAAV;AASAH,oBAAAA,aAAa;AACd,mBAXD;AAYD;AACF;AA7BH,eA+BI5C,MAAM,CAAC6C,IAAP,KAAgB,UAAhB,GAA6B,qBAA7B,GAAqD,iBA/BzD,CANF;AAyCI,aAACnG,OAAO,CAACuG,WAAT,iBACEtF,6BAAC,QAAD;AACE,cAAA,OAAO,EAAE;AACP,oBAAIqC,MAAM,CAACkD,OAAX,EAAoB;AAClBxG,kBAAAA,OAAO,CAACyG,UAAR,CAAmBnD,MAAnB,EAA2B;AACzBkB,oBAAAA,UAAU,CAACpB,OAAO,CAACC,GAAR,CAAY,UAAAgD,CAAA;AACrB,0BAAGA,CAAC,CAACpG,MAAF,KAAaqD,MAAM,CAACrD,MAAvB,EAA+B;AAC7B,qDACKqD;AACHkD,0BAAAA,OAAO,EAAE;0BAFX;AAID;;AACD,6BAAOH,CAAP;AACD,qBARU,CAAD,CAAV;AASAH,oBAAAA,aAAa;AACd,mBAXD;AAYD,iBAbD,MAaO;AACLlG,kBAAAA,OAAO,CAAC0G,QAAR,CAAiBpD,MAAjB,EAAyB;AACvBkB,oBAAAA,UAAU,CAACpB,OAAO,CAACC,GAAR,CAAY,UAAAgD,CAAA;AACrB,0BAAGA,CAAC,CAACpG,MAAF,KAAaqD,MAAM,CAACrD,MAAvB,EAA+B;AAC7B,qDACKqD;AACHkD,0BAAAA,OAAO,EAAE;0BAFX;AAID;;AACD,6BAAOH,CAAP;AACD,qBARU,CAAD,CAAV;AASAH,oBAAAA,aAAa;AACd,mBAXD;AAYD;AACF;AA7BH,eA+BI5C,MAAM,CAACkD,OAAP,GAAiB,QAAjB,GAA4B,MA/BhC,CA1CN,eA6EEvF,6BAAC,QAAD;AACE,cAAA,OAAO,EAAE;AACPjB,gBAAAA,OAAO,CAAC2G,OAAR,CAAgBrD,MAAhB,EAAwB,CAAC,CAAzB,EAA4B,EAA5B,EAAgC;AAC9BkB,kBAAAA,UAAU,CAACpB,OAAO,CAACwD,MAAR,CAAe,UAACxC,EAAD;wBAAGnE,MAAM;AACjC,2BAAOA,MAAM,KAAKqD,MAAM,CAACrD,MAAzB;AACD,mBAFU,CAAD,CAAV;AAGD,iBAJD;AAKD;AAPH,qBA7EF,CAD4B;AA0F7B;AA1GH,UAFJ,CADoC;AAiHrC;AArHH,MADwB;AAwHzB,GAxHC,CAtBJ,CANF,CADF,CADF;AA2JD;;ACpLD,IAAM4G,gBAAgB,GAAG,EAAzB;;AAEA,IAAMpB,cAAY,GAAG,SAAfA,YAAe,OAAuC;AAAA,yBAApCnC,MAAoC;AAAA,MAApCA,MAAoC,4BAA3B,EAA2B;AAAA,8BAAvBgB,WAAuB;AAAA,MAAvBA,WAAuB,iCAAT,EAAS;AAC1D,MAAMwC,SAAS,GAAG1G,MAAM,CAAC,IAAD,CAAxB;;AACA,oBAGIQ,UAAU,CAACmG,kBAAD,CAHd;AAAA,MACEC,kBADF,eACEA,kBADF;AAAA,MAEEC,iBAFF,eAEEA,iBAFF;;AAIA,qBAAsBrG,UAAU,CAACC,mBAAD,CAAhC;AAAA,MAAQC,SAAR,gBAAQA,SAAR;;AACA,sBACEG;AAAK,IAAA,SAAS,EAAC;AAAf,kBACEA;AAAK,IAAA,SAAS,EAAC;AAAf,kBACEA,6BAAC,WAAD;AACE,IAAA,WAAW,EAAE,qBAAC4E,cAAD;AAAA,0BACX5E,6BAAC,MAAD;AACE,QAAA,OAAO,EAAE,mBAAM;AACb,cAAI,CAAC+F,kBAAL,EAAyB;AACvBnB,YAAAA,cAAc;AACf;AACF,SALH;AAME,QAAA,GAAG,EAAEiB,SANP;AAOE,QAAA,GAAG,EAAExD,MAAM,CAAC4D,UAPd;AAQE,QAAA,KAAK,EAAE,EART;AASE,QAAA,MAAM,EAAE;AATV,QADW;AAAA,KADf;AAcE,IAAA,SAAS,EAAE,mBAAChB,aAAD;AAAA,0BACTjF,6BAAC,SAAD;AACE,QAAA,QAAQ,MADV;AAEE,QAAA,SAAS,EAAE6F,SAFb;AAAA;AAIE,QAAA,gBAAgB,EAAEA,SAJpB;AAAA;AAME,QAAA,aAAa,EAAEZ,aANjB;AAOE,QAAA,KAAK,EAAE;AAAEiB,UAAAA,UAAU,EAAE,CAAd;AAAiBC,UAAAA,aAAa,EAAE;AAAhC;AAPT,SAUIH,iBAAiB,GACbA,iBAAiB,CAAC;AAClBI,QAAAA,IAAI,EAAE/D,MADY;AAElBgE,QAAAA,aAAa,EAAEhD,WAFG;AAGlBiD,QAAAA,KAAK,EAAErB;AAHW,OAAD,CADJ,gBAObjF,6BAACuG,oBAAD;AACE,QAAA,IAAI,EAAElE,MADR;AAEE,QAAA,aAAa,EAAEgB,WAFjB;AAGE,QAAA,SAAS,EAAE4B;AAHb,QAjBR,CADS;AAAA;AAdb,IADF,CADF,eA6CEjF,6BAAC,KAAD;AAAO,IAAA,IAAI,EAAEiB,eAAe,CAACyB,UAA7B;AAAyC,IAAA,KAAK,EAAEvB,WAAW,CAACwB;AAA5D,KACGN,MAAM,CAACC,QAAP,IAAmBzC,SAAS,CAAC0C,OADhC,EAGKc,WAAW,KAAKhB,MAAM,CAACrD,MAAxB,IACEa,SAAS,CAAC2G,GAJhB,CA7CF,CADF;AAwDD,CA/DD;;AAiEAhC,cAAY,CAACjD,SAAb,GAAyB;AACvBc,EAAAA,MAAM,EAAEb,SAAS,CAACG,KAAV,CAAgB;AACtB3C,IAAAA,MAAM,EAAEwC,SAAS,CAACI,MADI;AAEtBqE,IAAAA,UAAU,EAAEzE,SAAS,CAACI,MAFA;AAGtBU,IAAAA,QAAQ,EAAEd,SAAS,CAACI;AAHE,GAAhB,EAILF,UALoB;AAMvB2B,EAAAA,WAAW,EAAE7B,SAAS,CAACI,MAAV,CAAiBF;AANP,CAAzB;;AASA,IAAM+E,gBAAgB,GAAG,SAAnBA,gBAAmB,QAOnB;AAAA,MANJ1H,OAMI,SANJA,OAMI;AAAA,MALJ+C,QAKI,SALJA,QAKI;AAAA,MAJJuB,WAII,SAJJA,WAII;AAAA,MAHJqD,gBAGI,SAHJA,gBAGI;AAAA,MAFJC,eAEI,SAFJA,eAEI;AAAA,MADJC,UACI,SADJA,UACI;AACJ,MAAMzE,OAAO,GAAGpD,OAAO,CAACoD,OAAR,IAAmB,EAAnC;;AACA,kBAA0C7C,QAAQ,CAAC,KAAD,CAAlD;AAAA;AAAA,MAAOuH,aAAP;AAAA,MAAsBC,gBAAtB;;AACA,mBAAgDxH,QAAQ,CAAC,KAAD,CAAxD;AAAA;AAAA,MAAOyH,gBAAP;AAAA,MAAyBC,mBAAzB;;AACA,qBAAsBrH,UAAU,CAACC,mBAAD,CAAhC;AAAA,MAAQC,SAAR,gBAAQA,SAAR;;AACA,sBACEG;AAAK,IAAA,SAAS,EAAC;AAAf,kBACEA;AAAK,IAAA,SAAS,EAAC;AAAf,KAEImC,OAAO,CAAC8E,KAAR,CAAc,CAAd,EAAiBrB,gBAAjB,EAAmCxD,GAAnC,CAAuC,UAACC,MAAD;AAAA,wBACrCrC,6BAACwE,cAAD;AACE,MAAA,MAAM,EAAEnC,MADV;AAEE,MAAA,WAAW,EAAEgB,WAFf;AAGE,MAAA,GAAG,EAAEhB,MAAM,CAACrD;AAHd,MADqC;AAAA,GAAvC,CAFJ,CADF,eAYEgB;AAAK,IAAA,SAAS,EAAC;AAAf,KAEImC,OAAO,CAAC+E,MAAR,IAAkBtB,gBAAlB,iBACE5F,6BAAC,MAAD;AACE,IAAA,SAAS,EAAC,iDADZ;AAEE,IAAA,IAAI,EAAEmH,WAAW,CAACC,SAFpB;AAGE,IAAA,IAAI,EAAEC,WAAW,CAACC,KAHpB;AAIE,IAAA,OAAO,EAAE;AAAA,aAAMR,gBAAgB,CAAC,IAAD,CAAtB;AAAA;AAJX,KAMGjH,SAAS,CAAC0H,yCANb,CAHN,EAcIpF,OAAO,CAAC+E,MAAR,IAAkBtB,gBAAlB,IAAsCiB,aAAtC,iBACE7G,6BAAC,YAAD;AACE,IAAA,WAAW,EAAEqD,WADf;AAEE,IAAA,SAAS,EAAE,qBAAM;AACfyD,MAAAA,gBAAgB,CAAC,KAAD,CAAhB;AACD,KAJH;AAKE,IAAA,OAAO,EAAE/H;AALX,IAfN,eAwBEiB,6BAAC,MAAD;AACE,IAAA,SAAS,EAAC,kDADZ;AAEE,IAAA,IAAI,EAAEmH,WAAW,CAACC,SAFpB;AAGE,IAAA,IAAI,EAAEC,WAAW,CAACC,KAHpB;AAIE,IAAA,QAAQ,EAAExF,QAJZ;AAKE,IAAA,OAAO,EAAE,mBAAM;AACb,UAAIA,QAAJ,EAAc;AAAE;AAAS;;AACzBkF,MAAAA,mBAAmB,CAAC,IAAD,CAAnB;AACD;AARH,KAUGnH,SAAS,CAAC2H,uCAVb,CAxBF,EAqCIT,gBAAgB,iBACd/G,6BAACyH,eAAD;AACE,IAAA,UAAU,EAAEb,UADd;AAEE,IAAA,SAAS,EAAE/G,SAAS,CAAC6H,2BAFvB;AAGE,IAAA,UAAU,EAAE7H,SAAS,CAAC8H,cAHxB;AAIE,IAAA,UAAU,EAAE;AAAA,aAAMX,mBAAmB,CAAC,KAAD,CAAzB;AAAA,KAJd;AAKE,IAAA,WAAW,EAAE7E,OAAO,CAACC,GAAR,CAAY,UAACC,MAAD;AAAA,aAAaA,MAAM,CAACrD,MAApB;AAAA,KAAZ,CALf;AAME,IAAA,gBAAgB,EAAE0H,gBANpB;AAOE,IAAA,QAAQ,EAAEC;AAPZ,IAtCN,CAZF,CADF;AAiED,CA7ED;;AA+EAF,gBAAgB,CAAClF,SAAjB,GAA6B;AAC3BqF,EAAAA,UAAU,EAAEpF,SAAS,CAACwB,IADK;AAE3BlB,EAAAA,QAAQ,EAAEN,SAAS,CAACwB,IAFO;AAG3BjE,EAAAA,OAAO,EAAEyC,SAAS,CAACG,KAAV,CAAgB;AACvBQ,IAAAA,OAAO,EAAEX,SAAS,CAACuB,OAAV,CAAkBvB,SAAS,CAACG,KAAV,CAAgB,EAAhB,CAAlB;AADc,GAAhB,CAHkB;AAM3B0B,EAAAA,WAAW,EAAE7B,SAAS,CAACI,MANI;AAO3B8E,EAAAA,gBAAgB,EAAElF,SAAS,CAACC,IAAV,CAAeC,UAPN;AAQ3BiF,EAAAA,eAAe,EAAEnF,SAAS,CAACC,IAAV,CAAeC;AARL,CAA7B;AAWA+E,gBAAgB,CAACxD,YAAjB,GAAgC;AAC9B2D,EAAAA,UAAU,EAAE,KADkB;AAE9BvD,EAAAA,WAAW,EAAE,EAFiB;AAG9BvB,EAAAA,QAAQ,EAAE,KAHoB;AAI9B/C,EAAAA,OAAO,EAAE;AAJqB,CAAhC;;ACrLA;AAeA,IAAM6I,cAAc,GAAG,gCAAvB;;AAmBA,IAAMpD,YAAY,GAAG,SAAfA,YAAe,CAACrB,EAAD;MACnBiD,IAAI;MACJyB,SAAS;MACTxE,WAAW;MACXyE,MAAM;AAEN,MAAMpD,SAAS,GAAGvF,MAAM,CAAC,IAAD,CAAxB;AACA,MAAMsF,SAAS,GAAGtF,MAAM,CAAC,IAAD,CAAxB;AACA,MAAM0G,SAAS,GAAG1G,MAAM,CAAC,IAAD,CAAxB;AACQ,MAAAU,SAAS,GAAKF,UAAU,CAACC,mBAAD,CAAV,UAAd;;AACF,MAAA0D,KAGF3D,UAAU,CAACmG,kBAAD,CAHR;AAAA,MACJC,kBAAkB,wBADd;AAAA,MAEJC,iBAAiB,uBAFb;;AAIN,MAAM+B,mBAAmB,GAAGC,KAAK,CAACC,OAAN,CAAcJ,SAAd,IAA2BA,SAA3B,GAAuC,CAACA,SAAD,CAAnE;AACA,sBACE7H;AACE,IAAA,GAAG,EAAEyE,SADP;AAEE,IAAA,SAAS,EAAEyD,eACTN,iBAAmBG,oBADV,CAETvF,IAFS,CAEJ,GAFI;AAFb,KAOI4D,IAAI,CAACb,OAAL,iBACEvF,6BAAC,kBAAD,OARN,eAWEA,6BAAC,WAAD;AACE,IAAA,WAAW,EAAE,qBAAC4E,cAAD;AAAoB,0BAC/B5E,6BAAC,MAAD;AACE,QAAA,OAAO,EAAE;AACP,cAAI,CAAC+F,kBAAL,EAAyB;AACvBnB,YAAAA,cAAc;AACf;AACF,SALH;AAME,QAAA,GAAG,EAAEiB,SANP;AAOE,QAAA,SAAS,EAAK+B,cAAc,aAP9B;AAQE,QAAA,GAAG,EAAExB,IAAI,CAACH,UARZ;AASE,QAAA,KAAK,EAAE,EATT;AAUE,QAAA,MAAM,EAAE;AAVV,QAD+B;AAahC,KAdH;AAeE,IAAA,SAAS,EAAE,mBAAChB,aAAD;AAAmB,0BAC5BjF,6BAAC,SAAD;AACE,QAAA,QAAQ,MADV;AAEE,QAAA,SAAS,EAAE6F,SAFb;AAAA;AAIE,QAAA,gBAAgB,EAAEA,SAJpB;AAAA;AAME,QAAA,aAAa,EAAEZ,aANjB;AAOE,QAAA,KAAK,EAAE;AAAEiB,UAAAA,UAAU,EAAE,CAAd;AAAiBC,UAAAA,aAAa,EAAE;AAAhC;AAPT,SAUIH,iBAAiB,GACbA,iBAAiB,CAAC;AAClBI,QAAAA,IAAI,MADc;AAElBC,QAAAA,aAAa,EAAEhD,WAFG;AAGlBiD,QAAAA,KAAK,EAAErB;AAHW,OAAD,CADJ,gBAObjF,6BAACuG,oBAAD;AACE,QAAA,IAAI,EAAEH,IADR;AAEE,QAAA,aAAa,EAAE/C,WAFjB;AAGE,QAAA,SAAS,EAAE4B;AAHb,QAjBR,CAD4B;AA0B7B;AAzCH,IAXF,eAsDEjF,6BAAC,KAAD;AACE,IAAA,SAAS,EAAK4H,cAAc,YAD9B;AAEE,IAAA,IAAI,EAAE3G,eAAe,CAACkH,UAFxB;AAGE,IAAA,KAAK,EAAEhH,WAAW,CAACwB;AAHrB,KAKGyD,IAAI,CAAC9D,QAAL,IAAiBzC,SAAS,CAAC0C,OAL9B,EAOKc,WAAW,KAAK+C,IAAI,CAACpH,MAAtB,IACE,QARN,CAtDF;AAmEI,GAACoH,IAAI,CAAC9D,QAAN,iBACEtC,6BAAC,KAAD;AACE,IAAA,SAAS,EAAK4H,cAAc,eAD9B;AAEE,IAAA,IAAI,EAAE3G,eAAe,CAACmH,SAFxB;AAGE,IAAA,KAAK,EAAEjH,WAAW,CAACyB;AAHrB,KAKGwD,IAAI,CAACpH,MALR,CApEN,EA8EIoH,IAAI,CAAClB,IAAL,KAAc,UAAd,iBACElF,6BAAC,KAAD;AACE,IAAA,SAAS,EAAK4H,cAAc,eAD9B;AAEE,IAAA,IAAI,EAAE3G,eAAe,CAACyB,UAFxB;AAGE,IAAA,KAAK,EAAEvB,WAAW,CAACyB;AAHrB,gBA/EN,EAyFIkF,MAAM,iBACJ9H;AAAK,IAAA,GAAG,EAAE0E,SAAV;AAAqB,IAAA,SAAS,EAAKkD,cAAc;AAAjD,KACIE,MAAM,CAAC;AAAEpD,IAAAA,SAAS,WAAX;AAAaD,IAAAA,SAAS;AAAtB,GAAD,CADV,CA1FN,CADF;AAkGD,CAjHD;;SCZwB4D,eAAelF;MACrCC,SAAS;MACTrE,OAAO;MACPsE,WAAW;;AAEL,MAAAC,KAA4BhE,QAAQ,CAAC,EAAD,CAApC;AAAA,MAACgJ,SAAS,QAAV;AAAA,MAAYC,YAAY,QAAxB;;AACA,MAAA/E,KAAoClE,QAAQ,CAAC,IAAD,CAA5C;AAAA,MAACkJ,aAAa,QAAd;AAAA,MAAgBC,gBAAgB,QAAhC;;AAEN9E,EAAAA,SAAS,CAAC;AACR,QAAM+E,iBAAiB,GAAG3J,OAAO,CAAC4J,uBAAR,EAA1B;AACAD,IAAAA,iBAAiB,CAAC5E,KAAlB,GAA0B,EAA1B;AACA4E,IAAAA,iBAAiB,CAAC3E,IAAlB,CAAuB,UAACuE,SAAD,EAAYtE,KAAZ;AACrB,UAAIA,KAAJ,EAAW;AACT;AACD;;AACDuE,MAAAA,YAAY,CAACD,SAAD,CAAZ;AACD,KALD;AAMAG,IAAAA,gBAAgB,CAACC,iBAAD,CAAhB;AACD,GAVQ,EAUN,EAVM,CAAT;AAWA,sBACE1I,uDACEA,6BAAC,KAAD;AACE,IAAA,UAAU,MADZ;AAEE,IAAA,QAAQ,EAAE;AAAM,aAAAoD,SAAS,EAAT;AAAW,KAF7B;AAGE,IAAA,QAAQ,EAAEa,IAHZ;AAIE,IAAA,SAAS,EAAC;AAJZ,kBAMEjE;AACE,IAAA,SAAS,EAAC,qCADZ;AAEE,IAAA,QAAQ,EAAE,kBAACQ,CAAD;AACA,UAAA0D,OAAO,GAAKsE,aAAa,QAAzB;AACR,UAAM1H,MAAM,GAAGN,CAAC,CAACM,MAAjB;AACA,UAAMqD,SAAS,GACbrD,MAAM,CAACsD,YAAP,GAAsBtD,MAAM,CAACuD,SAA7B,KAA2CvD,MAAM,CAACwD,YADpD;;AAIA,UAAIJ,OAAO,IAAIC,SAAf,EAA0B;AACxBqE,QAAAA,aAAa,CAACzE,IAAd,CAAmB,UAACQ,CAAD,EAAIP,KAAJ;AACjB,cAAIA,KAAJ,EAAW;AACT;AACD;;AACDuE,UAAAA,YAAY,iCACPD,YACA/D,EAFO,CAAZ;AAID,SARD;AASD;AACF;AApBH,KAsBI+D,SAAS,CAAClG,GAAV,CAAc,UAACC,MAAD;AAAY,wBAC1BrC,6BAACwE,cAAD;AACE,MAAA,WAAW,EAAEnB,WADf;AAEE,MAAA,IAAI,EAAEhB,MAFR;AAGE,MAAA,GAAG,EAAEA,MAAM,CAACrD,MAHd;AAIE,MAAA,MAAM,EAAE,gBAACmE,EAAD;YAAGsB,SAAS;YAAEC,SAAS;AAAO,4BACpC1E,6BAAC,WAAD;AACE,UAAA,WAAW,EAAE,qBAAC4E,cAAD;AAAoB,gCAC/B5E,6BAAC,UAAD;AACE,cAAA,SAAS,EAAC,mCADZ;AAEE,cAAA,KAAK,EAAC,MAFR;AAGE,cAAA,MAAM,EAAC,MAHT;AAIE,cAAA,OAAO,EAAE4E;AAJX,4BAME5E,6BAAC,IAAD;AACE,cAAA,KAAK,EAAC,MADR;AAEE,cAAA,MAAM,EAAC,MAFT;AAGE,cAAA,IAAI,EAAE6E,SAAS,CAACC,IAHlB;AAIE,cAAA,SAAS,EAAEC,UAAU,CAACC;AAJxB,cANF,CAD+B;AAchC,WAfH;AAgBE,UAAA,SAAS,EAAE,mBAACC,aAAD;AAAmB,gCAC5BjF,6BAAC,SAAD;AACE,cAAA,gBAAgB,EAAEyE,SADpB;AAEE,cAAA,SAAS,EAAEC,SAFb;AAAA;AAGE,cAAA,aAAa,EAAEO,aAHjB;AAIE,cAAA,QAAQ;AAJV,4BAMEjF,6BAAC,QAAD;AACE,cAAA,OAAO,EAAE;AACPjB,gBAAAA,OAAO,CAACsG,eAAR,CAAwB,CAAChD,MAAM,CAACrD,MAAR,CAAxB,EAAyC,UAAC4J,QAAD,EAAW5E,KAAX;AACvC,sBAAIA,KAAJ,EAAW;AACT;AACD;;AACDuE,kBAAAA,YAAY,CAACD,SAAS,CAAC3C,MAAV,CAAiB,UAACxC,EAAD;wBAAGnE,MAAM;AACrC,2BAAOA,MAAM,KAAKqD,MAAM,CAACrD,MAAzB;AACD,mBAFY,CAAD,CAAZ;AAGD,iBAPD;AAQAiG,gBAAAA,aAAa;AACd;AAXH,kCANF,CAD4B;AAuB7B;AAvCH,UADoC;AA0CrC;AA9CH,MAD0B;AAiD3B,GAjDC,CAtBJ,CANF,CADF,CADF;AAoFD;;SCpGuB4D,kBAAkB1F;MACxCC,SAAS;MACTrE,OAAO;MACPF,SAAQ;;AAEF,MAAAyE,KAAwBhE,QAAQ,CAAC,EAAD,CAAhC;AAAA,MAAC6C,OAAO,QAAR;AAAA,MAAUoB,UAAU,QAApB;;AACA,MAAAC,KAAwClE,QAAQ,CAAC,EAAD,CAAhD;AAAA,MAACwJ,eAAe,QAAhB;AAAA,MAAkBC,kBAAkB,QAApC;;AACA,MAAAC,KAAgC1J,QAAQ,CAAC,IAAD,CAAxC;AAAA,MAACmE,WAAW,QAAZ;AAAA,MAAcC,cAAc,QAA5B;;AACE,MAAA7D,SAAS,GAAKF,UAAU,CAACC,mBAAD,CAAV,UAAd;AAER+D,EAAAA,SAAS,CAAC;AACR,QAAMC,eAAe,GAAG7E,OAAO,CAAC8E,qBAAR,EAAxB;AACAD,IAAAA,eAAe,CAACE,KAAhB,GAAwB,EAAxB;AACAF,IAAAA,eAAe,CAACG,IAAhB,CAAqB,UAAC5B,OAAD,EAAU6B,KAAV;AACnB,UAAIA,KAAJ,EAAW;AACT;AACD;;AACDT,MAAAA,UAAU,CAACpB,OAAD,CAAV;AACD,KALD;AAMAuB,IAAAA,cAAc,CAACE,eAAD,CAAd;AACD,GAVQ,EAUN,EAVM,CAAT;AAYA,MAAMqF,aAAa,GAAGC,MAAM,CAACC,IAAP,CAAYL,eAAZ,EAA6BnD,MAA7B,CAAoC,UAACP,CAAD;AAAO,WAAA0D,eAAe,CAAC1D,CAAD,CAAf;AAAkB,GAA7D,EAA+D8B,MAArF;AACA,sBACElH,uDACEA,6BAAC,KAAD;AACE,IAAA,IAAI,EAAEM,IAAU,CAACC,OADnB;AAEE,IAAA,UAAU,EAAC,KAFb;AAGE,IAAA,QAAQ,EAAE;AAAM,aAAA6C,SAAS,EAAT;AAAW,KAH7B;AAIE,IAAA,QAAQ,EAAE;AACR,UAAMjB,OAAO,GAAG+G,MAAM,CAACC,IAAP,CAAYL,eAAZ,EAA6BnD,MAA7B,CAAoC,UAACP,CAAD;AAAO,eAAA0D,eAAe,CAAC1D,CAAD,CAAf;AAAkB,OAA7D,CAAhB;;AACAvG,MAAAA,SAAQ,CAACsD,OAAD,CAAR;AACD,KAPH;AAQE,IAAA,SAAS,EAAC;AARZ,kBAUEnC,6BAAC,KAAD;AACE,IAAA,KAAK,EAAGiJ,aAAa,GAAG,CAAjB,GAAsB9H,WAAW,CAACZ,OAAlC,GAA4CY,WAAW,CAACiI,cADjE;AAEE,IAAA,IAAI,EAAEnI,eAAe,CAACoI;AAFxB,KAIMJ,aAAa,MAAb,GAAiBpJ,SAAS,CAACyJ,8BAJjC,CAVF,eAgBEtJ;AACE,IAAA,SAAS,EAAC,qCADZ;AAEE,IAAA,QAAQ,EAAE,kBAACQ,CAAD;AACA,UAAA0D,OAAO,GAAKT,WAAW,QAAvB;AACR,UAAM3C,MAAM,GAAGN,CAAC,CAACM,MAAjB;AACA,UAAMqD,SAAS,GACbrD,MAAM,CAACsD,YAAP,GAAsBtD,MAAM,CAACuD,SAA7B,KAA2CvD,MAAM,CAACwD,YADpD;;AAIA,UAAIJ,OAAO,IAAIC,SAAf,EAA0B;AACxBV,QAAAA,WAAW,CAACM,IAAZ,CAAiB,UAACQ,CAAD,EAAIP,KAAJ;AACf,cAAIA,KAAJ,EAAW;AACT;AACD;;AACDT,UAAAA,UAAU,iCACLpB,UACAoC,EAFK,CAAV;AAID,SARD;AASD;AACF;AApBH,KAsBIpC,OAAO,CAACC,GAAR,CAAY,UAACC,MAAD;AAAY,wBACxBrC,6BAACwE,cAAD;AACE,MAAA,QAAQ,MADV;AAEE,MAAA,OAAO,EAAEsE,eAAe,CAACzG,MAAM,CAACrD,MAAR,CAF1B;AAGE,MAAA,QAAQ,EACN,kBAACuK,KAAD;;;AACE,YAAMC,uBAAuB,yBACxBV,+BACFS,KAAK,CAACzI,MAAN,CAAa2I,MAAKF,KAAK,CAACzI,MAAN,CAAa4I,aAFlC;;AAIA,YAAI,CAACH,KAAK,CAACzI,MAAN,CAAa4I,OAAlB,EAA2B;AACzB,iBAAOF,uBAAuB,CAACD,KAAK,CAACzI,MAAN,CAAa2I,EAAd,CAA9B;AACD;;AACDV,QAAAA,kBAAkB,CAACS,uBAAD,CAAlB;AACD,OAbL;AAeE,MAAA,IAAI,EAAEnH,MAfR;AAgBE,MAAA,GAAG,EAAEA,MAAM,CAACrD;AAhBd,MADwB;AAmBzB,GAnBC,CAtBJ,CAhBF,CADF,CADF;AAgED;;ACrFM,IAAM2K,YAAY,GAAG,SAAfA,YAAe,CAACxG,EAAD;MAAGyG,GAAG;MAAE7K,OAAO;;AACnC,MAAAuE,KAA4BhE,QAAQ,CAAC,EAAD,CAApC;AAAA,MAACgJ,SAAS,QAAV;AAAA,MAAYC,YAAY,QAAxB;;AACA,MAAA/E,KAA0BlE,QAAQ,CAAC,KAAD,CAAlC;AAAA,MAACuK,QAAQ,QAAT;AAAA,MAAWC,WAAW,QAAtB;;AACA,MAAAd,KAAwB1J,QAAQ,CAAC,KAAD,CAAhC;AAAA,MAACyK,OAAO,QAAR;AAAA,MAAUC,UAAU,QAApB;;AACA,MAAAC,KAAwB3K,QAAQ,CAAC,KAAD,CAAhC;AAAA,MAAC4E,OAAO,QAAR;AAAA,MAAUgG,UAAU,QAApB;;AACE,MAAArK,SAAS,GAAKF,UAAU,CAACC,mBAAD,CAAV,UAAd;AAER+D,EAAAA,SAAS,CAAC;AACR,QAAI,CAAC5E,OAAL,EAAc;AACZwJ,MAAAA,YAAY,CAAC,EAAD,CAAZ;AACA;AACD;;AAED,QAAMG,iBAAiB,GAAG3J,OAAO,CAAC4J,uBAAR,EAA1B;AACAD,IAAAA,iBAAiB,CAAC5E,KAAlB,GAA0B,EAA1B;AACA4E,IAAAA,iBAAiB,CAAC3E,IAAlB,CAAuB,UAACuE,SAAD,EAAYtE,KAAZ;AACrB,UAAIA,KAAJ,EAAW;AACT;AACD;;AACDuE,MAAAA,YAAY,CAACD,SAAD,CAAZ;AACA4B,MAAAA,UAAU,CAACxB,iBAAiB,CAACxE,OAAnB,CAAV;AACD,KAND;AAOD,GAfQ,EAeN,CAACnF,OAAD,CAfM,CAAT;AAiBA,MAAMoL,WAAW,GAAGC,WAAW,CAC7B;AACE,QAAI,CAACrL,OAAL,EAAc;AACZwJ,MAAAA,YAAY,CAAC,EAAD,CAAZ;AACA;AACD;;AACD,QAAMG,iBAAiB,GAAG3J,OAAO,CAAC4J,uBAAR,EAA1B;AACAD,IAAAA,iBAAiB,CAAC5E,KAAlB,GAA0B,EAA1B;AACA4E,IAAAA,iBAAiB,CAAC3E,IAAlB,CAAuB,UAACuE,SAAD,EAAYtE,KAAZ;AACrB,UAAIA,KAAJ,EAAW;AACT;AACD;;AACDuE,MAAAA,YAAY,CAACD,SAAD,CAAZ;AACA4B,MAAAA,UAAU,CAACxB,iBAAiB,CAACxE,OAAnB,CAAV;AACD,KAND;AAOD,GAf4B,EAgB7B,CAACnF,OAAD,CAhB6B,CAA/B;AAmBA,sBACEiB,4DAEIsI,SAAS,CAAClG,GAAV,CAAc,UAACiI,QAAD;AAAc,wBAC1BrK,6BAAC,YAAD;AACE,MAAA,GAAG,EAAEqK,QAAQ,CAACrL,MADhB;AAEE,MAAA,IAAI,EAAEqL,QAFR;AAGE,MAAA,WAAW,EAAET,GAAG,CAACvG,WAAJ,CAAgBrE,MAH/B;AAIE,MAAA,MAAM,EAAE,gBAACmE,EAAD;YAAGuB,SAAS;YAAED,SAAS;AAC7B,4BACEzE,6BAAC,WAAD;AACE,UAAA,WAAW,EAAE,qBAAC4E,cAAD;AAAoB,gCAC/B5E,6BAAC,UAAD;AACE,cAAA,SAAS,EAAC,mCADZ;AAEE,cAAA,KAAK,EAAC,MAFR;AAGE,cAAA,MAAM,EAAC,MAHT;AAIE,cAAA,OAAO,EAAE4E;AAJX,4BAME5E,6BAAC,IAAD;AACE,cAAA,KAAK,EAAC,MADR;AAEE,cAAA,MAAM,EAAC,MAFT;AAGE,cAAA,IAAI,EAAE6E,SAAS,CAACC,IAHlB;AAIE,cAAA,SAAS,EAAEC,UAAU,CAACC;AAJxB,cANF,CAD+B;AAchC,WAfH;AAgBE,UAAA,SAAS,EAAE,mBAACC,aAAD;AAAmB,gCAC5BjF,6BAAC,SAAD;AACE,cAAA,gBAAgB,EAAEyE,SADpB;AAEE,cAAA,SAAS,EAAEC,SAFb;AAAA;AAGE,cAAA,aAAa,EAAEO,aAHjB;AAIE,cAAA,QAAQ;AAJV,4BAMEjF,6BAAC,QAAD;AACE,cAAA,OAAO,EAAE;AACPjB,gBAAAA,OAAO,CAACsG,eAAR,CAAwB,CAACgF,QAAQ,CAACrL,MAAV,CAAxB,EAA2C,UAAC4J,QAAD,EAAW5E,KAAX;AACzC,sBAAIA,KAAJ,EAAW;AACT;AACD;;AACDuE,kBAAAA,YAAY,CAACD,SAAS,CAAC3C,MAAV,CAAiB,UAACxC,EAAD;wBAAGnE,MAAM;AACrC,2BAAOA,MAAM,KAAKqL,QAAQ,CAACrL,MAA3B;AACD,mBAFY,CAAD,CAAZ;AAGD,iBAPD;AAQAiG,gBAAAA,aAAa;AACd;AAXH,kCANF,CAD4B;AAuB7B;AAvCH,UADF;AA2CD;AAhDH,MAD0B;AAmD3B,GAnDD,CAFJ,EAwDIf,OAAO,iBACLlE;AACE,IAAA,SAAS,EAAC;AADZ,kBAGEA,6BAAC,MAAD;AACE,IAAA,IAAI,EAAEmH,WAAW,CAACC,SADpB;AAEE,IAAA,IAAI,EAAEC,WAAW,CAACC,KAFpB;AAGE,IAAA,OAAO,EAAE;AACPwC,MAAAA,WAAW,CAAC,IAAD,CAAX;AACD;AALH,KAOGjK,SAAS,CAACyK,qCAPb,CAHF,eAYEtK,6BAAC,MAAD;AACE,IAAA,IAAI,EAAEmH,WAAW,CAACC,SADpB;AAEE,IAAA,IAAI,EAAEC,WAAW,CAACC,KAFpB;AAGE,IAAA,OAAO,EAAE;AACP0C,MAAAA,UAAU,CAAC,IAAD,CAAV;AACD;AALH,KAOGnK,SAAS,CAAC0K,qCAPb,CAZF,CAzDN,EAkFIV,QAAQ,iBACN7J,6BAAC,cAAD;AACE,IAAA,WAAW,EAAE4J,GAAG,CAACvG,WAAJ,CAAgBrE,MAD/B;AAEE,IAAA,SAAS,EAAE;AACT8K,MAAAA,WAAW,CAAC,KAAD,CAAX;AACAK,MAAAA,WAAW;AACZ,KALH;AAME,IAAA,OAAO,EAAEpL;AANX,IAnFN,EA8FIgL,OAAO,iBACL/J,6BAAC,iBAAD;AACE,IAAA,SAAS,EAAE;AAAM,aAAAgK,UAAU,CAAC,KAAD,CAAV;AAAiB,KADpC;AAEE,IAAA,OAAO,EAAEjL,OAFX;AAGE,IAAA,QAAQ,EAAE,kBAACoD,OAAD;AACR6H,MAAAA,UAAU,CAAC,KAAD,CAAV;AACAjL,MAAAA,OAAO,CAACoG,YAAR,CAAqBhD,OAArB,EAA8B;AAC5BgI,QAAAA,WAAW;AACZ,OAFD;AAGD;AARH,IA/FN,CADF;AA8GD,CAzJM;;AA2JP,IAAMK,iBAAe,GAAG,SAAlBA,eAAkB,CAACC,KAAD;AAAW,SAAC;AAClCb,IAAAA,GAAG,EAAEc,MAAM,CAACD,KAAD;AADuB,GAAD;AAEjC,CAFF;;AAIA,qBAAeE,mBAAmB,CAAChB,YAAD,EAAea,iBAAf,CAAlC;;SC1KwB/C,cAActE;MACpCC,SAAS;MACTsD,gBAAgB;MAChB7H,SAAQ;;AAEF,MAAAyE,KAAwBhE,QAAQ,CAAC,EAAD,CAAhC;AAAA,MAAC6C,OAAO,QAAR;AAAA,MAAUoB,UAAU,QAApB;;AACA,MAAAC,KAAwClE,QAAQ,CAAC,EAAD,CAAhD;AAAA,MAACwJ,eAAe,QAAhB;AAAA,MAAkBC,kBAAkB,QAApC;;AACA,MAAAC,KAA4B1J,QAAQ,CAAC,IAAD,CAApC;AAAA,MAACsL,SAAS,QAAV;AAAA,MAAYC,YAAY,QAAxB;;AAENlH,EAAAA,SAAS,CAAC;AACR,QAAMmH,aAAa,GAAGpE,gBAAgB,EAAtC;AACAoE,IAAAA,aAAa,CAAChH,KAAd,GAAsB,EAAtB;AACAgH,IAAAA,aAAa,CAAC/G,IAAd,CAAmB,UAAC5B,OAAD,EAAU6B,KAAV;AACjB,UAAIA,KAAJ,EAAW;AACT;AACD;;AACDT,MAAAA,UAAU,CAACpB,OAAD,CAAV;AACD,KALD;AAMA0I,IAAAA,YAAY,CAACC,aAAD,CAAZ;AACD,GAVQ,EAUN,EAVM,CAAT;AAWA,sBACE9K,uDACEA,6BAAC,KAAD;AACE,IAAA,QAAQ,EAAEkJ,MAAM,CAACC,IAAP,CAAYL,eAAZ,EAA6B5B,MAA7B,KAAwC,CADpD;AAEE,IAAA,UAAU,EAAC,QAFb;AAGE,IAAA,IAAI,EAAE5G,IAAU,CAACC,OAHnB;AAIE,IAAA,QAAQ,EAAE;AAAM,aAAA6C,SAAS,EAAT;AAAW,KAJ7B;AAKE,IAAA,QAAQ,EAAE;AACR,UAAMjB,OAAO,GAAG+G,MAAM,CAACC,IAAP,CAAYL,eAAZ,EAA6BnD,MAA7B,CAAoC,UAACP,CAAD;AAAO,eAAA0D,eAAe,CAAC1D,CAAD,CAAf;AAAkB,OAA7D,CAAhB;;AACAvG,MAAAA,SAAQ,CAACsD,OAAD,CAAR;AACD,KARH;AASE,IAAA,SAAS,EAAC;AATZ,kBAWEnC;AACE,IAAA,SAAS,EAAC,qCADZ;AAEE,IAAA,QAAQ,EAAE,kBAACQ,CAAD;AACA,UAAA0D,OAAO,GAAK0G,SAAS,QAArB;AACR,UAAM9J,MAAM,GAAGN,CAAC,CAACM,MAAjB;AACA,UAAMqD,SAAS,GACbrD,MAAM,CAACsD,YAAP,GAAsBtD,MAAM,CAACuD,SAA7B,KAA2CvD,MAAM,CAACwD,YADpD;;AAIA,UAAIJ,OAAO,IAAIC,SAAf,EAA0B;AACxByG,QAAAA,SAAS,CAAC7G,IAAV,CAAe,UAACQ,CAAD,EAAIP,KAAJ;AACb,cAAIA,KAAJ,EAAW;AACT;AACD;;AACDT,UAAAA,UAAU,iCACLpB,UACAoC,EAFK,CAAV;AAID,SARD;AASD;AACF;AApBH,KAsBIpC,OAAO,CAACC,GAAR,CAAY,UAACC,MAAD;AAAY,wBACxBrC,6BAACwE,cAAD;AACE,MAAA,QAAQ,MADV;AAEE,MAAA,OAAO,EAAEsE,eAAe,CAACzG,MAAM,CAACrD,MAAR,CAF1B;AAGE,MAAA,QAAQ,EACN,kBAACuK,KAAD;;;AACE,YAAMC,uBAAuB,yBACxBV,+BACFS,KAAK,CAACzI,MAAN,CAAa2I,MAAKF,KAAK,CAACzI,MAAN,CAAa4I,aAFlC;;AAIA,YAAI,CAACH,KAAK,CAACzI,MAAN,CAAa4I,OAAlB,EAA2B;AACzB,iBAAOF,uBAAuB,CAACD,KAAK,CAACzI,MAAN,CAAa2I,EAAd,CAA9B;AACD;;AACDV,QAAAA,kBAAkB,CAACS,uBAAD,CAAlB;AACD,OAbL;AAeE,MAAA,IAAI,EAAEnH,MAfR;AAgBE,MAAA,GAAG,EAAEA,MAAM,CAACrD;AAhBd,MADwB;AAmBzB,GAnBC,CAtBJ,CAXF,CADF,CADF;AA2DD;;ACpEM,IAAM+L,UAAU,GAAG,SAAbA,UAAa,CAAC5H,EAAD;MACxByG,GAAG;MACH7K,OAAO;MACP2H,gBAAgB;MAChB1H,MAAM;;AAEA,MAAAsE,KAAwBhE,QAAQ,CAAC,EAAD,CAAhC;AAAA,MAAC6C,OAAO,QAAR;AAAA,MAAUoB,UAAU,QAApB;;AACA,MAAAC,KAAwBlE,QAAQ,CAAC,KAAD,CAAhC;AAAA,MAAC4E,OAAO,QAAR;AAAA,MAAUgG,UAAU,QAApB;;AACA,MAAAlB,KAAsC1J,QAAQ,CAAC,KAAD,CAA9C;AAAA,MAAC0L,cAAc,QAAf;AAAA,MAAiBC,iBAAiB,QAAlC;;AACA,MAAAhB,KAA4C3K,QAAQ,CAAC,KAAD,CAApD;AAAA,MAAC4L,iBAAiB,QAAlB;AAAA,MAAoBC,oBAAoB,QAAxC;;AAENxH,EAAAA,SAAS,CAAC;AACR,QAAI,CAAC5E,OAAL,EAAc;AACZwE,MAAAA,UAAU,CAAC,EAAD,CAAV;AACA;AACD;;AAED,QAAM6H,mBAAmB,GAAGrM,OAAO,CAAC8E,qBAAR,EAA5B;AACAuH,IAAAA,mBAAmB,CAACtH,KAApB,GAA4B,EAA5B;AACAsH,IAAAA,mBAAmB,CAACrH,IAApB,CAAyB,UAAC5B,OAAD,EAAU6B,KAAV;AACvB,UAAIA,KAAJ,EAAW;AACT;AACD;;AACDT,MAAAA,UAAU,CAACpB,OAAD,CAAV;AACA+H,MAAAA,UAAU,CAACkB,mBAAmB,CAAClH,OAArB,CAAV;AACD,KAND;AAOD,GAfQ,EAeN,CAACnF,OAAD,CAfM,CAAT;AAiBA,MAAMoL,WAAW,GAAGC,WAAW,CAC7B;AACE,QAAI,CAACrL,OAAL,EAAc;AACZwE,MAAAA,UAAU,CAAC,EAAD,CAAV;AACA;AACD;;AACD,QAAM6H,mBAAmB,GAAGrM,OAAO,CAAC8E,qBAAR,EAA5B;AACAuH,IAAAA,mBAAmB,CAACtH,KAApB,GAA4B,EAA5B;AACAsH,IAAAA,mBAAmB,CAACrH,IAApB,CAAyB,UAAC5B,OAAD,EAAU6B,KAAV;AACvB,UAAIA,KAAJ,EAAW;AACT;AACD;;AACDT,MAAAA,UAAU,CAACpB,OAAD,CAAV;AACA+H,MAAAA,UAAU,CAACkB,mBAAmB,CAAClH,OAArB,CAAV;AACD,KAND;AAOD,GAf4B,EAgB7B,CAACnF,OAAD,CAhB6B,CAA/B;AAmBA,sBACEiB,4DAEImC,OAAO,CAACC,GAAR,CAAY,UAACC,MAAD;AAAY,wBACtBrC,6BAAC,YAAD;AACE,MAAA,GAAG,EAAEqC,MAAM,CAACrD,MADd;AAEE,MAAA,IAAI,EAAEqD,MAFR;AAGE,MAAA,WAAW,EAAEuH,GAAG,CAACvG,WAAJ,CAAgBrE,MAH/B;AAIE,MAAA,MAAM,EACHA,MAAM,KAAKqD,MAAM,CAACrD,MAAnB,GACI,UAACmE,EAAD;YAAGuB,SAAS;YAAED,SAAS;AAAO,4BAC9BzE,6BAAC,WAAD;AACE,UAAA,WAAW,EAAE,qBAAC4E,cAAD;AAAoB,gCAC/B5E,6BAAC,UAAD;AACE,cAAA,SAAS,EAAC,mCADZ;AAEE,cAAA,KAAK,EAAC,MAFR;AAGE,cAAA,MAAM,EAAC,MAHT;AAIE,cAAA,OAAO,EAAE4E;AAJX,4BAME5E,6BAAC,IAAD;AACE,cAAA,KAAK,EAAC,MADR;AAEE,cAAA,MAAM,EAAC,MAFT;AAGE,cAAA,IAAI,EAAE6E,SAAS,CAACC,IAHlB;AAIE,cAAA,SAAS,EAAEC,UAAU,CAACC;AAJxB,cANF,CAD+B;AAchC,WAfH;AAgBE,UAAA,SAAS,EAAE,mBAACC,aAAD;AAAmB,gCAC5BjF,6BAAC,SAAD;AACE,cAAA,gBAAgB,EAAEyE,SADpB;AAEE,cAAA,SAAS,EAAEC,SAFb;AAAA;AAGE,cAAA,aAAa,EAAEO,aAHjB;AAIE,cAAA,QAAQ;AAJV,4BAMEjF,6BAAC,QAAD;AACE,cAAA,OAAO,EAAE;AACP,oBAAKqC,MAAM,CAAC6C,IAAP,KAAgB,UAArB,EAAkC;AAChCnG,kBAAAA,OAAO,CAACoG,YAAR,CAAqB,CAAC9C,MAAM,CAACrD,MAAR,CAArB,EAAsC;AACpCmL,oBAAAA,WAAW;AACXlF,oBAAAA,aAAa;AACd,mBAHD;AAID,iBALD,MAKO;AACLlG,kBAAAA,OAAO,CAACsG,eAAR,CAAwB,CAAChD,MAAM,CAACrD,MAAR,CAAxB,EAAyC;AACvCmL,oBAAAA,WAAW;AACXlF,oBAAAA,aAAa;AACd,mBAHD;AAID;AACF;AAbH,eAeG5C,MAAM,CAAC6C,IAAP,KAAgB,UAAhB,GAA6B,qBAA7B,GAAqD,iBAfxD,CANF;AAyBI,aAACnG,OAAO,CAACuG,WAAT,iBACEtF,6BAAC,QAAD;AACE,cAAA,OAAO,EAAE;AACP,oBAAIqC,MAAM,CAACkD,OAAX,EAAoB;AAClBxG,kBAAAA,OAAO,CAACyG,UAAR,CAAmBnD,MAAnB,EAA2B;AACzB8H,oBAAAA,WAAW;AACXlF,oBAAAA,aAAa;AACd,mBAHD;AAID,iBALD,MAKO;AACLlG,kBAAAA,OAAO,CAAC0G,QAAR,CAAiBpD,MAAjB,EAAyB;AACvB8H,oBAAAA,WAAW;AACXlF,oBAAAA,aAAa;AACd,mBAHD;AAID;AACF;AAbH,eAeI5C,MAAM,CAACkD,OAAP,GAAiB,QAAjB,GAA4B,MAfhC,CA1BN,eA6CEvF,6BAAC,QAAD;AACE,cAAA,OAAO,EAAE;AACPjB,gBAAAA,OAAO,CAAC2G,OAAR,CAAgBrD,MAAhB,EAAwB,CAAC,CAAzB,EAA4B,EAA5B,EAAgC;AAC9B8H,kBAAAA,WAAW;AACXlF,kBAAAA,aAAa;AACd,iBAHD;AAID;AANH,qBA7CF,CAD4B;AAyD7B;AAzEH,UAD8B;AA4E/B,OA7EH,GA8EI;AAnFR,MADsB;AAuFvB,GAvFD,CAFJ,eA2FEjF;AACE,IAAA,SAAS,EAAC;AADZ,KAIIkE,OAAO,iBACLlE,6BAAC,MAAD;AACE,IAAA,IAAI,EAAEmH,WAAW,CAACC,SADpB;AAEE,IAAA,IAAI,EAAEC,WAAW,CAACC,KAFpB;AAGE,IAAA,OAAO,EAAE;AAAM,aAAA2D,iBAAiB,CAAC,IAAD,CAAjB;AAAuB;AAHxC,mBALN,eAcEjL,6BAAC,MAAD;AACE,IAAA,IAAI,EAAEmH,WAAW,CAACC,SADpB;AAEE,IAAA,IAAI,EAAEC,WAAW,CAACC,KAFpB;AAGE,IAAA,OAAO,EAAE;AAAM,aAAA6D,oBAAoB,CAAC,IAAD,CAApB;AAA0B;AAH3C,sBAdF,CA3FF,EAkHIH,cAAc,iBACZhL,6BAAC,YAAD;AACE,IAAA,WAAW,EAAE4J,GAAG,CAACvG,WAAJ,CAAgBrE,MAD/B;AAEE,IAAA,OAAO,EAAED,OAFX;AAGE,IAAA,SAAS,EAAE;AACTkM,MAAAA,iBAAiB,CAAC,KAAD,CAAjB;AACAd,MAAAA,WAAW;AACZ;AANH,IAnHN,EA8HIe,iBAAiB,iBACflL,6BAAC,aAAD;AACE,IAAA,gBAAgB,EAAE0G,gBADpB;AAEE,IAAA,QAAQ,EAAE,kBAACoC,eAAD;AACR/J,MAAAA,OAAO,CAACsM,iBAAR,CAA0BvC,eAA1B,EAA2C;AACzCqC,QAAAA,oBAAoB,CAAC,KAAD,CAApB;AACAhB,QAAAA,WAAW;AACZ,OAHD;AAID,KAPH;AAQE,IAAA,OAAO,EAAEpL,OARX;AASE,IAAA,SAAS,EAAE;AAAM,aAAAoM,oBAAoB,CAAC,KAAD,CAApB;AAA2B;AAT9C,IA/HN,CADF;AA+ID,CA9LM;;AAgMP,IAAMX,iBAAe,GAAG,SAAlBA,eAAkB,CAACC,KAAD;AAAW,SAAC;AAClCb,IAAAA,GAAG,EAAEc,MAAM,CAACD,KAAD;AADuB,GAAD;AAEjC,CAFF;;AAIA,mBAAeE,mBAAmB,CAACI,UAAD,EAAaP,iBAAb,CAAlC;;SC1MwBc,mBAAmBnI;MACzCC,SAAS;MACTrE,OAAO;;AAED,MAAAuE,KAAwBhE,QAAQ,CAAC,EAAD,CAAhC;AAAA,MAAC6C,OAAO,QAAR;AAAA,MAAUoB,UAAU,QAApB;;AACA,MAAAC,KAAgClE,QAAQ,CAAC,IAAD,CAAxC;AAAA,MAACmE,WAAW,QAAZ;AAAA,MAAcC,cAAc,QAA5B;;AAENC,EAAAA,SAAS,CAAC;AACR,QAAM4H,mBAAmB,GAAGxM,OAAO,CAACyM,yBAAR,EAA5B;AACAD,IAAAA,mBAAmB,CAACxH,IAApB,CAAyB,UAAC0H,KAAD,EAAQzH,KAAR;AACvB,UAAIA,KAAJ,EAAW;AACT;AACD;;AACDT,MAAAA,UAAU,CAACkI,KAAD,CAAV;AACD,KALD;AAMA/H,IAAAA,cAAc,CAAC6H,mBAAD,CAAd;AACD,GATQ,EASN,EATM,CAAT;AAUA,sBACEvL,uDACEA,6BAAC,KAAD;AACE,IAAA,UAAU,MADZ;AAEE,IAAA,QAAQ,EAAE;AAAM,aAAAoD,SAAS,EAAT;AAAW,KAF7B;AAGE,IAAA,QAAQ,EAAEa,IAHZ;AAIE,IAAA,SAAS,EAAC;AAJZ,kBAMEjE;AACE,IAAA,SAAS,EAAC,qCADZ;AAEE,IAAA,QAAQ,EAAE,kBAACQ,CAAD;AACA,UAAA0D,OAAO,GAAKT,WAAW,QAAvB;AACR,UAAM3C,MAAM,GAAGN,CAAC,CAACM,MAAjB;AACA,UAAMqD,SAAS,GACbrD,MAAM,CAACsD,YAAP,GAAsBtD,MAAM,CAACuD,SAA7B,KAA2CvD,MAAM,CAACwD,YADpD;;AAIA,UAAIJ,OAAO,IAAIC,SAAf,EAA0B;AACxBV,QAAAA,WAAW,CAACM,IAAZ,CAAiB,UAACQ,CAAD,EAAIP,KAAJ;AACf,cAAIA,KAAJ,EAAW;AACT;AACD;;AACDT,UAAAA,UAAU,iCACLpB,UACAoC,EAFK,CAAV;AAID,SARD;AASD;AACF;AApBH,KAsBIpC,OAAO,CAACC,GAAR,CAAY,UAACC,MAAD;AAAY,wBACxBrC,6BAACwE,cAAD;AACE,MAAA,IAAI,EAAEnC,MADR;AAEE,MAAA,GAAG,EAAEA,MAAM,CAACrD,MAFd;AAGE,MAAA,MAAM,EAAE,gBAACmE,EAAD;YAAGsB,SAAS;YAAEC,SAAS;AAAO,4BACpC1E,6BAAC,WAAD;AACE,UAAA,WAAW,EAAE,qBAAC4E,cAAD;AAAoB,gCAC/B5E,6BAAC,UAAD;AACE,cAAA,SAAS,EAAC,mCADZ;AAEE,cAAA,KAAK,EAAC,MAFR;AAGE,cAAA,MAAM,EAAC,MAHT;AAIE,cAAA,OAAO,EAAE4E;AAJX,4BAME5E,6BAAC,IAAD;AACE,cAAA,KAAK,EAAC,MADR;AAEE,cAAA,MAAM,EAAC,MAFT;AAGE,cAAA,IAAI,EAAE6E,SAAS,CAACC,IAHlB;AAIE,cAAA,SAAS,EAAEC,UAAU,CAACC;AAJxB,cANF,CAD+B;AAchC,WAfH;AAgBE,UAAA,SAAS,EAAE,mBAACC,aAAD;AAAmB,gCAC5BjF,6BAAC,SAAD;AACE,cAAA,gBAAgB,EAAEyE,SADpB;AAEE,cAAA,SAAS,EAAEC,SAFb;AAAA;AAGE,cAAA,aAAa,EAAEO,aAHjB;AAIE,cAAA,QAAQ;AAJV,4BAMEjF,6BAAC,QAAD;AACE,cAAA,OAAO,EAAE;AACPjB,gBAAAA,OAAO,CAAC2M,SAAR,CAAkBrJ,MAAlB,EAA0B;AACxB4C,kBAAAA,aAAa;AACb1B,kBAAAA,UAAU,CAACpB,OAAO,CAACwD,MAAR,CAAe,UAAAP,CAAA;AACxB,2BAAQA,CAAC,CAACpG,MAAF,KAAaqD,MAAM,CAACrD,MAA5B;AACD,mBAFU,CAAD,CAAV;AAGD,iBALD;AAMD;AARH,uBANF,CAD4B;AAoB7B;AApCH,UADoC;AAuCrC;AA1CH,MADwB;AA8CzB,GA9CC,CAtBJ,CANF,CADF,CADF;AAiFD;;AC1FM,IAAM2M,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACxI,EAAD;MAAGpE,OAAO;;AAClC,MAAAuE,KAAwBhE,QAAQ,CAAC,EAAD,CAAhC;AAAA,MAAC6C,OAAO,QAAR;AAAA,MAAUoB,UAAU,QAApB;;AACA,MAAAC,KAAwBlE,QAAQ,CAAC,KAAD,CAAhC;AAAA,MAAC4E,OAAO,QAAR;AAAA,MAAUgG,UAAU,QAApB;;AACA,MAAAlB,KAA4B1J,QAAQ,CAAC,KAAD,CAApC;AAAA,MAAC0C,SAAS,QAAV;AAAA,MAAYC,YAAY,QAAxB;;AAEN0B,EAAAA,SAAS,CAAC;AACR,QAAI,CAAC5E,OAAL,EAAc;AACZwE,MAAAA,UAAU,CAAC,EAAD,CAAV;AACA;AACD;;AAED,QAAMgI,mBAAmB,GAAGxM,OAAO,CAACyM,yBAAR,EAA5B;AACAD,IAAAA,mBAAmB,CAACxH,IAApB,CAAyB,UAAC0H,KAAD,EAAQzH,KAAR;AACvB,UAAIA,KAAJ,EAAW;AACT;AACD;;AACDT,MAAAA,UAAU,CAACkI,KAAD,CAAV;AACAvB,MAAAA,UAAU,CAACqB,mBAAmB,CAACrH,OAArB,CAAV;AACD,KAND;AAOD,GAdQ,EAcN,CAACnF,OAAD,CAdM,CAAT;AAgBA,MAAM6M,WAAW,GAAGxB,WAAW,CAAC;AAC9B,QAAI,CAACrL,OAAL,EAAc;AACZwE,MAAAA,UAAU,CAAC,EAAD,CAAV;AACA;AACD;;AAED,QAAMgI,mBAAmB,GAAGxM,OAAO,CAACyM,yBAAR,EAA5B;AACAD,IAAAA,mBAAmB,CAACxH,IAApB,CAAyB,UAAS0H,KAAT,EAAgBzH,KAAhB;AACvB,UAAIA,KAAJ,EAAW;AACT;AACD;;AACDT,MAAAA,UAAU,CAACkI,KAAD,CAAV;AACAvB,MAAAA,UAAU,CAACqB,mBAAmB,CAACrH,OAArB,CAAV;AACD,KAND;AAOD,GAd8B,EAc5B,CAACnF,OAAD,CAd4B,CAA/B;AAeA,sBACEiB,4DAEImC,OAAO,CAACC,GAAR,CAAY,UAACC,MAAD;AAAY,wBACtBrC,6BAAC,YAAD;AACE,MAAA,GAAG,EAAEqC,MAAM,CAACrD,MADd;AAEE,MAAA,IAAI,EAAEqD,MAFR;AAGE,MAAA,MAAM,EAAE,gBAACc,EAAD;YAAGuB,SAAS;YAAED,SAAS;AAC7B,4BACEzE,6BAAC,WAAD;AACE,UAAA,WAAW,EAAE,qBAAC4E,cAAD;AAAoB,gCAC/B5E,6BAAC,UAAD;AACE,cAAA,SAAS,EAAC,mCADZ;AAEE,cAAA,KAAK,EAAC,MAFR;AAGE,cAAA,MAAM,EAAC,MAHT;AAIE,cAAA,OAAO,EAAE4E;AAJX,4BAME5E,6BAAC,IAAD;AACE,cAAA,KAAK,EAAC,MADR;AAEE,cAAA,MAAM,EAAC,MAFT;AAGE,cAAA,IAAI,EAAE6E,SAAS,CAACC,IAHlB;AAIE,cAAA,SAAS,EAAEC,UAAU,CAACC;AAJxB,cANF,CAD+B;AAchC,WAfH;AAgBE,UAAA,SAAS,EAAE,mBAACC,aAAD;AAAmB,gCAC5BjF,6BAAC,SAAD;AACE,cAAA,gBAAgB,EAAEyE,SADpB;AAEE,cAAA,SAAS,EAAEC,SAFb;AAAA;AAGE,cAAA,aAAa,EAAEO,aAHjB;AAIE,cAAA,QAAQ;AAJV,4BAMEjF,6BAAC,QAAD;AACE,cAAA,OAAO,EAAE;AACPjB,gBAAAA,OAAO,CAAC2M,SAAR,CAAkBrJ,MAAlB,EAA0B;AACxB4C,kBAAAA,aAAa;AACb2G,kBAAAA,WAAW;AACZ,iBAHD;AAID;AANH,uBANF,CAD4B;AAkB7B;AAlCH,UADF;AAsCD;AA1CH,MADsB;AA6CvB,GA7CD,CAFJ,EAkDIzJ,OAAO,IAAIA,OAAO,CAAC+E,MAAR,KAAmB,CAA9B,iBACElH,6BAAC,KAAD;AACE,IAAA,SAAS,EAAC,uCADZ;AAEE,IAAA,IAAI,EAAEiB,eAAe,CAACyB,UAFxB;AAGE,IAAA,KAAK,EAAEvB,WAAW,CAACiI;AAHrB,6BAnDN,EA6DIlF,OAAO,iBACLlE;AACE,IAAA,SAAS,EAAC;AADZ,kBAGEA,6BAAC,MAAD;AACE,IAAA,IAAI,EAAEmH,WAAW,CAACC,SADpB;AAEE,IAAA,IAAI,EAAEC,WAAW,CAACC,KAFpB;AAGE,IAAA,OAAO,EAAE;AACPrF,MAAAA,YAAY,CAAC,IAAD,CAAZ;AACD;AALH,0BAHF,CA9DN,EA8EID,SAAS,iBACPhC,6BAAC,kBAAD;AACE,IAAA,OAAO,EAAEjB,OADX;AAEE,IAAA,SAAS,EAAE;AACTkD,MAAAA,YAAY,CAAC,KAAD,CAAZ;AACA2J,MAAAA,WAAW;AACZ;AALH,IA/EN,CADF;AA2FD,CA/HM;;AAiIP,IAAMpB,iBAAe,GAAG,SAAlBA,eAAkB,CAACC,KAAD;AAAW,SAAC;AAClCb,IAAAA,GAAG,EAAEc,MAAM,CAACD,KAAD;AADuB,GAAD;AAEjC,CAFF;;AAIA,yBAAeE,mBAAmB,CAACgB,gBAAD,EAAmBnB,iBAAnB,CAAlC;;SC5IwBqB,kBAAkB1I;MACxCC,SAAS;MACTrE,OAAO;MACPsE,WAAW;;AAEL,MAAAC,KAAwBhE,QAAQ,CAAC,EAAD,CAAhC;AAAA,MAAC6C,OAAO,QAAR;AAAA,MAAUoB,UAAU,QAApB;;AACA,MAAAC,KAAgClE,QAAQ,CAAC,IAAD,CAAxC;AAAA,MAACmE,WAAW,QAAZ;AAAA,MAAcC,cAAc,QAA5B;;AAENC,EAAAA,SAAS,CAAC;AACR,QAAMyH,mBAAmB,GAAGrM,OAAO,CAAC8E,qBAAR,EAA5B;AACAuH,IAAAA,mBAAmB,CAACtH,KAApB,GAA4B,EAA5B;AACAsH,IAAAA,mBAAmB,CAACU,iBAApB,GAAwC,OAAxC;AACAV,IAAAA,mBAAmB,CAACrH,IAApB,CAAyB,UAAC5B,OAAD,EAAU6B,KAAV;AACvB,UAAIA,KAAJ,EAAW;AACT;AACD;;AACDT,MAAAA,UAAU,CAACpB,OAAD,CAAV;AACD,KALD;AAMAuB,IAAAA,cAAc,CAAC0H,mBAAD,CAAd;AACD,GAXQ,EAWN,EAXM,CAAT;AAYA,sBACEpL,uDACEA,6BAAC,KAAD;AACE,IAAA,UAAU,MADZ;AAEE,IAAA,QAAQ,EAAE;AAAM,aAAAoD,SAAS,EAAT;AAAW,KAF7B;AAGE,IAAA,QAAQ,EAAEa,IAHZ;AAIE,IAAA,SAAS,EAAC;AAJZ,kBAMEjE;AACE,IAAA,SAAS,EAAC,qCADZ;AAEE,IAAA,QAAQ,EAAE,kBAACQ,CAAD;AACA,UAAA0D,OAAO,GAAKT,WAAW,QAAvB;AACR,UAAM3C,MAAM,GAAGN,CAAC,CAACM,MAAjB;AACA,UAAMqD,SAAS,GACbrD,MAAM,CAACsD,YAAP,GAAsBtD,MAAM,CAACuD,SAA7B,KAA2CvD,MAAM,CAACwD,YADpD;;AAIA,UAAIJ,OAAO,IAAIC,SAAf,EAA0B;AACxBV,QAAAA,WAAW,CAACM,IAAZ,CAAiB,UAACQ,CAAD,EAAIP,KAAJ;AACf,cAAIA,KAAJ,EAAW;AACT;AACD;;AACDT,UAAAA,UAAU,iCACLpB,UACAoC,EAFK,CAAV;AAID,SARD;AASD;AACF;AApBH,KAsBIpC,OAAO,CAACC,GAAR,CAAY,UAACC,MAAD;AAAY,wBACxBrC,6BAACwE,cAAD;AACE,MAAA,WAAW,EAAEnB,WADf;AAEE,MAAA,IAAI,EAAEhB,MAFR;AAGE,MAAA,GAAG,EAAEA,MAAM,CAACrD,MAHd;AAIE,MAAA,MAAM,EAAE,gBAACmE,EAAD;YAAGuB,SAAS;YAAED,SAAS;AAAO,4BACpCzE,6BAAC,WAAD;AACE,UAAA,WAAW,EAAE,qBAAC4E,cAAD;AAAoB,gCAC/B5E,6BAAC,UAAD;AACE,cAAA,SAAS,EAAC,mCADZ;AAEE,cAAA,KAAK,EAAC,MAFR;AAGE,cAAA,MAAM,EAAC,MAHT;AAIE,cAAA,OAAO,EAAE4E;AAJX,4BAME5E,6BAAC,IAAD;AACE,cAAA,KAAK,EAAC,MADR;AAEE,cAAA,MAAM,EAAC,MAFT;AAGE,cAAA,IAAI,EAAE6E,SAAS,CAACC,IAHlB;AAIE,cAAA,SAAS,EAAEC,UAAU,CAACC;AAJxB,cANF,CAD+B;AAchC,WAfH;AAgBE,UAAA,SAAS,EAAE,mBAACC,aAAD;AAAmB,gCAC5BjF,6BAAC,SAAD;AACE,cAAA,gBAAgB,EAAEyE,SADpB;AAEE,cAAA,SAAS,EAAEC,SAFb;AAAA;AAGE,cAAA,aAAa,EAAEO,aAHjB;AAIE,cAAA,QAAQ;AAJV,4BAMEjF,6BAAC,QAAD;AACE,cAAA,OAAO,EAAE;AACPjB,gBAAAA,OAAO,CAACyG,UAAR,CAAmBnD,MAAnB,EAA2B;AACzB4C,kBAAAA,aAAa;AACb1B,kBAAAA,UAAU,CAACpB,OAAO,CAACwD,MAAR,CAAe,UAAAP,CAAA;AACxB,2BAAQA,CAAC,CAACpG,MAAF,KAAaqD,MAAM,CAACrD,MAA5B;AACD,mBAFU,CAAD,CAAV;AAGD,iBALD;AAMD;AARH,wBANF,CAD4B;AAoB7B;AApCH,UADoC;AAuCrC;AA3CH,MADwB;AA8CzB,GA9CC,CAtBJ,CANF,CADF,CADF;AAiFD;;AC/FM,IAAM+M,eAAe,GAAG,SAAlBA,eAAkB,CAAC5I,EAAD;MAAGyG,GAAG;MAAE7K,OAAO;;AACtC,MAAAuE,KAAwBhE,QAAQ,CAAC,EAAD,CAAhC;AAAA,MAAC6C,OAAO,QAAR;AAAA,MAAUoB,UAAU,QAApB;;AACA,MAAAC,KAAwBlE,QAAQ,CAAC,KAAD,CAAhC;AAAA,MAAC4E,OAAO,QAAR;AAAA,MAAUgG,UAAU,QAApB;;AACA,MAAAlB,KAA4B1J,QAAQ,CAAC,KAAD,CAApC;AAAA,MAAC0C,SAAS,QAAV;AAAA,MAAYC,YAAY,QAAxB;;AAEN0B,EAAAA,SAAS,CAAC;AACR,QAAI,CAAC5E,OAAL,EAAc;AACZwE,MAAAA,UAAU,CAAC,EAAD,CAAV;AACA;AACD;;AAED,QAAM6H,mBAAmB,GAAGrM,OAAO,CAAC8E,qBAAR,EAA5B;AACAuH,IAAAA,mBAAmB,CAACtH,KAApB,GAA4B,EAA5B;AACAsH,IAAAA,mBAAmB,CAACU,iBAApB,GAAwC,OAAxC;AACAV,IAAAA,mBAAmB,CAACrH,IAApB,CAAyB,UAAC5B,OAAD,EAAU6B,KAAV;AACvB,UAAIA,KAAJ,EAAW;AACT;AACD;;AACDT,MAAAA,UAAU,CAACpB,OAAD,CAAV;AACA+H,MAAAA,UAAU,CAACkB,mBAAmB,CAAClH,OAArB,CAAV;AACD,KAND;AAOD,GAhBQ,EAgBN,CAACnF,OAAD,CAhBM,CAAT;AAkBA,MAAM6M,WAAW,GAAGxB,WAAW,CAAC;AAC9B,QAAI,CAACrL,OAAL,EAAc;AACZwE,MAAAA,UAAU,CAAC,EAAD,CAAV;AACA;AACD;;AAED,QAAM6H,mBAAmB,GAAGrM,OAAO,CAAC8E,qBAAR,EAA5B;AACAuH,IAAAA,mBAAmB,CAACtH,KAApB,GAA4B,EAA5B;AACAsH,IAAAA,mBAAmB,CAACU,iBAApB,GAAwC,OAAxC;AACAV,IAAAA,mBAAmB,CAACrH,IAApB,CAAyB,UAAC5B,OAAD,EAAU6B,KAAV;AACvB,UAAIA,KAAJ,EAAW;AACT;AACD;;AACDT,MAAAA,UAAU,CAACpB,OAAD,CAAV;AACA+H,MAAAA,UAAU,CAACkB,mBAAmB,CAAClH,OAArB,CAAV;AACD,KAND;AAOD,GAhB8B,EAgB5B,CAACnF,OAAD,CAhB4B,CAA/B;AAiBA,sBACEiB,4DAEImC,OAAO,CAACC,GAAR,CAAY,UAACC,MAAD;AAAY,wBACtBrC,6BAAC,YAAD;AACE,MAAA,GAAG,EAAEqC,MAAM,CAACrD,MADd;AAEE,MAAA,IAAI,EAAEqD,MAFR;AAGE,MAAA,WAAW,EAAEuH,GAAG,CAACvG,WAAJ,CAAgBrE,MAH/B;AAIE,MAAA,MAAM,EAAE,gBAACmE,EAAD;YAAGuB,SAAS;YAAED,SAAS;AAC7B,4BACEzE,6BAAC,WAAD;AACE,UAAA,WAAW,EAAE,qBAAC4E,cAAD;AAAoB,gCAC/B5E,6BAAC,UAAD;AACE,cAAA,SAAS,EAAC,mCADZ;AAEE,cAAA,KAAK,EAAC,MAFR;AAGE,cAAA,MAAM,EAAC,MAHT;AAIE,cAAA,OAAO,EAAE4E;AAJX,4BAME5E,6BAAC,IAAD;AACE,cAAA,KAAK,EAAC,MADR;AAEE,cAAA,MAAM,EAAC,MAFT;AAGE,cAAA,IAAI,EAAE6E,SAAS,CAACC,IAHlB;AAIE,cAAA,SAAS,EAAEC,UAAU,CAACC;AAJxB,cANF,CAD+B;AAchC,WAfH;AAgBE,UAAA,SAAS,EAAE,mBAACC,aAAD;AAAmB,gCAC5BjF,6BAAC,SAAD;AACE,cAAA,aAAa,EAAEiF,aADjB;AAEE,cAAA,QAAQ,MAFV;AAGE,cAAA,gBAAgB,EAAER,SAHpB;AAIE,cAAA,SAAS,EAAEC,SAJb;;AAAA,4BAME1E,6BAAC,QAAD;AACE,cAAA,OAAO,EAAE;AACPjB,gBAAAA,OAAO,CAACyG,UAAR,CAAmBnD,MAAnB,EAA2B;AACzBuJ,kBAAAA,WAAW;AACX3G,kBAAAA,aAAa;AACd,iBAHD;AAID;AANH,wBANF,CAD4B;AAkB7B;AAlCH,UADF;AAsCD;AA3CH,MADsB;AA+CvB,GA/CD,CAFJ,EAoDI9C,OAAO,IAAIA,OAAO,CAAC+E,MAAR,KAAmB,CAA9B,iBACElH,6BAAC,KAAD;AACE,IAAA,SAAS,EAAC,uCADZ;AAEE,IAAA,IAAI,EAAEiB,eAAe,CAACyB,UAFxB;AAGE,IAAA,KAAK,EAAEvB,WAAW,CAACiI;AAHrB,4BArDN,EA+DIlF,OAAO,iBACLlE;AACE,IAAA,SAAS,EAAC;AADZ,kBAGEA,6BAAC,MAAD;AACE,IAAA,IAAI,EAAEmH,WAAW,CAACC,SADpB;AAEE,IAAA,IAAI,EAAEC,WAAW,CAACC,KAFpB;AAGE,IAAA,OAAO,EAAE;AACPrF,MAAAA,YAAY,CAAC,IAAD,CAAZ;AACD;AALH,yBAHF,CAhEN,EAgFID,SAAS,iBACPhC,6BAAC,iBAAD;AACE,IAAA,WAAW,EAAE4J,GAAG,CAACvG,WAAJ,CAAgBrE,MAD/B;AAEE,IAAA,OAAO,EAAED,OAFX;AAGE,IAAA,SAAS,EAAE;AACTkD,MAAAA,YAAY,CAAC,KAAD,CAAZ;AACA2J,MAAAA,WAAW;AACZ;AANH,IAjFN,CADF;AA8FD,CAtIM;;AAwIP,IAAMpB,eAAe,GAAG,SAAlBA,eAAkB,CAACC,KAAD;AAAW,SAAC;AAClCb,IAAAA,GAAG,EAAEc,MAAM,CAACD,KAAD;AADuB,GAAD;AAEjC,CAFF;;AAIA,wBAAeE,mBAAmB,CAACoB,eAAD,EAAkBvB,eAAlB,CAAlC;;AChJA,IAAMwB,YAAU,GAAG,SAAbA,UAAa,CAACC,GAAD;AACjB,SAAOC,IAAI,CAACC,GAAL,CAASF,GAAT,IAAgB,GAAhB,GACA,CAACC,IAAI,CAACC,GAAL,CAASF,GAAT,IAAc,IAAf,EAAqBG,OAArB,CAA6B,CAA7B,OADA,GAEHH,GAFJ;AAGD,CAJD;;SAYwBI,YAAYlJ;MAClCuD,gBAAgB;MAChB3H,OAAO;MACPC,MAAM;;AAEA,MAAAsE,KAAsBhE,QAAQ,CAAC,KAAD,CAA9B;AAAA,MAACgN,MAAM,QAAP;AAAA,MAASC,SAAS,QAAlB;AAGN;AACA;;;AACA5I,EAAAA,SAAS,CAAC;AACR4I,IAAAA,SAAS,CAACxN,OAAO,CAACyN,QAAT,CAAT;AACD,GAFQ,EAEN,CAACzN,OAAD,CAFM,CAAT;AAGQ,MAAAc,SAAS,GAAKF,UAAU,CAACC,mBAAD,CAAV,UAAd;AACR,sBACEI,6BAAC,cAAD;AAAgB,IAAA,SAAS,EAAC;AAA1B,kBACEA,6BAAC,SAAD;AACE,IAAA,SAAS,EAAC,2CADZ;AAEE,IAAA,EAAE,EAAC,WAFL;AAGE,IAAA,WAAW,EAAE;AAAM,0BACjBA,yEACEA,6BAAC,IAAD;AACE,QAAA,IAAI,EAAE6E,SAAS,CAAC4H,QADlB;AAEE,QAAA,SAAS,EAAE1H,UAAU,CAACxE,OAFxB;AAGE,QAAA,KAAK,EAAE,EAHT;AAIE,QAAA,MAAM,EAAE,EAJV;AAKE,QAAA,SAAS,EAAC;AALZ,QADF,eAQEP,6BAAC,KAAD;AACE,QAAA,IAAI,EAAEiB,eAAe,CAACkH,UADxB;AAEE,QAAA,KAAK,EAAEhH,WAAW,CAACwB;AAFrB,SAIG9C,SAAS,CAAC6M,iCAJb,CARF,CADiB;AAgBlB,KAnBH;AAoBE,IAAA,aAAa,EAAE;AAAM,0BACnB1M,yEACEA,6BAAC2J,cAAD;AAAc,QAAA,OAAO,EAAE5K;AAAvB,QADF,CADmB;AAIpB;AAxBH,IADF,eA2BEiB,6BAAC,SAAD;AACE,IAAA,SAAS,EAAC,yCADZ;AAEE,IAAA,EAAE,EAAC,SAFL;AAGE,IAAA,WAAW,EAAE;AAAM,0BACjBA,yEACEA,6BAAC,IAAD;AACE,QAAA,IAAI,EAAE6E,SAAS,CAAC8H,OADlB;AAEE,QAAA,SAAS,EAAE5H,UAAU,CAACxE,OAFxB;AAGE,QAAA,KAAK,EAAE,EAHT;AAIE,QAAA,MAAM,EAAE,EAJV;AAKE,QAAA,SAAS,EAAC;AALZ,QADF,eAQEP,6BAAC,KAAD;AACE,QAAA,IAAI,EAAEiB,eAAe,CAACkH,UADxB;AAEE,QAAA,KAAK,EAAEhH,WAAW,CAACwB;AAFrB,SAIG9C,SAAS,CAAC+M,+BAJb,CARF,eAcE5M,6BAAC,KAAD;AAAO,QAAA,KAAK,EAAEgM,YAAU,CAACjN,OAAO,CAAC8N,WAAT;AAAxB,QAdF,CADiB;AAiBlB,KApBH;AAqBE,IAAA,aAAa,EAAE;AAAM,0BACnB7M,yEACEA,6BAAC+K,YAAD;AACE,QAAA,gBAAgB,EAAErE,gBADpB;AAEE,QAAA,OAAO,EAAE3H,OAFX;AAGE,QAAA,MAAM,EAAEC;AAHV,QADF,CADmB;AAQpB;AA7BH,IA3BF;AA4DI,GAACD,OAAO,CAACuG,WAAT,iBACEtF,6BAAC,SAAD;AACE,IAAA,EAAE,EAAC,cADL;AAEE,IAAA,SAAS,EAAC,+CAFZ;AAGE,IAAA,WAAW,EAAE;AAAM,0BACjBA,yEACEA,6BAAC,IAAD;AACE,QAAA,IAAI,EAAE6E,SAAS,CAACiI,IADlB;AAEE,QAAA,SAAS,EAAE/H,UAAU,CAACxE,OAFxB;AAGE,QAAA,KAAK,EAAE,EAHT;AAIE,QAAA,MAAM,EAAE,EAJV;AAKE,QAAA,SAAS,EAAC;AALZ,QADF,eAQEP,6BAAC,KAAD;AACE,QAAA,IAAI,EAAEiB,eAAe,CAACkH,UADxB;AAEE,QAAA,KAAK,EAAEhH,WAAW,CAACwB;AAFrB,SAIG9C,SAAS,CAACkN,qCAJb,CARF,CADiB;AAgBlB,KAnBH;AAoBE,IAAA,aAAa,EAAE;AAAM,0BACnB/M,yEACEA,6BAAC+L,iBAAD;AAAiB,QAAA,OAAO,EAAEhN;AAA1B,QADF,CADmB;AAIpB;AAxBH,IA7DN,eAyFEiB,6BAAC,SAAD;AACE,IAAA,SAAS,EAAC,gDADZ;AAEE,IAAA,EAAE,EAAC,eAFL;AAGE,IAAA,WAAW,EAAE;AAAM,0BACjBA,yEACEA,6BAAC,IAAD;AACE,QAAA,IAAI,EAAE6E,SAAS,CAACmI,GADlB;AAEE,QAAA,SAAS,EAAEjI,UAAU,CAACxE,OAFxB;AAGE,QAAA,KAAK,EAAE,EAHT;AAIE,QAAA,MAAM,EAAE,EAJV;AAKE,QAAA,SAAS,EAAC;AALZ,QADF,eAQEP,6BAAC,KAAD;AACE,QAAA,IAAI,EAAEiB,eAAe,CAACkH,UADxB;AAEE,QAAA,KAAK,EAAEhH,WAAW,CAACwB;AAFrB,SAIG9C,SAAS,CAACoN,sCAJb,CARF,CADiB;AAgBlB,KAnBH;AAoBE,IAAA,aAAa,EAAE;AAAM,0BACnBjN,yEACEA,6BAAC2L,kBAAD;AAAkB,QAAA,OAAO,EAAE5M;AAA3B,QADF,CADmB;AAIpB;AAxBH,IAzFF;AAqHI,GAACA,OAAO,CAACuG,WAAT,iBACEtF;AAAK,IAAA,SAAS,EAAC;AAAf,kBACEA,6BAAC,IAAD;AACE,IAAA,IAAI,EAAE6E,SAAS,CAACqI,MADlB;AAEE,IAAA,SAAS,EAAEnI,UAAU,CAACxE,OAFxB;AAGE,IAAA,KAAK,EAAE,EAHT;AAIE,IAAA,MAAM,EAAE,EAJV;AAKE,IAAA,SAAS,EAAC;AALZ,IADF,eAQEP,6BAAC,KAAD;AACE,IAAA,IAAI,EAAEiB,eAAe,CAACkH,UADxB;AAEE,IAAA,KAAK,EAAEhH,WAAW,CAACwB;AAFrB,KAIG9C,SAAS,CAACsN,+BAJb,CARF,eAcEnN;AAAK,IAAA,SAAS,EAAC;AAAf,KAEIsM,MAAM,gBAEFtM,6BAAC,IAAD;AACE,IAAA,OAAO,EAAE;AACPjB,MAAAA,OAAO,CAACqO,QAAR,CAAiB;AACfb,QAAAA,SAAS,CAAC,KAAD,CAAT;AACD,OAFD;AAGD,KALH;AAME,IAAA,IAAI,EAAE1H,SAAS,CAACwI,SANlB;AAOE,IAAA,SAAS,EAAEtI,UAAU,CAACxE,OAPxB;AAQE,IAAA,KAAK,EAAE,EART;AASE,IAAA,MAAM,EAAE;AATV,IAFE,gBAeFP,6BAAC,IAAD;AACE,IAAA,OAAO,EAAE;AACPjB,MAAAA,OAAO,CAACuO,MAAR,CAAe;AACbf,QAAAA,SAAS,CAAC,IAAD,CAAT;AACD,OAFD;AAGD,KALH;AAME,IAAA,IAAI,EAAE1H,SAAS,CAAC0I,UANlB;AAOE,IAAA,SAAS,EAAExI,UAAU,CAACxE,OAPxB;AAQE,IAAA,KAAK,EAAE,EART;AASE,IAAA,MAAM,EAAE;AATV,IAjBR,CAdF,CAtHN,CADF;AAyKD;;ACrMD,IAAMiN,oBAAoB,GAAG,2BAA7B;;AAEA,IAAMxB,UAAU,GAAG,SAAbA,UAAa,CAACC,GAAD;AAAA,SACjBC,IAAI,CAACC,GAAL,CAASF,GAAT,IAAgB,GAAhB,aACO,CAACC,IAAI,CAACC,GAAL,CAASF,GAAT,IAAgB,IAAjB,EAAuBG,OAAvB,CAA+B,CAA/B,CADP,SAEIH,GAHa;AAAA,CAAnB;;AAMA,SAASwB,eAAT,CAAyB7O,KAAzB,EAAgC;AAC9B,MACEiJ,SADF,GASIjJ,KATJ,CACEiJ,SADF;AAAA,MAEE6F,YAFF,GASI9O,KATJ,CAEE8O,YAFF;AAAA,MAGEC,UAHF,GASI/O,KATJ,CAGE+O,UAHF;AAAA,MAIE5H,kBAJF,GASInH,KATJ,CAIEmH,kBAJF;AAAA,MAKEC,iBALF,GASIpH,KATJ,CAKEoH,iBALF;AAAA,MAME4H,kBANF,GASIhP,KATJ,CAMEgP,iBANF;AAAA,MAOEC,oBAPF,GASIjP,KATJ,CAOEiP,oBAPF;AAAA,MAQEC,qBARF,GASIlP,KATJ,CAQEkP,qBARF;AAWA,MACYC,QADZ,GAUInP,KAVJ,CACEoP,MADF,CACYD,QADZ;AAAA,sBAUInP,KAVJ,CAEEqP,MAFF;AAAA,MAGInD,aAHJ,iBAGIA,aAHJ;AAAA,MAII7L,KAJJ,iBAIIA,KAJJ;AAAA,MAKID,MALJ,iBAKIA,MALJ;AAAA,MAMIkP,MANJ,iBAMIA,MANJ;AAAA,MAOIC,QAPJ,iBAOIA,QAPJ;AAAA,uBAUIvP,KAVJ,CASEwP,OATF;AAAA,MASEA,OATF,+BASY,EATZ;AAYA,uBAAwBxP,KAAxB,CAAQqP,MAAR;AAAA,MAAQA,MAAR,+BAAiB,EAAjB;AACA,MAAMI,6BAA6B,GAAGtI,kBAAkB,IAAIkI,MAAM,CAAClI,kBAAnE;AACA,MAAMuI,wBAAwB,GAAGtI,iBAAiB,IAAIiI,MAAM,CAACjI,iBAA7D;AAEA,MAAMuI,kCAAkC,GAAGH,OAAO,CAACI,wBAAnD;;AACA,oBAAsB7O,UAAU,CAACC,mBAAD,CAAhC;AAAA,MAAQC,SAAR,eAAQA,SAAR;;AAEA,MAAQ+J,GAAR,GAA6BmE,QAA7B,CAAQnE,GAAR;AAAA,MAAa6E,WAAb,GAA6BV,QAA7B,CAAaU,WAAb,CA/B8B;;AAkC9B,kBAA8CnP,QAAQ,CAACoP,MAAM,EAAP,CAAtD;AAAA;AAAA,MAAOC,eAAP;AAAA,MAAwBC,kBAAxB;;AACA,mBAA8BtP,QAAQ,CAAC,IAAD,CAAtC;AAAA;AAAA,MAAOP,OAAP;AAAA,MAAgB8P,UAAhB;;AACA,mBAA4CvP,QAAQ,CAAC,KAAD,CAApD;AAAA;AAAA,MAAOwP,cAAP;AAAA,MAAuBC,iBAAvB;;AACA,mBAA0CzP,QAAQ,CAAC,KAAD,CAAlD;AAAA;AAAA,MAAO0P,aAAP;AAAA,MAAsBC,gBAAtB;;AACA,mBAA0D3P,QAAQ,CAAC,KAAD,CAAlE;AAAA;AAAA,MAAO4P,qBAAP;AAAA,MAA8BC,wBAA9B;;AAEA,MAAMC,mBAAmB,GAAG,CAC1BpH,KAAK,CAACC,OAAN,CAAcJ,SAAd,KACK2F,oBADL,4BAC8B3F,SAD9B,KAEI,CAAC2F,oBAAD,EAAuB3F,SAAvB,CAHsB,EAI1BrF,IAJ0B,CAIrB,GAJqB,CAA5B;AAMAmB,EAAAA,SAAS,CAAC,YAAM;AACduK,IAAAA,MAAM,CAACmB,IAAP,CAAY,6BAAZ;;AACA,QAAI,CAAC1B,UAAD,IAAe,CAACc,WAAhB,IAA+B,CAAC7E,GAApC,EAAyC;AACvCsE,MAAAA,MAAM,CAACoB,OAAP,CAAe,oCAAf,EAAqD,oCAArD;AACAP,MAAAA,iBAAiB,CAAC,KAAD,CAAjB;AACD,KAHD,MAGO;AACL,UAAI,CAACnF,GAAD,IAAQ,CAACA,GAAG,CAAC2F,YAAjB,EAA+B;AAC7BrB,QAAAA,MAAM,CAACoB,OAAP,CAAe,kCAAf;AACA;AACD;;AACD1F,MAAAA,GAAG,CAAC2F,YAAJ,CAAiBC,UAAjB,CAA4B7B,UAA5B,EAAwC,UAAC8B,YAAD,EAAkB;AACxD,YAAI,CAACA,YAAL,EAAmB;AACjBvB,UAAAA,MAAM,CAACoB,OAAP,CAAe,oCAAf;AACAP,UAAAA,iBAAiB,CAAC,IAAD,CAAjB;AACD,SAHD,MAGO;AACLb,UAAAA,MAAM,CAACmB,IAAP,CAAY,wCAAZ,EAAsDI,YAAtD;AACAV,UAAAA,iBAAiB,CAAC,KAAD,CAAjB;AACAF,UAAAA,UAAU,CAACY,YAAD,CAAV;AACD;AACF,OATD;AAUD;AACF,GArBQ,EAqBN,CAAC9B,UAAD,EAAac,WAAb,EAA0BE,eAA1B,CArBM,CAAT;;AAuBA,MAAI,CAAC5P,OAAD,IAAY+P,cAAhB,EAAgC;AAC9B,wBACE9O;AAAK,MAAA,SAAS,EAAEoP;AAAhB,oBACEpP;AAAK,MAAA,SAAS,EAAC;AAAf,oBACEA,6BAAC,KAAD;AAAO,MAAA,IAAI,EAAEiB,eAAe,CAACyO,GAA7B;AAAkC,MAAA,KAAK,EAAEvO,WAAW,CAACwB;AAArD,OACG9C,SAAS,CAAC8P,8BADb,CADF,eAIE3P,6BAAC,IAAD;AACE,MAAA,SAAS,EAAC,uCADZ;AAEE,MAAA,IAAI,EAAE6E,SAAS,CAAC+K,KAFlB;AAGE,MAAA,MAAM,EAAC,MAHT;AAIE,MAAA,KAAK,EAAC,MAJR;AAKE,MAAA,OAAO,EAAE,mBAAM;AACb1B,QAAAA,MAAM,CAACmB,IAAP,CAAY,8BAAZ;AACA3B,QAAAA,YAAY;AACb;AARH,MAJF,CADF,eAgBE1N,uDACEA,6BAAC,WAAD;AAAa,MAAA,IAAI,EAAE6P,gBAAgB,CAACC;AAApC,MADF,CAhBF,CADF;AAsBD;;AAED,sBACE9P,6BAAC,mBAAD;AACE,IAAA,SAAS,EAAEoP,mBADb;AAEE,IAAA,kBAAkB,EAAEf,6BAFtB;AAGE,IAAA,iBAAiB,EAAEC;AAHrB,kBAKEtO;AAAK,IAAA,SAAS,EAAC;AAAf,kBACEA,6BAAC,KAAD;AAAO,IAAA,IAAI,EAAEiB,eAAe,CAACyO,GAA7B;AAAkC,IAAA,KAAK,EAAEvO,WAAW,CAACwB;AAArD,KACG9C,SAAS,CAAC8P,8BADb,CADF,eAIE3P;AAAK,IAAA,SAAS,EAAC;AAAf,kBACEA,6BAAC,UAAD;AACE,IAAA,KAAK,EAAC,MADR;AAEE,IAAA,MAAM,EAAC,MAFT;AAGE,IAAA,OAAO,EAAE,mBAAM;AACbkO,MAAAA,MAAM,CAACmB,IAAP,CAAY,8BAAZ;AACA3B,MAAAA,YAAY;AACb;AANH,kBAQE1N,6BAAC,IAAD;AACE,IAAA,SAAS,EAAC,uCADZ;AAEE,IAAA,IAAI,EAAE6E,SAAS,CAAC+K,KAFlB;AAGE,IAAA,MAAM,EAAC,MAHT;AAIE,IAAA,KAAK,EAAC;AAJR,IARF,CADF,CAJF,CALF,eA2BE5P;AAAK,IAAA,SAAS,EAAC;AAAf,KAEI6N,oBAAoB,GAChBA,oBAAoB,CAAC;AAAE9O,IAAAA,OAAO,EAAPA;AAAF,GAAD,CADJ,gBAGhBiB,6BAAC,cAAD;AACE,IAAA,QAAQ,EAAE,CAACmO,QADb;AAEE,IAAA,OAAO,EAAEpP,OAFX;AAGE,IAAA,MAAM,EAAEC,MAHV;AAIE,IAAA,KAAK,EAAEC,KAJT;AAKE,IAAA,mBAAmB,EAAE,6BAACM,UAAD,EAAawQ,YAAb,EAA8B;AACjD7B,MAAAA,MAAM,CAACmB,IAAP,CAAY,oDAAZ;AACA,UAAMzI,UAAU,GAAGgD,GAAG,CAACoG,qBAAJ,EAAnB;;AACA,UAAIlC,qBAAJ,EAA2B;AACzB,YAAMmC,MAAM,GAAGnC,qBAAqB,CAACiC,YAAD,EAAexQ,UAAf,EAA2BR,OAAO,CAACmR,IAAnC,CAApC,CADyB;;AAGzBnR,QAAAA,OAAO,CAACoR,aAAR,CAAsBF,MAAtB,EAA8B,UAACrH,QAAD,EAAW5E,KAAX,EAAqB;AACjD,cAAIyL,YAAY,GAAG7G,QAAnB;;AACA,cAAIhC,UAAJ,EAAgB;AACd6I,YAAAA,YAAY,GAAGzL,KAAf;AACD;;AAED4J,UAAAA,kBAAiB,CAAC6B,YAAD,CAAjB;;AACAb,UAAAA,kBAAkB,CAACF,MAAM,EAAP,CAAlB;AACD,SARD;AASA;AACD;;AACD3P,MAAAA,OAAO,CAACoR,aAAR,CACEJ,YADF,EAEExQ,UAFF,EAGER,OAAO,CAACmR,IAHV,EAIE,UAACtH,QAAD,EAAW5E,KAAX,EAAqB;AACnB,YAAIyL,YAAY,GAAG7G,QAAnB;;AACA,YAAIhC,UAAJ,EAAgB;AACd6I,UAAAA,YAAY,GAAGzL,KAAf;AACD;;AACDkK,QAAAA,MAAM,CAACmB,IAAP,CAAY,8CAAZ,EAA4DI,YAA5D;;AACA7B,QAAAA,kBAAiB,CAAC6B,YAAD,CAAjB;;AACAb,QAAAA,kBAAkB,CAACF,MAAM,EAAP,CAAlB;AACD,OAZH;AAcD;AApCH,IALR,EA8CI3P,OAAO,CAAC4F,MAAR,KAAmB,UAAnB,gBAEI3E,6BAACoQ,WAAD;AACE,IAAA,OAAO,EAAErR,OADX;AAEE,IAAA,MAAM,EAAEC,MAFV;AAGE,IAAA,iBAAiB,EAAE,2BAACyQ,YAAD,EAAkB;AACnC;AACA7B,MAAAA,kBAAiB,CAAC6B,YAAD,CAAjB;AACD,KANH;AAOE,IAAA,gBAAgB,EACd;AAAA,aAAQ3E,aAAa,IAAI,OAAOA,aAAP,KAAyB,UAA3C,GACHA,aAAa,EADV,GAEHuF,0BAA0B,CAAC;AAAEzG,QAAAA,GAAG,EAAHA,GAAF;AAAO2E,QAAAA,kCAAkC,EAAlCA;AAAP,OAAD,CAF9B;AAAA;AARJ,IAFJ,gBAkBIvO,yEAEEA;AACE,IAAA,SAAS,EAAE,CACT,uCADS,EAET,oCAFS,EAGTwC,IAHS,CAGJ,GAHI,CADb;AAKE,IAAA,IAAI,EAAC,QALP;AAME,oBAAcwM,aANhB;AAOE,IAAA,SAAS,EAAE;AAAA,aAAMC,gBAAgB,CAAC,CAACD,aAAF,CAAtB;AAAA,KAPb;AAQE,IAAA,OAAO,EAAE;AAAA,aAAMC,gBAAgB,CAAC,CAACD,aAAF,CAAtB;AAAA,KARX;AASE,IAAA,QAAQ,EAAE;AATZ,kBAWEhP,6BAAC,IAAD;AACE,IAAA,SAAS,EAAC,4CADZ;AAEE,IAAA,IAAI,EAAE6E,SAAS,CAAC8H,OAFlB;AAGE,IAAA,SAAS,EAAE5H,UAAU,CAACxE,OAHxB;AAIE,IAAA,MAAM,EAAC,MAJT;AAKE,IAAA,KAAK,EAAC;AALR,IAXF,eAkBEP,6BAAC,KAAD;AACE,IAAA,IAAI,EAAEiB,eAAe,CAACkH,UADxB;AAEE,IAAA,KAAK,EAAEhH,WAAW,CAACwB;AAFrB,KAIG9C,SAAS,CAAC+M,+BAJb,eAKE5M,6BAAC,KAAD;AAAO,IAAA,KAAK,EAAEgM,UAAU,CAACjN,OAAO,CAAC8N,WAAT;AAAxB,IALF,CAlBF,eAyBE7M,6BAAC,IAAD;AACE,IAAA,SAAS,EAAE,CACT,6CADS,EAET,gDAFS,EAGRgP,aAAa,GAAG,6CAAH,GAAmD,EAHxD,EAITxM,IAJS,CAIJ,GAJI,CADb;AAME,IAAA,IAAI,EAAEqC,SAAS,CAACyL,aANlB;AAOE,IAAA,MAAM,EAAC,MAPT;AAQE,IAAA,KAAK,EAAC;AARR,IAzBF,CAFF,EAuCItB,aAAa,iBACXhP,6BAAC,gBAAD;AACE,IAAA,WAAW,EAAEhB,MADf;AAEE,IAAA,QAAQ,EAAE,CAACmP,QAFb;AAAA;AAIE,IAAA,gBAAgB,EACd;AAAA,aAAQrD,aAAa,IAAI,OAAOA,aAAP,KAAyB,UAA3C,GACHA,aAAa,EADV,GAEHuF,0BAA0B,CAAC;AAAEzG,QAAAA,GAAG,EAAHA,GAAF;AAAO2E,QAAAA,kCAAkC,EAAlCA;AAAP,OAAD,CAF9B;AAAA,KALJ;AAUE,IAAA,UAAU,EACR3E,GAAG,IAAIA,GAAG,CAACoG,qBAAX,IAAoCpG,GAAG,CAACoG,qBAAJ,EAXxC;AAaE,IAAA,OAAO,EAAEjR,OAbX;AAcE,IAAA,OAAO,EAAEA,OAAO,CAACoD,OAdnB;AAeE,IAAA,eAAe,EAAE,yBAAC2G,eAAD,EAAqB;AACpCoF,MAAAA,MAAM,CAACmB,IAAP,CAAY,qCAAZ;AACAtQ,MAAAA,OAAO,CAACsM,iBAAR,CAA0BvC,eAA1B,EACGyH,IADH,CACQ,UAACC,GAAD,EAAS;AACb5C,QAAAA,kBAAiB,CAAC4C,GAAD,CAAjB;;AACA5B,QAAAA,kBAAkB,CAACF,MAAM,EAAP,CAAlB;AACAR,QAAAA,MAAM,CAACmB,IAAP,CAAY,8CAAZ,EAA4DmB,GAA5D;AACD,OALH;AAMD;AAvBH,IAxCN,CAhER,eAuIExQ;AACE,IAAA,SAAS,EAAE,CACT,uCADS,EAET,0CAFS,EAGT,CAACmO,QAAD,GAAY,iDAAZ,GAAgE,EAHvD,EAIT3L,IAJS,CAIJ,GAJI,CADb;AAME,IAAA,IAAI,EAAC,QANP;AAOE,IAAA,QAAQ,MAPV;AAQE,IAAA,SAAS,EAAE,qBAAM;AACf,UAAI,CAAC2L,QAAL,EAAe;AAAE;AAAS;;AAC1BgB,MAAAA,wBAAwB,CAAC,IAAD,CAAxB;AACD,KAXH;AAYE,IAAA,OAAO,EAAE,mBAAM;AACb,UAAI,CAAChB,QAAL,EAAe;AAAE;AAAS;;AAC1BgB,MAAAA,wBAAwB,CAAC,IAAD,CAAxB;AACD,KAfH;AAgBE,IAAA,QAAQ,EAAE;AAhBZ,kBAkBEnP,6BAAC,IAAD;AACE,IAAA,SAAS,EAAE,CACT,4CADS,EAET,8CAFS,EAGTwC,IAHS,CAGJ,GAHI,CADb;AAKE,IAAA,IAAI,EAAEqC,SAAS,CAAC4L,KALlB;AAME,IAAA,SAAS,EAAE1L,UAAU,CAAC2L,KANxB;AAOE,IAAA,MAAM,EAAC,MAPT;AAQE,IAAA,KAAK,EAAC;AARR,IAlBF,eA4BE1Q,6BAAC,KAAD;AACE,IAAA,IAAI,EAAEiB,eAAe,CAACkH,UADxB;AAEE,IAAA,KAAK,EAAEhH,WAAW,CAACwB;AAFrB,KAIG9C,SAAS,CAAC8Q,qCAJb,CA5BF,CAvIF,EA2KIzB,qBAAqB,iBACnBlP,6BAAC4Q,YAAD;AACE,IAAA,YAAY,EAAE;AAAA,aAAMzB,wBAAwB,CAAC,KAAD,CAA9B;AAAA,KADhB;AAEE,IAAA,cAAc,EAAE,0BAAM;AACpBjB,MAAAA,MAAM,CAACmB,IAAP,CAAY,kCAAZ,EAAgDtQ,OAAhD;AACAA,MAAAA,OAAO,CAAC8R,KAAR,GACGN,IADH,CACQ,YAAM;AACVrC,QAAAA,MAAM,CAACmB,IAAP,CAAY,8CAAZ,EAA4DtQ,OAA5D;AACA2O,QAAAA,YAAY;AACb,OAJH;AAKD;AATH,IA5KN,CA3BF,CADF;AAwND;;AAEDD,eAAe,CAAClM,SAAhB,GAA4B;AAC1BsG,EAAAA,SAAS,EAAErG,SAAS,CAACsP,SAAV,CAAoB,CAC7BtP,SAAS,CAACI,MADmB,EAE7BJ,SAAS,CAACuB,OAAV,CAAkBvB,SAAS,CAACI,MAA5B,CAF6B,CAApB,CADe;AAK1B8L,EAAAA,YAAY,EAAElM,SAAS,CAACC,IALE;AAM1BmM,EAAAA,iBAAiB,EAAEpM,SAAS,CAACC,IANH;AAO1BqM,EAAAA,qBAAqB,EAAEtM,SAAS,CAACC,IAPP;AAQ1BoM,EAAAA,oBAAoB,EAAErM,SAAS,CAACsP,SAAV,CAAoB,CACxCtP,SAAS,CAACuP,OAD8B,EAExCvP,SAAS,CAACC,IAF8B,CAApB,CARI;AAY1BsE,EAAAA,kBAAkB,EAAEvE,SAAS,CAACwB,IAZJ;AAa1BgD,EAAAA,iBAAiB,EAAExE,SAAS,CAACC,IAbH;AAc1BkM,EAAAA,UAAU,EAAEnM,SAAS,CAACI,MAAV,CAAiBF,UAdH;AAe1B0M,EAAAA,OAAO,EAAE5M,SAAS,CAACG,KAAV,CAAgB;AACvB6M,IAAAA,wBAAwB,EAAEhN,SAAS,CAACG,KAAV,CAAgB;AACxCmC,MAAAA,KAAK,EAAEtC,SAAS,CAACwP,MADuB;AAExCC,MAAAA,aAAa,EAAEzP,SAAS,CAACuB,OAAV,CAAkBvB,SAAS,CAACI,MAA5B,CAFyB;AAGxCsP,MAAAA,iBAAiB,EAAE1P,SAAS,CAACI,MAHW;AAIxCuP,MAAAA,oBAAoB,EAAE3P,SAAS,CAACuB,OAAV,CAAkBvB,SAAS,CAACI,MAA5B;AAJkB,KAAhB;AADH,GAAhB,CAfiB;AAuB1B;AACAoM,EAAAA,MAAM,EAAExM,SAAS,CAACG,KAAV,CAAgB;AACtBoM,IAAAA,QAAQ,EAAEvM,SAAS,CAACG,KAAV,CAAgB;AACxBiI,MAAAA,GAAG,EAAEpI,SAAS,CAACG,KAAV,CAAgB;AACnBqO,QAAAA,qBAAqB,EAAExO,SAAS,CAACC,IADd;AAEnB8N,QAAAA,YAAY,EAAE/N,SAAS,CAACsP,SAAV,CAAoB,CAChCtP,SAAS,CAACG,KAAV,CAAgB;AACd6N,UAAAA,UAAU,EAAEhO,SAAS,CAACC;AADR,SAAhB,CADgC,EAIhCD,SAAS,CAACC,IAJsB,CAApB,CAFK;AAQnB2P,QAAAA,8BAA8B,EAAE5P,SAAS,CAAC6P;AARvB,OAAhB,CADmB;AAWxB5C,MAAAA,WAAW,EAAEjN,SAAS,CAACwB;AAXC,KAAhB;AADY,GAAhB,EAcLtB,UAtCuB;AAuC1BuM,EAAAA,MAAM,EAAEzM,SAAS,CAACG,KAAV,CAAgB;AACtB3C,IAAAA,MAAM,EAAEwC,SAAS,CAACI,MADI;AAEtB3C,IAAAA,KAAK,EAAEuC,SAAS,CAACI,MAFK;AAGtBkJ,IAAAA,aAAa,EAAEtJ,SAAS,CAACC,IAHH;AAItB0M,IAAAA,QAAQ,EAAE3M,SAAS,CAACwB,IAJE;AAKtBkL,IAAAA,MAAM,EAAE1M,SAAS,CAACG,KAAV,CAAgB;AACtB0N,MAAAA,IAAI,EAAE7N,SAAS,CAACC,IADM;AAEtBuC,MAAAA,KAAK,EAAExC,SAAS,CAACC,IAFK;AAGtB6N,MAAAA,OAAO,EAAE9N,SAAS,CAACC;AAHG,KAAhB;AALc,GAAhB,EAULC;AAjDuB,CAA5B;AAoDA+L,eAAe,CAACxK,YAAhB,GAA+B;AAC7B4E,EAAAA,SAAS,EAAE,EADkB;AAE7BiG,EAAAA,qBAAqB,EAAE,IAFM;AAG7BM,EAAAA,OAAO,EAAE,EAHoB;AAI7BrI,EAAAA,kBAAkB,EAAE,KAJS;AAK7BC,EAAAA,iBAAiB,EAAE,IALU;AAM7B6H,EAAAA,oBAAoB,EAAE,IANO;AAO7BH,EAAAA,YAAY,EAAE,wBAAM,EAPS;AAQ7BE,EAAAA,iBAAiB,EAAE,6BAAM;AARI,CAA/B;AAWA,wBAAejD,mBAAmB,CAAC8C,eAAD,CAAlC;;;;"}