react-native-kore-botsdk
Version:
Description of your library
1 lines • 1.15 MB
Source Map (JSON)
{"version":3,"sources":["../src/index.tsx","../bot-sdk/constants/Constant.tsx","../bot-sdk/templates/BotTemplate.tsx","../bot-sdk/templates/AdvancedListTemplate.tsx","../bot-sdk/templates/BaseView.tsx","../bot-sdk/theme/ThemeContext.tsx","../bot-sdk/utils/helpers.tsx","../bot-sdk/theme/Color.tsx","../bot-sdk/utils/colorMappings.tsx","../bot-sdk/utils/RenderImage.tsx","../bot-sdk/chat/components/UserAvatar.tsx","../bot-sdk/utils/PlatformCheck.tsx","../bot-sdk/utils/SvgIcon.js","../bot-sdk/assets/audio.tsx","../bot-sdk/assets/boticons.tsx","../bot-sdk/assets/playerIcons.tsx","../bot-sdk/assets/headerIcons.tsx","../bot-sdk/assets/composebarIcons.tsx","../bot-sdk/assets/welcome.tsx","../bot-sdk/assets/thumbsup.tsx","../bot-sdk/components/CollapsableContainer.tsx","../bot-sdk/theme/styles.tsx","../bot-sdk/templates/CardTemplate.tsx","../bot-sdk/templates/CarouselTemplate.tsx","../bot-sdk/theme/themeHelper.tsx","../bot-sdk/templates/DateTemplate.tsx","../bot-sdk/components/datePicker/ComposePicker.tsx","../bot-sdk/components/datePicker/DateRange.js","../bot-sdk/components/datePicker/normalizeText.js","../bot-sdk/components/datePicker/Month.js","../bot-sdk/components/datePicker/Week.js","../bot-sdk/components/datePicker/dates.js","../bot-sdk/templates/BotText.tsx","../bot-sdk/utils/ParseList.tsx","../bot-sdk/templates/ErrorTemplate.tsx","../bot-sdk/templates/ImageTemplate.tsx","../bot-sdk/templates/ListTemplate.tsx","../bot-sdk/templates/MiniTableTemplate.tsx","../bot-sdk/templates/TableTemplate.tsx","../bot-sdk/templates/charts/BarChartTemplate.tsx","../bot-sdk/templates/charts/LineChartTemplate.tsx","../bot-sdk/templates/charts/PieChartView.tsx","../bot-sdk/templates/charts/StackBarChartTemplate.tsx","../bot-sdk/templates/Button.tsx","../bot-sdk/templates/MessageText.tsx","../bot-sdk/templates/TableListTemplate.tsx","../bot-sdk/templates/AdvanceMultiSelectTemplate.tsx","../bot-sdk/templates/MultiSelectTemplate.tsx","../bot-sdk/templates/RadioOptionTemplate.tsx","../bot-sdk/templates/ListViewTemplate.tsx","../bot-sdk/templates/DropdownTemplate.tsx","../bot-sdk/templates/FeedbackTemplate.tsx","../bot-sdk/templates/FormTemplate.tsx","../bot-sdk/templates/ClockTemplate.tsx","../bot-sdk/templates/ListWidgetTemplate.tsx","../bot-sdk/components/ListWidgetButtonsView.tsx","../bot-sdk/templates/AudioTemplate.tsx","../bot-sdk/components/AudioPlayer.tsx","../bot-sdk/templates/VideoTemplate.tsx","../bot-sdk/components/FullScreenVideo.tsx","../bot-sdk/components/MoVideoPlayer.js","../bot-sdk/templates/Attachemnts.tsx","../bot-sdk/utils/FileIcon.tsx","../bot-sdk/templates/CustomTemplate.tsx","../bot-sdk/templates/QuickReplies.tsx"],"sourcesContent":["import 'react-native-svg';\n\nexport * from '../bot-sdk/constants/Constant';\nexport * from '../bot-sdk/theme/IThemeType';\nexport * from '../bot-sdk/templates/BotTemplate';\nexport * from '../bot-sdk/templates/CustomTemplate';\n\n//export {default as BotTemplate} from '../bot-sdk/templates/BotTemplate';\nimport BotTemplate from '../bot-sdk/templates/BotTemplate';\n\n//import KoreChat from '../bot-sdk/chat/KoreChat';\n\nexport {default as QuickReplies} from '../bot-sdk/templates/QuickReplies';\n\nexport {default as CustomTemplate} from '../bot-sdk/templates/CustomTemplate';\n\nexport default BotTemplate; //KoreChat;\n","import {Platform} from 'react-native';\n\n// for upload files\nexport const MAX_SOURCE_LIMIT = 1;\nexport const LIMIT_MESSAGE =\n 'Only ' + MAX_SOURCE_LIMIT + ' sources are allowed';\nexport const MAX_FILE_NAME_LENGTH = 24;\nexport const FILE_CONTEXT: string = 'workflows';\nexport const attach_menu_buttons = [\n {\n id: 1,\n title: 'Take Photo',\n },\n {\n id: 2,\n title: 'Upload Photo',\n },\n {\n id: 3,\n title: 'Upload File',\n },\n {\n id: 4,\n title: 'Upload Video',\n },\n];\n\nexport const HeaderIconsId = {\n BACK: 'BACK',\n HELP: 'HELP',\n LIVE_AGENT: 'live_agent',\n MINIMISE: 'Minimise',\n CLOSE: 'CLOSE',\n THREE_DOTS: 'THREE_DOTS',\n RECONNECT: 'Reconnect',\n EXPAND: 'Expand',\n};\nexport const ChatHeaderType = {\n COMPACT: 'compact',\n LARGE: 'large',\n MEDIUM: 'medium',\n REGULAR: 'regular',\n};\n\nexport const SHOW_BUTTONS_LIMIT: number = 4;\n\nexport const MAX_INPUT_TEXT_LENGTH: number = 256;\n\nexport const MIN_COMPOSER_HEIGHT = Platform.select({\n ios: 30,\n android: 30,\n});\nexport const MIN_TOOL_BAR_HEIGHT = Platform.select({\n ios: 76,\n android: 72,\n});\nexport const MAX_TOOL_BAR_HEIGHT = Platform.select({\n ios: 180,\n android: 180,\n});\n\nexport const MIN_HEADER_HEIGHT = Platform.select({\n ios: 55,\n android: 55,\n web: 34,\n});\nexport const BRANDING_RESPONSE_FILE = 'branding';\nexport const MAX_COMPOSER_HEIGHT = 200;\nexport const DEFAULT_PLACEHOLDER = 'Type a message';\nexport const DATE_FORMAT = 'll';\nexport const TIME_FORMAT = 'LT, ddd';\nexport const BOT_ICON_URL = 'BOT_ICON_URL';\n\nexport const URL_VERSION = '/1.1';\n\n// export const RTM_EVENT = {\n// CONNECTING: 'connecting',\n// AUTHENTICATED: 'authenticated',\n// ON_OPEN: 'on_open',\n// ON_DISCONNECT: 'disconnect',\n// ON_CLOSE: 'on_close',\n// ON_ERROR: 'on_error',\n// ON_MESSAGE: 'on_message',\n// ON_FAILURE: 'failure',\n// PING: 'ping',\n// PONG: 'pong',\n// ERROR: 'error',\n// RECONNECTING: 'reconnecting',\n// UNABLE_TO_RTM_START: 'unable_to_rtm_start',\n// GET_HISTORY: 'get_history',\n// GET_RESULT_VIEW_SETTINGS: 'result_view_settings',\n// ON_ACK: 'ack',\n// };\n\nexport const TEMPLATE_TYPES = {\n TEXT: 'text',\n BUTTON: 'button',\n CUSTOM: 'custom',\n OTHER: 'other',\n AUDIO_MESSAGE: 'message',\n VIDEO_MESSAGE: 'video_message',\n LINK_MESSAGE: 'link',\n IMAGE_MESSAGE: 'image',\n CARD_TEMPLATE: 'cardTemplate',\n LIST_TEMPLATE: 'list',\n IMAGE_TEMPLATE: 'image',\n TABLE_TEMPLATE: 'table',\n QUICK_REPLIES: 'quick_replies',\n HIDDEN_DIALOG: 'hidden_dialog',\n ERROR_TEMPLATE: 'error',\n CAROUSEL_TEMPLATE: 'carousel',\n LIVE_AGENT_TEMPLATE: 'live_agent',\n START_TIMER: 'start_timer',\n ADVANCED_LIST_TEMPLATE: 'advancedListTemplate',\n MINI_TABLE_TEMPLATE: 'mini_table',\n BAR_CHART_TEMPLATE: 'barchart',\n PIE_CHART_TEMPLATE: 'piechart',\n LINE_CHART_TEMPLATE: 'linechart',\n DATE_TEMPLATE: 'dateTemplate',\n DATE_RANGE_TEMPLATE: 'daterange',\n TABLE_LIST_TEMPLATE: 'tableList',\n ADVANCED_MULTI_SELECT_TEMPLATE: 'advanced_multi_select',\n MULTI_SELECT_TEMPLATE: 'multi_select',\n RADIO_OPTION_TEMPLATE: 'radioOptionTemplate',\n LIST_VIEW_TEMPLATE: 'listView',\n DROPDOWN_TEMPLATE: 'dropdown_template',\n FEEDBACK_TEMPLATE: 'feedbackTemplate',\n FORM_TEMPLATE: 'form_template',\n CLOCK_TEMPLATE: 'clockTemplate',\n LISTWIDGET_TEMPLATE: 'listWidget',\n ATTACHEMENT_TEMPLATE: 'attachement',\n};\n\nexport const RENDER_KORA_BUBBLE = 'RENDER_KORA_BUBBLE';\nexport const KORA_ITEM_CLICK = 'KORA_ITEM_CLICK';\n\nexport interface ButtonTheme {\n ACTIVE_BG_COLOR: any;\n ACTIVE_TXT_COLOR: any;\n INACTIVE_BG_COLOR: any;\n INACTIVE_TXT_COLOR: any;\n}\n\nexport interface BubbleTheme {\n BUBBLE_LEFT_BG_COLOR: any;\n BUBBLE_LEFT_TEXT_COLOR: any;\n BUBBLE_RIGHT_BG_COLOR: any;\n BUBBLE_RIGHT_TEXT_COLOR: any;\n}\n\nexport const WelcomeHeaderConstants = {\n COMPACT: 'compact',\n LARGE: 'large',\n MEDIUM: 'medium',\n REGULAR: 'regular',\n};\n","import * as React from 'react';\nimport {Text} from 'react-native';\nimport {TEMPLATE_TYPES} from '../constants/Constant';\nimport {IThemeType} from '../theme/IThemeType';\nimport AdvancedListTemplate from './AdvancedListTemplate';\nimport CardTemplate from './CardTemplate';\nimport CarouselTemplate from './CarouselTemplate';\nimport DateTemplate from './DateTemplate';\nimport ErrorTemplate from './ErrorTemplate';\nimport ImageTemplate from './ImageTemplate';\nimport ListTemplate from './ListTemplate';\nimport MiniTableTemplate from './MiniTableTemplate';\nimport TableTemplate from './TableTemplate';\nimport BarChartTemplate from './charts/BarChartTemplate';\nimport LineChartTemplate from './charts/LineChartTemplate';\nimport PieChartView from './charts/PieChartView';\nimport StackBarChartTemplate from './charts/StackBarChartTemplate';\nimport Button from './Button';\nimport MessageText from './MessageText';\nimport BotText from './BotText';\nimport TableListTemplate from './TableListTemplate';\nimport AdvanceMultiSelectTemplate from './AdvanceMultiSelectTemplate';\nimport MultiSelectTemplate from './MultiSelectTemplate';\nimport RadioOptionTemplate from './RadioOptionTemplate';\nimport ListViewTemplate from './ListViewTemplate';\nimport DropdownTemplate from './DropdownTemplate';\nimport FeedbackTemplate from './FeedbackTemplate';\nimport FormTemplate from './FormTemplate';\nimport ClockTemplate from './ClockTemplate';\nimport ListWidgetTemplate from './ListWidgetTemplate';\nimport AudioTemplate from './AudioTemplate';\nimport VideoTemplate from './VideoTemplate';\nimport Attachements from './Attachemnts';\n\nexport interface BotTemplateProps {\n templateType: string;\n textContainerStyle?: any;\n payload?: any;\n theme?: IThemeType;\n renderMessageText?: (props: any) => React.ReactNode;\n currentMessage?: {\n message?: any;\n pending: any;\n received: any;\n sent: any;\n text?: any;\n createdOn?: any | null;\n image?: any | null;\n user: {\n _id: string;\n name: string;\n };\n };\n messageTextProps?: any;\n onListItemClick?: any;\n}\n\nexport interface BotTemplateState {}\n\nexport interface onListItemClickProps {\n templateType: string;\n item?: any;\n}\n\nexport default class BotTemplate extends React.Component<\n BotTemplateProps,\n BotTemplateState\n> {\n static defaultProps: {\n currentMessage: null;\n };\n\n private renderBubbleViews = (\n templateType?: string,\n payload?: any,\n theme?: IThemeType,\n onListItemClick?: any,\n ) => {\n if (onListItemClick) {\n payload = {\n ...payload,\n onListItemClick,\n };\n }\n // theme = undefined;\n //console.log('templateType ----->:', templateType);\n // console.log('================ ================ ===============');\n // console.log('templateType ----->:', templateType);\n // console.log('template payload ----->:', JSON.stringify(payload));\n // console.log('================ ================ ===============');\n switch (templateType) {\n case TEMPLATE_TYPES.TEXT:\n case TEMPLATE_TYPES.LIVE_AGENT_TEMPLATE:\n return this.renderMessageText(payload, theme, templateType);\n case TEMPLATE_TYPES.BUTTON:\n return <Button payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.CARD_TEMPLATE:\n return <CardTemplate payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.LIST_TEMPLATE:\n return <ListTemplate payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.IMAGE_MESSAGE:\n return <ImageTemplate payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.TABLE_TEMPLATE:\n return <TableTemplate payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.QUICK_REPLIES:\n return this.renderBotText(payload, templateType, theme);\n case TEMPLATE_TYPES.ERROR_TEMPLATE:\n return <ErrorTemplate payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.CAROUSEL_TEMPLATE:\n return <CarouselTemplate payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.ADVANCED_LIST_TEMPLATE:\n return <AdvancedListTemplate payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.MINI_TABLE_TEMPLATE:\n return <MiniTableTemplate payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.BAR_CHART_TEMPLATE:\n if (payload?.stacked) {\n return <StackBarChartTemplate payload={payload} theme={theme} />;\n }\n return <BarChartTemplate payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.PIE_CHART_TEMPLATE:\n return <PieChartView payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.LINE_CHART_TEMPLATE:\n return <LineChartTemplate payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.DATE_TEMPLATE:\n return <DateTemplate payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.DATE_RANGE_TEMPLATE:\n return <DateTemplate payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.TABLE_LIST_TEMPLATE:\n return <TableListTemplate payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.ADVANCED_MULTI_SELECT_TEMPLATE:\n return <AdvanceMultiSelectTemplate payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.MULTI_SELECT_TEMPLATE:\n return <MultiSelectTemplate payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.RADIO_OPTION_TEMPLATE:\n return <RadioOptionTemplate payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.LIST_VIEW_TEMPLATE:\n return <ListViewTemplate payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.DROPDOWN_TEMPLATE:\n return <DropdownTemplate payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.FEEDBACK_TEMPLATE:\n return <FeedbackTemplate payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.FORM_TEMPLATE:\n return <FormTemplate payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.CLOCK_TEMPLATE:\n return <ClockTemplate payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.LISTWIDGET_TEMPLATE:\n return <ListWidgetTemplate payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.AUDIO_MESSAGE:\n return <AudioTemplate payload={payload} theme={theme} />;\n\n case TEMPLATE_TYPES.VIDEO_MESSAGE:\n return <VideoTemplate payload={payload} theme={theme} />;\n case TEMPLATE_TYPES.ATTACHEMENT_TEMPLATE:\n return <Attachements payload={payload} theme={theme} />;\n }\n return (\n <Text style={{padding: 10}}>\n {\"Pending template type: '\"}\n {templateType}\n {\"'\"}\n </Text>\n );\n };\n\n private renderMessageText = (\n payload: any,\n theme?: IThemeType,\n template_type?: any,\n ) => {\n if (payload) {\n const {...messageTextProps} = this.props;\n if (this.props.renderMessageText) {\n return this.props.renderMessageText(messageTextProps);\n }\n\n return (\n <MessageText\n {...messageTextProps?.messageTextProps}\n payload={payload}\n containerStyle={this.props.textContainerStyle}\n theme={theme}\n template_type={template_type}\n //position={'left'}\n />\n );\n }\n return null;\n };\n\n private renderBotText = (\n payload: any,\n template_type?: string,\n theme?: IThemeType,\n ) => {\n let text = null;\n\n if (payload) {\n text = payload?.text;\n text = text ? text : payload?.payload?.text;\n text = text ? text : payload?.text?.text;\n if (template_type && template_type !== TEMPLATE_TYPES.QUICK_REPLIES)\n text = text ? text : payload;\n }\n if (text && typeof text === 'object') {\n let newText: {text: any} = text;\n text = newText?.text;\n }\n\n if (!text) {\n return null;\n }\n if (typeof text !== 'string') {\n console.log('value is not a string type : ', text);\n return <></>;\n }\n return (\n <BotText\n // {...this.props}\n //template_type={template_type}\n text={text}\n isFilterApply={true}\n theme={theme as IThemeType}\n //isLastMsz={isLastMsz}\n />\n );\n };\n\n render() {\n return this.renderBubbleViews(\n this.props.templateType,\n this.props.payload,\n this.props.theme,\n this.props.onListItemClick,\n );\n }\n}\n","/* eslint-disable react/self-closing-comp */\n/* eslint-disable dot-notation */\n/* eslint-disable @typescript-eslint/no-shadow */\n/* eslint-disable react-native/no-inline-styles */\nimport * as React from 'react';\nimport BaseView, {BaseViewProps, BaseViewState} from './BaseView';\nimport {\n Dimensions,\n FlatList,\n Image,\n StyleSheet,\n Text,\n TouchableOpacity,\n View,\n} from 'react-native';\nimport {normalize} from '../utils/helpers';\nimport UserAvatar from '../chat/components/UserAvatar';\nimport dayjs from 'dayjs';\nimport 'dayjs/locale/en'; // Load English locale for formatting\n\nimport CheckBox from 'react-native-check-box';\n\nimport Popover from 'react-native-popover-view';\nimport {SvgIcon} from '../utils/SvgIcon';\nimport {CollapsableContainer} from '../components/CollapsableContainer';\nimport Color from '../theme/Color';\nimport {TEMPLATE_TYPES} from '../constants/Constant';\nimport RadioGroup, {RadioButton} from 'react-native-radio-buttons-group';\nimport {botStyles} from '../theme/styles';\nimport RenderImage from '../utils/RenderImage';\n\nimport 'dayjs/locale/en'; // Load English locale for formatting\nimport advancedFormat from 'dayjs/plugin/advancedFormat';\ndayjs.extend(advancedFormat);\n\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\ndayjs.extend(customParseFormat);\nconst windowWidth = Dimensions.get('window').width;\n\ninterface AdvListProps extends BaseViewProps {\n navigation?: any;\n route?: any;\n}\ninterface AdvListState extends BaseViewState {\n otherOptions: any;\n showPopover?: boolean;\n payload?: any;\n listItems?: any;\n radioOtherOptions: any;\n showBtnPopover?: boolean;\n}\nconst LIST_TEMPLATE_TYPES = {\n NORMAL: 'normal',\n DEFAULT: 'default',\n};\n\nconst koraStyles = StyleSheet.create({\n pbutton: {\n backgroundColor: '#0D6EFD',\n //border: 0,\n // padding: 7px 20px,\n // fontweight: normal,\n // fontsize: 14px,\n // lineheight: 20px,\n // cursor: pointer,\n // background: #0D6EFD,\n // borderradius: 4px,\n // color: #FFFFFF,\n // width: 100%,\n // margin: 0 5px,\n // textalign: center,\n },\n sbutton: {\n backgroundColor: '#FFFFFF',\n // padding: 7px 20px,\n // fontweight: normal,\n // fontsize: 14px,\n // lineheight: 20px,\n // cursor: pointer,\n // width: 100%,\n // margin: 0 5px,\n // background: #FFFFFF,\n // border: 1px solid\n borderColor: '#BDC1C6',\n borderWidth: 1,\n // boxsizing: borderbox,\n // borderradius: 4px,\n // color: #202124,\n // textalign: center,\n },\n pbutton_text: {\n //border: 0,\n // padding: 7px 20px,\n // fontweight: normal,\n // fontsize: 14px,\n // lineheight: 20px,\n // cursor: pointer,\n // background: #0D6EFD,\n // borderradius: 4px,\n color: '#FFFFFF',\n // width: 100%,\n // margin: 0 5px,\n // textalign: center,\n },\n sbutton_text: {\n // padding: 7px 20px,\n // fontweight: normal,\n // fontsize: 14px,\n // lineheight: 20px,\n // cursor: pointer,\n // width: 100%,\n // margin: 0 5px,\n // background: #FFFFFF,\n // border: 1px solid #BDC1C6,\n // boxsizing: borderbox,\n // borderradius: 4px,\n color: '#202124',\n // textalign: center,\n },\n});\n\nexport default class AdvancedListTemplate extends BaseView<\n AdvListProps,\n AdvListState\n> {\n popoverRef: any;\n popoverBtnRef: any;\n constructor(props: any) {\n super(props);\n this.state = {\n otherOptions: [],\n payload: this.props.payload,\n listItems: [],\n radioOtherOptions: [],\n };\n }\n\n private renderImage(imageObj: any): React.ReactNode {\n return (\n <RenderImage\n image={imageObj?.image}\n iconShape={imageObj?.iconShape}\n iconSize={imageObj?.iconSize}\n width={imageObj?.width}\n height={imageObj?.height}\n />\n );\n }\n\n componentDidMount() {\n let listItems: any = [];\n\n let splitIndex =\n (this.props.payload?.listItems?.length >=\n this.props.payload?.listItemDisplayCount\n ? this.props.payload?.listItemDisplayCount\n : this.props.payload?.listItems?.length) || 0;\n\n listItems = this.props.payload?.listItems?.slice(0, splitIndex);\n listItems = listItems.map((item: any) => {\n return {\n ...item,\n defaultIsCollapsed: item?.isCollapsed,\n };\n });\n\n this.setState({\n listItems: listItems,\n });\n }\n\n private listViewTemplate = (payload: any) => {\n let viewType = payload?.listViewType;\n\n switch (viewType) {\n case LIST_TEMPLATE_TYPES.NORMAL:\n return (\n <Text>\n {TEMPLATE_TYPES.ADVANCED_LIST_TEMPLATE}_{viewType}\n {'_pending'}\n </Text>\n );\n case LIST_TEMPLATE_TYPES.DEFAULT:\n return this.defaultListView(payload, this.state.listItems);\n default:\n return this.defaultListView(payload, this.state.listItems);\n }\n };\n\n private defaultListView = (payload: any, listItems?: []) => {\n if (!listItems || listItems?.length === 0) {\n return <></>;\n }\n\n let title = payload?.title || undefined;\n if (title && title?.trim() === '') {\n title = undefined;\n }\n let modalTitle = payload?.description || undefined;\n if (modalTitle && modalTitle?.trim() === '') {\n modalTitle = undefined;\n }\n\n return (\n <View\n style={{backgroundColor: Color.white, width: (windowWidth / 4) * 3.5}}>\n <View\n style={[\n styles.default_main_container,\n {backgroundColor: Color.white},\n ]}>\n {title && (\n <Text\n style={[\n styles.main_title,\n {\n color: '#444444',\n fontFamily:\n this.props?.theme?.v3?.body?.font?.family || 'Inter',\n },\n botStyles[this.props?.theme?.v3?.body?.font?.size || 'medium']\n ?.size,\n ]}>\n {title}\n </Text>\n )}\n {modalTitle && (\n <Text\n style={[\n styles.main_sub_title,\n {\n color: '#A4A4A4',\n fontFamily:\n this.props?.theme?.v3?.body?.font?.family || 'Inter',\n },\n botStyles[this.props?.theme?.v3?.body?.font?.size || 'medium']\n ?.size,\n ]}>\n {modalTitle}\n </Text>\n )}\n {listItems && (\n <FlatList\n data={listItems}\n removeClippedSubviews={false}\n scrollIndicatorInsets={{top: 0, left: 20, bottom: 0, right: 0}}\n automaticallyAdjustContentInsets={false}\n renderItem={this.renderDefaultListViewItem}\n // keyExtractor={item => getItemId()}\n />\n )}\n </View>\n {payload?.seeMore && (\n <View style={styles.see_main}>\n <TouchableOpacity\n onPress={() => {\n if (this.props.payload?.onListItemClick) {\n this.props.payload?.onListItemClick(\n this.props.payload?.template_type.trim(),\n this.props.payload?.listItems,\n true,\n this.props?.theme,\n );\n }\n }}\n style={styles.see_sub}>\n <Text style={styles.see_more_text}>{'See More'}</Text>\n </TouchableOpacity>\n </View>\n )}\n </View>\n );\n };\n\n private renderDefaultListViewItem = ({item, index}: any) => {\n let infoList = item?.textInformation || undefined;\n let Wrapper: any;\n if (item?.type) {\n switch (item?.type) {\n case 'url':\n case 'web_url':\n case 'postback':\n Wrapper = TouchableOpacity;\n break;\n default:\n Wrapper = View;\n }\n } else {\n Wrapper = View;\n }\n\n return (\n <View key={index + '_id'} style={styles.main}>\n {index !== 0 && <View style={styles.line}></View>}\n <Wrapper\n style={{\n flexDirection: 'column',\n }}\n onPress={() => {\n if (item?.type && this.props.payload?.onListItemClick) {\n this.props.payload?.onListItemClick(\n this.props.payload?.template_type.trim(),\n {\n ...item,\n },\n );\n }\n }}>\n <View style={{}}>\n {this.renderHeaderView(item, index)}\n\n <CollapsableContainer expanded={!item?.isCollapsed}>\n <View style={{flex: 1}}>\n {infoList?.map((info: any, i: number) => {\n let isLeft = info?.iconAlignment === 'left' || true;\n let icon = info?.icon || null;\n if (icon?.trim() === '') {\n icon = null;\n }\n\n return (\n <View\n key={i + ''}\n style={[styles.imageStyle1, {marginStart: 5, flex: 1}]}>\n {isLeft ? (\n <View\n style={{\n flexDirection: 'row',\n }}>\n {icon && (\n <View style={[styles.info_main_container]}>\n {this.renderImage({\n image: icon,\n iconShape: info?.iconShape,\n iconSize: info?.iconSize,\n width: 15,\n height: 15,\n })}\n </View>\n )}\n {info?.title && (\n <Text\n numberOfLines={1}\n style={[\n styles.item_title1,\n {color: '#202124'},\n icon ? {marginLeft: 10} : {},\n {\n color: '#444444',\n fontFamily:\n this.props?.theme?.v3?.body?.font?.family ||\n 'Inter',\n },\n botStyles['small']?.size,\n ]}>\n {info.title}\n </Text>\n )}\n </View>\n ) : (\n <View style={{flexDirection: 'row'}}>\n {info?.title && (\n <Text\n numberOfLines={1}\n style={[\n styles.item_title1,\n {color: '#202124'},\n icon ? {marginRight: 10} : {},\n\n {\n color: '#444444',\n fontFamily:\n this.props?.theme?.v3?.body?.font?.family ||\n 'Inter',\n },\n botStyles['small']?.size,\n ]}>\n {info.title}\n </Text>\n )}\n {icon && (\n <View style={[styles.info_main_container, {}]}>\n {this.renderImage({\n image: icon,\n iconShape: info?.iconShape,\n iconSize: info?.iconSize,\n width: 10,\n height: 15,\n })}\n </View>\n )}\n </View>\n )}\n </View>\n );\n })}\n </View>\n </CollapsableContainer>\n </View>\n </Wrapper>\n {this.renderTableListData(item)}\n {this.renderOtherOptions(item)}\n\n {item?.defaultIsCollapsed ? (\n <CollapsableContainer expanded={!item?.isCollapsed}>\n <View style={{}}>{this.renderButtons(item)}</View>\n </CollapsableContainer>\n ) : (\n this.renderButtons(item)\n )}\n </View>\n );\n };\n private renderSenderView = (user: any) => {\n if (!user) {\n return <></>;\n }\n if (!user?.id && user?.senderInitials && user?.color) {\n return (\n <View\n style={[\n styles.circleStyle,\n styles.assigne_container,\n {backgroundColor: user?.color},\n ]}>\n <Text\n style={[\n styles.assigne_text,\n\n {\n color: '#444444',\n fontFamily:\n this.props?.theme?.v3?.body?.font?.family || 'Inter',\n },\n botStyles['small']?.size,\n ]}>\n {user?.senderInitials}\n </Text>\n </View>\n );\n }\n\n return (\n <View style={[styles.circleStyle, {marginEnd: 6}]}>\n <UserAvatar\n color={user?.color}\n name={user?.fN}\n size={32}\n borderRadius={32}\n style={styles.circleStyle}\n textStyle={{fontSize: normalize(18)}}\n profileIcon={user?.icon}\n userId={user?.id}\n />\n </View>\n );\n };\n private renderHeaderView = (item: any, index: any) => {\n if (!item) {\n return null;\n }\n let description = item?.description || undefined;\n if (description) {\n //description = description.replaceAll('\\n', '');\n description = description?.replace?.(/\\n/g, ' ');\n }\n let icon = item?.icon;\n if (icon?.trim() === '') {\n icon = null;\n }\n\n let descriptionIcon = item?.descriptionIcon;\n if (descriptionIcon?.trim() === '') {\n descriptionIcon = null;\n }\n let title = item?.title;\n if (title?.trim() === '') {\n title = null;\n }\n const Wrapper: any = item?.defaultIsCollapsed ? TouchableOpacity : View;\n\n return (\n <Wrapper\n key={index + ' ' + index}\n onPress={() => {\n const newList = this.state?.listItems?.map(\n (value: any, i: number) => {\n if (i === index) {\n return {\n ...value,\n isCollapsed: !item?.isCollapsed,\n };\n }\n\n return value;\n },\n );\n\n this.setState({\n listItems: newList || [],\n });\n item = {\n ...item,\n isCollapsed: !item?.isCollapsed,\n };\n }}\n style={styles.header_view_con}>\n {icon && (\n <View\n style={[\n styles.header_view_container,\n styles.header_view_container1,\n ]}>\n {this.renderImage({\n image: icon,\n iconShape: item?.iconShape,\n iconSize: 'medium',\n })}\n </View>\n )}\n {item?.sender && this.renderSenderView(item.sender)}\n <View\n style={[\n styles.header_sub_con,\n item?.elementStyles && {\n backgroundColor: item?.elementStyles?.background || 'transparent',\n },\n ]}>\n <View style={{flex: 1}}>\n {title && (\n <Text\n numberOfLines={1}\n style={[\n styles.item_title,\n {\n fontFamily:\n this.props?.theme?.v3?.body?.font?.family || 'Inter',\n },\n\n item?.titleStyles\n ? {\n fontSize: normalize(\n item?.titleStyles?.['font-size']?.replace?.(\n /px/g,\n ' ',\n ) || 14,\n ),\n color: item?.titleStyles?.color,\n }\n : {\n color: '#444444',\n ...botStyles[\n this.props?.theme?.v3?.body?.font?.size || 'medium'\n ]?.size,\n },\n ]}>\n {title}\n </Text>\n )}\n {description && (\n <Text\n numberOfLines={1}\n style={[\n styles.item_desc,\n {marginBottom: 5},\n {\n fontFamily:\n this.props?.theme?.v3?.body?.font?.family || 'Inter',\n },\n item?.descriptionStyles\n ? {\n fontSize: normalize(\n item?.descriptionStyles?.['font-size']?.replace?.(\n /px/g,\n '',\n ) || 14,\n ),\n color: item?.descriptionStyles?.color,\n }\n : {\n color: '#444444',\n ...botStyles['small']?.size,\n },\n ]}>\n {description}\n </Text>\n )}\n </View>\n\n {descriptionIcon && (\n <View\n style={[\n styles.header_view_container,\n styles.header_view_container2,\n ]}>\n {this.renderImage({\n image: descriptionIcon,\n iconShape: item?.iconShape,\n iconSize: 'small',\n })}\n </View>\n )}\n </View>\n {this.renderHederOptions(item)}\n </Wrapper>\n );\n };\n\n private dateToFromNowDaily = (dateStr: any) => {\n if (!dateStr) {\n return '';\n }\n\n const date = dayjs(dateStr).toDate();\n const now = dayjs();\n\n const diffInDays = now.diff(date, 'day');\n\n if (diffInDays === 0) {\n return dayjs(date).format('hh:mm a - [Today]');\n } else if (diffInDays === -1) {\n return dayjs(date).format('hh:mm a - [Yesterday]');\n } else if (diffInDays === 1) {\n return dayjs(date).format('hh:mm a - [Tomorrow]');\n } else if (diffInDays < -1 && diffInDays >= -7) {\n return dayjs(date).format('hh:mm a - [Last] dddd');\n } else if (diffInDays > 1 && diffInDays <= 7) {\n return dayjs(date).format('dddd');\n } else {\n return dayjs(date).format('ddd, MMM D, YYYY hh:mm a');\n }\n };\n\n private renderHederOptions = (item: any) => {\n if (!item || !item?.headerOptions) {\n return null;\n }\n\n let options = item.headerOptions;\n return options?.map((item: any, index: number) => {\n if (!(item?.type || item?.contenttype)) {\n return null;\n }\n\n const item_type = item?.contenttype || item?.type;\n switch (item_type) {\n case 'icon':\n return (\n <View key={index + ' ' + index} style={[styles.icon_type_con]}>\n {item?.icon && (\n <View style={styles.icon_type_sub1}>\n {/* {this.renderImage({\n image: item.icon,\n iconShape: item?.iconShape,\n // width: normalize(100),\n // height: normalize(10),\n //iconSize: item?.iconSize,\n })} */}\n <Image\n style={[\n styles.image,\n {\n transform: [\n // {rotate: item?.isCollapsed ? '0deg' : '180deg'},\n {rotate: '0deg'},\n ],\n },\n ]}\n source={{uri: item.icon}}\n resizeMode=\"contain\"\n />\n </View>\n )}\n </View>\n );\n case 'text':\n let value = item?.value;\n if (this.props?.payload?.localTemplateName === 'email-lookup') {\n value = this.dateToFromNowDaily(value);\n }\n return (\n <View key={index + ' ' + index} style={{justifyContent: 'center'}}>\n {item?.value && (\n <Text\n style={[\n {\n color: item?.styles?.color || '#444444',\n fontFamily:\n this.props?.theme?.v3?.body?.font?.family || 'Inter',\n },\n botStyles[\n this.props?.theme?.v3?.body?.font?.size || 'medium'\n ]?.size,\n ]}>\n {value + ''}\n </Text>\n )}\n </View>\n );\n case 'button':\n return (\n <View\n key={index + ' ' + index}\n style={{\n justifyContent: 'center',\n alignItems: 'center',\n }}>\n <TouchableOpacity\n onPress={() => {\n this.props.payload?.onListItemClick(\n this.props.payload?.template_type.trim(),\n {...item, item_type: item_type},\n );\n }}\n style={[\n styles.item_button,\n item?.buttonStyles?.background && {\n backgroundColor: item?.buttonStyles?.background,\n },\n item?.buttonStyles?.border && {\n borderColor:\n item?.buttonStyles?.border?.split(' ')?.[2] ||\n Color.white,\n borderWidth: 1,\n },\n ]}>\n <Text\n style={[\n {\n fontFamily:\n this.props?.theme?.v3?.body?.font?.family || 'Inter',\n },\n item?.buttonStyles\n ? {\n color: item?.buttonStyles?.color,\n }\n : {\n color: '#444444',\n },\n botStyles[\n this.props?.theme?.v3?.body?.font?.size || 'medium'\n ]?.size,\n ]}>\n {item?.title}\n </Text>\n </TouchableOpacity>\n </View>\n );\n case 'dropdown':\n return (\n <Popover\n key={index + ' ' + index}\n ref={ref => (this.popoverRef = ref)}\n //isVisible={false}\n isVisible={this.state.showPopover}\n onRequestClose={() => {\n this.setState({\n showPopover: false,\n });\n }}\n from={\n <TouchableOpacity\n style={styles.popover_main}\n onPress={() => {\n this.setState({\n showPopover: true,\n });\n }}>\n <SvgIcon\n name={'ThreeDots'}\n width={normalize(18)}\n height={normalize(18)}\n />\n </TouchableOpacity>\n }>\n <View style={{marginTop: 5}}>\n {item?.dropdownOptions?.map((option: any, index: number) => {\n return (\n <TouchableOpacity\n key={index + ''}\n onPress={() => {\n this.setState({\n showPopover: false,\n });\n\n this.props.payload?.onListItemClick(\n this.props.payload?.template_type.trim(),\n {...option, item_type: item_type},\n );\n }}\n style={styles.opt_title_con}>\n <View>\n <Text\n style={[\n {\n color: '#444444',\n fontFamily:\n this.props?.theme?.v3?.body?.font?.family ||\n 'Inter',\n },\n botStyles[\n this.props?.theme?.v3?.body?.font?.size ||\n 'medium'\n ]?.size,\n ]}>\n {option?.title}\n </Text>\n </View>\n </TouchableOpacity>\n );\n })}\n </View>\n </Popover>\n );\n }\n\n return <Text>{item?.type}</Text>;\n });\n };\n private renderOtherOptions = (item: any) => {\n if (!item || !item.optionsData) {\n return <></>;\n }\n let listItems = item?.optionsData.map((item: any) => {\n return {\n ...item,\n isChecked: false,\n id: item.id + '_' + item.type,\n };\n });\n\n let isRadio = listItems.filter((item: any) => item.type === 'radio')?.[0];\n\n let radioButtons = listItems.map((item: any, _index: number) => {\n return {\n id: item.id,\n label: item.label,\n value: item.label,\n labelStyle: {\n color: '#444444',\n fontFamily: this.props?.theme?.v3?.body?.font?.family || 'Inter',\n ...botStyles[this.props?.theme?.v3?.body?.font?.size || 'medium']\n ?.size,\n },\n borderColor: '#444444',\n color: '#444444',\n };\n });\n if (isRadio) {\n let filterList = this.state.radioOtherOptions.filter(\n (obj: any) => obj?.isChecked,\n );\n\n return (\n <View style={{backgroundColor: 'transparent'}}>\n <RadioGroup\n radioButtons={radioButtons}\n containerStyle={{\n alignItems: 'flex-start',\n marginStart: 10,\n }}\n onPress={(setSelectedId: any) => {\n let selectedItem = listItems.filter(\n (btn: any) => btn.id === setSelectedId,\n );\n\n let isSelect = !selectedItem[0].isChecked;\n let obj = {\n ...selectedItem[0],\n isChecked: isSelect,\n };\n this.setSeletedSlot(obj, isSelect, true);\n }}\n selectedId={filterList?.[0] ? filterList?.[0]?.id : undefined}\n />\n </View>\n );\n }\n\n return (\n listItems && (\n <View>\n <FlatList\n data={listItems}\n renderItem={this.renderOtherOptionItem}\n // keyExtractor={(item) => item?.title}\n />\n </View>\n )\n );\n };\n private renderTableListData = (item: any) => {\n if (!item || !item.tableListData || !item.tableListData?.[0]?.rowData) {\n return <></>;\n }\n let listItems = item.tableListData?.[0]?.rowData;\n return (\n listItems && (\n <View style={styles.table_main_con}>\n {listItems.map((item: any, index: number) => {\n return this.renderTableListItem({item, index});\n })}\n </View>\n )\n );\n };\n\n private renderTableListItem = ({item, index}: any) => {\n return (\n <View key={index + ''} style={styles.table_item_con}>\n <View style={{minHeight: 20, minWidth: 20}}>\n {item.icon &&\n this.renderImage({\n image: item.icon,\n iconShape: item?.iconShape,\n width: 14,\n height: 14,\n iconSize: item?.iconSize || 'medium',\n })}\n </View>\n <View style={styles.table_sub2}>\n <Text\n style={[\n {\n color: '#444444',\n fontFamily:\n this.props?.theme?.v3?.body?.font?.family || 'Inter',\n },\n botStyles[this.props?.theme?.v3?.body?.font?.size || 'medium']\n ?.size,\n ]}>\n {item?.title}\n </Text>\n <Text\n style={[\n {\n color: '#444444',\n fontFamily:\n this.props?.theme?.v3?.body?.font?.family || 'Inter',\n },\n botStyles['small']?.size,\n ]}>\n {item?.description}\n </Text>\n </View>\n </View>\n );\n };\n\n private setSeletedSlot = (\n item: any,\n isSelect: any,\n isFromRadio?: boolean,\n ) => {\n let newArrayList: any = isFromRadio\n ? this.state.radioOtherOptions\n : this.state.otherOptions;\n if (isSelect) {\n if (isFromRadio) {\n newArrayList = [];\n }\n newArrayList.push(item);\n } else {\n newArrayList = newArrayList.filter((obj: any) => obj.id !== item.id);\n }\n\n if (isFromRadio) {\n this.setState({\n radioOtherOptions: newArrayList,\n });\n } else {\n this.setState({\n otherOptions: newArrayList,\n });\n }\n };\n\n private renderOtherOptionItem = ({item, index}: any) => {\n let filterList = this.state.otherOptions.filter(\n (obj: any) => obj?.id === item?.id,\n );\n\n if (filterList?.length !== 0) {\n item = {\n ...item,\n isChecked: filterList?.[0]?.isChecked,\n };\n }\n\n const Wrapper: typeof View | typeof TouchableOpacity | any =\n item?.type === 'checkbox' ? TouchableOpacity : View;\n return (\n <View key={index + '_id1'}>\n <Wrapper\n onPress={() => {\n let isSelect = !item.isChecked;\n let obj = {\n ...item,\n isChecked: isSelect,\n };\n this.setSeletedSlot(obj, isSelect);\n }}\n style={styles.other_opt_con}>\n {item.type === 'checkbox' && (\n <View style={{flexDirection: 'row'}}>\n <CheckBox\n style={styles.check_box}\n checkBoxColor={'#444444'}\n isChecked={item.isChecked}\n onClick={() => {\n let isSelect = !item.isChecked;\n let obj = {\n ...item,\n isChecked: isSelect,\n };\n this.setSeletedSlot(obj, isSelect);\n }}\n />\n <Text\n style={[\n styles.check_box_text,\n {\n color: '#444444',\n fontFamily:\n this.props?.theme?.v3?.body?.font?.family || 'Inter',\n },\n botStyles[this.props?.theme?.v3?.body?.font?.size || 'medium']\n ?.size,\n ]}>\n {item.label}\n </Text>\n </View>\n )}\n {item.type === 'radio' && (\n <RadioButton\n id={item?.id} // acts as primary key, should be unique and non-empty string\n label={item.label}\n value={item.label}\n selected={item.isChecked}\n onPress={(_id: string) => {}}\n />\n )}\n </Wrapper>\n </View>\n );\n };\n private renderButtons = (item: any) => {\n if (item && item?.buttons && item?.buttons?.length > 0) {\n let displayLimit = item?.buttonsLayout?.displayLimit?.count || 4;\n let listItems = [];\n\n let splitIndex =\n (item?.buttons?.length >= displayLimit\n ? displayLimit\n : item?.buttons?.length) || 0;\n\n listItems = item?.buttons?.slice(0, splitIndex);\n let buttonAligment =\n item?.buttonsLayout?.buttonAligment || item?.buttonAligment || 'left';\n return (\n <View\n style={[\n styles.buttons_container,\n buttonAligment === 'fullwidth' && styles.full_width1,\n buttonAligment === 'right' && styles.right1,\n ]}>\n {listItems?.map((button: any, index: number) => {\n return (\n <TouchableOpacity\n key={index + ''}\n onPress={() => {\n if (this.props.payload?.onListItemClick) {\n let other = {};\n if (this.state.otherOptions?.length > 0) {\n let msz = button.title + ': ';\n this.state.otherOptions.map((obj: any) => {\n msz = msz + obj.value + ',';\n });\n other = {\n title: msz,\n payload: msz,\n };\n }\n\n console.log('button ----->:', button);\n this.props.payload?.onListItemClick(\n this.props.payload?.template_type,\n {\n ...button,\n ...other,\n },\n );\n }\n }}\n style={[\n styles.button_container,\n button?.class === 'p-button'\n ? koraStyles.pbutton\n : koraStyles.sbutton,\n styles.button_container1,\n\n buttonAligment === 'fullwidth' && styles.full_width2,\n\n buttonAligment === 'left' && {},\n ]}>\n <View style={styles.btn_main_con}>\n {button?.icon && (\n <View style={styles.btn_icon}>\n {this.renderImage({\n image: button.icon,\n iconShape: button?.iconShape,\n width: 14, //14,\n height: 14, //8,\n iconSize: button?.iconSize,\n })}\n </View>\n )}\n <Text\n style={[\n styles.button_text,\n button?.class === 'p-button'\n ? koraStyles.pbutton_text\n : koraStyles.sbutton_text,\n\n {\n color: '#3A35F6',\n fontFamily:\n this.props?.theme?.v3?.body?.font?.family || 'Inter',\n },\n botStyles[\n this.props?.theme?.v3?.body?.font?.size || 'medium'\n ]?.size,\n ]}>\n {button.title}\n </Text>\n </View>\n </TouchableOpacity>\n );\n })}\n\n {item?.buttons?.length > displayLimit && (\n <Popover\n ref={ref => (this.popoverBtnRef = ref)}\n //isVisible={false}\n isVisible={this.state.showBtnPopover}\n onRequestClose={() => {\n this.setState({\n showBtnPopover: false,\n });\n }}\n from={\n <TouchableOpacity\n onPress={() => {\n // console.log('tem?.buttons? ----->:', item?.buttons);\n this.setState({\n showBtnPopover: true,\n });\n }}\n style={[styles.button_container, styles.button_container2]}>\n <View style={styles.btn_sub2}>\n <Text\n style={[\n styles.button_text,\n\n {\n color: '#3A35F6',\n fontFamily:\n this.props?.theme?.v3?.body?.font?.family ||\n 'Inter',\n },\n botStyles[\n this.props?.theme?.v3?.body?.font?.size || 'medium'\n ]?.size,\n ]}>\n {'... More'}\n </Text>\n </View>\n </TouchableOpacity>\n }>\n <View style={{marginTop: 10, marginBottom: 10}}>\n {item?.buttons?.map((button: any, index: number) => {\n return (\n <TouchableOpacity\n key={index + ''}\n onPress={() => {\n if (this.props.payload?.onListItemClick) {\n let other = {};\n if (this.state.otherOptions?.length > 0) {\n let msz = button.title + ': ';\n this.state.otherOptions.map((obj: any) => {\n msz = msz + obj.value + ',';\n });\n other = {\n title: msz,\n payload: msz,\n };\n }\n\n // console.log('button ----->:', button);\n this.props.payload?.onListItemClick(\n this.props.payload?.template_type,\n {\n ...button,\n ...other,\n },\n );\n this.setState({\n showBtnPopover: false,\n });\n }\n }}\n style={[\n styles.button_container,\n button?.class === 'p-button'\n ? koraStyles.pbutton\n : koraStyles.sbutton,\n styles.button_container1,\n\n buttonAligment === 'fullwidth' && styles.full_width2,\n\n buttonAligment === 'left' && {},\n ]}>\n <View style={styles.btn_main_con}>\n {button?.icon && (\n <View style={styles.btn_icon}>\n {this.renderImage({\n image: button.icon,\n iconShape: button?.iconShape,\n width: 14, //14,\n height: 14, //8,\n iconSize: button?.iconSize,\n })}\n </View>\n )}\n <Text\n style={[\n styles.button_text,\n button?.class === 'p-button'\n ? koraStyles.pbutton_text\n : koraStyles.sbutton_text,\n\n {\n color: '#3A35F6',\n fontFamily:\n this.props?.theme?.v3?.body?.font?.family ||\n 'Inter',\n },\n botStyles[\n this.props?.theme?.v3?.body?.font?.size ||\n 'medium'\n ]?.size,\n ]}>\n {button.title}\n </Text>\n </View>\n </TouchableOpacity>\n );\n })}\n </View>\n </Popover>\n )}\n </View>\n );\n }\n };\n\n render() {\n return (\n <View\n style={{\n alignContent: 'center',\n justifyContent: 'center',\n marginTop: normalize(5),\n }}\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}>\n {this.state?.payload &&\n this.state.listItems &&\n this.listViewTemplate(this.state.payload)}\n </View>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n image: {\n width: normalize(12),\n height: normalize(12),\n },\n see_more_text: {\n fontSize: normalize(14),\n flexWrap: 'wrap',\n flexShrink: 1,\n color: '#0D6EFD',\n },\n see_sub: {\n justifyContent: 'flex-start',\n alignContent: 'flex-start',\n flexWrap: 'wrap',\n paddingBottom: 10,\n paddingTop: 10,\n paddingRight: 5,\n paddingLeft: 20,\n },\n see_main: {\n marginEnd: 10,\n justifyContent: 'flex-end',\n alignItems: 'flex-end',\n },\n popover_main: {\n paddingLeft: 15,\n paddingTop: 10,\n paddingBottom: 10,\n marginRight: -5,\n //backgroundColor: 'yellow',\n },\n main: {\n flexDirection: 'column',\n marginStart: 10,\n marginEnd: 5,\n paddingStart: 5,\n },\n check_box_text: {\n color: 'black',\n fontSize: normalize(14),\n alignSelf: 'center',\n },\n opt_title_con: {padding: 10, marginBottom: 10},\n icon_type_sub1: {\n marginEnd: 5,\n marginStart: 5,\n },\n btn_sub2: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'center',\n flexWrap: 'wrap',\n },\n btn_icon: {\n marginEnd: 5,\n marginStart: 5,\n },\n btn_main_con: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'center',\n flexWrap: 'wrap',\n },\n full_width2: {\n flex: 1,\n },\n right1: {\n //flex: 1,\n alignItems: 'flex-end',\n justifyContent: 'flex-end',\n //backgroundColor: 'yellow',\n },\n full_width1: {\n flexDirection: 'column',\n flexWrap: 'nowrap',\n flex: 1,\n marginLeft: 10,\n //alignItems: 'center',\n //justifyContent: 'center',\n },\n check_box: {paddingLeft: 8, paddingRight: 8},\n other_opt_con: {\n flexDirection: 'row',\n padding: 10,\n backgroundColor: 'transparent',\n marginBottom: 3,\n },\n table_sub2: {\n marginLeft: 5,\n //backgroundColor: 'green',\n minWidth: 50,\n },\n table_item_con: {\n flexWrap: 'wrap',\n marginBottom: 10,\n flexDirection: 'row',\n padding: 5,\n margin: 10,\n },\n table_main_con: {\n //flexWrap: 'wrap',\n //flexDirection: 'row',\n\n flexDirection: 'row',\n flexWrap: 'wrap',\n justifyContent: 'flex-start', // Align items to the start of the line\n width: '100%',\n },\n icon_type_con: {\n alignItems: 'flex-end',\n justifyContent: 'center',\n },\n header_sub_con: {\n flexDirection: 'row',\n flex: 1,\n //marginEnd: 10,\n },\n header_view_con: {flexDirection: 'row', marginTop: 5},\n\n item_button: {\n backgroundColor: '#E6E6FD',\n borderRadius: 5,\n padding: 6,\n borderWidth: 1,\n borderColor: '#DEDEFC',\n },\n assigne_text: {\n alignContent: 'center',\n alignItems: 'center',\n justifyContent: 'center',\n fontSize: normalize(15),\n color: '#FFFFFF',\n },\n assigne_container: {\n width: normalize(28),\n height: normalize(28),\n\n marginEnd: 6,\n alignItems: 'center',\n alignContent: 'center',\n justifyContent: 'center',\n },\n\n circleStyle: {\n borderColor: '#ffffff',\n //borderWidth: 0.7,\n borderRadius: 50, //(48 * 0.62) / 2,\n overflow: 'hidden',\n },\n\n button_container1: {\n flexDirection: 'row',\n\n alignItems: 'center',\n justifyContent: 'center',\n // flexWrap: 'wrap',\n backgroundColor: '#E5E5FD',\n borderColor: '#DEDDFC',\n borderWidth: 1,\n borderRadius: 5,\n padding: 5,\n marginBottom: 2,\n marginLeft: 10,\n },\n button_container2: {\n flexDirection: 'row',\n //flex: 1,\n alignItems: 'center',\n justifyContent: 'center',\n flexWrap: 'wrap',\n backgroundColor: '#E5E5FD',\n borderColor: '#DEDDFC',\n borderWidth: 1,\n borderRadius: 5,\n padding: 5,\n marginBottom: 2,\n marginLeft: 10,\n },\n button_container: {\n marginRight: 10,\n marginTop: 10,\n borderRadius: 3,\n backgroundColor: '#E7F1FF',\n },\n header_view_container1: {\n alignItems: 'flex-start',\n justifyContent: 'flex-start',\n },\n header_view_container2: {\n justifyContent: 'center',\n alignItems: 'center',\n },\n header_view_container: {\n marginEnd: 10,\n alignItems: 'center',\n justifyContent: 'center',\n },\n\n info_main_container: {\n alignContent: 'center',\n alignItems: 'center',\n justifyContent: 'center',\n marginEnd: 3,\n },\n\n button_text: {\n minWidth: 50,\n padding: 2,\n borderRadius: 8,\n alignSelf: 'center',\n color: '#3A35F6',\n alignContent: 'center',\n justifyContent: 'center',\n },\n\n default_main_container: {\n borderRadius: 5,\n paddingTop: 10,\n borderWidth: 1,\n borderColor: '#E4E5E7',\n width: '95%',\n alignSelf: 'center',\n },\n buttons_container: {\n minWidth: 50,\n flexDirection: 'row',\n flexWrap: 'wrap',\n // backgroundColor: 'yellow',\n },\n main_title: {\n fontFamily: 'Inter',\n fontStyle: 'normal',\n fontWeight: '600',\n fontSize: 18,\n lineHeight: 20,\n alignItems: 'flex-end',\n color: '#202124',\n marginTop: 10,\n marginStart: 10,\n },\n main_sub_title: {\n fontFamily: 'Inter',\n fontStyle: 'normal',\n // fontWeight: 'bold',\n fontSize: 18,\n lineHeight: 20,\n alignItems: 'flex-end',\n marginBottom: 15,\n color: '#202124',\n marginStart: 10,\n marginTop: 5,\n },\n item_title: {\n fontFamily: 'Inter',\n fontStyle: 'normal',\n fontWeight: 'bold',\n fontSize: 16,\n color: '#202124',\n },\n item_desc: {\n fontFamily: 'Inter',\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: 14,\n letterSpacing: 0.270833,\n marginTop: 2,\n marginLeft: 0,\n color: '#5F6368',\n },\n item_title1: {\n fontFamily: 'Inter',\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: 14,\n letterSpacing: 0.270833,\n marginTop: 2,\n\n color: '#5F6368',\n },\n line: {\n backgroundColor: '#E4E5E7',\n height: 0.5,\n width: '100%',\n marginTop: 10,\n marginBottom: 15,\n marginStart: -5,\n },\n imageStyle1: {\n flexDirection: 'row',\n marginBottom: 5,\n },\n});\n","import * as React from 'react';\nimport {ThemeContext} from '../theme/ThemeContext';\nimport {IThemeType} from '../theme/IThemeType';\n\nexport interface BaseViewProps {\n position?: 'left' | 'right' | 'center';\n\n //onListItemClick?: (type?: any, item?: any) => {};\n payload?: any;\n theme?: IThemeType;\n}\n\nexport interface BaseViewState {}\n\nclass BaseView<\n T extends BaseViewProps,\n S extends BaseViewState,\n> extends React.Component<T, S> {\n static contextType = ThemeContext;\n static propTypes: {\n payload: {};\n };\n\n constructor(props: T) {\n super(props);\n }\n\n static defaultProps: {\n position: 'left';\n };\n\n protected isViewDisable = (): boolean => {\n return !this.props.payload?.isLastMessage || false;\n };\n\n // protected getTemplateWidth = () => {\n // const value = this.props?.theme?.v3?.body?.icon?.show\n // ? normalize(50)\n // : normalize(30);\n // return windowWidth - value;\n // };\n}\n\nexport default BaseView;\n","import React, {createContext, useContext, ReactNode, Component} from 'react';\nimport {ThemeType} from './ThemeType';\nimport AsyncStorage from '@react-native-async-storage/async-storage';\nimport {BRANDING_RESPONSE_FILE} from '../constants/Constant';\nimport {defaultTheme} from '../theme/AppTheme';\n\n// Define your theme object type\n\n// Create a context object\nexport const ThemeContext = createContext<ThemeType | undefined>(undefined);\n\n// Create a provider component\n// export const ThemeProvider: React.FC<{\n// theme: ThemeType;\n// children: ReactNode;\n// }> = ({theme, children}) => {\n// return (\n// <ThemeContext.Provider value={theme}>{children}</ThemeContext.Provider>\n// );\n// };\n\nexport class ThemeProvider extends Component<{\n children: ReactNode;\n}> {\n state = {\n theme: defaultTheme,\n };\n\n componentDidMount() {\n this.fetchThemeFromDB();\n }\n\n private fetchThemeFromDB = async () => {\n try {\n AsyncStorage.getItem(BRANDING_RESPONSE_FILE, (error, result) => {\n if (result) {\n const savedTheme = JSON.parse(result);\n this.setState({theme: savedTheme});\n }\n });\n } catch (error) {\n console.log('Error fetching theme from local storage:', error);\n }\n };\n\n render() {\n return (\n <ThemeContext.Provider value={this.state.theme}>\n {this.props.children}\n </ThemeContext.Provider>\n );\n }\n}\n\n// Custom hook to consume the theme\nexport const useTheme = () => {\n const theme = useContext(ThemeContext);\n if (!theme) {\n throw new Error('useTheme must be used within a ThemeProvider');\n }\n return theme;\n};\n","// Correct: Import React from 'react'\nimport * as React from 'react';\n\nimport {Dimensions, Platform, PixelRatio, StyleSheet} from 'react-native';\nimport dayjs from 'dayjs';\n\nimport Color from '../theme/Color';\nimport ColorMappings from './colorMappings';\nimport RenderImage from './RenderImage';\nconst {width: SCREEN_WIDTH, height: SCREEN_HEIGHT} = Dimensions.get('window');\n// based on iphone X's scale\nlet NEW_SCREEN_WIDTH =\n SCREEN_WIDTH > SCREEN_HEIGHT ? SCREEN_HEIGHT : SCREEN_WIDTH;\nconst scale = NEW_SCREEN_WIDTH / 375;\n\nconst ICON_SHAPE = {\n CIRCLE_IMG: 'circle-img',\n};\n\nconst imageTypes: any = [\n 'bmp',\n 'dds',\n 'gif',\n 'heic',\n 'jpg',\n 'png',\n 'psd',\n 'pspimage',\n 'tga',\n 'thm',\n 'tif',\n 'tiff',\n 'yuv',\n 'jpeg',\n];\nconst videoTypes: any = [\n '3g2',\n '3gp',\n 'asf',\n 'avi',\n 'flv',\n 'm4v',\n 'mov',\n 'mp4',\n 'mpg',\n 'rm',\n 'srt',\n 'swf',\n 'vob',\n 'wmv',\n];\n\nexport const renderImage: React.FC<any> = ({\n image,\n iconShape = undefined,\n iconSize = '',\n width = 10,\n height = 10,\n}) => {\n return (\n <RenderImage\n image={image}\n iconShape={iconShape}\n iconSize={iconSize}\n width={width}\n height={height}\n />\n );\n};\n\nexport function createDateRange(start: any, end: any) {\n const startDate = dayjs(start);\n const endDate = dayjs(end);\n let currentDate = startDate;\n const dateArray: any = [];\n\n while (currentDate.isBefore(endDate) || currentDate.isSame(endDate)) {\n dateArray.push(currentDate.toDate());\n currentDate = currentDate.add(1, 'day');\n }\n //console.log('dateArray ---->:', dateArray);\n return dateArray;\n}\n\nfunction padZero(str: any, len?: any) {\n len = len || 2;\n var zeros = new Array(len).join('0');\n return (zeros + str).slice(-len);\n}\n\nexport function invertColor(hex: any, bw?: boolean) {\n if (hex.indexOf('#') === 0) {\n hex = hex.slice(1);\n }\n\n if (hex.length !== 6) {\n const hexValue = ColorMappings[hex?.toLowerCase()];\n\n if (!hexValue) {\n //throw new Error('Invalid HEX color to invertColor :' + hex);\n return Color.black;\n }\n\n hex = hexValue;\n }\n if (!hex) {\n return undefined;\n }\n // convert 3-digit hex to 6-digits.\n if (hex.length === 3) {\n hex = hex[0] + hex[0] + hex[1] + hex[1] + hex[2] + hex[2];\n }\n var r: any = parseInt(hex.slice(0, 2), 16),\n g: any = parseInt(hex.slice(2, 4), 16),\n b: any = parseInt(hex.slice(4, 6), 16);\n\n //console.log(' ====>:', finalResultColor);\n if (hex?.toLowerCase() === '#000000') {\n return '#FFFFFF';\n }\n\n if (hex?.toLowerCase() === '#ffffff') {\n return '#000000';\n }\n\n if (bw) {\n // https://stackoverflow.com/a/3943023/112731\n return r * 0.299 + g * 0.587 + b * 0.114 > 186 ? '#000000' : '#FFFFFF';\n }\n // invert color components\n r = (255 - r).toString(16);\n g = (255 - g).toString(16);\n b = (255 - b).toString(16);\n // pad each with zeros and return\n let finalResultColor = '#' + padZero(r) + padZero(g) + padZero(b);\n // console.log(' finalResultColor ====>:', finalResultColor);\n return finalResultColor;\n}\n\nexport function normalize(size: number) {\n const newSize = size * scale;\n if (Platform.OS === 'ios') {\n return Math.round(PixelRatio.roundToNearestPixel(newSize));\n } else {\n return Math.ceil(PixelRatio.roundToNearestPixel(newSize));\n }\n}\n\nexport function generateColor() {\n const randomColor = Math.floor(Math.random() * 16777215)\n .toString(16)\n .padStart(6, '0');\n return `#${randomColor}`;\n}\n\nfunction getScale() {\n if (Platform.OS === 'ios') {\n let NEW_SCREEN_WIDTH =\n SCREEN_WIDTH > SCREEN_HEIGHT ? SCREEN_HEIGHT : SCREEN_WIDTH;\n return NEW_SCREEN_WIDTH / 375;\n } else {\n return 1080 / 1920;\n }\n}\n\nexport function isSameDay(\n currentMessage: {createdOn: number} | any,\n diffMessage: {createdOn: number} | any,\n) {\n const currentCreatedAt = dayjs(currentMessage.createdOn);\n const diffCreatedAt = dayjs(diffMessage.createdOn);\n if (!currentCreatedAt.isValid() || !diffCreatedAt.isValid()) {\n return false;\n }\n return currentCreatedAt.isSame(diffCreatedAt, 'day');\n}\n\nexport function isSameUser(\n currentMessage: {user: {_id: string}} | any,\n diffMessage: {user: {_id: string}} | any,\n) {\n return !!(\n diffMessage?.user &&\n currentMessage?.user &&\n diffMessage.user._id === currentMessage.user._id\n );\n}\n\nexport const getItemId = (pattern?: any) => {\n var _pattern = pattern || 'xyxxyxxy';\n _pattern = _pattern.replace(/[xy]/g, function (c: any) {\n var r = (Math.random() * 16) | 0,\n v = c === 'x' ? r : (r & 0x3) | 0x8;\n return v.toString(16);\n });\n return _pattern;\n};\n\nexport function getDrawableByExt(ext: string): string {\n if (imageTypes.includes(ext)) {\n return '📷';\n } else if (videoTypes.includes(ext)) {\n return '🎥';\n } else {\n return '📃';\n }\n}\n\nconst styles = StyleSheet.create({\n image_container: {\n // height: 50,\n // width: 60,\n // alignSelf: 'flex-start',\n // justifyContent: 'center',\n //borderColor: '#E4E5E7',\n //borderWidth: 1,\n // borderRadius: 4,\n },\n unfurlUrl4: {\n borderColor: 'gray',\n resizeMode: 'cover',\n alignSelf: 'center',\n // borderRadius: 6,\n alignContent: 'center',\n overflow: 'hidden',\n },\n normal_list_view: {\n borderRadius: 5,\n padding: 10,\n borderWidth: 1,\n borderColor: '#E4E5E7',\n },\n button_text: {\n borderRadius: 4,\n minWidth: 50,\n minHeight: 30,\n padding: 6,\n fontSize: normalize(14),\n color: '#07377F',\n alignSelf: 'center',\n },\n view_more_icon_view: {\n alignSelf: 'center',\n marginStart: 5,\n marginTop: 2,\n // padding: 6,\n // backgroundColor: 'yellow',\n },\n view_more_text: {\n // padding: 6,\n alignSelf: 'center',\n // flex: 1,\n color: '#0D6EFD',\n },\n buttons_sub: {\n flexDirection: 'row',\n minHeight: 30,\n marginStart: 5,\n marginEnd: 5,\n },\n buttons_touch_container: {\n marginRight: 10,\n marginTop: 10,\n alignSelf: 'flex-end',\n alignContent: 'flex-end',\n },\n default_main_container: {\n borderRadius: 5,\n padding: 10,\n borderWidth: 1,\n borderColor: '#E4E5E7',\n },\n buttons_container: {\n minWidth: 50,\n flexDirection: 'row',\n flexWrap: 'wrap',\n },\n main_title: {\n fontFamily: 'Inter',\n fontStyle: 'normal',\n fontWeight: 'bold',\n fontSize: 18,\n lineHeight: 20,\n alignItems: 'flex-end',\n marginBottom: 10,\n color: '#202124',\n },\n item_title: {\n fontFamily: 'Inter',\n fontStyle: 'normal',\n fontWeight: 'bold',\n fontSize: 16,\n letterSpacing: 0.270833,\n color: '#202124',\n },\n item_desc: {\n fontFamily: 'Inter',\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: 14,\n letterSpacing: 0.270833,\n marginTop: 5,\n color: '#5F6368',\n },\n line: {\n // backgroundColor: '#E4E5E7',\n // height: 1,\n // width: '100%',\n marginTop: 10,\n marginBottom: 5,\n },\n});\n","export default {\n defaultColor: '#b2b2b2',\n backgroundTransparent: 'transparent',\n transparent: 'transparent',\n defaultBlue: '#0084ff',\n leftBubbleBackground: '#f0f0f0',\n carrot: '#e67e22',\n emerald: '#2ecc71',\n peterRiver: '#3498db',\n wisteria: '#8e44ad',\n alizarin: '#e74c3c',\n midnightBlue: '#2c3e50',\n optionTintColor: '#007AFF',\n timeTextColor: '#aaa',\n bot_blue: '#4B4EDE',\n\n red: '#FF0000',\n green: '#009933', //'#00FF00',\n blue: '#0000FF',\n cyan: '#00FFFF',\n magenta: '#FF00FF',\n yellow: '#FFFF00',\n black: '#000000',\n white: '#FFFFFF',\n gray: '#808080',\n silver: '#C0C0C0',\n maroon: '#800000',\n olive: '#808000',\n navy: '#000080',\n purple: '#800080',\n teal: '#008080',\n indigo: '#4B0082',\n orange: '#FFA500',\n pink: '#FFC0CB',\n violet: '#EE82EE',\n peach: '#FFDAB9',\n lavender: '#E6E6FA',\n coral: '#FF7F50',\n turquoise: '#40E0D0',\n chocolate: '#D2691E',\n lime: '#00FF00',\n gold: '#FFD700',\n crimson: '#DC143C',\n plum: '#DDA0DD',\n slate: '#708090',\n khaki: '#F0E68C',\n aquamarine: '#7FFFD4',\n bisque: '#FFE4C4',\n cornsilk: '#FFF8DC',\n firebrick: '#B22222',\n midnightblue: '#191970',\n text_color: '#444444',\n sub_text_color: '#A4A4A4',\n button_blue: '#303f9f',\n};\n","import Color from '../theme/Color';\n\ninterface IColorMappings {\n [key: string]: string;\n}\n\nconst ColorMappings: IColorMappings = {\n ...Color,\n};\n\nexport default ColorMappings;\n","import React, {Component} from 'react';\nimport {View} from 'react-native';\nimport {SvgCssUri} from 'react-native-svg';\nimport FastImage from 'react-native-fast-image';\nimport {normalize} from './helpers';\n\ninterface Props {\n image: string;\n iconShape?: string;\n iconSize?: string;\n width?: number;\n height?: number;\n}\n\ninterface State {\n error: boolean;\n}\n\nclass RenderImage extends Component<Props, State> {\n constructor(props: Props) {\n super(props);\n\n this.state = {\n error: false,\n };\n }\n\n handleSvgError = () => {\n this.setState({error: true}); // Set error state to true\n };\n\n render() {\n let {\n image = '',\n iconShape = undefined,\n iconSize = '',\n width = 10,\n height = 10,\n } = this.props;\n const {error} = this.state;\n\n if (!image || image.length === 0) {\n return null; // Returning null if image is not provided or is empty\n }\n\n // console.log('image ---->:', image);\n\n let fileExtension = image?.split?.('.')?.pop()?.toLowerCase();\n\n if (iconSize && iconSize.trim() !== '') {\n switch (iconSize) {\n case 'small':\n width = 16;\n height = 16;\n break;\n case 'medium':\n width = 22;\n height = 22;\n break;\n case 'large':\n width = 35;\n height = 35;\n break;\n default:\n width = 16;\n height = 16;\n }\n }\n\n return (\n <View\n style={{\n ...styles.image_container,\n height: normalize(height),\n width: normalize(width),\n }}>\n {fileExtension === 'svg' ? (\n <SvgCssUri\n uri={error ? require('../assets/placehoder/image.png') : image}\n height={normalize(height)}\n width={normalize(width)}\n style={{\n overflow: 'hidden',\n borderWidth: iconShape !== ICON_SHAPE.CIRCLE_IMG ? 1 : 0,\n borderRadius: iconShape !== ICON_SHAPE.CIRCLE_IMG ? 5 : 0,\n }}\n onError={this.handleSvgError}\n />\n ) : this.state.error ? (\n <></>\n ) : (\n <FastImage\n source={{uri: image}}\n style={{\n ...styles.unfurlUrl4,\n borderRadius: iconShape === ICON_SHAPE.CIRCLE_IMG ? 150 / 2 : 5,\n overflow: 'hidden',\n height: normalize(height),\n width: normalize(width),\n }}\n onError={() => {\n this.setState({error: true});\n console.log('Image loading error:');\n }}\n />\n )}\n </View>\n );\n }\n}\n\nconst ICON_SHAPE = {\n CIRCLE_IMG: 'circle-img',\n};\n\n// Define styles if not already defined\nconst styles = {\n image_container: {}, // Define your image container styles\n unfurlUrl4: {\n borderColor: 'gray',\n resizeMode: 'cover',\n //alignSelf: 'center',\n // borderRadius: 6,\n //alignContent: 'center',\n overflow: 'hidden',\n },\n};\n\nexport default RenderImage;\n","import * as React from 'react';\nimport {Text, TouchableOpacity, View, StyleSheet} from 'react-native';\nimport FastImage from 'react-native-fast-image';\nimport Color from '../../theme/Color';\nimport {normalize} from '../../utils/helpers';\nimport {isAndroid} from '../../utils/PlatformCheck';\n\nconst {\n carrot,\n emerald,\n peterRiver,\n wisteria,\n alizarin,\n turquoise,\n midnightBlue,\n} = Color;\n\nconst styles = StyleSheet.create({\n avatarStyle: {\n justifyContent: 'center',\n alignItems: 'center',\n width: 40,\n height: 40,\n borderRadius: 20,\n },\n avatarTransparent: {\n backgroundColor: Color.backgroundTransparent,\n },\n textStyle: {\n color: Color.white,\n fontSize: normalize(16),\n backgroundColor: Color.backgroundTransparent,\n fontWeight: '100',\n },\n});\n\ninterface UserAvatarProps {\n user: {\n name?: string | null;\n avatar?: string | ((style: any) => React.ReactNode) | null;\n };\n onPress?: any;\n onLongPress?: () => void;\n avatarStyle?: any;\n textStyle?: any;\n\n color?: any;\n name?: any;\n size?: any;\n borderRadius?: any;\n style?: any;\n profileIcon?: any;\n userId?: any;\n}\n\nexport default class UserAvatar extends React.Component<UserAvatarProps> {\n avatarName = '';\n avatarColor = '';\n\n static defaultProps = {\n user: {\n name: null,\n avatar: null,\n },\n onPress: null,\n onLongPress: null,\n avatarStyle: {},\n textStyle: {},\n };\n\n setAvatarColor() {\n const userName = (this.props.user && this.props.user.name) || '';\n const name = userName.toUpperCase().split(' ');\n if (name.length === 1) {\n this.avatarName = `${name[0].charAt(0)}`;\n } else if (name.length > 1) {\n this.avatarName = `${name[0].charAt(0)}${name[1].charAt(0)}`;\n } else {\n this.avatarName = '';\n }\n\n let sumChars = 0;\n for (let i = 0; i < userName.length; i += 1) {\n sumChars += userName.charCodeAt(i);\n }\n\n const colors = [\n carrot,\n emerald,\n peterRiver,\n wisteria,\n alizarin,\n turquoise,\n midnightBlue,\n ];\n\n this.avatarColor = colors[sumChars % colors.length];\n }\n\n renderAvatar() {\n const {user} = this.props;\n if (user) {\n if (typeof user.avatar === 'function') {\n return user.avatar([styles.avatarStyle, this.props.avatarStyle]);\n } else if (typeof user.avatar === 'string') {\n return (\n <FastImage\n source={{\n uri: user.avatar,\n priority: FastImage.priority.normal,\n cache: isAndroid\n ? FastImage.cacheControl.immutable\n : FastImage.cacheControl.web,\n }}\n style={[styles.avatarStyle, this.props.avatarStyle]}\n />\n );\n } else if (typeof user.avatar === 'number') {\n return (\n <FastImage\n source={{\n uri: user.avatar,\n priority: FastImage.priority.normal,\n cache: isAndroid\n ? FastImage.cacheControl.immutable\n : FastImage.cacheControl.web,\n }}\n style={[styles.avatarStyle, this.props.avatarStyle]}\n />\n );\n }\n }\n return null;\n }\n\n renderInitials() {\n return (\n <Text style={[styles.textStyle, this.props.textStyle]}>\n {this.avatarName}\n </Text>\n );\n }\n\n handleOnPress = () => {\n const {onPress, ...other} = this.props;\n if (onPress) {\n onPress(other);\n }\n };\n\n render() {\n if (\n !this.props.user ||\n (!this.props.user.name && !this.props.user.avatar)\n ) {\n // render placeholder\n return (\n <View\n style={[\n styles.avatarStyle,\n styles.avatarTransparent,\n this.props.avatarStyle,\n ]}\n accessibilityRole=\"image\"\n />\n );\n }\n if (this.props.user.avatar) {\n return (\n <TouchableOpacity\n disabled={!this.props.onPress}\n onPress={this.props.onPress}\n onLongPress={this.props.onLongPress}\n accessibilityRole=\"image\">\n {this.renderAvatar()}\n </TouchableOpacity>\n );\n } else {\n this.setAvatarColor();\n return (\n <TouchableOpacity\n disabled={!this.props.onPress}\n onPress={this.props.onPress}\n onLongPress={this.props.onLongPress}\n style={[\n styles.avatarStyle,\n {backgroundColor: this.avatarColor},\n this.props.avatarStyle,\n ]}\n accessibilityRole=\"image\">\n {this.renderInitials()}\n </TouchableOpacity>\n );\n }\n }\n}\n","import {Platform} from 'react-native';\n\nexport const isIOS = Platform.OS === 'ios';\nexport const isAndroid = Platform.OS === 'android';\n","import * as React from 'react';\n\n// import DownSolid from '../assets/down_solid.svg';\n// import UpSolid from '../assets/up_solid.svg';\n// import ThreeDots from '../assets/three_dots.svg';\n// import Left from '../assets/left.svg';\n// import HeaderAvatar from '../assets/header/avatar.svg';\nimport {Play, Pause} from '../assets/audio';\n\nimport {\n DownSolid,\n UpSolid,\n ThreeDots,\n Left,\n HeaderAvatar,\n RightSolid,\n Right,\n} from '../assets/boticons';\nimport {\n Speed,\n Soundmixer,\n Playlist,\n Settings,\n PPlay,\n Quality,\n PPause,\n MuteSound,\n Increase10Seconds,\n FullSound,\n FullScreen,\n Eye,\n Expand,\n ExitFullScreen,\n Error,\n Dot,\n Decrease10Seconds,\n Close,\n Back,\n Blur,\n} from '../assets/playerIcons';\n\nimport {\n HeaderHelp,\n HeaderClose,\n HeaderLiveAgent,\n HeaderLeft,\n HeaderMinimize,\n} from '../assets/headerIcons';\n\nimport {\n MicIcon,\n MenuIcon,\n AttachmentIcon,\n KeyboardIcon,\n SendIcon,\n HappyIcon,\n} from '../assets/composebarIcons';\n\nimport {\n IcIcon_1,\n IcIcon_2,\n IcIcon_3,\n IcIcon_4,\n Koreai_logo,\n} from '../assets/welcome';\n\nimport {Like, UnLike} from '../assets/thumbsup';\n//import Unlike from '../assets/Unlike.svg';\n\nimport Color from '../theme/Color';\n\n//LinkRecord\nexport class SvgIcon extends React.Component {\n // shouldComponentUpdate(nextProps) {\n // const differentName = this.props.name !== nextProps.name;\n // const differentWidth = this.props.width !== [];\n // const differentHeight = this.props.height !== [];\n // return differentName || differentWidth || differentHeight;\n // }\n\n render() {\n const {name, width, height, color = 'black', style = {}} = this.props;\n const iconsMap = {\n DownSolid: (\n <RightSolid\n width={width}\n height={height}\n color={color}\n style={{transform: [{rotate: '90deg'}]}}\n />\n ),\n\n Like: <Like width={width} height={height} />,\n Unlike: <UnLike width={width} height={height} />,\n UpSolid: <UpSolid width={width} height={height} />,\n RightArrow: <RightSolid width={width} height={height} color={color} />,\n Right: <Right width={width} height={height} color={color} />,\n Left: <Left width={width} height={height} />,\n Play: <Play width={width} height={height} color={color} />,\n Pause: <Pause width={width} height={height} color={color} />,\n ThreeDots: <ThreeDots width={width} height={height} color={color} />,\n\n Speed: <Speed width={width} height={height} color={color} />,\n Soundmixer: <Soundmixer width={width} height={height} color={color} />,\n Playlist: <Playlist width={width} height={height} color={color} />,\n Settings: <Settings width={width} height={height} color={color} />,\n PPlay: <PPlay width={width} height={height} color={color} />,\n Quality: <Quality width={width} height={height} color={color} />,\n PPause: <PPause width={width} height={height} color={color} />,\n MuteSound: <MuteSound width={width} height={height} color={color} />,\n Increase10Seconds: (\n <Increase10Seconds width={width} height={height} color={color} />\n ),\n FullSound: <FullSound width={width} height={height} color={color} />,\n FullScreen: <FullScreen width={width} height={height} color={color} />,\n Eye: <Eye width={width} height={height} color={color} />,\n Expand: <Expand width={width} height={height} color={color} />,\n ExitFullScreen: (\n <ExitFullScreen width={width} height={height} color={color} />\n ),\n Error: <Error width={width} height={height} color={color} />,\n Dot: <Dot width={width} height={height} color={color} />,\n Decrease10Seconds: (\n <Decrease10Seconds width={width} height={height} color={color} />\n ),\n Close: <Close width={width} height={height} color={color} />,\n Back: <Back width={width} height={height} color={color} />,\n Blur: <Blur width={width} height={height} color={color} />,\n HeaderHelp: (\n <HeaderHelp\n width={width}\n height={height}\n color={color ? color : '#697586'}\n />\n ),\n HeaderTalk: (\n <HeaderLiveAgent\n width={width}\n height={height}\n color={color ? color : '#697586'}\n />\n ),\n HeaderMenu: (\n <HeaderMinimize\n width={width}\n height={height}\n color={color ? color : '#697586'}\n />\n ),\n HeaderClose: (\n <HeaderClose\n width={width}\n height={height}\n color={color ? color : '#697586'}\n />\n ),\n HeaderLeft: (\n <HeaderLeft\n width={width}\n height={height}\n color={color ? color : '#697586'}\n />\n ),\n HeaderAvatar: <HeaderAvatar width={width} height={height} />,\n\n MicIcon: (\n <MicIcon\n width={width}\n height={height}\n color={color ? color : '#697586'}\n />\n ),\n AttachmentIcon: (\n <AttachmentIcon\n width={width}\n height={height}\n color={color ? color : '#697586'}\n />\n ),\n MenuIcon: (\n <MenuIcon\n width={width}\n height={height}\n color={color ? color : '#697586'}\n />\n ),\n\n KeyboardIcon: (\n <KeyboardIcon\n width={width}\n height={height}\n color={color ? color : '#697586'}\n />\n ),\n SendIcon: (\n <SendIcon\n width={width}\n height={height}\n color={color ? color : Color.white}\n />\n ),\n\n HappyIcon: (\n <HappyIcon\n width={width}\n height={height}\n color={color ? color : Color.white}\n />\n ),\n IcIcon_1: (\n <IcIcon_1\n width={width}\n height={height}\n color={color ? color : Color.white}\n />\n ),\n IcIcon_2: (\n <IcIcon_2\n width={width}\n height={height}\n color={color ? color : Color.white}\n />\n ),\n IcIcon_3: (\n <IcIcon_3\n width={width}\n height={height}\n color={color ? color : Color.white}\n />\n ),\n IcIcon_4: (\n <IcIcon_4\n width={width}\n height={height}\n color={color ? color : Color.white}\n />\n ),\n\n Koreai_logo: (\n <Koreai_logo\n width={width}\n height={height}\n color={color ? color : Color.white}\n />\n ),\n };\n\n // const keys = Object.keys(iconsMap);\n // if (keys.indexOf(name) === -1) {\n // return <IcoMoon name={name} />;\n // }\n\n return iconsMap[name];\n }\n}\n","import React from 'react';\nimport {normalize} from '../utils/helpers';\nimport Color from '../theme/Color';\nimport Svg, {Defs, G, Image, Path, Pattern, Rect, Use} from 'react-native-svg';\n\nexport interface SvgProps {\n width: number;\n height: number;\n color: string;\n style?: any;\n}\n\nconst WIDTH = 17;\nconst HEIGHT = 17;\n\nexport const Play = (props: SvgProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n let style = props.style;\n return (\n <Svg width={width} height={height} viewBox=\"0 0 512 512\">\n <Path\n fill={strokeColor}\n d=\"M405.2,232.9L126.8,67.2c-3.4,-2 -6.9,-3.2 -10.9,-3.2c-10.9,0 -19.8,9 -19.8,20H96v344h0.1c0,11 8.9,20 19.8,20c4.1,0 7.5,-1.4 11.2,-3.4l278.1,-165.5c6.6,-5.5 10.8,-13.8 10.8,-23.1C416,246.7 411.8,238.5 405.2,232.9z\"\n />\n </Svg>\n );\n};\n\nexport const Pause = (props: SvgProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n let style = props.style;\n return (\n <Svg width={width} height={height} viewBox=\"0 0 512 512\">\n <Path\n fill={strokeColor}\n d=\"M224,435.8V76.1c0,-6.7 -5.4,-12.1 -12.2,-12.1h-71.6c-6.8,0 -12.2,5.4 -12.2,12.1v359.7c0,6.7 5.4,12.2 12.2,12.2h71.6C218.6,448 224,442.6 224,435.8z\"\n />\n <Path\n fill={strokeColor}\n d=\"M371.8,64h-71.6c-6.7,0 -12.2,5.4 -12.2,12.1v359.7c0,6.7 5.4,12.2 12.2,12.2h71.6c6.7,0 12.2,-5.4 12.2,-12.2V76.1C384,69.4 378.6,64 371.8,64z\"\n />\n </Svg>\n );\n};\n","import * as React from 'react';\nimport {normalize} from '../utils/helpers';\nimport Color from '../theme/Color';\nimport Svg, {Defs, G, Image, Path, Pattern, Rect, Use} from 'react-native-svg';\n\nexport interface SvgProps {\n width: number;\n height: number;\n color: string;\n style?: any;\n}\n\nconst WIDTH = 17;\nconst HEIGHT = 17;\n\nexport const HeaderAvatar = (props: SvgProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg width={width} height={height} viewBox=\"0 0 36 36\" fill=\"none\">\n <Rect\n x=\"1.25\"\n y=\"1.25\"\n width=\"33.5\"\n height=\"33.5\"\n rx=\"16.75\"\n fill=\"url(#pattern0)\"\n />\n <Rect\n x=\"1.25\"\n y=\"1.25\"\n width=\"33.5\"\n height=\"33.5\"\n rx=\"16.75\"\n stroke=\"white\"\n stroke-width=\"1.5\"\n />\n <Defs>\n <Pattern\n id=\"pattern0\"\n patternContentUnits=\"objectBoundingBox\"\n width=\"1\"\n height=\"1\">\n <Use xlinkHref=\"#image0_11743_8911\" transform=\"scale(0.003125)\" />\n </Pattern>\n <Image\n id=\"image0_11743_8911\"\n width=\"320\"\n height=\"320\"\n xlinkHref={{\n uri: 'data:image/jpeg;base64,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',\n }}\n />\n </Defs>\n </Svg>\n );\n};\n{\n /* <Svg viewBox=\"0 0 320 512\"> */\n}\nexport const UpSolid = (props: SvgProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n let style = props.style;\n return (\n <Svg\n style={style}\n width={width}\n height={height}\n viewBox=\"0 0 24 24\"\n fill=\"none\">\n <Path\n d=\"M18.6806 13.9783L15.4706 10.7683L13.5106 8.79828C12.6806 7.96828 11.3306 7.96828 10.5006 8.79828L5.32056 13.9783C4.64056 14.6583 5.13056 15.8183 6.08056 15.8183H11.6906H17.9206C18.8806 15.8183 19.3606 14.6583 18.6806 13.9783Z\"\n fill={strokeColor}\n />\n </Svg>\n );\n};\n\nexport const DownSolid = (props: SvgProps) => {\n return (\n <Svg viewBox=\"0 0 320 512\">\n <Path d=\"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z\" />\n </Svg>\n );\n};\n\nexport const RightSolid = (props: SvgProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n let style = props.style;\n return (\n <Svg\n style={style}\n fill={strokeColor}\n width={width}\n height={height}\n viewBox=\"0 0 24 24\">\n <Path d=\"M5.536 21.886a1.004 1.004 0 0 0 1.033-.064l13-9a1 1 0 0 0 0-1.644l-13-9A1 1 0 0 0 5 3v18a1 1 0 0 0 .536.886z\" />\n </Svg>\n );\n};\n\nexport const Left = (props: SvgProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg width={width} height={height} id=\"Capa_1\" viewBox=\"0 0 34.075 34.075\">\n <G>\n <G>\n <Path\n fill={strokeColor}\n d=\"M24.57,34.075c-0.505,0-1.011-0.191-1.396-0.577L8.11,18.432c-0.771-0.771-0.771-2.019,0-2.79\n L23.174,0.578c0.771-0.771,2.02-0.771,2.791,0s0.771,2.02,0,2.79l-13.67,13.669l13.67,13.669c0.771,0.771,0.771,2.021,0,2.792\n C25.58,33.883,25.075,34.075,24.57,34.075z\"\n />\n </G>\n </G>\n </Svg>\n );\n};\n\nexport const Right = (props: SvgProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n let style = props.style;\n return (\n <Svg\n fill={strokeColor}\n width={width}\n height={height}\n id=\"Layer_1\"\n style={style}\n viewBox=\"0 0 492.004 492.004\">\n <G>\n <G>\n <Path\n d=\"M382.678,226.804L163.73,7.86C158.666,2.792,151.906,0,144.698,0s-13.968,2.792-19.032,7.86l-16.124,16.12\n\t\t\tc-10.492,10.504-10.492,27.576,0,38.064L293.398,245.9l-184.06,184.06c-5.064,5.068-7.86,11.824-7.86,19.028\n\t\t\tc0,7.212,2.796,13.968,7.86,19.04l16.124,16.116c5.068,5.068,11.824,7.86,19.032,7.86s13.968-2.792,19.032-7.86L382.678,265\n\t\t\tc5.076-5.084,7.864-11.872,7.848-19.088C390.542,238.668,387.754,231.884,382.678,226.804z\"\n />\n </G>\n </G>\n </Svg>\n );\n};\n\nexport const ThreeDots = (props: SvgProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg width={width} height={height} fill={strokeColor} viewBox=\"0 0 16 16\">\n <Path d=\"M9.5 13a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m0-5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m0-5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0\" />\n </Svg>\n );\n};\n","import * as React from 'react';\nimport {normalize} from '../utils/helpers';\nimport Color from '../theme/Color';\nimport Svg, {G, Image, Path} from 'react-native-svg';\n\nexport interface HeaderProps {\n width: number;\n height: number;\n color: string;\n}\n\nconst WIDTH = 17;\nconst HEIGHT = 17;\nexport const Speed = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg\n id=\"Layer_1\"\n x=\"0px\"\n y=\"0px\"\n width={width}\n height={height}\n viewBox=\"0 0 1000 1000\"\n enable-background=\"new 0 0 1000 1000\">\n <Image\n id=\"image0\"\n width=\"1000\"\n height=\"1000\"\n x=\"0\"\n y=\"0\"\n href=\"data:image/png;base64,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\n MDowMFMWNYAAAAAASUVORK5CYII=\"\n />\n </Svg>\n );\n};\n\nexport const Soundmixer = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg\n id=\"Layer_1\"\n x=\"0px\"\n y=\"0px\"\n width={width}\n height={height}\n viewBox=\"0 0 1000 1000\"\n enable-background=\"new 0 0 1000 1000\">\n <Image\n id=\"image0\"\n width=\"1000\"\n height=\"1000\"\n x=\"0\"\n y=\"0\"\n href=\"data:image/png;base64,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\"\n />\n </Svg>\n );\n};\n\nexport const Playlist = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg\n id=\"Layer_1\"\n x=\"0px\"\n y=\"0px\"\n width={width}\n height={height}\n viewBox=\"0 0 1000 1000\"\n enable-background=\"new 0 0 1000 1000\">\n <Image\n id=\"image0\"\n width=\"1000\"\n height=\"1000\"\n x=\"0\"\n y=\"0\"\n href=\"data:image/png;base64,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\"\n />\n </Svg>\n );\n};\n\nexport const Settings = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg\n id=\"Layer_1\"\n x=\"0px\"\n y=\"0px\"\n width={width}\n height={height}\n viewBox=\"0 0 1000 1000\"\n enable-background=\"new 0 0 1000 1000\">\n <Image\n id=\"image0\"\n width=\"1000\"\n height=\"1000\"\n x=\"0\"\n y=\"0\"\n href=\"data:image/png;base64,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\"\n />\n </Svg>\n );\n};\n\nexport const PPlay = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg\n x=\"0px\"\n y=\"0px\"\n width={width}\n height={height}\n viewBox=\"0 0 1000 1000\"\n enable-background=\"new 0 0 1000 1000\">\n <Image\n id=\"image0\"\n width=\"1000\"\n height=\"1000\"\n x=\"0\"\n y=\"0\"\n href=\"data:image/png;base64,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\n MDowMFMWNYAAAAAASUVORK5CYII=\"\n />\n </Svg>\n );\n};\n\nexport const Quality = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg width={width} height={height}>\n <Path\n d=\"M0 0 C1.42578077 -0.00478475 2.85155655 -0.01131837 4.27732226 -0.0194332 C8.19428645 -0.03665237 12.1108667 -0.02902943 16.02783668 -0.01732175 C20.28960764 -0.00897613 24.55130885 -0.02378785 28.81306285 -0.03562677 C36.28211662 -0.0531556 43.75106073 -0.05577332 51.22012997 -0.04862022 C62.3269741 -0.03801128 73.43371197 -0.05019163 84.54054455 -0.06678609 C105.53080823 -0.09728442 126.5210237 -0.10067434 147.51130489 -0.09574004 C163.71904238 -0.09207621 179.92676404 -0.09558965 196.13449955 -0.10418892 C198.46219295 -0.10539371 200.78988635 -0.10659611 203.11757975 -0.10779613 C206.62509725 -0.10961061 210.13261474 -0.11142794 213.64013222 -0.11326083 C246.25604276 -0.13012275 278.87194734 -0.1387893 311.48786163 -0.13044739 C312.7177046 -0.13013464 313.94754758 -0.12982188 315.21465852 -0.12949965 C321.44813454 -0.12788806 327.68161055 -0.12619652 333.91508655 -0.12447305 C335.77210211 -0.12395979 335.77210211 -0.12395979 337.66663314 -0.12343615 C340.17019139 -0.12274284 342.67374964 -0.12204579 345.1773079 -0.12134498 C384.13584049 -0.1106297 423.09428256 -0.12649266 462.05279827 -0.16341209 C505.81320708 -0.20483343 549.57355981 -0.22630111 593.33398932 -0.21826112 C597.99896855 -0.21747042 602.66394779 -0.21674733 607.32892704 -0.21606636 C608.47758066 -0.2158849 609.62623428 -0.21570343 610.80969559 -0.21551647 C628.1584059 -0.21318341 645.50705963 -0.22648956 662.85575581 -0.2476902 C682.58364667 -0.27177355 702.3114128 -0.27493602 722.03930549 -0.25010987 C733.0814287 -0.23683645 744.12325379 -0.24015183 755.16535326 -0.2672869 C762.54072906 -0.2837511 769.91588108 -0.27841337 777.29123862 -0.25533636 C781.49387548 -0.24279839 785.6959298 -0.23968478 789.89853344 -0.26306303 C793.72604942 -0.2841588 797.55249007 -0.2773706 801.37994872 -0.24885397 C803.39629296 -0.2408696 805.41268931 -0.26214779 807.42892203 -0.2848081 C816.77652847 -0.17339334 824.58737938 2.00395933 831.8584327 8.13224431 C838.22162831 14.96116731 840.53719275 22.87186174 840.44138813 32.01624203 C840.44780109 32.93475326 840.45421404 33.85326449 840.46082133 34.79960939 C840.47739374 37.87032333 840.46558344 40.94025423 840.45382977 44.01098061 C840.45987244 46.2375932 840.46765123 48.46420165 840.4770149 50.69080275 C840.49759724 56.80422272 840.49320564 62.91740839 840.48465371 69.03084767 C840.48022979 74.94856929 840.49453964 80.86623809 840.50817422 86.78393911 C840.53864009 100.38034244 840.5420658 113.97667124 840.53712817 127.57310156 C840.53346143 138.07336613 840.5369839 148.57360629 840.54557705 159.0738678 C840.54678186 160.5829698 840.54798425 162.09207181 840.54918426 163.60117381 C840.55099878 165.87531181 840.55281612 168.1494498 840.55464896 170.42358778 C840.57150605 191.5651126 840.58018079 212.70662824 840.57183552 233.84815884 C840.57152277 234.64500661 840.57121001 235.44185439 840.57088778 236.26284906 C840.56927624 240.30149271 840.5675847 244.34013632 840.56586118 248.37877993 C840.56534792 249.58188791 840.56534792 249.58188791 840.56482428 250.80930112 C840.56413097 252.43128524 840.56343391 254.05326936 840.56273311 255.67525347 C840.5520193 280.91194823 840.56787854 306.14850321 840.60480022 331.38517189 C840.64624438 359.74617495 840.66768485 388.10709143 840.65964925 416.46812648 C840.65885857 419.49294673 840.65813548 422.517767 840.65745449 425.54258728 C840.65727303 426.28736096 840.65709156 427.03213464 840.6569046 427.79947722 C840.65457393 439.03618111 840.66785952 450.27279749 840.68907833 461.50947952 C840.71319014 474.29112982 840.71629147 487.07258751 840.691498 499.85424069 C840.67941442 506.37522867 840.67755518 512.89591654 840.7015028 519.41688728 C840.72317882 525.38871227 840.71706437 531.3598456 840.68897943 537.33163794 C840.68367396 539.48971046 840.68845503 541.64783681 840.70445116 543.80585656 C840.79019504 556.23832247 840.79889366 566.48499388 832.30913985 576.40589267 C824.03801203 584.25521726 814.82699404 585.09160925 803.86487389 585.01790237 C802.43909311 585.02268712 801.01331733 585.02922075 799.58755162 585.03733557 C795.67058744 585.05455474 791.75400719 585.04693181 787.8370372 585.03522413 C783.57526625 585.02687851 779.31356503 585.04169023 775.05181104 585.05352914 C767.58275726 585.07105797 760.11381316 585.0736757 752.64474392 585.0665226 C741.53789978 585.05591366 730.43116192 585.06809401 719.32432933 585.08468846 C698.33406565 585.11518679 677.34385018 585.11857672 656.35356899 585.11364241 C640.1458315 585.10997858 623.93810984 585.11349203 607.73037434 585.12209129 C605.40268094 585.12329609 603.07498753 585.12449849 600.74729413 585.1256985 C597.23977664 585.12751299 593.73225915 585.12933032 590.22474167 585.1311632 C557.60883112 585.14802513 524.99292654 585.15669167 492.37701225 585.14834976 C491.14716928 585.14803701 489.91732631 585.14772426 488.65021537 585.14740203 C482.41673934 585.14579044 476.18326334 585.1440989 469.94978734 585.14237542 C468.09277178 585.14186216 468.09277178 585.14186216 466.19824075 585.14133853 C463.69468249 585.14064522 461.19112424 585.13994816 458.68756599 585.13924736 C419.7290334 585.12853208 380.77059132 585.14439503 341.81207561 585.18131447 C298.05166681 585.2227358 254.29131408 585.24420348 210.53088456 585.2361635 C205.86590533 585.23537279 201.20092609 585.2346497 196.53594685 585.23396873 C195.38729323 585.23378727 194.23863961 585.23360581 193.0551783 585.23341885 C175.70646799 585.23108578 158.35781425 585.24439193 141.00911808 585.26559258 C121.28122721 585.28967593 101.55346109 585.29283839 81.8255684 585.26801224 C70.78344518 585.25473883 59.74162009 585.2580542 48.69952062 585.28518927 C41.32414482 585.30165347 33.9489928 585.29631574 26.57363527 585.27323873 C22.3709984 585.26070076 18.16894409 585.25758715 13.96634044 585.2809654 C10.13882446 585.30206117 6.31238381 585.29527297 2.48492517 585.26675635 C0.46858092 585.25877198 -1.54781542 585.28005017 -3.56404814 585.30271047 C-12.91165459 585.19129571 -20.72250549 583.01394304 -27.99355881 576.88565806 C-34.35675442 570.05673507 -36.67231887 562.14604063 -36.57651424 553.00166035 C-36.5829272 552.08314912 -36.58934016 551.16463789 -36.59594744 550.21829298 C-36.61251985 547.14757905 -36.60070955 544.07764814 -36.58895588 541.00692177 C-36.59499855 538.78030917 -36.60277734 536.55370073 -36.61214101 534.32709962 C-36.63272336 528.21367966 -36.62833176 522.10049398 -36.61977983 515.98705471 C-36.61535591 510.06933308 -36.62966575 504.15166429 -36.64330033 498.23396327 C-36.6737662 484.63755993 -36.67719192 471.04123114 -36.67225428 457.44480082 C-36.66858754 446.94453625 -36.67211001 436.44429609 -36.68070316 425.94403458 C-36.68190797 424.43493257 -36.68311037 422.92583057 -36.68431037 421.41672856 C-36.6861249 419.14259057 -36.68794223 416.86845258 -36.68977507 414.5943146 C-36.70663216 393.45278977 -36.7153069 372.31127414 -36.70696163 351.16974354 C-36.70664888 350.37289576 -36.70633613 349.57604799 -36.7060139 348.75505331 C-36.70440236 344.71640966 -36.70271082 340.67776605 -36.70098729 336.63912245 C-36.70064512 335.83705046 -36.70030294 335.03497846 -36.6999504 334.20860126 C-36.69925709 332.58661714 -36.69856003 330.96463302 -36.69785923 329.3426489 C-36.68714541 304.10595415 -36.70300465 278.86939917 -36.73992634 253.63273048 C-36.78137049 225.27172742 -36.80281096 196.91081094 -36.79477537 168.5497759 C-36.79398469 165.52495564 -36.79326159 162.50013538 -36.7925806 159.47531509 C-36.79239914 158.73054141 -36.79221768 157.98576773 -36.79203072 157.21842515 C-36.78970004 145.98172126 -36.80298563 134.74510488 -36.82420444 123.50842285 C-36.84831625 110.72677256 -36.85141759 97.94531486 -36.82662411 85.16366168 C-36.81454054 78.64267371 -36.8126813 72.12198583 -36.83662891 65.60101509 C-36.85830493 59.62919011 -36.85219048 53.65805677 -36.82410555 47.68626443 C-36.81880008 45.52819192 -36.82358115 43.37006556 -36.83957727 41.21204581 C-36.92532115 28.7795799 -36.93401977 18.53290849 -28.44426596 8.6120097 C-20.17313815 0.76268512 -10.96212016 -0.07370688 0 0 Z M96.92853069 121.04020119 C89.19357136 128.12361967 85.44730993 137.92415322 84.7461437 148.2533108 C84.67282571 151.39438925 84.66103846 154.52994418 84.67174053 157.67186928 C84.66791498 158.87165671 84.66408944 160.07144413 84.66014796 161.30758876 C84.65165019 164.6162267 84.65203801 167.92464098 84.65632856 171.23327219 C84.65880415 174.8100758 84.64977127 178.38685375 84.64229107 181.96364784 C84.6295648 188.96290397 84.62774782 195.96212169 84.63009133 202.96138743 C84.6318771 208.653294 84.63011931 214.34518894 84.62586689 220.03709412 C84.6252717 220.84836624 84.62467651 221.65963836 84.62406329 222.49549448 C84.62285149 224.1438099 84.62163735 225.79212532 84.62042091 227.44044074 C84.6095532 242.8864616 84.61170413 258.33246061 84.61780576 273.7784827 C84.62297331 287.89272509 84.61172237 302.00689843 84.59270754 316.12112717 C84.57331053 330.63083579 84.56507646 345.14051178 84.56883079 359.65023345 C84.57074012 367.78940427 84.56828147 375.92851633 84.55411625 384.06767654 C84.54217766 390.99730623 84.5408252 397.926841 84.55290642 404.85647205 C84.55877799 408.38812262 84.55994265 411.91959981 84.54790401 415.45123863 C84.53497363 419.28927144 84.54555069 423.12704423 84.55821514 426.96508217 C84.55084086 428.06792779 84.54346657 429.17077342 84.53586882 430.30703861 C84.62229563 442.80908588 87.16179978 453.17045413 95.74884319 462.47770119 C102.64614733 469.05452453 111.36431537 472.63652614 120.93243694 472.50895119 C130.77103565 471.69871365 139.30226885 468.6231418 146.24493694 461.44645119 C155.32613613 450.4166546 156.09082067 438.24192746 156.04596233 424.58512306 C156.04614314 422.79948322 156.04614314 422.79948322 156.04632759 420.97776985 C156.04558433 417.14439428 156.03798284 413.31106801 156.03009319 409.47770119 C156.02862196 407.10302695 156.02760237 404.72835238 156.02704144 402.35367775 C156.02180959 393.57209727 156.00784833 384.79052374 155.99493694 376.00895119 C155.96399944 346.55645119 155.96399944 346.55645119 155.93243694 316.50895119 C206.75243694 316.50895119 257.57243694 316.50895119 309.93243694 316.50895119 C309.74493694 377.25895119 309.74493694 377.25895119 309.66217327 396.38688087 C309.65213525 402.0828318 309.65213525 402.0828318 309.64610577 407.77878761 C309.64152206 410.30077646 309.63101892 412.82275904 309.61571026 415.34470558 C309.59359818 419.18179551 309.59072405 423.01848632 309.59186077 426.85563087 C309.58106645 427.96476215 309.57027212 429.07389343 309.5591507 430.21663475 C309.60854821 442.75942794 312.13330177 453.13956597 320.74884319 462.47770119 C327.64614733 469.05452453 336.36431537 472.63652614 345.93243694 472.50895119 C355.77103565 471.69871365 364.30226885 468.6231418 371.24493694 461.44645119 C380.29558055 450.45376665 381.08550717 438.30783248 381.06614971 424.69407082 C381.06841527 423.51963913 381.07068082 422.34520744 381.07301503 421.13518691 C381.07823273 417.89276511 381.07900292 414.65037838 381.07782066 411.40795374 C381.07761591 407.90407894 381.08314252 404.40021229 381.08787823 400.89634132 C381.09616928 394.03799505 381.09893237 387.17965737 381.09949061 380.3213065 C381.09996651 374.74379561 381.10202497 369.16628754 381.10519123 363.58877754 C381.11399367 347.75962107 381.11861126 331.93047137 381.11786076 316.10131243 C381.1178208 315.24873361 381.11778084 314.39615479 381.11773968 313.51774025 C381.1176988 312.66411493 381.11765792 311.81048962 381.1176158 310.93099687 C381.11720947 297.10123392 381.12677677 283.27149823 381.14087804 269.44174317 C381.15525811 255.22587401 381.16214733 241.01001814 381.16128427 226.79414153 C381.16095286 218.81928783 381.16367543 210.84446269 381.17446232 202.86961555 C381.1835888 196.07905179 381.18572499 189.28852953 381.1789529 182.49796227 C381.17569847 179.03723561 381.17559178 175.5765885 381.18430614 172.11586952 C381.19204723 168.35443129 381.18736705 164.59320005 381.1796751 160.83176613 C381.18739045 159.21149305 381.18739045 159.21149305 381.19526166 157.55848718 C381.13544179 144.26229238 379.52341452 132.14708448 370.11993694 122.13395119 C362.70063495 115.2938512 354.98187645 113.07888468 344.93243694 112.50895119 C336.89695792 112.89299982 330.58159165 115.04412623 323.93243694 119.50895119 C322.60212444 120.34426369 322.60212444 120.34426369 321.24493694 121.19645119 C312.77788187 129.66350626 309.61170667 141.00023873 309.5591507 152.72572041 C309.56994502 153.69792436 309.58073935 154.67012831 309.59186077 155.67179298 C309.59149917 156.74363492 309.59113756 157.81547686 309.590765 158.91979885 C309.59298344 162.3494537 309.61573338 165.77860394 309.63946819 169.20816994 C309.64388546 171.34150902 309.64694204 173.47485136 309.64862347 175.60819435 C309.66427771 183.47099659 309.7061615 191.33372898 309.74493694 199.19645119 C309.80681194 216.78957619 309.86868694 234.38270119 309.93243694 252.50895119 C259.11243694 252.50895119 208.29243694 252.50895119 155.93243694 252.50895119 C156.05743694 201.82145119 156.05743694 201.82145119 156.11261272 185.88517189 C156.11930636 181.12329422 156.11930636 181.12329422 156.12332439 176.36141396 C156.12637228 174.2594766 156.13335747 172.15754249 156.14358807 170.05562782 C156.94988297 144.65397787 156.94988297 144.65397787 145.74493694 122.69645119 C131.78856582 109.9432155 111.76291111 109.7047682 96.92853069 121.04020119 Z M426.46368694 130.56363869 C418.79208112 140.30970934 417.62907339 150.20426846 417.67174053 162.29895973 C417.66791498 163.4586172 417.66408944 164.61827467 417.66014796 165.81307328 C417.65165319 169.00959741 417.65203689 172.20597348 417.65632856 175.40250134 C417.65880494 178.8586307 417.64977035 182.31473353 417.64229107 185.77085304 C417.62956733 192.53314983 417.62774747 199.29540687 417.63009133 206.05771361 C417.63187724 211.55655109 417.63011901 217.05537653 417.62586689 222.55421257 C417.6252717 223.3380198 417.62467651 224.12182703 417.62406329 224.929386 C417.62285149 226.52189715 417.62163735 228.1144083 417.62042091 229.70691945 C417.60955435 244.62832795 417.61170369 259.54971382 417.61780576 274.47112359 C417.62297424 288.10751955 417.61171972 301.74384406 417.59270754 315.38022588 C417.57331363 329.39837451 417.56507585 343.41648937 417.56883079 357.43465149 C417.57074046 365.29824687 417.56827808 373.16178143 417.55411625 381.02536583 C417.54218168 387.71970134 417.54082078 394.41393861 417.55290642 401.10827552 C417.55878056 404.52031363 417.55993544 407.93217224 417.54790401 411.34419823 C417.53742874 415.05128927 417.54554426 418.7579013 417.55821514 422.46497536 C417.55084086 423.53182434 417.54346657 424.59867332 417.53586882 425.69785106 C417.62256913 437.79642756 420.54824073 447.43873389 428.71368694 456.48160744 C437.81879385 465.26952825 449.60020104 466.67470402 461.75934124 466.63834572 C462.49730938 466.64009804 463.23527752 466.64185036 463.99560833 466.64365578 C466.41598201 466.64802596 468.83628136 466.64514943 471.25665569 466.64176369 C472.96611323 466.64243904 474.67557067 466.64341099 476.38502789 466.64466286 C479.9683044 466.64613411 483.55155593 466.64400716 487.13482952 466.63932228 C491.66436116 466.63368077 496.19383341 466.63697443 500.72336292 466.64274979 C534.04934165 466.95989151 534.04934165 466.95989151 567.18243694 463.88395119 C568.30521038 463.71282814 569.42798382 463.54170509 570.58478069 463.3653965 C589.49420353 460.2897037 607.64428642 454.75643859 624.93243694 446.50895119 C625.65334515 446.16638283 626.37425335 445.82381447 627.11700726 445.47086525 C643.9999853 437.30708181 658.55743255 426.59040267 671.93243694 413.50895119 C672.71747601 412.78578712 673.50251507 412.06262306 674.31134319 411.31754494 C685.96693807 400.32917552 694.68851571 386.69245696 701.93243694 372.50895119 C702.2558305 371.8760215 702.57922405 371.24309181 702.91241741 370.59098244 C724.12381307 328.4505753 726.39421454 276.99618393 711.68634319 232.38395119 C704.96750836 213.17621586 695.37752829 195.81347006 681.93243694 180.50895119 C681.22603069 179.68137306 680.51962444 178.85379494 679.79181194 178.00113869 C650.63964186 144.54954784 609.12676219 126.93812847 565.80743694 120.75895119 C564.99830853 120.64309669 564.18918011 120.5272422 563.35553265 120.40787697 C547.86447888 118.41480494 532.15544625 118.34777808 516.56134319 118.34098244 C514.77878577 118.33775514 512.9962286 118.33439008 511.21367168 118.33089638 C507.51713731 118.32497711 503.82062609 118.32304938 500.12408733 118.32364845 C495.41866332 118.3237507 490.71338806 118.31000203 486.00799942 118.29287624 C482.34201164 118.28170296 478.67605955 118.27973073 475.0100565 118.28025818 C473.27554014 118.27908982 471.5410225 118.27473355 469.80652332 118.26692581 C445.9914049 118.1353702 445.9914049 118.1353702 426.46368694 130.56363869 Z \"\n fill={strokeColor}\n transform=\"translate(98.0675630569458,207.4910488128662)\"\n />\n <Path\n d=\"M0 0 C82.36047666 0 82.36047666 0 111 16 C111.98613281 16.54398437 112.97226562 17.08796875 113.98828125 17.6484375 C136.85487575 31.21617085 150.31242321 53.77078874 157 79 C164.46548875 111.06488609 159.35202131 144.83499402 142.24609375 172.875 C125.07244165 198.37647876 99.69824259 212.1077118 70.25390625 218.23828125 C46.94044071 222.41286874 24.15655817 220 0 220 C0 147.4 0 74.8 0 0 Z \"\n fill={strokeColor}\n transform=\"translate(587,390)\"\n />\n </Svg>\n );\n};\nexport const PPause = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg\n id=\"Layer_1\"\n x=\"0px\"\n y=\"0px\"\n width={width}\n height={height}\n viewBox=\"0 0 1000 1000\"\n enable-background=\"new 0 0 1000 1000\">\n <Image\n id=\"image0\"\n width=\"1000\"\n height=\"1000\"\n x=\"0\"\n y=\"0\"\n href=\"data:image/png;base64,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\nABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKC\nDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCA\noANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAo\nIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0A\nCgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEH\ngAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQ\nAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQ\ndAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAF\nBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANA\nAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgA\nUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6\nABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKC\nDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCA\noANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAo\nIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0A\nCgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEH\ngAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQ\nAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQ\ndAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAF\nBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANA\nAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgA\nUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6\nABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKC\nDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCA\noANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAo\nIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0A\nCgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEH\ngAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQ\nAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQ\ndAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAF\nBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANA\nAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgAUEDQAaCAoANAAUEHgAKCDgAFBB0ACgg6ABQQdAAoIOgA\n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\nMjMrMDA6MDDey4g7AAAAAElFTkSuQmCC\"\n />\n </Svg>\n );\n};\nexport const MuteSound = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg\n id=\"Layer_1\"\n x=\"0px\"\n y=\"0px\"\n width={width}\n height={height}\n viewBox=\"0 0 1000 1000\"\n enable-background=\"new 0 0 1000 1000\">\n <Image\n id=\"image0\"\n width=\"1000\"\n height=\"1000\"\n x=\"0\"\n y=\"0\"\n href=\"data:image/png;base64,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\"\n />\n </Svg>\n );\n};\nexport const Increase10Seconds = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg\n id=\"Layer_1\"\n x=\"0px\"\n y=\"0px\"\n width={width}\n height={height}\n viewBox=\"0 0 1000 1000\"\n enable-background=\"new 0 0 1000 1000\">\n <Image\n id=\"image0\"\n width=\"1000\"\n height=\"1000\"\n x=\"0\"\n y=\"0\"\n href=\"data:image/png;base64,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\"\n />\n </Svg>\n );\n};\n\nexport const FullSound = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg\n id=\"Layer_1\"\n x=\"0px\"\n y=\"0px\"\n width={width}\n height={height}\n viewBox=\"0 0 1000 1000\"\n enable-background=\"new 0 0 1000 1000\">\n <Image\n id=\"image0\"\n width=\"1000\"\n height=\"1000\"\n x=\"0\"\n y=\"0\"\n href=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA+gAAAPoCAQAAADnqhxvAAAABGdBTUEAALGPC/xhBQAAACBjSFJN\nAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAAAmJLR0QA/4ePzL8AAAAJcEhZ\ncwAATCsAAEwrAQtVdZEAAAAHdElNRQfoBw8MKSHdtYnYAABsOElEQVR42u39Z5Od14Gma97pDTIT\nmfDee0OCAAESBAkSJOiNaER5qapUVV2nxv2G/hUz0RMTMRMnTvd0dVd1yVAURSeK3hsQBAjvE0ik\n9z7zfIBYpASaNHvnetfa96WoLxUS8OTOjf3sZd61isaRJEmxKw4dQJIkTZ+FLklSAix0SZISYKFL\nkpQAC12SpARY6JIkJcBClyQpARa6JEkJsNAlSUqAhS5JUgIsdEmSEmChS5KUAAtdkqQEWOiSJCXA\nQpckKQEWuiRJCbDQJUlKgIUuSVICLHRJkhJgoUuSlAALXZKkBFjokiQlwEKXJCkBFrokSQmw0CVJ\nSoCFLklSAix0SZISYKFLkpQAC12SpARY6JIkJcBClyQpARa6JEkJsNAlSUqAhS5JUgIsdEmSEmCh\nS5KUAAtdkqQEWOiSJCXAQpckKQEWuiRJCbDQJUlKgIUuSVICLHRJkhJgoUuSlAALXZKkBFjokiQl\nwEKXJCkBFrokSQmw0CVJSoCFLklSAix0SZISYKFLkpQAC12SpARY6JIkJcBClyQpARa6JEkJsNAl\nSUqAhS5JUgIsdEmSEmChS5KUAAtdkqQEWOiSJCXAQpckKQEWuiRJCbDQJUlKgIUuSVICLHRJkhJg\noUuSlAALXZKkBFjokiQlwEKXJCkBFrokSQmw0CVJSoCFLklSAix0SZISYKFLkpQAC12SpARY6JIk\nJcBClyQpARa6JEkJsNAlSUqAhS5JUgIsdEmSEmChS5KUAAtdkqQEWOiSJCXAQpckKQEWuiRJCbDQ\nJUlKgIUuSVICLHRJkhJgoUuSlAALXZKkBFjokiQlwEKXJCkBFrokSQmw0CVJSoCFLklSAix0SZIS\nYKFLkpQAC12SpARY6JIkJcBClyQpARa6JEkJsNAlSUqAhS5JUgIsdEmSEmChS5KUAAtdkqQEWOiS\nJCXAQpckKQEWuiRJCbDQJUlKgIUuSVICLHRJkhJgoUuSlAALXZKkBFjokiQlwEKXJCkBFrokSQmw\n0CVJSoCFLklSAix0SZISYKFLkpQAC12SpARY6JIkJcBClyQpARa6JEkJsNAlSUqAhS5JUgIsdEmS\nEmChS5KUAAtdkqQEWOiSJCXAQpckKQEWuiRJCbDQJUlKgIUuSVICLHRJkhJgoUuSlAALXZKkBFjo\nkiQlwEKXJCkBFrokSQmw0CVJSoCFLklSAix0SZISYKFLkpQAC12SpARY6JIkJcBClyQpARa6JEkJ\nsNAlSUqAhS5JUgIsdEmSEmChS5KUAAtdkqQEWOiSJCXAQpckKQGloQNIkmZQMcWUUEoFVVRTRRWz\nqKKUITppoZ0+RoExRhkNHVWTY6FLUuEoopKqP//ftTq/VuulDFFNOVX0MswoQwzQa6XHxUKXpEIx\nixWsZR0rWU4dpZRRQimllFLEGEP0M0gvXbRzlTMc4SQ9oSNr4ix0SUpdCctYyjyWsJo1rGUlDRR9\n4397mB6aOctRjnOWJpq5ykDoH0HfrWg8dAJJUv6UMosNHGAfa5lDBRVUTWA79DhDDNBDI8c4xIcc\npZXB0D+Kvp2FLknpauAGdnIT29lA9ZT+hDbOcpajvM97XAr94+jbWOiSlKIi6ljKDg6yn+WUT+NP\nGmeMDt7hd7zBeTqwNjLKQpekFK3kLu7iBpYzPyd/Xg9n+ZjXeJkz7n7PJgtdklJTxhbu4yH2THGa\n/Zv08xEv8yqfcDX0j6jrWeiSlJZybuZH3MfqaU20f70ROniHX/E7Lof+MfXXfGxNklJSzz6e4D6W\n5+VPL2Ue91BNBc9zIvSPqr9koUtSOhZwJz/mTubk8e+o5DaqqebfOctI6B9YX7LQJSkVS3ic77OT\n2Xn+eyrYQSnV/BuHQ//I+pKFLklpWMbj/IQ9lMzA31XBjVRSTAmH3fOeFSX/OXQCSdL0LeYJ/oGb\nZmyYVsxcVlDBOVpD/+i6xkKXpPit5Pv8jJ0zMjr/QjFzmM8QV2kJ/eMLnHKXpNgVsZxH+Qk3f8uF\nK/myhifoo4MroV8EOUKXpNgt4Sl+wQ1BBmjFzKOCLpq9aDU8R+iSFLM5PMjT7JzADWr5Uc5NdNHD\nC/SGfikKnYUuSfGq5E5+xs3B6hxgDnfRQQdve2t6WBa6JMWqnNv5IbupCJyjgYP008nH3sQWkoUu\nSXGqYCs/4B5mhQ4CLOdhmunxONiQQk7TSJKmqpiNPMoB5oUO8mcr+QFPsiR0jEJmoUtSjOrZxyN5\nuoJlajbxBA+wIHSMwmWhS1J8KtjOXWwPvnr+VUXs4GfcneM72DVhrqFLUnyWcjADm+H+WgV7aKOb\nP/lUeggWuiTFppRt3M2K0DG+xizuYoBu3mI4dJTCY6FLUlyKWc0eNszoue0TN5c7aWaAD70rfaZZ\n6JIUl2r2sp+G0DG+0VIeoJs2ToYOUmjcFCdJcVnEnezI6PgcoIh13M8DmVwSSJqFLkkxqWAdW6gN\nHeNblbKdp9hPfegghcUpd0mKySK2sTB0iO9UxS2008nLXtkycyx0SYpHCavYwuzQMSagirvpp4V3\nGQ0dpVBY6JIUj2JWZ37C/QuzuZuLdPOZV7bMDAtdkuJRxQpWUxY6xgQt4jHauMrV0EEKg5viJCkW\nxSxieRQT7l/YwIMczPAjdkmx0CUpFtWsZnE043OAYnbwFHuiyhwtp9wlKRa1rGQeRaFjTMpsbucc\nV/nUk+PyzUKXpFjUspCayAodFnA/7XRwJnSQ1FnokhSLSuqpCh1iCjbxKOfpojV0kLS5hi5Jsahg\ndpSFXswWnuIOKkMHSZsjdEmKRSUNzAodYkpmsZ82LvIhY6GjpMtCl6RYVFJPdegQUzSbO7lCL0dD\nB0mXhS5lRzH1VFEMjDHOGOPAOOOM0cNg6HDKgEpmR/ypvYJHaaSNptBBUhXvW0NKRRFllFJKDctY\nwzzKGGOE0T9X+hjjDNLEaToYZIRhj9EsYCVRP89dzDoepJnnaA8dJU0WuhRWLUtYylKWsJSFzKOG\nEsYZY4zx//jPCF1c5SLnuMA5LjEQOrQCGYv8opNy9tLBJd5iOHSUFFnoUhilzGM2c1nFGtaynlXM\np/xb/vujtHKGoxzhBBfooJd2p+ELzjB9jEf3HPpXzeZ2ztDmhS35YKFLIZSxnQPsYBn11FDHbCq+\n439RwgIaWM1tdHGV85zgXT7yrukCM0w/I1FPu8NiHqeDFq6EDpIeC12aaeWs4UbuYB+bv7PG/1IZ\nC1gAQAdn2MJG3uMkfaF/IM2YEQYYirzQS9jEYzTyDB2ho6Sm5D+HTiAVkhJms4un+QUHWDaND+ZK\nFrCBbdTTTweDTl8WiGXczOroj2cpYh61NHLOZ9JzyxG6NHNmcSN72csuVk37zyqhls3UsZJXeYVP\nvPiiIAzTx1DoEDlQzV5O0cRhN8flkoUuzYwqlrCNeznI2hz+u1vKQtaxlAY+o9lST94AbYkssdSz\nn0aauRg6SEqccpdmQjV7+SE/YB8rKcnpn1zMHFayjhq6aHMKM3HVLGE9i6Le535NEXOp5Bzn/Rqa\nOxa6lH+LuZeneJgbqc3DR3ExdaxiETWM0UF/6B9WeTROPVtZk0ChX9tPMsIlGkMHSYeFLuVXMUt5\ngn/kThbm9W+Zz0bm0ceFJNZY9fWGqGAHWxO5J7OShfRxks7QQVJhoUv5VMZ2fsQPuDnvl14WM4ul\nlNLEVTcaJWycm7jxW48gikkdZbRx2fMUcsNCl/Knlp08xY/YluN1829SyVyKaOGya+nJGmcrO6gN\nHSNnZlHFJc76js0FC13Kl3ru5Oc8yqoZXPGsYSGDXKLVJ9MTVcRK1rFohr4i5l8VDXRwgTbfsdNn\noUv5sZyDPM39LJ7RDUxFzGY2Q1zyFK5kVbGIddHein69WVTQw0m3c06fhS7lXglreIyfsZ+GGf+7\ni5jLPDo4n8jzyvpL4wxQyw3MDx0kZ4qYTzVnPDdu+ix0KddKuZmneZKdzAry9xczj3p6OOttbEnq\np5QbWJPITneAEhoYockH2KbLQpdyq4bd/JQn2RLwCo0SllLFJa643z1JIyxjVYDZn/ypZA69nKAn\ndJC4WehSLtVxkL/lAVYEPvqjhAbGuUyjW40SNEwpi1iX1NHd9cBVrrpQNB0WupQ7y7mfn3Iv80IH\nAaqp5SyferBmgkbpYyG7EtoYB0XMoowLnA8dJGYWupQbJazhUf6O26gJHeXPZnGJz9ztnqQ+atjI\n8iSOgP1CNXPp5JTnxk2dhS7lQjk7eZqn2Zmhu6pL6eUSl30cKEHjDFDJsoT2ukMRtcyih1MMhI4S\nKwtdmr7Z3MLTPM2WTB33UUQ5gxznauggyoMe2pnLOioTGqUXMZ8KznKJ0dBR4mShS9M1l/v4KQ8H\n3wh3vRrgU064MS5B43QxTgNLMjQnNH0l1DJIE02+Z6fCQpemZy0P8kPuycRGuL9WRDGnOUuPH48J\nGqWLEdayNHSQnKqmlk6OulA0FRa6NHXFrOf7/JQ9mb0so4h+mrnolapJ6qWbOSynPnSQHCqigWHO\n0Oi0++RZ6NJUlbGHH/ME2zM86VlCLa0cojt0EOVFF100sCGZ61Th2nt2mPPu/Zg8C12amlncwk94\nmvWZ2gj314qpo533uRI6iPJinKsMsZilAc8lzL1ZzKaRY55zOFkWujQVDdzL3/Mgi0IH+U5FdHKE\n8344JmqMJvpZwIqEznYvYhb9NHHVd+3kpHR0oDQzSljBPTzOXYEuX5msGpbRQG/oGMqTLl6gnhpu\npCJ0lJyp5lYucYGToYPExUKXJqeMjTzI99kRzbplJXOopcid7slq4XmqqWJ76CA5U8RqDvABjZ7t\nPhkWujQZs9jFw9zH5mjqHCpooMZCT9pZnmMhs1idubMQpqqYjTzARd5xt/vEuYYuTdxsbuPHPMbG\nqL4KD3GJI5yz0BM2ThfdVLEqkmWgiSinni6OuFg0cRa6NFFzeJRfcC9LIhsFjdHMp5xkLHQQ5dEo\nLQwyL6GT44qYzQiXuOTWuImKaZwhhVPEGu7laW6N8MrKSuZRG9mXEE1eP29RSzUHkqn0Ym7iMRr5\nMHSQWFjo0ncrZy1P8jRbo/wXU8pcC70gdPISc6lnZzL73edzD59wkq7QQeIQ48eTNLOq2MXjPMim\naJ/0rac22uyajDaepZKahPa7L+NuTvGGZx1OhIUufbs57OYJHmVJ6CDTUEktZV53URDO81sWMIs1\noYPkSBm7uMg5joYOEgM3xUnfZiEP8AvuZXHoINMyyiHeoyd0DM2ILpqpZF0i+92LqKGMc5xnMHSU\n7LPQpW9SwkYe5QccoCF0lGka4TDv0BE6hmbEOM10MZvlVIWOkhPF1ACXOe+Dl9/FKXfp65WzhSd5\nlC0RHSHzTYoo8t96ARnjQ/4Pqnkowmcyvk4dBzjDMRpDB8k6/5FLX6eafTzGvazL9F1q0tcb4C0W\nUs9tiVT6Iu7gY16iLXSQbLPQpes1sJcfczCCu9Skr9fDa9QzjxsSeb5hIw9zibecdv82Frr01+bz\nED9iD3NCB5Gm4Tx/ZDV1iZzvvoD9fMTnjtG/jYUufVUxa7mfJ7gtmdO2VKjGOc2vqWcO9aGj5MQy\n9nOE13388ptZ6NKXKtnEo/yATf7LUAL6eZsGVrA/gY2dUMZuznKO46GDZJcfW9IX6riVRznIptBB\npBwZ4g3mUcueJKbdl7KXN7jsqXHfxEKXrlnIXp6I/ggZ6S+18BxLWMDq0EFyoJg13Ml5PnBr3Nez\n0CWA5TzE49zMvNBBpBxr5HfM5QdJfFWdx92c5gSdoYNkUxoPNEjTUcxWnubH7LfOlaBxjvAM7yZR\ngiWs4xbWOxT9er4sKnRlbOVHPMbaJDYOSdcb4GN+Qw23J3CtaiU3cA+tnAkdJIssdBW2avbxFPcm\n8qyu9PXaeJ4GlrIhgVnZtTzIEc66jn49C12FbD638iMejP7yFenbjXGRF1lGDctCR5m2Sm7kVj7i\nkpX+1+L/tiZN1Qq+x/+dh6xzFYTP+R+8Ql/oGDlQx20J3IGYBxa6ClM5N/A0P+eORE7Rkr7LIB/y\nK95gKHSQaStmGwdZETpG9jjlrkJUzk08ziNscCOcCsggf6KBBdwQ/Y6ReexiJ2fpCB0kWyx0FZ46\n7uJRDrDaGSoVmBb+yEZqE9gEuoKDnOVVRkIHyRILXYVmIfv5EXd5l5oK0gWeYS7zqAsdZJpq2ccJ\nPqcxdJAssdBVWFbwPZ5iJ7Whg0hBDPEeS9nEruiXm5axm7fppDd0kOyw0FU4ytjMw3yPXb7vVcD6\neJNVzGVD6CDTVMw27uc8n4UOkh1+sKlQVLGN7/MEaygJHUUK6jzPsIpF0U+7L+MA73OKgdBBssJN\nQSoMdRzgn/g+661zFbwxjvE8b0T/THoRa9nLZgemX/CFUCFYxH6e4l6PopAAGOQt5rKcbaGDTFMV\nt3GaS1wNHSQbHKErfWv5Af/sAa/SVzTyJ96IvgiL2cpdrAodIyssdKWtil38hB9zm/vapa8Y5wy/\n5vXoz40rYws7WRD9c/U54ZS7UlbJzfyQ+1jtO136K4O8zhLWsT3yMpzLfs7wx+i/muSAH3NKVx13\n8yR3euaz9LW6eY211LAmdJBpmcWtHOF9WkMHCc9CV6oWcYAfc2f0j+ZI+XOO37KMRVSHDjINpaxk\nJxt4z2NgXUNXiopZzQ/5v3GPdS59i0EO8zIf0B86yLQUs5E7WRk6RniO0JWeKrbyII+xK/K1QSn/\nunmNBSxmXegg07Kce/iUM4yFDhKWI3SlppY9/JS/Zad1Lk3AaZ7nTbpDx5iWWm7gRi9cstCVlrnc\nzy95nDW+t6UJGedzfsNbka9Az+VmbqYqdIyw/NBTSpbzCL/gUQ+akCZhgNf4Q+QXkRZzE/ewMHSM\n0C+ClIYiNvBT/pEDnggnTdJV3uZ1WkLHmIYilnMrawt7oc1CVxoq2M3P+Qm3UhM6ihSho/wm8otI\nS1jHXlYUcqW7y10pqGEXP+FBlvoVVZqSdl5nOxtZGHEhNnAnJ2kq3OtU/fhT/ObyAP/Moyz3/SxN\n2RX+yCt0hI4xDRXcxC3MCx0jHD8AFbdiVvIwf8MjLA4dRYraKId4lpOhY0zLXLazPepz76bFQlfM\nStjE0/wTB5gVOooUvWbe420uh44xLRu4m7WhQ4RioSte1ezlp/yYPda5lBNneZZ3GA4dYxoWsJ9t\nhbo7zEJXrGrZxy/4GTsK9R+vlHMDvMELXAgdYxoqWM9NhXrDooWuOC3kcf4Tj7DC97CUQ928yYtR\nHzJTzx5uZ3boGCH4Yaj4FLGSR/kFD7oRTsq5MzzLIUZDx5iyIrawnyWhY4RgoSs2RWzip/wT+1w5\nl/Kgk3d5i4uhY0zDfHawnpLQMWaeha64VLGXn/NDbir0axikvGnmT7xCZ+gY07CMm1kd8RE5U+R2\nIsWklj38gMdY4FdRKW9G+ID5bGJPtJVYzz6OcoHB0EFmlh+LisdiHuOfeYxFvm+lvOrhQ/7EmWhX\n0svZzk7qQ8eYaY7QFYcyVnIPT3BH4Z4CJc2gK7zIMhZGulOliPlsYh0dhTVGd6SjGJSwjZ/xS+tc\nmiF9vMvrXAkdYxrWso/loUPMLEfoyr5Z3MJDPMgG36+atloqKaOEEkoopQwYpI8uehkLHS1jOvmQ\nd5hDQ+ggU7SM/XwS+dn0k+QHpLKuhtv5GXez0PkkTVk5ZZQxi6UsZjaVlFFOORWUA7200cxVmulg\nmFGGGLTcATjB71nO7ZFujatlOxt4g57QQWaOha5sm89DfJ990Y4SFF4VS1jFSlayjAXUUUkpxZRQ\nTCmljDNMP7300Ec3XTRxlsOcpC907Axo5w12sS3af33zuIEtHCqc+9EtdGVXKSs5yI/ZS3noKIpS\nFYtYykpWs541rGMupd842hwHRhnmKif4mE84TTPttEe7zzsXxrnI62znjkj/BZazk32cj3onwKRY\n6MqqcjbzPR5na6QfJgqtgRs5wK0sp4ZZzKLiW//bRUAppaxkPtt4iEY+5WM+4jS9oX+QgIZ5j7Ws\nZk3oIFNSyiZu4WULXQqrlj08yANsDR1EUVrBJm7gJnayYdJ7L6qpZhFb2MgN3MohPuRwAU/AX+JN\n9rEo0udLqtnIek4Uyu/PQlcW1XMHT3EfC0MHUXSKqGUde7mXXcyhchpbKZezkD008jK/5QNaC3Ty\nfZTTvMYKboh0U+oibuUEnxbGNkcLXdmzjPt5jFtZEDqIIrSeg+xnI2upnfafVU45G6llLa/xRz4o\nnM1Vf6GZl1idk9czhLnczqd8XhgHzFjoypYyVvEQ3+dmKkNHUXQq2cwjPMYNOd13sYRFrGM5i3if\nS4yE/iFn3DCf8Tp7uSHK+8vK2MwOnudy6CAzoeQ/h04gfamUG/g5P2THd2xg0uSM8jFv0RY6Rp5V\nso+f8SSbKcvxn1xEA6vZQi1ttBbG5O1fGKWIepZFejZ6BV2c4HIhfBVzhK7smMWtfI+HWBs6iCK0\nkNt5nHtYnKc/fw5zmM0s/pUPGQr9w864MzzHJpZFOUaH9dzO2UI4M85CV1bUs4+fcZB5oYMoQot5\ngB+zh9l5/Vs28ENKGeWTgqv0Hj7kXXZFuk11MXt5pxAK3Sl3ZcNSHuFvuJO5oYMkKfUp99X8kJ9z\n8wxs26pjMdU0c5nx0D/0DBuilAUsi3IxrJQyTnGM/tBB8v+DSqGVs5Z7eZJ9vh81Bat5il+wfYb+\ntpU8yRjwAcOhf/AZNcpH/IENM/Y659Y8trOJ91L/nfkBqtAquInv8Yh3qWlKVvAD/oaNM/g3LuYH\nlDPOh6nXw19p4R3uYjU1oYNMQSXbuYUzqe919yNUYdVzGw9zkA2hgyhK63iKH7F5hv/WhTzGIEN8\nFPrHn2HneZV17Ipwa1wxa9nNyxa6lD/zOMCPuN0jZDQla3mCn7MlwN+8mCdpp41zoV+CGdXNm2xm\nHXNCB5mCetaxjM/SfngtzsP8lIZV/IB/4G7rXFOynO/zEzYEuq17GQ/zCItCvwgzapQTfMCFSDcE\nLmQ7yyO9232CLHSFUcpmnuJvuCvSwyoU2kIe5gfsyPkhMhO3je+xu8BONBzgM96lJXSMKZnNrWwL\n+H6ZARa6QihnB7/kH7jJq1E1JbO4n58G3nFdyQ4eZneBvYdP8yJHQ4eYkjpuYitVoWPkk2vomnmz\nuZXHeYBVoYMoUtXcyffZE3y0NZeDtHORM6FfkBnUwTvs44YIZ9aKWMwmFtIZOkj+OELXzCpiEQf5\ne35knWuKKtjFT7gtAyPjYtZwDwcK7HTDy3zA0Sg3l5Wxmu3UhY6RPxa6ZtZ6nuQfuTfC7/fKhnK2\n8XBmzhQsYjs/ZG9BzXUO8Q6v0Bo6xpSsZDfLQofIHwtdM6eSHTzBT90Ip2mYw93cn6Hd5ZXcxqPs\nKKhKP8PrnIxyr/tCdrM63Z3uhfQmVFhl3MzT3MuaKE+DVjYUs5472ZapT64a7qWNLo6HDjJjhjjK\nR6zJ2812+VPJRtZSRV/oIPmRpX8WStls9vME97AidBBFrIg1HMhYnQOs4AHO0M2VKEetU9HEy6xl\nQYRnxtWzkXUcTfPYXqfclX9FzOMB/onvW+ealgp2czBD0+1fKGYtD7N/Bm57y4o+3uHtKNfRy9nG\nnlQX/Sx05d9afsw/caCAPu6UH0vZzfZMLtnUcBsPsClzcwf5c5mPOBrh1HUZm9kd5eG1E2ChK78q\n2cH3+Tn7qQ4dRZGrZzc3MTt0jG8wl308WEAPY45zjNeivOxkPhtZGuFiwQRY6MqnanbzN/ySG9P8\n56MZtZJ72Z7hHcpreIq7o7xcdGrO8TJHo9w1sJgtLAwdIh8sdOXPXO7l73ic9Rk4AkTxW8nOjDx9\n/vVK2ML3OFAwc1GDfMYnUW4EnMdONgQ/ZzAPLHTlRzGLeIi/58kCmoRUPtWxOvOPSZWwjx9yQ8Gs\npLfzAR8yEDrGpM1mJ9tTPNW9UN54mmmbeJBH2VVAE5DKpzLWszGCj+DZ3M5Jevg8yqNRJ2uYD9nI\nDSwPHWSSSljDZurpCh0k1yx05V4Vm3mM77E1xUktBVHNNjZHcVXpIh6gjatcDR1kRlzkQy5EV+hQ\nw2rW0sRg6CC55ZS7cq2CPfwjP7fOlUM1bGZDFHsxKriR+7iZWaGDzIhRTnGI5tAxJq2IFdzC0tAx\ncs1CV241cB9/z2Ossc6VQw2sZkHoEBNUyc08ybbQMWbIVd7mKGOhY0zaEvakd02LU+7KnWIWcoCf\nst+Vc+VUEfNZHNGn1UIe4iIXuRQ6yAzo5V22syO6S0nr2cxyStPa6+AIXblSzCZ+yj9xl3WuHJvF\nwsimsBdzH/fREDrGDBjjNIei/OqykLWp3WRvoSs3ariFH/ATbi+Yp3A1c+qZG8X6+VfdwCNsKYhP\n2EE+52M6QseYtCrWsi6699W3KoS3m/Kvmtv5O37Gdt9RyrliapkbxQ73r5rFLvZGuP97Ki7wGidD\nh5i0MtZzQ1rXtPjxq+lbyKP8godYG9Eqp+JRRC1zoit0WMj93BrBs/PT18Z7HItuNbqEdRa69FXF\nLOIR/pGH0nsERBlRQi1zMnnH2rerZA/3sDrDp8/nyiCnOBLhIbDz2cCClH4/Frqmo4hN/JJ/4LbM\n3oGl+BVFWuhQxx4OFMRX3W4+4QO6Q8eYtEWsTWmMbqFr6qrYzU/4GXsKYlpRoRRTQXWkyzmreIgd\nkWafjFGO8CdaQseYtHq2sjKduyAtdE1VLXv5T/wNG30XKa/GgfHopnOvmc0t7EvvAJPrjHOeDzkf\nOsak1bKdDVHO/nwtP4o1NUt4kL/nYZb5HlKejTPMUIRnkV0zlzs5QG3oGHk3yhkOcTl0jEmqYivr\n05lh9MNYk1fCSh7klzzKotBRVBBGGY50hA5wAw+zJaWtV9+ggzf5hOHQMSalhMWsTmcV3ULXZBVz\nAz/jl9xeAKMOZcMII9GO0K89kX47K0PHyLse3onwdvRSlrEuleOwLHRNTjV7+Qk/5tbIjuJUzEaj\nLnRYzAMF8ET6GBc4QmN0v6nl3MTC0CFyw0LXZMziAP/Mj9nsO0czZpwRBhkNHWMaKriFu1kdOkbe\njXKGT2gPHWOSFnNTKtsW/VjWxC3iMX7JQyz1faMZNEY3HQyGjjEttdzKXSwOHSPvzvMOF0OHmKR6\ntrE8jUcL/WDWxJSwksf433ioIG6QUpaM0UYjfaFjTNMqHmEXZaFj5FkzH3ImdIhJKmIpK9O4I9JC\n10SUsIWf8w/sjvBEbcVujGYu0BM6xjTVsrMALmsZ5AQn6QodY5IqWMeGFO5ds9D13Waxl5/yY3Yn\nv61H2dTFhQiPFf1r87mD/ckfktzOMU5FdlFLGZvYkcJTOxa6vsts7uYf+Rs2hQ6igjVGM22hQ0xb\nMTfzCBtCx8izIY7yHq2hY0xKSSoXqVro+nareJy/5WEW+V5RQD00RTeRe70q9nAXK5I+ZGaU47wT\n3anu89jIgtAhps8PaX2zMtbxPf6eB5gbOooK3ABnuRTdE87XW8BB9iW9dDVOM5/TGDrGJBWxhOXx\nn+luoeubFLODv+Vn3JzKKUqKWB+fczzyR9cAKriZu5LfGneFI1yO7LDeWtbH/0Bu5PGVN9Xczs/4\nETuTHk0oFv0c4dPoH10DmMMt7E9hevdbtPE+n0e2Ma6GTayJ/bFCC11fp4YD/F/4MWt8hygTRjnH\nIZpDx8iJ9TzKjqTX0bv4iEORzafMYgOrYn90zY9rXW85T/IPPMD8pD90FJchzvApnaFj5EA1u7iZ\neQn/6xrjHEcj2+lezmpWxb6KbqHrL1Wwke/xDzyU/POyis0lXud0ZCuzX28uu9iR9GJWD6c5wVDo\nGJMyj+Wxn4NpoeurKriJX/B33Bz71JMSdJU3OZZEoVdwEwdSueHrG5zj3chOdS9iEWviPgLWQteX\nZnM7P+H7boRTJo1ymk9oTKLSl7GH1QlPusMV3uF06BCTNJ+NcT+ia6HrC7O5j3/i+6wLHUT6Bl28\nwx+jO7Tk65Sxnt2pXNr5tbo4zJnIdrovYGvczx8kcWWccmAV9/IEe1M4/lDJGuFTnmENcxMYiizg\nAMdpimydeTJaOMUllkf0u5rL5rgXQuJ5qZU/ZaznKf4T91jnyrgW3uEVzoeOkQOV7OK22DdhfatB\njnOY3tAxJqGSVSyK+Vl0C11l7OIf+VtudCOcInCR3/FSAnevwTxuZFvC5zAOc5JDdISOMSn1rIh5\n0t1CL3Sz2c9P+QHbYv5eqgIyyic8z2eMhg6SA+s5wIrQIfJmjAscjuyWvDJWxny8jIVe2OZyD//E\nD1gZOog0YX18wHMcDx0jB5ZyF1sT3uvewSmuRPVUQhmr2RTvo2sWeiFbyxP8LffGPMWkgnSR3/N6\nZJO5X6eMDdzIkoQ/h1s4zdWIKr3EQleMytnGU/w997kRTtEZ5BOe5S36QweZtnp2cyt1oWPkTSef\ncCKqh9cWsz7erYoWemEq5zZ+yS/YGfvZxSpQg7zK/+Sz0DGmrYwdHGBR6Bh508UhPmcgdIxJKGEZ\ni2NdBvE59EI0hz38gIPJ38qslLXxMmuYy6pYP3z/bCG72MjpRJ9HH+IUJxigNnSQSZjDauZEdrXM\nnzlCLzwN3M8/86h1rshd5Lc8G+cH71cUsYI9rKMkdJA8aeVsZNfe1rCRVXH+Piz0QrOaH/F33M28\n0EGkaRrlU57jfXpCB5mmuexnV7yPSn2HUS7xOV2hY0xCDRtZE+djvBZ6ISljM0/x99wZ7y5O6Sv6\n+ZBf82lEu6i/TgU3ckvCX7EbeT+qe9cqWccqC13ZVskt/AN/74lwSshlnuNlLoWOMU21bOemqNaZ\nJ+MKH3Ixoi9dRSxleZwn+FnohWIeB/kFT7PJjZBKyDjneJYXaA8dZJrWcy9rQ4fIk35OcC6qTX9V\nLGJBjO0YYWRNwUIe5B950o1wSs44H/A/eS/yo2AXcSfbkv2yHd/GuLmsZlboEJNnoReCLfyQn3OA\nuaGDSHkwyDv8ho+jrvQiVrIj1r3V32mQ0xyP6higa4+uRcdCT10ZN/A0f8Mdya7QSe08zzNRbby6\nXjU7k71OdZgTfBTVsshc1sY4ALLQ01bGPv43fsYNVIaOIuXNOKd5kVe4EjrINJSyg7sTPTNulFMc\niqzQ1zE/dIjJs9BT1sBB/pbvsy7ZtTnpmlE+5d95n8HQQaahge2sTfQZlA7O0hzRTvcqVjAvvjMI\nLfRUFbOYh/l/8ESM3zOlSevkT7zAccZCB5mGBWxnRaKfyq1ciOgIoCLmsyC+R9fSfOuohI08zd+y\nP+F7nKS/1MEL/CGy3dR/aTY72ZLoGL2LU1yKaONiNYtZGNsY3UJPUSU7eJq/5a74vmFK03CM3/Ex\nw6FjTFk129ge4+NSE9DDcc5E9LspZikrY7uN0kJPTzX7+SU/ZWuij8BI32SMz3iFoxGNA/9SCcvZ\nFOPu6gno5jhnIjpepozFrI5tSGShp2Ye9/JznmRDohN30rfp5CVeozN0jCmrZDWbkhyjj3COsxE9\ni17KcgtdIRWziMf5v/Joog+/SN9liE94hRPRjtFhKXtZFTpEXrRxgY7QISasiCWsiu0aKws9HcVs\n5mf8gjuYHTqKFMwQH/IHzoaOMWULuY21SX4yj3GFUxGN0atZQX3oEJOT4tumMFVwIz/il+zzCBkV\nuEs8x9sRFcdfqmIja2Kb6p2gZo5EdfjPXBbFdY2qhZ6GKvbxT/yIjf5GVfAG+Yy3OM5I6CBTVMdG\nVsdVJBMUW6HPYmVc99R7glgK5rOPx3nII2QkALp4g9UsYmHoIFNSzhZ2cYm20EFyrp2jXGEsmmFH\nFatZRlM8hxWlWOglFP3Hf4ohtqMBJm0uB/kBt7pyLv2HIzzHTuZHUx1fVcIGbuadBAt9mNNcZiSa\nJ3BqWMNSPonnYbvUCr2WJcyjmkqq/vyfiuR+xr+2kB3soip0DClDhviEl1nC+igrfQHbWcaxeEaG\nE9bDea6wPJJhVhVrWU6phT6ziplFNbOYy2o2sIw6aqmhjhpqmZXkWtRXlVAa5YeWlE/tvMgyFsa2\nTxmAYpaxno9ojeg6k4kZ5TynmB/JAKSYpSyhgr7QQSYqhUKvYgXr2cxaljGPBmopp4xyyq05qWCN\ncIg/sZNdUX4O1LODT3k36tvjvs4IZ/mcLZEUOsxiMfXxXPwae6EvYDUbWc96NrHKVWRJ/6GPD3mF\nhawIHWQKZnETn3AouUIf4xzH6I5mu2Ipc1nMxVjOoI+30IsoZxl3cpAdzKGK6oh/Fkn5cIZnWMWS\nCD8bytnEVmZHfIjt1xuniePxjHiBBlZzIpY7/OJ7o19TziZu4mZ2sC3KNTJJ+TfEId5gK+uj20lT\nRA1rWENTcmP0UZq4wnA0v5HZrKDeQs9n5vls427uZTOVUa6PSZoZnbzNeuaxIHSQKVjBHs5xJnSM\nnOviAu3R/EbqWRbPoDG+Qi9hIw9wHxtZGmF6STNpnCO8zJ5o6uOrlnIL73E2uZ3ufZzjMnMi+fyO\nqtBjG99WsYun+TH3sjKSt4OkkLo5zGG6QseYgjq2siaaQ1gmro9zXIplmxlVLIlnu3VchV7FPn7J\nz7kxkmMJJIV3hTc5FOXJ7kvZmOBVyP2ci2ffOCUsoCGWpowkJgCLeYxf8ihrHJtLmrBeXufNeA4H\n+YpKNrI1tju5v9NQVCN0mMVc6kKHmJhYCr2IBTzAP/IoS0JHkRSVUU7wHuciPEi1lM3cFtd9XxMw\nTjOX6QkdY8JKWcDCOGaFYyn0uTzKT7ktue+qkvJvlOO8xeXQMaZgFTuSK3QY4SpXGA0dY4JKWMAS\nKkLHmIg4Cr2GvTzF3miOC5SULRd4ic9Dh5iCMlayOMFFxjbO0h06xASVMp8lcbRPDIVezh6eYA/V\noYNIilQ773Iomgr5qjrWMD90iJxr4zStoUNMkIWeQyVs5BEOMjd0EEkRu8LHHGEgdIxJq2I9K5N7\neK2VM7SEDjFB16bcLfScWM3D3Mfy0DEkRW2Ij3klliM8v2IWm1iXXKF3cIqWSI7MKWIOSy30XKjl\ndp5gY+gYkiI3xgle5WzoGJNWxQbWUhk6Ro4NcI6WaLbFVbKQWaFDTES2C72CG7mHGxLcEiJppvVz\nhE+imej9QhGLWBHPWWUT1kITvaFDTFARs5mX8bYEsl7oCzjA7uS+m0oKo5U3+Si6+8vKWMzSaG4n\nm6ghGmkKHWLCIjkANsuFXsxabmNF6BiSEtHL27wZzbjwS/PYwJzQIXJslEbO0R86xgRVsTSG8wCy\nXOjLuJVNcWxFkBSBMc7zIaejWbv9wgK2JHdG5giXOBPNeXFVLGFh9hd/s1vo5dzCQZaGjiEpIaMc\n53UuhI4xSQvYwuIMf1pPxRiNnI6m0CtZykJKQsf4Ltl9iyzgVm5Kbt1IUliXeJnPI3lg6gtVrGdp\n9seHk3SVM9Esf1SxjAUW+lRVsJEtNISOISkx3XzEcYZCx5ikhSynNnSIHOujMZoRegmLLPSpp5rP\nFpbEcb+NpKi0cYyzEV3fCVDOclYnN0bvoDWaO/BmMz/7F7Rks9BLWMS2BM8vlhTeEMf4ILJz3YtZ\nyZZYbuWesH6uRPN7KKMh+69/Ngu9lAVsjeEhAUnRGeE470V2CGwxK9kcw5PQkzJAI82R7Gcoopb5\nGW3M/5DNeLNZygo3xEnKiysc4lLoEJNSxBI2UR86Ro4N0sgVRkLHmKBZLMr6nZ/ZLPSVrEhuA4ik\nrBjmPCfpCB1jUipZzYKMfmJP1QCXuRrJboYiallATegY3y6bb4+NrErudiFJ2dHKIY5HUiVfmMua\nxM6LG+ASV6MZodcwP+sDzWwW+moWJbefU1J29PEhH9MXOsakVLORVdl/dGoSRrgcUaFXM98R+lTM\noz6jySSlYIijHIrmKehrqtjA6uw/OjUprTRHcyaAI/QpqqU6qe+hkrJlnA5OcT6qU90r2MC6xAp9\ngFY6Q4eYoFoWZP1W9KwWepWHykjKqwu8z+XQISahmKWszvoYcdI6uRLJXoZyFmT91c9qoWf8e5Ck\n6F3iDU5F8hT0NZUsYVliG4Y7uUBX6BATVJ/1o2WyWeh1XpoqKc86OMSpaFZwr5nHusSOl+mikfbQ\nISaoijoqQ4f4Nha6pEJ1iWNcDR1iUuawngVJLUh2ciGaEwFKqc/2lWHZLPRZPrQmKe/6OcHRqB5e\nm81K5iVV6B1cpCOShY9i6pmX0db8c8AsSmsfp6RsGuEY79AUOsYk1LGChqQKvSeiQi+hnnlZ7qds\nFno2U0lKyzhneD+qQq9gaWKFPkYT7ZE8PlhKA/OyvIqezeqM49uapNj1c4bGSOoEoIgG5ia2z72L\ndgZCh5gQR+iSlGEdnOZyRIOIKhYkdqL7MG2R7HMvYQ4LLHRJyqZ+TnE2oofXipnLoqRO0hynnVbG\nQseYgBLqmZPl+RELXVIh6+MYpxgMHWPCSpjPsqQe7B2jI5oT3Wc75S5JWTXASU5FsoYLUMwClmX9\n1q9JGaOdq5H8BqqYa6FLUjaN0cjZaA4fhWLms5zq0DFyaIwOWugPHWNCipmd5YPJLXRJhW2UK1yI\n5IIQKGI+y5Iq9FHaaY5m0aOKudk9+MxCl1ToWjhBa+gQE1bDkiyPEqcgpkIvZ052FzwsdEmFroUj\nNEbz6FoR86gPHSKnOqMq9PrsXqJqoUsqdK0c4VIUD05dU8Oi7I4Sp2CE1kg2xUEZddRmtTkzGkuS\nZkwfJ7nESOgYE1bBMuYndQBsJ92hI0xQKbOpyWpzZjSWJM2gZi5EtNO9giUsTOpwmQFaI3kSvZw6\nZmX1y5SFLklDXOB8NDvdK1nCouzutZ6CYa5G8oWqlDpqsvplykKXpFEucDSSSrk25Z5WoQ/RSlsU\n2xLLqaPGEbokZdUo5zlCR+gYE1SS3Ah9iJZILlEto5ZZWW3OjMaSpBnVyLFI7vwCmMPCLB9BOmlD\ntEZS6KXMZpZT7pKUXQOc4WroEBNWwTwaQofIoUGaaYui0IuY7WNrkpRt7ZynM4p1XCiinsWUhY6R\nM0PRFDrUuoYuSdnWzxnORVIqUMcyZocOkTNjtNARyWtf6S53Scq2QS5xKZpH12pZxpzQIXKoi45I\nZkeKqaY8dIhviiZJggEaaYrmTPHZLEtqFb2f7mi+TFVl9eBdC12SAAZp5HI0pXJthJ7RtdwpGKEv\nki9TRVRSn81X3kKXJIBxrnAlmkKfxWLqslkrUzQQycE+RVRRn81Jdwtdkq7popne0CEmqJiGxG5F\nH6AzkhvvqphNVegQX8dCl6RrxumgJZK91lCT3RPLpmSAjigm3YuoZDZVWZwdSentIEnT00UjfaFD\nTFAFs5I6La6frkjmRyqpo9JCl6Qs6+JiNAfAllCX1d3WUzJABwOhQ0xIJfVUZrE9MxhJkgLp5Dyt\nkTwPXUQN9aFD5NAgXfSHDjEhFrokZV4PF2iNZGtWCTXUJ3T8a0wj9NkWuiRlWzcXaI+k0IuppT6h\nVfQBOiIZoVe7KU6Ssm6Yy7RFU+g1WX0eekoG6IxkQ2I5NVRksT0zGEmSgmmnJYqHp66toTckVugD\nUexfKKWackfokpRtg7TQETrEhKQ4Qh/IYk1ep5gqSrOY1EKXpC+N08wFhkLHmIAiamlIaA19hE76\noxihQzVlWWzPDEaSpGDGaOZCFAecFFNLQ0K73InmsTWoyObrbqFL0pdGaeYSPaFjTMispKbcoZ8+\nRkKHmJBy19AlKevGaeFiFCN0qEpqUxwM0xvJGL2E8iy+8ha6JH1VFy2RHHBSTG1Ca+gwHk2hF1Ge\nxVfeQpekr+qhLYpNcXDtxrV0jDEQyZPoRVRSHTrE9Sx0SfqqUdqjKfQy6ikNHSJnxhiIZJ97MRVZ\nvBHdQpekv9QdycQvlNGQ1I1rg/RHcR+9hS5JURigO5LjX0tpYHboEDkzzlAkhV5EuVPukpR9I3RG\nsi2ujDrqkvkcH2eQgSi+ShVRQWXoENdL5Y0gSbkyQgddoUNMSCn11CbzOR5XoTvlLkmZN0In3VFs\nzipnNrMpCR0jR8YZYiCSKXcLXZIiMEInXVEUSykNCU25jzFIfxRnxRX72JokxWA0mkIvoz6pEfpg\nJCP0YiodoUtS9g3TRVcUI8VSZic0Qh+P5rG1IsotdEnKvmsj9BgKvYgaapL5HL+2hh7Hprhyd7lL\nUvYNRzPlDpXZvPdrSuKZcndTnCRFYZSOaAq9jLJkPsfHGGIgkpkRN8VJUgTG6aQzokJPRyxr6O5y\nl6RIdEczQi+hLJkp93gKvYgyr0+VpBj0081w6BATUkRpUoUexxo6lGZxZsRCl6Tr9UZy41pxYiP0\nWHa5F2fx6X8LXZKuN0h36AgTUpzFkeKUDUcy5Q4lFrokxWGI3iiqpZjSLFbLFI0yFMWrDsVZbM8M\nRpKk4EYZjOIBqvTG6DFcioNT7pIUizGGIin0kqQKfSSSQnfKXZIiMcpwNJO/5aEj5NBoFJvioMhC\nl6Q4jEY0Qk+p0GMZobuGLkmRiGeEntaU+2gkhV5CaegI17PQJel6rqGHEU+hO+UuSVEYZTiS1dzi\nhK5ngfFIXvUiR+iSFIcxhiMZoZdSnsVymaLxSF51R+iSFIl4jjgpoiyL5TJF49G86hl8zS10Sbpe\nTGvo5VkslymKpdA9WEaSInFthB7DBq0SR+gBWOiSFIlRhiO5QLXYNfQALHRJikQ8a+jpjdBj2Odu\noUtSJK6toccw5V6a3Bp6DK96URbbM4ORJCm4eE6KK05uhB5DoZPFZQ4LXZKuNxrNc+jpTbnHUegZ\nbM8MRpKk4K7dhx5DtZQktikujjV0svglykKXpOvFsykuvSl3C32KLHRJ+jrjUYzPoYgiikKHyKE4\nXnWy+Jpb6JJ0vSJKKM7ih/Z1xhiLZEw7EcWURNJLGfziEccLJ0kz69qBqhn80L7OWDT3wk1MeSS9\nlMEFmTheOEmaWSWUURrFCD2e/fgTEc/J9Ba6JEXh2i3jMYzQ43lifiKKoxmhZ3BWJI4XTpJmVnE0\nI/R47oWbiGLKQ0eYoAx+ibLQJel68Uy5jyU15V4USaFn8lY4C12Srlcczaa40aQ2xZVQFjrChIxZ\n6JIUh2sHqsYwQk9rDb0sklay0CUpEtem3GMQz5l2ExHLljin3CUpEtd2W8cwQk9rDT2WQneELkmR\nKHaEHoSFPg1xvHSSNLPimXIfS2gNvSSiNfQMbkSM46WTpJkVz4llKR39WhpRoWfwS1QcL50kzayS\naC4lHWU4dIScKaU8in0LboqTpGjEc8t4SoVeFs2r7ghdkiIRzxr6KEOhI+RMmZvipiOOl06SZlZx\nRGvo6RR6KRWRTLmPZnHfgoUuSdcrpTKSQ0hTm3KPo5VcQ5ekSJRRG8k1IWPJHCtTFNUud0fokhSF\nSuqi+HwcZySZQncNfZrieOkkaWZVURM6woSMMZLFseKUXBuhx7FzYdRCl6QYlFHjhPuMK6I0mhH6\nSBZ3LsTx0knSTKqhLpqR4nAUt7ZPTCxT7mMMMhA6xPVieOkkaWbVRrKCDuMJPbRWFE2hwxB9oSNc\nL46XTpJmTjF11EYyQh9iMJkRelE0R786QpekKJQyO5op9x76srg9a0qKonkOfZxB+kOHuF4ML50k\nzaTSaEbo43TRncwud6LZFGehS1IUrhV6DCe5D9NBV1Ij9DgKfcxCl6QYlDCbuigKfYQOupIZoRdR\nSmkkMyMWuiRFoJQ6aqL4dByhO6Ep93g2xY0zxGDoENeL4S0rSTMpnk1xw3QmNUIvoyKKVnLKXZKi\nUEotdVGMFEfooieZNXSiuZxlnCELXZKyr5TZkZzknt4IPZZC9zl0SYpACbOpCB1iQkbopDN0iJyJ\naQ190JPiJCn7KiLZEnet0HtDh8ihMsqj2LvgLndJisIcqkNHmKBhOrI49TtFxZRTGUUrjTlCl6Ts\nq2YhVaFDTNAgPaEj5NSsSPYuuIYuSRGYyzJmhQ4xQT1ZrJUpK6GO2tAhJsQpd0nKvCLmRVPoI3Rl\n8XiTKaukNpK5EUfokpR5xcxjSSSF3k9HQrehQw2zojhwF0YZYjh0iOtZ6JL0pRLmsTSSTXHdSRV6\nCQ1UR3K3+zDDWXz630KXpC8VMYelkTyF3ksnI6FD5EwFc5gVxVPoMMhIFr96WOiS9KUS5jE3dIgJ\nGaWXjoTW0KtpiGRmBPoYstAlKdtqmUNl6BATMkYPXQlNuVdF8/z/GD0MWuiSlGXFLGROFGeVwRi9\ndGRxa9YUVUdT6EN0MeAauiRlWTXLaIjkc3GMHjodoQcwQCcDjtAlKctqWUJDJBuzxulNapd7PIXe\nTxcDWby01kKXpC/URFXo3YlNuTdE9Py/I3RJyrQ6lkZU6D10ZrFWpqgymhH6IF0WuiRlWw3LaQgd\nYoKG6KQ7dIgcqmJOJI10bQ3dTXGSlGG1LIrkUBnopi2LV3hOURGzqAsdYkLG6aeTfgtdkrKrlAZm\nhw4xQaNcpT2LpTJF5dRG8vz/FyP0DLLQJemaBhZEUyq9NNIROkQO1TA7kuf/xxmgM5sn9FnokgRQ\nxjKWRVPo3VykI4sbs6aonrpINiNeG6Fn8ukCC12SAKpZw6poVtC7aKQzdIicKaGBukhG6DCQ1bkR\nC12SACpZy+poCr2bS7SHDpEz5TRQF0kfjdOX1c2IcbyAkpRv1axhOaWhY0xQDxcSGqGX0cDsSPpo\nhN6sXlobxwsoSfk2m2XRPIMOnVzJ5sasKSmjgbpIvkz105vVpwssdEmCCpYzP5ptWUO0ZXUdd0pi\nGqH3WOiSlGULWR/NM+jQRXM2n4SeojLqIyn0cbosdEnKrhKWsiGaQh/nCk3ZfHBqiq5NucdgmE66\nLXRJyqpilrGJ+tAxJmiQyzRldWPWlJTSQE3oEBMyRCc9FrokZVUpS1kdzaEyAzRyNalCr6CBstAh\nJmTENXRJyrJaljEvdIgJG+QyV5Iq9JpIxucw7Bq6JGVXCUtYRHnoGBM2zBWaEzr2tYjZ0RzoM0KX\nU+6SlFWz2cDiiD4NB7ic0ClxUE1DNF+nBmmny0KXpGyaw0YWR/MMOnTRktQe95qoCr2FzqzOjljo\nkgrdHDayMJpCH+UqXaFD5FQdcyLZEvdFoWeUhS6p0M1lfUSHvnbQSG/oEDlUTB0N0ayhD9Ka3SN9\nLHRJha2KxSyIZnw+TguN9IeOkUMl1FIfzZR7Lz2hI3wzC11SISthJeuYFTrGhI3RSmNWr++ckiLq\nmBNJoQ/Rlt3xuYUuqbBVs5nNVIeOMWGjtHI5qRF6MQ0siORQnx5as3zHnYUuqZDVcSNbIqkTgHGa\nuZhYoS9gcRSb4sZpp4Wh0DG+mYUuqZA1sIWVlISOMWGjXOFSUqfEVbCQ+aFDTMgIHY7QJy+W7SmS\n4lbJSlZEs8MaoIOmpA6VgXrmRbLkMUoHrY7QJyujD+1LSkoRK9gR0RnuMMR5riR1qEwFS2mIZBA3\nSnuWH1rLaqGPhg4gqQAUs5aboyr0Tk7SlNWDR6ekjhXRXFs7Sqcj9MnL8DcgScmoYB1bqQsdYxJa\nOcblpOYw61kZzQh9zEKfiu4sv2SSEjGHtSyNpEyuaeVzLocOkVOzWRHNKX2jdNCS5a9T2Sz0zqSO\nTZCURZVsYE1ED6wBNHMqyyeVTUFMhT5EJ92hQ3ybbBZ6d1InFUvKooXczKqMfgZ+vX4uczXLI8Qp\naGBpJHvcoZ+ubM8eZ/PN3JPUsQmSsmgRu1kROsQkjHOZ84kNdsqZw5xoFj3asz47kt1CT2kfp6Ss\nKWEJm5kdOsYkDHKSs0k9sgYNLIhmfD5As4U+FZ30WehSzowznthE7XQVsZD1UT2wBr2c4EyWzymb\ntBIWsyiKQ18Bei30qblMc1JHG0rKlgo2si2iO9YA+jnJ+aQ+GatYziJKQ8eYoB5asr7gkc1CP86F\nxCaWpJCKKIpmnXJmXLuSpSp0jEnp5jRXQ4fIqUqWsTiaQneEPkUnOJ/UxJKkbJnDDayL6EoWGKGR\npsRO0axgWST3rME4XTTRFTrGt8tmoV/hEp2hQ0hKVDlr2BDVhjho5WRyn4qVLGVeNHNH3TRm+yn0\nrBZ6H1c46aNrkvKgmLXsYWnoGJMyTiMnkiv0GhZTEzrEhHVxMetHnmWz0Ee4wuHEVoskZUMZN3BX\nJDdwf2GM83ye9QnfSSpiPnOjGZ+P0E5L6BDfJcuFfiV0DEkJqmM7N0a2w32E85zI+vhwkupYFs0z\n6Ne2xGV+1jibhQ6tHOJcYhtAJIVXxVa2RbZ+Dn1c5EpSZwkUsYAV0RT6OFe5mv1Gymqhj3GGw4nd\nKiQpvCUcYGM0E73XjHOZy4mNz0tYxLJo5kkGucTV7J8BkNVCh27e4c3kNoFICmsld7AqdIhJ6uJk\nDOPDSSlmIcujGaH3c5nm7J9fmt1CH+VjXuJS6BiSEtLAFjZEdmUqtHGMptAhcuxaoVeEjjFB/VyJ\n4fzS7Bb6OFd5n8OJTTNJCqeCHeymPnSMSWvleGIr6FDCAhZHc7TPtSl3R+jTcpaX+Sz7L6KkKNRx\nG7dGduArQDPHaQsdIsdqmB/RM+j9XMz+Q2tZL/ROXuPVGF5GSZlXzDJ2sjbjn3rXG+AiFxkKHSOn\niljE3GjG59DL1Rh+A9l+a49yild4J7HjFCTNvCIWcFNk57cDjHCGE3SEjpFjNaygIeP986VRWuLY\noJ31F3SQj/g1hxPb3ylp5m3gdhaFDjFp/Rzms+wfaTJJ9SyPaC9DL01x/Aayf3FdI8+xkDlsCh1E\nUsSq2MZtzAsdY9K6+ISjDISOkWOzWcGcSE4DGKOZy3EUetZH6DDOJX7Fv3MhdBBJ0SphJdtYEcEn\n3l9r4QiXE9vhDvWsYE7oEBM0ylUuxfGVKo6391H+lefdHCdpiuq5lRsi3N8+wGnOxVEmk9LAcupC\nh5igEa7S6Ag9d8Y5zH/lGZpDB5EUpdXcz9bQISZtjLN8nOS9kw0simZ74ggtsRR69tfQrxniHcoY\n5SArIll3kZQV9dzErog2YX1hlOO8R3voGDk3i7nUhg4xYWO00MRw6BgTEUuhQx+v00orT0T4HKmk\ncCrYyR0sCR1jCoY5xiF6Q8fIsWIWs4iy0DEmbIjmWGaH4yl06ONDRujgUXZRHjqMpEg0cBf7Ilw/\nH6eJ0wnuHapkNcsiKvRu2mI5gjymQodxPqGVNrq4mfpoVmAkhVPONu5gdYRLdb0c5lQcU72TUsMG\nVkdzLcsoV2iP5SmDuAod4CK/opGD3MXmiL7jSQqhiE3cw4YI6xwu8wHnErzLopaNrInm07uTs/Gc\nox9foUMTL3CZc9zKRlZF8+iDpJlXxW7uZm7oGFPSyEdcDh0iD+pZzbxovmK1Wej5NsAnnOMV9nI/\ntzCX4mjeHJJm0kp2syWa6d2vGuEcx+gOHSPnylgW0bWp0MYZWkOHmKg4Cx2GaaaZJs7yLltZz4qI\nvvFJmhkLuIvdEV3S+aVRLnI6npHhJCxiPQ2hQ0xCO2fieXAw1kK/5hJXeZvN7GYLG1hODZVUUmq1\nSwI28wAbQoeYkn4OcTiWvdWTUMoatjI7dIwJG6OVC/Gc1Bd3ocMwrbzDWeYwh8WsZgNrWUAd1VT6\naJv0Z+OMx7JPN4cWcTM7ohyfX7uSJb071qCU1WyJaOdTP03xTLjHX+gAw1zkIlDKQjay5s+FXsss\nqqiglBKKkv0wG6WYBlZEeAaWlF8V3MrdLA4dY4paOZLkDvcKVrEqmh3u0MzleMbnaRT6F0a4RAsf\nUk4pxZRQQgWzqI5yQ8xEDVLGBu7hdhaGjqIMK6Ko4BaiFnEPt0ZUHV81xDnOJDg+h7msiGgFfZCz\nXGYkdIyJS6nQAQYZvO7/F89+yskbpZijnKeJe1kfOoyUGbO5iZujuaDzr13icCyHjU5KNWtZElHr\n9HKOS4yGjjFx8by0UxfRr2MKxmiknRa6eYz1BfH7lL7bZu5ldegQUzTCMd5Pcof7fLazKKK5on7O\n0RhTg1gAKejnQ3pp4nFu8zcqUcdeDjIvdIwpGuY4H9EVOkYeLGRbVJfk9HGWxph2YPnxn4ZhDtNJ\nN33cEtEKlZQP1dzGPayNdrGtlRNcTnBDHCxkY1TLIF1ciOtoHws9HRf4Nxpp5YFID7qUcmML32d3\ntHXezUcc/5q9QPGrZCnLI/q9jHE1tp0MFnpK2vkTQ3TyYLSrh9L0FLOI27mDBaGDTNllXuN4guPz\nEpawIqpTAdq5SE/oEJNjoaellz/SRh8PsMGDdVSAqridgywPHWPKxjjF21wMHSMPqtjEmog+lca4\nzNnYHh200FMzyqcMcpkn2EVV6DDSDFvNA+yN+J3fxGFOx/Tk84TVsJG1EZ0KMkIj5y10hTbMZ/TQ\nQzu3uZqugrKEB9gf1barvzTAJ7wfz1Ugk1LHJlZGtII+QiNnnXJXFpzjX7lMG/ezKHQUaYZUcA9P\nRr1/pJU3+SC2UeEENUR1C/q1Qj/HcOgYk2Ohp6qNV+ihnfvZFNE/ImmqqtjOPdxIceggUzbGeT7i\nQkzPPU/YLFawIKpPoj6u0BI6xGRZ6Onq5jVa6eBJNlAZOoyUZ8t5iD1Uh44xDVf5hNMMhY6RB0Us\nY3NEd6wBtNIc31yJhZ6yET5jgBa+z96INqNIkzeLndzH2tAxpmGUI7xOY+gYeVHKSjZFdAs6dHM2\npmtTv2Chp22U43TRRx97PUFOySplJw+xPaKHoq7Xyye8F9e5ZBNWxiq2UBs6xiS0cjy2Q2XAQi8E\nV/g3mmjnYGRrWNJELeN7HIzq0JLrXeRTzsV0EcgkVLKKtVFdZdvMUa6GDjF5Fnoh6OJl+mnifjZF\n9NiINDHzuIu7WBw6xrS08A6fJXngKxSxiOWR7W5o4nOn3JVVA/yJNrp5hE3MCh1GyqFSbubhqFfP\nAc7wCqdDh8iTWjawJKrZwWGaOB/j1ysLvVCMcYRBmniM2yOfmpS+ajF3sI/60DGmZYRjvBffQ1IT\nNJ+tUd2CDi1cpDN0iKmw0AvHMJ/TTRd93B7x1RXSV83mdvZHfnzSKGc4xOXQMfJmAdujWhAZ5izn\n43x80EIvLI08wxVa+B4LQ0eRcmAzj3JjVKO/63XzNu/TFzpGnhSxkM1RPWPTy3HOxHZG3DUWemEZ\np5PX6aeDR9gc+cegCl0xC9nDnqgeh/o6zbzOJ3EWyATUsiKyGcEejnE2zgtyLPTCM8jbtNLD42yO\n+FYqqZpbuSv6uaYhTvIZbaFj5Ekxy1gV2edMFydpjPMA3njPPdbUjXGC/8p/4Q26QkeRpmwRd7Mv\n8qc2rt1/fil0jLyZxcaobkEHYt3hDo7QC9UYp/kNA3SwL6rtKtIXqtjIjsgmc683zCFeT3Z/O9Sw\nmbVRFXoX5+OdL7HQC9cVfstl2niQpc7UKDJFrGIPy0LHmLZODvMJvaFj5E09G6O6BX2c8xyL7Rb0\nL1nohayd1+mnjQe4wUpXVErYwK3MDx1jmgY5yme0x7leOwEVrGB1VJsWhznLsXhP1LfQC1s/b9FC\nO4Nsi3wtUoWlivVsjv49e4GXOMpY6Bh5s5QdLAkdYlJGOceJ+K5N/YKFXuhGOc7/4CpPcsAT5BSN\nJayLfnw+xlFeSvbAVyhnEzdH9lsa4Bzn470ix0LXGGf5Ld30cWfkJ26pUMxma2Rbra43zhne4mic\nJ5JNSBWbuSmqYcI4V2mMd8LdQtc1rTzPVTp5OLJLFFSYFrKDlZHv++jgj7wac3l8p7lsYnlUv6Ue\nTtIU8xKIha5runmbEdp4hC1R/RNUIWpgffQHypznFQ7FeR7ZhNSyNbon0Fs5RnPoENNhoesLw7xD\nO108xvboNxspbTUsjWrv9PWaeZuPkh6fL2M/q0OHmKSrHKEpdIjpsND1pTGO8V9p5HHuivw6SqWt\nlgVRLw0N8x6/51zoGHm1klujOyegic8doSsd45znGbrpZj8rov7IVLoqaIh8DukKb/J2wsfJwGzW\nsYay0DEmZYhLXIp3hztY6LretQ1yzTwR3YSZCkMD86P+5OrifT7gaugYeVTGBrZSFzrGJDVyLvbb\nLWL+Z6F86eFd+unmYXY5SlfGlDCfeVF/cp3nD3yS7OlwADXs4MbI7ljr5Rin4z1S5pqY/1kof4b4\niHY6GOWGyP5ZKnWl1FMf8SdXHx/yGpdDx8ireexkU0QnuAN0c5jjsd9KH+8/C+XXGKf5F67yI+6K\nfD+x0lJCBRXRPlo5xEe8ytnQMfKqhBVsoSF0jEnq4lNOxv4YoYWub3aZ3zJAJ3dFt1tV6SqiJLKx\n31e18RKvxz6x+62KWMz2yE5wB7jC6XhvWfuCha5v083vuUIbD7HK94oyooiiSPd2jHKM1ziR9Pp5\nGVu4hTmhY0xSJydT2Kboh7S+XT/vM0IbD3IjlaHDSBRRHO2E+2le4UjMR4tOQCVb2RnZMt0YZzlC\nZ+gY02eh67sM8R7ttNPHnsif/lUaSiIt9AHe5gVaQ8fIqyLmsYGVkT2BPsIJDlnoKgzjnOJ/0UQT\n90e31UWpKYp0yn2c87zNpwyGDpJXtWxnDRWhY0zSMCf4LIWdDRa6JmKMizxLJ/0cZHnoMCpoYwwy\nFOG0dTOv8HbsB5d8p8XcxvrQISatnTNxH/n6BQtdE9XNy7TQzFOs9H2jYIb+fEJCbI7yLMdCh8i7\nleyO7iv/IMe4GPsDa9f4wayJG+IjBunke9zgBjkFMkIrbZEdADLOFd7jo6RPbweoZT3ro2uVJg5z\nKY0nD2J76RXWKJ/SSQ+97GR26DAqSOO00RrZCH2Qd3k9jUndb1HCWjZH98AaNPJxKif3xblbVCFd\n4N/4L8nv1lV2ddMe2Qi9iRd5M4VNV9+qjp3cSHnoGJPWyOFUPs0coWuyxrnEs/TRwd2sCR1GBWiE\njqjKsZ3XCmB8DnPYw6boOqWXCzRGuMnya8X24isbunmRJlp4nHW+hzTjerjCukgOgB3mLX7NydAx\n8q6IpWxhXugYkzTCaU6ls7fBD2NNTT8fMkAbD3GL97FphrVxgs0sCB1jAkY5y8u8Hv8p4d+hiMXc\nwNLQMSatlyOcTOdsAAtdUzXCp3TSyhB7qA8dRgWlmUPcxPwIjpdp5o+8TlPoGHlXwhb2Rrghrosj\nnIpsR8a3cFOcpm6cczzD/5NnaAsdRQWlhY85F8FO9zE+5lccTuORqG9VzhZ2URc6xqR1cJTzEbyT\nJsgRuqbnKi/SxwAHWRU6igrGIKc5z3DGP79GOcoLvJfOCu03KmIhG1ge3QBxlEYuMBA6Ru5k+x+E\nYtDLqzTTxmNukNOMaeMMV1gdOsa3auZ3PE9L6BgzoIZtrI9wL80lDqdwaeqX/ADW9A3yCcO08gg7\nvY9NM2KYUxxmPjWhg3yjXj7gRY6HjjEjFnMLayLY0fCXhjnGB6k8gX6Nha5cGOczuuigmz3RPbii\nGI1ynLfYlNmLQMb5jN9zmKHQQWbESnazOHSISRviKIfSev7AQleuXODXNNHEAxH+01ZsxjnLm9zB\n2oyu27bwMr/nSugYM2IWG9gc4dxcO59HsbVyEix05U4TL9NLH/ewMbrpN8VmmBO8xwZWZ7DSu3md\nlzgbOsaMKGELO5kfOsakDXCSs6ltWLTQlUvdvMFVmvghG31vKc/aeIWVzMvcNUHjHObf+SCV40S/\nw1wOsJuK0DEmrZF3OJfaA4V+6Cq3+vmUQbp4nFu9YlV5NcgnvM4tGSv0US7wKm/QHjrIDFnJ7ayP\ncEbuIm9xIXSIXLPQlWvjHKOddga4hYbQYZSwcdr4gDdZkKkTyrp4hRe5FDrGDJnHzWyN8Kv7EGc4\nQnfoGLlmoSsfrvIsLTRxnxvklFfH+A2LuTczn2RjHOc53k3ndPBvVcou7mZR6BiTNs5Fjqf1wNo1\nWflnoNS08CIDdHEv6yO5FUsx6uMNFjOfmzLyLjvLc7xFV+gYM2Q2e9hDdegYk9bHET6P6greCbLQ\nlS9DvEEr7TzCDb7PlDctvEAd1WzOwDpuLy/zGy6GjjFDytnMjghvWIM2PuLzlI58/YIftMqfQQ4z\nRAuPciu1ocMoWWf4PYupCn4QbD8f8iJHCmR3OyzlANszMjMyOa18wtnUdriDha78GuUobbTSyx3M\nDR1GiRrjOL+imscCr+ae5re8m+K472sVs4UDLA8dYwoGOcsZ+kLHyAcLXfnWxO9poYlHWRI6ihI1\nyHtU08DdAb82dvA2f+B86JdixizmJjZHuL99lNN8nOqVORa68q+dV+iln/vZmMFTvZSCPt6hmmIO\nBHqErY/X+B0n0jpI9FtUsZu9Uc66jXKU91M9JcBC10wY4h3aaeUptlAeOoyS1MYLFFPCXdTP+N89\nzAf8C6+kuG/6GyzgTnZSFjrGFPRzjMNpXcnyJQtdM2OEo/wL7TzOrRm+8lIx6+IlRmHGK32Ut/nf\neSnVUd/XKGMTu1gYOsaUNHGKKyluiAMLXTNnnBO00UkPt7EgdBglqY2XKGWcu2bwjMJRDvHf+DXN\noX/4GbSW/azNwGOCk9fLUU6ne6mtha6Z1MrvuEoTD0W5O1bZ18kfGGZkBrfHfcr/j98UVJ2XcjP3\nRDo+v8B76V3J8iULXTOrnT/RTxf3sdnVdOVBJ68wQhd3sSrvz0iP8Rn/wq9oDP1Dz6AilrCbLVE+\nfz7OOd7mcugY+WOha6YN8jatNPF9borw0kVlXzsv0EIL38vzscNDHOW/8asCelQNoIFbuTHSfTCD\nnErzyNcvWOiaecN8zgBdPMYdGbv6UmkY4H36aeMR9ubtM66ZN/g9L3Mm9A87w1ZyMBPH7E7eEMf4\njM7QMfLJQlcIY5ymk1YGuZN5ocMoQcN8QisdDHFTHp5MH+Asr/EbXqcj9A86w8rZyi2Rbmrt4i0+\nTvskPwtdobTyAm1c4QlPkFMejHOBX3OVh7iHlTmdeu/hTZ7hFU7TG/qHnGHlbOJmloWOMUWtvMNn\njISOkU8WusLp5jX66eUhNrhBTnnQxHM0c5ZdbGZ1To4p7eI0H/Iif+RK6B8ugFr2c1ukFy0NcIpj\naU+4W+gKa5T3aKWd77Et0m02yrYB3uYI67mLe9lKPRVTPnx4kEHa+JgXeY1TBTc2v2YJt7M9yvPh\nxjnHBynvb7/GQldYY5zkf9LCY9wW5cnQyrpR2nmfVo6ygxvYzNopjdQbOcwRjnOCzwvmvvO/NifS\n61gAhviMt9M/LcBCV3in6KCTHu50NV15McYpTvMeN7Gb7ayknhpqmPWdo/UBBumnm0Y+5W3e43za\nW6q+VQlbuYeloWNMUReH+TT9eRULXVnQyou0cIXHWR06ihI1zhVe4yizmcdqNrCRtSynipI/P4JV\n9B//PRhnlB6auEoTFznOMRppoS3dE8YmoJKb2T+DR+rm0jgX+Dz9CXcLXVnRzut00cvDbItyjU4x\n6PnzLVt1rGItq1jCbKqpoJxKKimjiHGG6aObDlppoYUWLnOmgK5d+SalrGUXyyO9/riFDzie9v72\nayx0ZcUwH9NGEz/iJqpDh1HSujjMccoopYQyZlFHHbOZRTFj9NFCEx2MMPof/6cl3MO2KI97BTjN\nq5wLHWImWOjKjlHO8Cu6eYI7A9xprUIyxsBfrIeXUEUFRYwxRB9joeNlznruZV3oEFM0wkk+oDV0\njJlgoStbLvLvdNLPfjfIaQaN/sd0vP5aEbPZxjZmhQ4yRVc4yqXC2P9goStruniZFpp5iDVRnhgt\npaWa3ezOwwG6M6OL91M/8PVLFrqyp4u3GKaL+9ge6VOvUjoa2M+eaP8ltvMmhwthQxxY6MqmUd6j\nhSs8yZ5oJ/qkFJSwgb2sjXR/+ziX+IgLhbIrwkJXNo1xil/TzhXuZmHoMFKBKmYz97E50jofo4lD\nnC+UOrfQlWUXeIYWBrmHZa6mSwHUsJ+DzA8dY4rG+Jy3aQkdY+ZY6MqyTt6gkyaeivaRGSleZWzl\ndrZEe9RTP4d5t5DurLfQlW09vEsfgzzCVipCh5EKyjIeYDdVoWNM0ThXOMrZwplwt9CVfWN8SgdN\n/JBdbpCTZkw5u3mYNaFjTFkHH3KE/tAxZpKFruwb5zy/poPHuSva1TwpLhXs4B42RrodDuAsL/N5\n6BAzy0JXHC7xK7rp4QArIv6IkWKxkPu5PeJbFYY4yttcDR1jZlnoikUfr9BCE4+yNXQUKXHVbOdO\n1kf75XmMM3zM2cI48PVLFrri0c179NPNQ9xITegwUsI2cz9bo93dDn28yzuFdzq/ha6YjPAp7Vzh\nh1FPBkrZ1sBd3MeC0DGm4TKv8kkh7W+/xkJXXEY5x+/ooJn73CAn5UE1u7iDtREf5tTHUQ7RGTrG\nzLPQFZ8mnqWDfu73BDkp59byCDuj7oaTvM650CFCiPmXpsI1wOt00MzjbKAkdBgpIbPYzb0sDR1j\nGvr5kFdpDR0jBAtdcRriI4bp5mFuoDZ0GCkRZdzMvayJdnf7tfPhPuRooVyY+pcsdMVqnM/opJUn\n2Mvs0GGkJCznQfZFe/c5QCcfc4Su0DHCsNAVrzHO8wxtXOVeFocOI0WvgZu5I+rpdrjIHwvtfLgv\nWeiKWyO/p51eHvQEOWlaStjOgxEfJgMwylHe5EroGKFY6IpdL2/QzmW+z7aoP4qksOayn7uZGzrG\nNIxzjo85y2joIKFY6IrfAB/RQy+PsdMNctKU1HAbd7EidIxp6eNt3qY9dIxwLHSlYJwT/Hea6XeD\nnDQlm3iU7aFDTNMV3uBQ4Z0P9yULXWkYp5Hn6OIq97MwdBgpMvO4hf2Rn704zHE+piV0jJAsdKWj\nmd/TST8HWeVxM9KEVbCHe1ge+bmLZ3iTM6FDhGWhKyVDvEU7V3iMbRHfFCXNrBU8xH4qQseYlmE+\n4BWaQ8cIy0JXWgb5hCE6eIjd1IcOI0VgAXdwZ9S72wEu8y6HC/N8uC9Z6ErP53TQRHcCH1JSvlWw\nmwdZHjrGNHXwHp/QETpGaBa60jPOZV6gixYejvzUKynfFrGPfdE/7nma5/ksdIjwLHSlqYWXaGeA\nR1jlcTPSN6hnH/uiPzi5n094s9DXz8FCV7oGeJ8OrvADtvk+l77WFp5gZ+gQ0zTIp7zDecZDBwnP\nDzqla4gjDNLHY9xMXegwUsYUsYQ7uY2a0EGmqYuXeYOe0DGywEJX2k7zX2mmm9siPzRDyrU67ubu\n6P9djHOa1zhayOfDfclCV9rGaeF5OrjKvawKHUbKjGI28hC7Ij+vYZwLvMnnhXsdy1+y0JW+Fl6g\nmx7uZ23kh2dIubKOh7iNhtAxpmmED3mJq6FjZIWFrkIwzLt00sgT7PE9LzGHh3iKZaFjTFsbb/Gu\n6+df8MNNhWGQT+mhh05ujX5UIk1PPffwGJujf6Czi/d4v7CvY/lLFroKxTin+R9coZe7mRM6jBRM\nKTfzI3YlcIHRSf7AMR9X+5KFrkLSxkt0c5WHWRk6ihREGdt4kNsSeJCzn0O8zpXQMbLEQldh6eYV\nuhnkAda4QU4FaBEPcjcLQseYtlFO8B6n3d/+VRa6Cs0oH9HDZZ7kRqpCh5FmVD37eIgt0a+eQwsv\n8xbdoWNki4WuwjPMEYbppZW9rqargJSyhye4gfLQQaZtnLO8xgnXz/+Sha7CdJJWrtDFPQlMPkoT\nUcwmvsd90d+sBnCVd/nUx9X+moWuwjROGy/TRTMPsj50GGkGrOVpHqA+dIwcGOV9nudC6BjZY6Gr\ncHXwJ9rp4THWupqupBUxl7v5HqtDB8mJZt7kPQZCx8geC12FbJiP6eEyP2CPe96VsDoO8AjrKQod\nJAeuHSfj7edfw0JXYRvlGH300cntSUxGStcrYTOPsIfq0EFy4gy/51NvV/s6Frp0gf/FVXo5yNzQ\nUaQ82MhD3JHI9s9e3uVlLoeOkU0WugQd/JEemnmQNUlMSkpfmsNBvseK0DFyoo93edXtcN/EQpcA\nenmNbrp4gI3MCh1GyplaDvAY2xI4Sgagked42+1w38RCl64Z5RO6ucL32JvIWqNUzM38iFsSqfNe\nDvMmZ10//yYWuvSFEY4zSBcd3M7C0GGkaStlC4+wn5rQQXLkc17gKCOhY2SXhS591Xme4SpdPML8\n0FGkaVrKY9yXzFbPDl7hZdpCx8gyC136qnFaeZVuWnmcdaHDSNMwj9u5nw0J3HsO0M8nvMUpT2//\nNha69Nd6eZM2+niMTVSGDiNNSTm38jjbE7iI5Zqz/I6PGA4dI9vS2Coh5dYYR/n/8l94m97QUaQp\nKGYjD3E3s0MHyZEhPuJ5zoaOkXWO0KWvM85ZfkMf7exL5EAOpyoLyUqe4GAylwMPc5g/ccrd7d/F\nQpe+SSO/opVu7mZp5MfNjDPqZGUBqeNunkxoD0gTf+At+kLHyD4LXfpmXbxKN008wNbIl6f6XTwo\nGLO4m8fZFPmX0C8N8Tl/4oTj8+9moUvfpps3aKeTx9gW8XEzI3TTHzqEZkQZ23mKfQndHniSlzns\n6XATYaFL326Uz+jhMt9nf7SHwvbR5fimIBSzhUe4jYbQQXKmh9d4jiuhY8TBQpe+yxhn6KWbTg5E\neoJcm4VeIOZygIdZHjpGzgxxlFc5ymjoIHGw0KWJuMqzNNPLAyyJbm1yiBZ63OVeAKrZzb1sS+hz\nvZGX+Njp9olK5xcv5VcvbzNIK49Gt91ogDYLvSBs5CluSehTfYxP+T2nQ8eIRzq/einfBniLbnp4\niO1RraZfK3Sn3FO3kHu4J5mT22Gc47zMIcfnE2ehS5NxlC4aeZq91IWOMmH9tNLtCD1x9dzLAywN\nHSOHrvI7XqAzdIyYWOjSZIxynt/RTQt3RfPhOUgb3Y7Qk1bBZh7k5oQ+0Xv4kD9wzC+ik5HOr1+a\nKVd4hmY6eJjlUdxkNUCz45ykFbGMO9idzMntMMrnPM8R7z6fHAtdmrw+3qKXVh7hpgg2yHVxnvbQ\nIZRHpWznICtCx8ihdl7lD1wNHSM2Fro0FQN8QCddDHADNaHDfKs+znPRk9yT1sAObkzobLgB3ucl\njvv0+WTFfT61FM4oJ/nv/L94LdOnpI9wgo9pDh1DeVTGOjYzL3SMHDrC/+J963zyHKFLUzXKJX5H\nPx0cYFHoMN+gl/d5i47QMZRHC7iFTckMzsZp4lX+6JfQqbDQpelo5xma6eJ+lmXyX1MrH/IZQ6Fj\nKI9WsY+VoUPkTB9v8DLn3d0+FVn8CJJiMsg79HOZR9ieuVXMPo7zuRviklbJBm5MaH/7aZ7lTb+C\nTo2FLk3XIO/RQy893JSxD9aLvMf50CGUVwtYw4LQIXKmiVd4g9bQMWKVyrqLFNYJ/gf/n4ydazXK\n57xBY+gYyqNKVrOKstAxcmSAV/kN50LHiJcjdCkXRjjPH+imh4MsCx3mz3o4ymH6QsdQHlWzhqVR\nHG/03YY4zku879ntU2ehS7nSwgtcpYMnWJaBj9hxjvIRTaFjKK8qWc7SREbojbzAuz6RMR0WupQ7\n/bxPP808wY3BP2TP8Tve9ejMxFWynEURnFb43Yb4iN9yPHSMuFnoUi6N8Ald9NPLTUHvY2vieX7v\namTy6lgS0b1/32ycz3mRDzN9SFME3BQn5dpZ/jv/b/4Y8HGxdp7jXznqDWuJK2Iec0KHyIkmfsuL\ndIeOETtH6FKujXOZ5+innQNBDvzo5G1+wztuh0teJXOoCh0iB3p5jxc5EzpG/Cx0KR/aeI4mOniQ\n1ZTP6N88zHv8d96gK/RLoLybRU0Cn+FjfMRv+dQLhKYv/jeDlE3XNshd4WFumcFKH+Ewv+MFL54s\nCOVUJLBseokXeIG20DFSYKFL+TLEx3TQQT83z9hK5yn+nT9wOfSPrhlRQln0hd7CizzH2dAx0mCh\nS/kzzll+RTOtPDQjh8Je5Hl+xbHQP7ZmRBFllEde6MO8w//gUOgYqbDQpXwap4kX6KOHe1iT179p\nkM94md9wzL3tBaKIMioycITR1I1wiGd517PhcsVCl/Ktmz/+eZS+Pk97ksfo4COe5Q+c8J6qAlJC\nadSHyjTya15y9Tx3LHQp/wb5mG5OcB93sCTnf/oYh/kDf+JTLjo6LyhjjIaOMA3tvM6LnAodIyUW\nujQTRjnOZS5xmf1soCaHf+4VDvMCz3LCY14LzDj99Eb7sNcI7/AbDvuuzSULXZop3fyJ0xzicfbR\nkJPNTEMc5zme41OaGQ/942mGjdNFW7RLLCf5PS95NlxuWejSzBngBB20cJitrGPNtFbURzjJId7k\nVQ5HO0rT9PRGW+iXeIYXaAkdIzUWujSzmnmO99jKPvaymTlUTPLYmTEGGKSHM/yJF/iMDtfNC9YQ\nnQyGDjEFffyJf+dk6BjpsdClmTbMFTo4x+tsZhtbWMf8CV+22scZPudzTnORs5yL8uNcudMV4Yn9\nvbzJs84r5YOFLoUwwElO8j4b2MEGlrGIBmqYRQUllFH258eRRhlhkGGGGWaIfto5zecc5jCNkU61\nKrf66WAsssNlzvAbXnP1PB8sdCmcLj7mFNVUMo8VrGYZ9dRQRQ21VDJGH9100kUXPXRyibM00kVP\nhKMy5ccAl2lnbugYk3CJV3iFi27izAcLXQpphHbagVMcYjHzqaWSCqqopoxxBuinhz56GaCXZjpC\nx1XG9HGa8zl6ZmImDPA6v+KE+z7yw0KXsqGf05ylmCKgiCKKgHHGGQPGGHdEo6/RyxFOsCmSW9HH\nOMQzvOnOj3yx0KXsGHPkoknp5wgnozmc5Tj/iz/RHzpGumKZqJEk/bVxrnCartAxJqSZF/gtF0PH\nSJmFLknxGuYiZyM4072V53iGUy4d5ZOFLkkxu8yhzJ+51ssH/Ir3XD3PLwtdkmJ2hXc5ETrEtxrl\nEL/lHdpDB0mdhS5JMWvjXQ7RGzrGtzjPc/yey6FjpM9Cl6SYjXCW9zma2aNUm/g9v+OUT3Dkn4Uu\nSXHr431e4kroGF9rgD/xXzkUOkZhsNAlKXaneCWTO8j7eZl/4YPMzh4kxkKXpNj1cYS3uBQ6xl8Z\n5mP+hVfc2z5TLHRJil8jz/Jypq7tGeMwv+IV2kIHKRwWuiTFb4SPeYZ3GQgd5D808jzPubd9JnmW\nuySloIfXmE0ZezMxUGvmJZ7L8N77JFnokpSGKzzPPOrZGPyTfYB3+Vc+tM5nVha+yUmScuECf+DX\nnA2cYoSP+A2vR3JpTEJCf4+TJOXKOEf4LfOoYmnAFCf4V35PR+gXo/A4QpekdAzyKb/mBZqCJbjA\ns/yOC6FfiELkCF2SUtLLa4xQyn0sCPC3t/E7/junQr8IhclCl6S0dPMWpcD9zJ/hv7md5/l3PmUk\n9EtQmCx0SUpNN39kHLiXhTP4t3byIv87b3oyXCgWuiSlp59XGWGEe2dse1w7z/D/53V6Qv/ohctC\nl6QU9fImRfRxN2spy/vfdoWX+D94jf7QP3Yhs9AlKU29vE4bV3mC7Xl+oqmFZ/lvvG2dh2WhS1Kq\n+viQfrp5hFupytvfcobn+Z+8lamrYQqShS5J6RrjKG00M8A+ainK+Z/fwzme5d845Og8PAtdklI2\nxmV+RzvnOMjaHFf6OV7hJd7jpA+qZUHReOgEkqR8K+cm7mMv61hOZQ7+vHGucJzXeYH3nGrPCgtd\nkgpBKfNYz+3cy43UT2uT3BjDnOMlnuUTmhgK/YPpCxa6JBWKYtZyEzu5kY0sm9LDbCOc4wxnOMy7\nHHJsni0WuiQVjiLKWchubmMHq5lFJZWUT+B/N8YgfXRwlo94n0+5SA9joX8Y/SULXZIKzWyWsJDF\nLGcd61jLkm/ZID3OAJ1c5RRHOMZ5rnKF9tA/gL6OhS5JhamEOaxjI2tZxVzKKaWcMsopo5gxhhlg\nkD66aaeDJk7xKRdcMc8yC12SClcZ1VRRSQVVVFPHLOqopZQRummnlQ76GGaEIfrpDR1W385Cl6RC\nVkIpxZT+udBrqKOWMkbooo0WOulnnDHGGHXNPOssdEmSEpDfA/slSdKMsNAlSUqAhS5JUgIsdEmS\nEmChS5KUAAtdkqQEWOiSJCXAQpckKQEWuiRJCbDQJUlKgIUuSVICLHRJkhJgoUuSlAALXZKkBFjo\nkiQlwEKXJCkBFrokSQmw0CVJSoCFLklSAix0SZISYKFLkpQAC12SpARY6JIkJcBClyQpARa6JEkJ\nsNAlSUqAhS5JUgIsdEmSEmChS5KUAAtdkqQEWOiSJCXAQpckKQEWuiRJCbDQJUlKgIUuSVICLHRJ\nkhJgoUuSlAALXZKkBFjokiQlwEKXJCkBFrokSQmw0CVJSoCFLklSAix0SZISYKFLkpQAC12SpARY\n6JIkJcBClyQpARa6JEkJsNAlSUqAhS5JUgIsdEmSEmChS5KUAAtdkqQEWOiSJCXAQpckKQEWuiRJ\nCbDQJUlKgIUuSVICLHRJkhJgoUuSlAALXZKkBFjokiQlwEKXJCkBFrokSQmw0CVJSoCFLklSAix0\nSZISYKFLkpQAC12SpARY6JIkJcBClyQpARa6JEkJsNAlSUqAhS5JUgIsdEmSEmChS5KUAAtdkqQE\nWOiSJCXAQpckKQEWuiRJCbDQJUlKgIUuSVICLHRJkhJgoUuSlAALXZKkBFjokiQlwEKXJCkBFrok\nSQmw0CVJSoCFLklSAix0SZISYKFLkpQAC12SpARY6JIkJcBClyQpARa6JEkJsNAlSUqAhS5JUgIs\ndEmSEmChS5KUAAtdkqQEWOiSJCXAQpckKQEWuiRJCbDQJUlKgIUuSVICLHRJkhJgoUuSlAALXZKk\nBFjokiQlwEKXJCkBFrokSQmw0CVJSoCFLklSAix0SZISYKFLkpQAC12SpARY6JIkJcBClyQpARa6\nJEkJsNAlSUqAhS5JUgIsdEmSEmChS5KUAAtdkqQEWOiSJCXAQpckKQEWuiRJCbDQJUlKgIUuSVIC\nLHRJkhJgoUuSlAALXZKkBFjokiQlwEKXJCkBFrokSQmw0CVJSoCFLklSAix0SZISYKFLkpQAC12S\npARY6JIkJcBClyQpARa6JEkJsNAlSUqAhS5JUgIsdEmSEmChS5KUAAtdkqQEWOiSJCXAQpckKQEW\nuiRJCbDQJUlKgIUuSVICLHRJkhJgoUuSlAALXZKkBFjokiQl4P8E+nK/QEqaaPsAAAAldEVYdGRh\ndGU6Y3JlYXRlADIwMjQtMDctMTVUMTI6NDE6MzMrMDA6MDD60zkTAAAAJXRFWHRkYXRlOm1vZGlm\neQAyMDI0LTA3LTE1VDEyOjQxOjMzKzAwOjAwi46BrwAAAABJRU5ErkJggg==\"\n />\n </Svg>\n );\n};\n\nexport const FullScreen = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = '#54efc45'; //props.color || Color.black;\n\n return (\n <Svg\n id=\"Layer_1\"\n x=\"0px\"\n y=\"0px\"\n width={width}\n height={height}\n viewBox=\"0 0 1000 1000\"\n enable-background=\"new 0 0 1000 1000\">\n <Image\n id=\"image0\"\n width=\"1000\"\n height=\"1000\"\n x=\"0\"\n y=\"0\"\n href=\"data:image/png;base64,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\noICgA0ABQQeAAoIOAAUEHQAKCDoAFBB0ACgg6ABQQNABoICgA0ABQQeAAoIOAAUEHQAKCDoAFBB0\nACgg6ABQQNABoICgA0ABQQeAAoIOAAUEHQAKCDoAFBB0ACgg6ABQQNABoICgA0ABQQeAAoIOAAUE\nHQAKCDoAFBB0ACgg6ABQQNABoICgA0ABQQeAAoIOAAUEHQAKCDoAFBB0ACgg6ABQQNABoICgA0AB\nQQeAAoIOAAUEHQAKCDoAFBB0ACgg6ABQQNABoICgA0ABQQeAAoIOAAUEHQAKCDoAFBB0ACgg6ABQ\nQNABoICgA0ABQQeAAoIOAAUEHQAKCDoAFBB0ACgg6ABQQNABoICgA0ABQQeAAoIOAAUEHQAKCDoA\nFBB0ACgg6ABQQNABoICgA0ABQQeAAoIOAAUEHQAKCDoAFBB0ACgg6ABQQNABoICgA0ABQQeAAoIO\nAAUEHQAKCDoAFBB0ACgg6ABQQNABoICgA0ABQQeAAoIOAAUEHQAKCDoAFBB0ACgg6ABQQNABoICg\nA0ABQQeAAoIOAAUEHQAKCDoAFBB0ACgg6ABQQNABoICgA0ABQQeAAoIOAAUEHQAKCDoAFBB0ACgg\n6ABQQNABoICgA0ABQQeAAoIOAAUEHQAKCDoAFBB0ACgg6ABQQNABoICgA0ABQQeAAoIOAAUEHQAK\nCDoAFBB0ACgg6ABQQNABoICgA0ABQQeAAoIOAAUEHQAKCDoAFBB0ACgg6ABQQNABoICgA0ABQQeA\nAoIOAAUEHQAKCDoAFBB0ACgg6ABQQNABoICgA0ABQQeAAoIOAAUEHQAKCDoAFBB0ACgg6ABQQNAB\noICgA0ABQQeAAoIOAAUEHQAKCDoAFBB0ACgg6ABQQNABoICgA0ABQQeAAoIOAAUEHQAKCDoAFBB0\nACgg6ABQQNABoICgA0ABQQeAAoIOAAUEHQAKCDoAFBB0ACgg6ABQQNABoICgA0ABQQeAAoIOAAUE\nHQAKCDoAFBB0ACgg6ABQQNABoICgA0ABQQeAAoIOAAUEHQAKCDoAFBB0ACgg6ABQQNABoICgA0AB\nQQeAAoIOAAUEHQAKCDoAFBB0ACgg6ABQQNABoICgA0ABQQeAAoIOAAUEHQAKCDoAFBB0ACgg6ABQ\nQNABoICgA0ABQQeAAoIOAAUEHQAKCDoAFBB0ACgg6ABQQNABoICgA0ABQQeAAoIOAAUEHQAKCDoA\n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\nMDA6MDDhgtT9AAAAAElFTkSuQmCC\"\n />\n </Svg>\n );\n};\n\nexport const Eye = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg width={width} height={height}>\n <Path\n d=\"M0 0 C2.86854157 1.87875069 5.62286053 3.89305354 8.375 5.9375 C9.96603036 7.10302224 11.55717954 8.26838228 13.1484375 9.43359375 C13.9537793 10.02640137 14.75912109 10.61920898 15.58886719 11.22998047 C19.37578105 14.00996483 23.18848304 16.75390214 27 19.5 C28.49101865 20.57663843 29.98190357 21.65346208 31.47265625 22.73046875 C35.35063146 25.53127545 39.22921732 28.33123482 43.10839844 31.13037109 C44.64506456 32.24018552 46.18089095 33.3511637 47.71582031 34.46337891 C50.91595754 36.78152709 54.11827532 39.0926187 57.36328125 41.34765625 C69.66158716 49.98476148 69.66158716 49.98476148 72 57 C72.203125 59.05078125 72.203125 59.05078125 72.25 61.3125 C72.27578125 62.05113281 72.3015625 62.78976563 72.328125 63.55078125 C71.46260392 70.0112779 66.82859971 75.21432507 63.0625 80.3125 C61.88590244 81.92258087 60.71013988 83.53327221 59.53515625 85.14453125 C58.94234863 85.95615723 58.34954102 86.7677832 57.73876953 87.60400391 C55.12193729 91.20995612 52.55949346 94.85323509 50 98.5 C44.28306903 106.62852553 38.47174685 114.68667727 32.64111328 122.73388672 C29.92351837 126.48644785 27.21198061 130.24338045 24.5 134 C21.24130943 138.51391895 17.9813334 143.02687665 14.71484375 147.53515625 C9.43419578 154.82747964 4.1804866 162.1361012 -1 169.5 C-6.71791991 177.62784334 -12.52824095 185.68666044 -18.35888672 193.73388672 C-21.07648163 197.48644785 -23.78801939 201.24338045 -26.5 205 C-29.75869057 209.51391895 -33.0186666 214.02687665 -36.28515625 218.53515625 C-41.56580422 225.82747964 -46.8195134 233.1361012 -52 240.5 C-57.71791991 248.62784334 -63.52824095 256.68666044 -69.35888672 264.73388672 C-72.07648163 268.48644785 -74.78801939 272.24338045 -77.5 276 C-80.75869057 280.51391895 -84.0186666 285.02687665 -87.28515625 289.53515625 C-92.56580422 296.82747964 -97.8195134 304.1361012 -103 311.5 C-108.71791991 319.62784334 -114.52824095 327.68666044 -120.35888672 335.73388672 C-123.07648163 339.48644785 -125.78801939 343.24338045 -128.5 347 C-131.75869057 351.51391895 -135.0186666 356.02687665 -138.28515625 360.53515625 C-143.56580422 367.82747964 -148.8195134 375.1361012 -154 382.5 C-159.71791991 390.62784334 -165.52824095 398.68666044 -171.35888672 406.73388672 C-174.07648163 410.48644785 -176.78801939 414.24338045 -179.5 418 C-182.75869057 422.51391895 -186.0186666 427.02687665 -189.28515625 431.53515625 C-194.56580422 438.82747964 -199.8195134 446.1361012 -205 453.5 C-210.71370051 461.62184561 -216.51947472 469.67493568 -222.34570312 477.71630859 C-225.12918202 481.55879112 -227.90874599 485.4040997 -230.6875 489.25 C-231.23140381 490.00273193 -231.77530762 490.75546387 -232.33569336 491.53100586 C-235.97301042 496.56843408 -239.59122906 501.61907054 -243.1965332 506.67944336 C-246.5674928 511.40635742 -249.97022626 516.10990663 -253.375 520.8125 C-257.62242981 526.68131403 -261.83239752 532.57424407 -266 538.5 C-271.717802 546.62792476 -277.52824238 554.68666241 -283.35888672 562.73388672 C-286.07648163 566.48644785 -288.78801939 570.24338045 -291.5 574 C-294.75869057 578.51391895 -298.0186666 583.02687665 -301.28515625 587.53515625 C-306.56580422 594.82747964 -311.8195134 602.1361012 -317 609.5 C-322.71791991 617.62784334 -328.52824095 625.68666044 -334.35888672 633.73388672 C-337.07648163 637.48644785 -339.78801939 641.24338045 -342.5 645 C-345.75869057 649.51391895 -349.0186666 654.02687665 -352.28515625 658.53515625 C-357.56580422 665.82747964 -362.8195134 673.1361012 -368 680.5 C-373.71791991 688.62784334 -379.52824095 696.68666044 -385.35888672 704.73388672 C-388.07648163 708.48644785 -390.78801939 712.24338045 -393.5 716 C-396.75869057 720.51391895 -400.0186666 725.02687665 -403.28515625 729.53515625 C-408.56580422 736.82747964 -413.8195134 744.1361012 -419 751.5 C-424.71791991 759.62784334 -430.52824095 767.68666044 -436.35888672 775.73388672 C-438.53495938 778.73869279 -440.70701264 781.7463908 -442.87866211 784.75439453 C-443.95596675 786.24649633 -445.0336013 787.73835999 -446.11157227 789.22998047 C-448.89983674 793.08844956 -451.68371993 796.94997674 -454.4609375 800.81640625 C-457.17233203 804.5902703 -459.89795403 808.35346373 -462.6328125 812.11035156 C-463.81059145 813.73821033 -464.96963675 815.37959347 -466.125 817.0234375 C-469.64266544 821.87593134 -472.12203113 824.45316609 -478 826 C-487.94866267 827.10540696 -494.67289918 821.78406061 -502.375 816.0625 C-503.96603036 814.89697776 -505.55717954 813.73161772 -507.1484375 812.56640625 C-507.9537793 811.97359863 -508.75912109 811.38079102 -509.58886719 810.77001953 C-513.37578105 807.99003517 -517.18848304 805.24609786 -521 802.5 C-522.49101865 801.42336157 -523.98190357 800.34653792 -525.47265625 799.26953125 C-529.35063146 796.46872455 -533.22921732 793.66876518 -537.10839844 790.86962891 C-538.64506456 789.75981448 -540.18089095 788.6488363 -541.71582031 787.53662109 C-544.91595754 785.21847291 -548.11827532 782.9073813 -551.36328125 780.65234375 C-563.66158716 772.01523852 -563.66158716 772.01523852 -566 765 C-566.203125 762.94921875 -566.203125 762.94921875 -566.25 760.6875 C-566.27578125 759.94886719 -566.3015625 759.21023438 -566.328125 758.44921875 C-565.46260392 751.9887221 -560.82859971 746.78567493 -557.0625 741.6875 C-555.88590244 740.07741913 -554.71013988 738.46672779 -553.53515625 736.85546875 C-552.64594482 735.63802979 -552.64594482 735.63802979 -551.73876953 734.39599609 C-549.12193729 730.79004388 -546.55949346 727.14676491 -544 723.5 C-538.28306903 715.37147447 -532.47174685 707.31332273 -526.64111328 699.26611328 C-523.92351837 695.51355215 -521.21198061 691.75661955 -518.5 688 C-515.24130943 683.48608105 -511.9813334 678.97312335 -508.71484375 674.46484375 C-503.43419578 667.17252036 -498.1804866 659.8638988 -493 652.5 C-487.28208009 644.37215666 -481.47175905 636.31333956 -475.64111328 628.26611328 C-472.92351837 624.51355215 -470.21198061 620.75661955 -467.5 617 C-464.24130943 612.48608105 -460.9813334 607.97312335 -457.71484375 603.46484375 C-452.43419578 596.17252036 -447.1804866 588.8638988 -442 581.5 C-436.28208009 573.37215666 -430.47175905 565.31333956 -424.64111328 557.26611328 C-421.92351837 553.51355215 -419.21198061 549.75661955 -416.5 546 C-413.24130943 541.48608105 -409.9813334 536.97312335 -406.71484375 532.46484375 C-401.43419578 525.17252036 -396.1804866 517.8638988 -391 510.5 C-385.28208009 502.37215666 -379.47175905 494.31333956 -373.64111328 486.26611328 C-370.92351837 482.51355215 -368.21198061 478.75661955 -365.5 475 C-362.24130943 470.48608105 -358.9813334 465.97312335 -355.71484375 461.46484375 C-350.43419578 454.17252036 -345.1804866 446.8638988 -340 439.5 C-334.28208009 431.37215666 -328.47175905 423.31333956 -322.64111328 415.26611328 C-319.92351837 411.51355215 -317.21198061 407.75661955 -314.5 404 C-311.24130943 399.48608105 -307.9813334 394.97312335 -304.71484375 390.46484375 C-299.43419578 383.17252036 -294.1804866 375.8638988 -289 368.5 C-283.28629949 360.37815439 -277.48052528 352.32506432 -271.65429688 344.28369141 C-268.87081798 340.44120888 -266.09125401 336.5959003 -263.3125 332.75 C-262.76859619 331.99726807 -262.22469238 331.24453613 -261.66430664 330.46899414 C-258.02853373 325.43370447 -254.41223916 320.38494014 -250.80786133 315.32714844 C-246.83523893 309.75764846 -242.82520452 304.21536402 -238.81640625 298.671875 C-235.12737458 293.56799118 -231.45825648 288.45049271 -227.80419922 283.3215332 C-224.43293741 278.59433503 -221.03001243 273.89042306 -217.625 269.1875 C-213.37757019 263.31868597 -209.16760248 257.42575593 -205 251.5 C-199.282198 243.37207524 -193.47175762 235.31333759 -187.64111328 227.26611328 C-184.92351837 223.51355215 -182.21198061 219.75661955 -179.5 216 C-176.24130943 211.48608105 -172.9813334 206.97312335 -169.71484375 202.46484375 C-164.43419578 195.17252036 -159.1804866 187.8638988 -154 180.5 C-148.28208009 172.37215666 -142.47175905 164.31333956 -136.64111328 156.26611328 C-133.92351837 152.51355215 -131.21198061 148.75661955 -128.5 145 C-125.24130943 140.48608105 -121.9813334 135.97312335 -118.71484375 131.46484375 C-113.43419578 124.17252036 -108.1804866 116.8638988 -103 109.5 C-97.28208009 101.37215666 -91.47175905 93.31333956 -85.64111328 85.26611328 C-82.92351837 81.51355215 -80.21198061 77.75661955 -77.5 74 C-74.24130943 69.48608105 -70.9813334 64.97312335 -67.71484375 60.46484375 C-62.43419429 53.1725183 -57.18061353 45.86381112 -52 38.5 C-46.22729138 30.29697913 -40.38146338 22.1496787 -34.47363281 14.04345703 C-33.11321772 12.15699673 -31.78254936 10.25359266 -30.4609375 8.33984375 C-21.88702118 -3.78443998 -13.22902739 -7.59577126 0 0 Z \"\n fill={strokeColor}\n transform=\"translate(747,89)\"\n />\n <Path\n d=\"M0 0 C2.29954192 0.00481802 4.59906256 0.0058411 6.89860916 0.00624466 C29.97671982 0.02081866 52.9570111 0.50534847 75.89174271 3.3172493 C77.1402803 3.45654861 78.3888179 3.59584793 79.67518997 3.73936844 C82.89174271 4.3172493 82.89174271 4.3172493 84.89174271 6.3172493 C85.38701288 10.32624376 84.60032466 12.33560435 82.22377396 15.53209305 C81.37782669 16.68548172 81.37782669 16.68548172 80.51478958 17.86217117 C79.91730911 18.65172195 79.31982864 19.44127274 78.70424271 20.2547493 C77.83702591 21.43327469 77.83702591 21.43327469 76.95228958 22.63560867 C75.81419719 24.17235489 74.66098178 25.69803367 73.49184036 27.21129227 C71.89896512 29.25448222 71.89896512 29.25448222 70.6314888 31.25523758 C69.46596146 32.94615555 69.46596146 32.94615555 66.89174271 35.3172493 C63.79511954 35.3404078 61.81643847 35.07562088 58.89174271 34.3172493 C58.08478958 34.13823074 57.27783646 33.95921219 56.44643021 33.77476883 C52.86136161 32.97259619 49.29407663 32.10268664 45.72768021 31.22154617 C31.73509656 27.90279236 17.84070272 26.90409267 3.51674271 26.9422493 C2.73926682 26.94279312 1.96179092 26.94333694 1.16075516 26.94389725 C-40.04288262 27.07530148 -81.68116333 39.81670884 -115.10825729 64.3172493 C-116.16013229 65.08553055 -117.21200729 65.8538118 -118.29575729 66.6453743 C-125.48492101 71.99312548 -132.1989999 77.76516945 -138.67612839 83.9525032 C-140.05524782 85.26673396 -141.45060942 86.56385591 -142.84653854 87.86021805 C-177.4758564 120.98609229 -200.07779379 171.90146392 -201.37235641 219.72029495 C-201.43477653 223.46139955 -201.43881569 227.20074698 -201.42075729 230.9422493 C-201.41893448 231.72994705 -201.41711166 232.51764481 -201.41523361 233.32921219 C-201.36654392 245.86355702 -200.73715557 258.02426446 -198.10825729 270.3172493 C-197.93665085 271.13467606 -197.7650444 271.95210281 -197.58823776 272.79430008 C-191.33298186 301.72276238 -179.45195876 326.8016971 -163.10825729 351.3172493 C-163.1925389 357.64603164 -165.61274196 360.99223971 -169.42075729 365.6922493 C-170.52454877 367.10717996 -171.62604354 368.52390474 -172.72544479 369.9422493 C-173.2897319 370.66541336 -173.85401901 371.38857742 -174.43540573 372.13365555 C-177.07620209 375.58071956 -179.56194545 379.13122131 -182.04575729 382.6922493 C-186.762396 389.42487692 -191.54549155 396.10563257 -196.36899948 402.76207352 C-198.9531726 406.32961149 -201.52999342 409.90161475 -204.08091354 413.49303055 C-204.77096481 414.46429886 -204.77096481 414.46429886 -205.47495651 415.45518875 C-206.33110601 416.66218547 -207.18569712 417.87028969 -208.03843307 419.07970047 C-209.62696586 421.31876557 -211.16261599 423.37160799 -213.10825729 425.3172493 C-221.79396434 425.28028884 -229.43476896 421.78262403 -237.35825729 418.5672493 C-238.82639338 417.97924817 -240.29457445 417.39135934 -241.76279831 416.80357742 C-288.59649583 397.9433164 -333.98534351 374.75411811 -375.10825729 345.3172493 C-375.83448288 344.8006575 -376.56070847 344.2840657 -377.30894089 343.75181961 C-402.09298429 326.10503612 -425.91793254 307.15149865 -448.10825729 286.3172493 C-448.99513229 285.50771805 -449.88200729 284.6981868 -450.79575729 283.8641243 C-465.5328834 269.93574292 -472.60612193 251.66158816 -473.42075729 231.5672493 C-472.70073677 205.47709383 -460.41086884 187.62468926 -442.02671432 170.09703445 C-438.683851 166.99580339 -435.18982722 164.13164453 -431.60435104 161.31334305 C-429.06625466 159.28366034 -426.684417 157.14508134 -424.29575729 154.9422493 C-418.16977663 149.38189126 -411.67466119 144.33898336 -405.10825729 139.3172493 C-404.37848679 138.75763504 -403.64871628 138.19802078 -402.89683151 137.62144852 C-327.45956657 79.93785803 -241.37990091 38.69505499 -79.48325729 4.5047493 C-78.70945724 4.4051088 -77.9356572 4.30546829 -77.13840866 4.20280838 C-51.47300481 0.94707767 -25.84083846 -0.06097409 0 0 Z \"\n fill={strokeColor}\n transform=\"translate(497.1082572937012,268.6827507019043)\"\n />\n <Path\n d=\"M0 0 C8.68578735 0.0369608 16.32639612 3.53477121 24.25 6.75 C25.71666744 7.33727823 27.18338372 7.9244345 28.65014648 8.51147461 C59.4743506 20.92202193 89.28953296 35.25822819 118 52 C118.86077148 52.49999512 119.72154297 52.99999023 120.60839844 53.51513672 C161.72920828 77.49041858 200.29773103 106.41842524 235 139 C235.886875 139.80953125 236.77375 140.6190625 237.6875 141.453125 C252.42462611 155.38150638 259.49786464 173.65566114 260.3125 193.75 C259.81767681 211.68006374 254.25043247 226.9938948 243 241 C242.33226562 241.86238281 241.66453125 242.72476563 240.9765625 243.61328125 C239.24590957 245.70306177 237.57169119 247.38950431 235.5 249.125 C232.51133973 251.67561916 229.59287253 254.28344515 226.71411133 256.95776367 C221.64485731 261.6638279 216.47524274 266.1716396 211.08203125 270.5078125 C208.76835882 272.37869084 206.47813421 274.26731879 204.19921875 276.1796875 C193.77838213 284.90321894 183.04596797 293.08522447 172 301 C170.77144287 301.88220215 170.77144287 301.88220215 169.51806641 302.78222656 C143.26630545 321.56939651 115.56381256 337.98507404 87 353 C86.1037793 353.47147461 85.20755859 353.94294922 84.28417969 354.42871094 C16.63734337 389.74341726 -58.10665626 411.19551346 -133.625 420.8125 C-134.78570007 420.96196075 -134.78570007 420.96196075 -135.96984863 421.11444092 C-161.63525249 424.37017163 -187.26741883 425.37822339 -213.10825729 425.3172493 C-215.40779922 425.31243128 -217.70731985 425.3114082 -220.00686646 425.31100464 C-243.08497711 425.29643064 -266.06526839 424.81190083 -289 422 C-290.2485376 421.86070068 -291.4970752 421.72140137 -292.78344727 421.57788086 C-296 421 -296 421 -298 419 C-298.49527017 414.99100553 -297.70858195 412.98164495 -295.33203125 409.78515625 C-294.76806641 409.01623047 -294.20410156 408.24730469 -293.62304688 407.45507812 C-293.02556641 406.66552734 -292.42808594 405.87597656 -291.8125 405.0625 C-291.23435547 404.27681641 -290.65621094 403.49113281 -290.06054688 402.68164062 C-288.92245448 401.1448944 -287.76923907 399.61921563 -286.60009766 398.10595703 C-285.00722241 396.06276707 -285.00722241 396.06276707 -283.73974609 394.06201172 C-282.57421875 392.37109375 -282.57421875 392.37109375 -280 390 C-276.90337684 389.97684149 -274.92469576 390.24162841 -272 391 C-270.78957031 391.26852783 -270.78957031 391.26852783 -269.5546875 391.54248047 C-265.9696189 392.34465311 -262.40233392 393.21456266 -258.8359375 394.09570312 C-244.84335385 397.41445694 -230.94896001 398.41315663 -216.625 398.375 C-215.84752411 398.37445618 -215.07004822 398.37391235 -214.26901245 398.37335205 C-173.06537467 398.24194782 -131.42709396 385.50054046 -98 361 C-96.948125 360.23171875 -95.89625 359.4634375 -94.8125 358.671875 C-87.62333628 353.32412382 -80.90925739 347.55207985 -74.43212891 341.36474609 C-73.05300947 340.05051533 -71.65764787 338.75339339 -70.26171875 337.45703125 C-62.1751205 329.72151541 -55.50630144 321.07922027 -49 312 C-48.52030762 311.33258789 -48.04061523 310.66517578 -47.54638672 309.97753906 C-28.80786897 283.50076828 -18.09638657 252.83617613 -13 221 C-12.83201904 219.95416748 -12.83201904 219.95416748 -12.66064453 218.88720703 C-9.89484065 198.37292905 -10.69508133 175.19183769 -15 155 C-15.18804199 154.07960938 -15.37608398 153.15921875 -15.56982422 152.2109375 C-21.24442573 125.12453411 -32.10292419 99.64475547 -48 77 C-50 74 -50 74 -49.95703125 70.7734375 C-48.76566992 66.07606999 -46.69635856 63.33865734 -43.6875 59.625 C-42.58370852 58.21006934 -41.48221375 56.79334455 -40.3828125 55.375 C-39.81852539 54.65183594 -39.25423828 53.92867188 -38.67285156 53.18359375 C-36.03205521 49.73652974 -33.54631184 46.18602799 -31.0625 42.625 C-26.3458613 35.89237237 -21.56276575 29.21161673 -16.73925781 22.55517578 C-14.15508469 18.98763781 -11.57826388 15.41563455 -9.02734375 11.82421875 C-8.33729248 10.85295044 -8.33729248 10.85295044 -7.63330078 9.86206055 C-6.77715128 8.65506383 -5.92256017 7.4469596 -5.06982422 6.23754883 C-3.48129143 3.99848373 -1.94564131 1.94564131 0 0 Z \"\n fill={strokeColor}\n transform=\"translate(716,306)\"\n />\n <Path\n d=\"M0 0 C3.51572409 1.20049115 3.89927592 2.5702084 5.5625 5.875 C16.79196316 36.99700367 14.39199749 72.19496319 0.57373047 102.00830078 C-4.32708326 112.23300361 -10.11398773 121.23502555 -17.4375 129.875 C-17.86256836 130.38369629 -18.28763672 130.89239258 -18.72558594 131.41650391 C-39.53830021 156.12083556 -70.04945686 170.89185288 -102 174.25 C-102.79615723 174.33475586 -103.59231445 174.41951172 -104.41259766 174.50683594 C-110.08566828 175.00138099 -115.84213898 175.06453872 -121.4375 173.875 C-123.4375 171.875 -123.4375 171.875 -123.890625 169.20703125 C-123.26106246 164.57757569 -121.08117774 162.12319948 -118.1875 158.5625 C-117.07457534 157.13847245 -115.96396603 155.71263288 -114.85546875 154.28515625 C-114.28489746 153.55570801 -113.71432617 152.82625977 -113.12646484 152.07470703 C-110.47719866 148.62430398 -107.98754911 145.06788226 -105.5 141.5 C-101.37580022 135.6144584 -97.2129913 129.75985649 -93 123.9375 C-92.46068848 123.19201904 -91.92137695 122.44653809 -91.36572266 121.6784668 C-89.17562663 118.65297668 -86.98377414 115.62876105 -84.79199219 112.60449219 C-78.96287139 104.55871227 -73.15422884 96.50115028 -67.4375 88.375 C-61.71958009 80.24715666 -55.90925905 72.18833956 -50.07861328 64.14111328 C-47.36101837 60.38855215 -44.64948061 56.63161955 -41.9375 52.875 C-38.67880943 48.36108105 -35.4188334 43.84812335 -32.15234375 39.33984375 C-26.23499118 31.16796842 -20.35515834 22.9730357 -14.57006836 14.70678711 C-12.15227507 11.26142097 -9.70615922 7.83796676 -7.21484375 4.4453125 C-6.73136475 3.78547363 -6.24788574 3.12563477 -5.74975586 2.44580078 C-3.87186542 0.19792226 -2.93555876 -0.15054147 0 0 Z \"\n fill={strokeColor}\n transform=\"translate(614.4375,452.125)\"\n />\n <Path\n d=\"M0 0 C2 3 2 3 1.984375 5.671875 C0.62600276 10.26446685 -1.87486984 13.46697744 -4.75 17.25 C-5.94166526 18.85788099 -7.13306411 20.46595945 -8.32421875 22.07421875 C-9.24146729 23.30084229 -9.24146729 23.30084229 -10.17724609 24.55224609 C-13.01269349 28.35993368 -15.78758203 32.21059749 -18.5625 36.0625 C-19.10036133 36.80661133 -19.63822266 37.55072266 -20.19238281 38.31738281 C-23.82948448 43.35421092 -27.42533121 48.41872073 -31 53.5 C-36.71791991 61.62784334 -42.52824095 69.68666044 -48.35888672 77.73388672 C-51.07648163 81.48644785 -53.78801939 85.24338045 -56.5 89 C-59.75869057 93.51391895 -63.0186666 98.02687665 -66.28515625 102.53515625 C-71.56580422 109.82747964 -76.8195134 117.1361012 -82 124.5 C-87.70342454 132.60723863 -93.49891504 140.64565784 -99.31494141 148.67236328 C-101.08094577 151.11181353 -102.84364663 153.5536215 -104.60546875 155.99609375 C-105.19465088 156.81279541 -105.78383301 157.62949707 -106.39086914 158.47094727 C-107.51915051 160.03510137 -108.64725252 161.59938488 -109.77514648 163.16381836 C-110.54000366 164.22354858 -110.54000366 164.22354858 -111.3203125 165.3046875 C-111.76648926 165.92327637 -112.21266602 166.54186523 -112.67236328 167.17919922 C-113.1104834 167.78006348 -113.54860352 168.38092773 -114 169 C-114.47808105 169.72461426 -114.95616211 170.44922852 -115.44873047 171.19580078 C-117 173 -117 173 -120.5 173.5625 C-124 173 -124 173 -125.55859375 171 C-138.07852865 144.94224932 -136.17620094 110.56153042 -127.03295898 83.84790039 C-121.66665851 69.15285664 -114.10155864 55.91739773 -104 44 C-103.36239746 43.23695557 -103.36239746 43.23695557 -102.71191406 42.45849609 C-81.89919979 17.75416444 -51.38804314 2.98314712 -19.4375 -0.375 C-18.64134277 -0.45975586 -17.84518555 -0.54451172 -17.02490234 -0.63183594 C-11.42969884 -1.11959299 -5.47370478 -1.42429695 0 0 Z \"\n fill={strokeColor}\n transform=\"translate(507,374)\"\n />\n </Svg>\n );\n};\n\nexport const Expand = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg width={width} height={height}>\n <Path\n d=\"M0 0 C0.61875 0.33 1.2375 0.66 1.875 1 C3.91018344 2.14193235 3.91018344 2.14193235 6 2 C6.66 1.67 7.32 1.34 8 1 C8 3.31 8 5.62 8 8 C5.69 8 3.38 8 1 8 C1.66 7.01 2.32 6.02 3 5 C2.2575 4.319375 2.2575 4.319375 1.5 3.625 C0 2 0 2 0 0 Z \"\n fill={strokeColor}\n transform=\"translate(9,9)\"\n />\n <Path\n d=\"M0 0 C2.31 0 4.62 0 7 0 C6.01 1.485 6.01 1.485 5 3 C5.495 3.45375 5.99 3.9075 6.5 4.375 C8 6 8 6 8 8 C7.38125 7.67 6.7625 7.34 6.125 7 C4.08981656 5.85806765 4.08981656 5.85806765 2 6 C1.01 6.495 1.01 6.495 0 7 C0 4.69 0 2.38 0 0 Z \"\n fill={strokeColor}\n transform=\"translate(0,0)\"\n />\n </Svg>\n );\n};\n\nexport const ExitFullScreen = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg\n id=\"Layer_1\"\n x=\"0px\"\n y=\"0px\"\n width={width}\n height={height}\n viewBox=\"0 0 1000 1000\"\n enable-background=\"new 0 0 1000 1000\">\n <Image\n id=\"image0\"\n width=\"1000\"\n height=\"1000\"\n x=\"0\"\n y=\"0\"\n href=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA+gAAAPoCAQAAADnqhxvAAAABGdBTUEAALGPC/xhBQAAACBjSFJN\nAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAAAmJLR0QA/4ePzL8AAAAJcEhZ\ncwAACxMAAAsTAQCanBgAAAAHdElNRQfoBw8LIARCPPBTAAAe5ElEQVR42u3d38/e9X3f8bdrx9km\n4L4bCBsYEJbaLi1x1QYSBuKHTeDA0iYVMkAyB+1BK7SsmdatPooWkWzpQcjCGpbkIEc9SCMZxZ62\nSRZSwy8TuUlIQ2ZIq2UNK+HHcGJqG0sBgvEO7iaFCG7ftu/78/5er+vx+AP4vO7ok+vp63v/uNad\nKABg1v1C9wAA4MwJOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA\n0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAE\nEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4A\nAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKAD\nQIAN3QOIsVBX1RV1WW2uTbVYZ636f/9YHa7n6vv1ZD1W++tI95dLOPeZmbPuRPcCZt9FdXvdUlfW\n+mEnHq+v1+66r57u/tIJ5D4zowSdM3Nd7aztA1/63uh47a1P18Pd/xMQxH1mhgk6p29rfaKu7R5R\n++pj9VD3CAK4z8w4Qef0XFB31x3dI37mS7Wznu8ewQxznwkg6JyOW+uLtdA94k2O1O/Vfd0jmFHu\nMxH82hqnamPdW7sm9vJXtVC76t56Z/cMZo77TAzv0Dk1Z9ee+mD3iLf1SN1cL3aPYIa4zwQRdE7F\nu2tvXd49YlnfqZvqh90jmBHuM1EEnZVbqAfqfd0jTurbtc2f6WAF3GfC+B46K7Wxds/Ay1/Vb9bu\n2tg9gslzn4kj6KzUPXVD94QVuqHu6Z7A5LnPxPHInZW5tXZ1Tzglt8/YXsZynwkk6KzEpnqiFrtH\nnJLDtaWe6R7BRLnPRPLInZW4d8Ze/qoW67PdE5gs95lI3qFzctvqge4Jp+XG+mr3BCbIfSaUoHNy\n++qa7gmn5dEJfNQG0+M+E8ojd07muhl9+au6pq7rnsDkuM/EEnROZmf3gDndztqY5Tsxy9sZwCN3\nlnd+PVsbukecttdqUx3sHsGEuM8E8w6d5e2Y4Ze/qg21o3sCk+I+E0zQWd6HugfM+X5W16zfh1nf\nz5ryyJ3lLNShWt894owcr3N9tAV/x30mmnfoLOfqGX/5q1pfV3dPYDLcZ6IJOsuZhU+jOpkrugcw\nGe4z0QSd5WzpHrAKLusewGS4z0QTdJazuXuAr4FVlHAXEr4G1oigs5wLuwesgk3dA5gM95logs5y\nFrsHrIJzugcwGYvdA1aB+8zb8mtrLCfjeqzrHsBEuM9E8w4dAAIIOgAEEHQACCDoABBA0AEggKAD\nQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDo\nABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAII\nOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AA\ngg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEg\ngKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQA\nCCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQd\nAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABB\nB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA\n0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAE\nEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4A\nAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKAD\n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\ngg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEg\ngKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQA\nCCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQd\nAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABB\nB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA\n0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAE\nEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4A\nAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKAD\nQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDo\nABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAII\nOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AA\ngg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEg\ngKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQA\nCCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQd\nAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABB\nB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA0AEggKADQABBB4AAgg4AAQQdAAIIOgAEEHQACCDoABBA\n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\nMjowNCswMDowML9geowAAAAASUVORK5CYII=\"\n />\n </Svg>\n );\n};\n\nexport const Error = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg\n width={width}\n height={height}\n viewBox=\"0 0 1000.000000 1000.000000\"\n preserveAspectRatio=\"xMidYMid meet\">\n <G\n transform=\"translate(0.000000,1000.000000) scale(0.100000,-0.100000)\"\n fill={strokeColor}\n stroke=\"none\">\n <Path\n d=\"M4868 8720 c-58 -10 -205 -58 -210 -68 -2 -4 -28 -19 -58 -33 -60\n -29 -80 -45 -202 -165 -94 -92 -128 -130 -128 -144 0 -6 -5 -10 -10 -10 -6 0\n -14 -8 -17 -17 -4 -10 -16 -31 -29 -48 -12 -16 -37 -58 -55 -91 -19 -34 -52\n -93 -74 -130 -22 -38 -45 -80 -51 -94 -7 -14 -24 -40 -38 -59 -14 -19 -26 -38\n -26 -42 0 -4 -22 -44 -50 -88 -27 -44 -50 -83 -50 -86 0 -3 -22 -43 -48 -88\n -150 -254 -182 -309 -182 -316 0 -4 -7 -16 -16 -26 -18 -23 -62 -99 -96 -165\n -13 -25 -26 -46 -30 -48 -5 -2 -8 -8 -8 -14 0 -6 -17 -38 -38 -72 -22 -34 -54\n -88 -72 -121 -18 -33 -36 -62 -39 -65 -3 -3 -15 -23 -27 -45 -39 -74 -59 -110\n -65 -115 -3 -3 -14 -21 -24 -40 -14 -28 -70 -125 -125 -220 -15 -26 -82 -143\n -103 -180 -11 -19 -28 -46 -38 -59 -11 -13 -19 -28 -19 -32 0 -5 -25 -49 -55\n -98 -30 -49 -55 -92 -55 -96 0 -4 -8 -19 -19 -33 -10 -15 -34 -58 -54 -95 -19\n -37 -40 -73 -45 -80 -9 -12 -98 -165 -150 -257 -14 -25 -32 -56 -41 -70 -9\n -14 -23 -38 -31 -55 -8 -16 -18 -32 -21 -35 -3 -3 -12 -17 -20 -32 -36 -68\n -142 -254 -148 -258 -3 -3 -13 -19 -22 -35 -8 -17 -42 -75 -74 -130 -32 -55\n -68 -118 -79 -140 -12 -22 -24 -42 -27 -45 -4 -3 -15 -22 -25 -42 -11 -20 -35\n -63 -54 -95 -19 -32 -34 -61 -32 -65 1 -5 -3 -8 -8 -8 -6 0 -10 -4 -10 -8 0\n -7 -28 -56 -124 -215 -11 -18 -31 -53 -45 -80 -14 -26 -68 -119 -118 -207 -51\n -88 -93 -164 -93 -168 0 -4 -11 -20 -25 -36 -14 -16 -25 -33 -25 -38 0 -5 -11\n -26 -24 -47 -14 -21 -22 -42 -19 -45 4 -3 1 -6 -5 -6 -6 0 -17 -12 -25 -28\n -33 -62 -66 -121 -89 -158 -14 -22 -34 -57 -45 -79 -11 -22 -41 -74 -67 -116\n -25 -42 -46 -81 -46 -86 0 -6 -14 -27 -30 -48 -16 -21 -30 -42 -30 -47 0 -5\n -18 -37 -40 -70 -22 -34 -40 -68 -40 -75 0 -7 -4 -13 -9 -13 -5 0 -14 -15 -21\n -32 -8 -18 -19 -40 -26 -48 -20 -25 -69 -123 -84 -167 -7 -24 -16 -43 -20 -43\n -7 0 -35 -85 -56 -170 -21 -82 -29 -282 -15 -368 12 -77 37 -158 64 -208 9\n -16 21 -41 28 -56 6 -16 15 -28 20 -28 5 0 9 -7 9 -15 0 -23 155 -185 178\n -185 6 0 12 -4 12 -9 0 -11 104 -81 120 -81 6 0 38 -14 72 -30 72 -36 181 -65\n 298 -79 118 -15 6592 -15 6710 0 117 14 226 43 298 79 34 16 66 30 72 30 16 0\n 120 70 120 81 0 5 6 9 13 9 26 0 166 151 198 215 13 25 34 65 46 88 43 83 58\n 171 58 332 0 175 -21 282 -80 410 -13 28 -31 68 -41 90 -9 22 -29 58 -43 80\n -15 22 -33 55 -40 73 -7 17 -17 32 -22 32 -5 0 -9 6 -9 13 0 7 -20 44 -45 82\n -25 39 -45 75 -45 81 0 6 -7 17 -15 24 -8 7 -29 42 -47 79 -18 36 -47 87 -65\n 112 -18 26 -33 50 -33 53 0 4 -19 40 -42 79 -40 67 -59 103 -95 169 -8 16 -19\n 28 -25 28 -6 0 -9 3 -5 6 3 3 -5 24 -19 45 -13 21 -24 42 -24 47 0 5 -11 22\n -25 38 -14 16 -25 32 -25 36 0 4 -42 80 -92 168 -51 88 -105 181 -119 207 -14\n 27 -34 62 -45 80 -96 159 -124 208 -124 215 0 4 -4 8 -10 8 -5 0 -9 3 -8 8 2\n 4 -13 33 -32 65 -19 32 -43 75 -54 95 -10 20 -21 39 -25 42 -3 3 -15 23 -27\n 45 -11 22 -47 85 -79 140 -32 55 -66 113 -74 130 -9 16 -19 32 -22 35 -6 4\n -112 190 -148 258 -8 15 -17 29 -20 32 -3 3 -13 19 -21 35 -13 26 -31 58 -87\n 150 -33 56 -142 245 -171 299 -19 34 -44 78 -58 98 -13 21 -24 40 -24 44 0 3\n -25 46 -55 95 -30 49 -55 93 -55 98 0 4 -8 19 -19 32 -10 13 -27 40 -38 59\n -21 37 -88 154 -103 180 -55 95 -111 192 -125 220 -10 19 -21 37 -24 40 -6 5\n -26 41 -65 115 -12 22 -24 42 -27 45 -3 3 -21 32 -39 65 -18 33 -50 87 -72\n 121 -21 34 -38 66 -38 73 0 6 -5 11 -12 11 -6 0 -9 3 -5 6 3 3 -8 27 -23 52\n -16 26 -41 70 -56 97 -15 28 -30 52 -34 55 -3 3 -13 19 -22 35 -8 17 -57 102\n -108 190 -51 88 -107 185 -123 215 -16 30 -45 79 -63 108 -19 29 -34 56 -34\n 60 0 5 -12 24 -26 43 -14 19 -31 45 -38 59 -6 14 -29 56 -51 94 -22 37 -55 96\n -74 130 -18 33 -43 75 -55 91 -13 17 -25 38 -29 48 -3 9 -11 17 -17 17 -5 0\n -10 4 -10 10 0 14 -34 52 -128 144 -122 120 -142 136 -202 165 -30 14 -56 29\n -58 33 -2 4 -47 22 -100 39 -82 26 -116 32 -217 34 -66 2 -141 0 -167 -5z\n m209 -2060 c162 -26 278 -125 339 -287 31 -82 31 -83 -19 -763 -19 -267 -38\n -537 -42 -600 -3 -63 -10 -124 -15 -135 -8 -20 -15 -110 -65 -920 -14 -220\n -30 -416 -35 -435 -5 -19 -11 -46 -14 -60 -19 -87 -98 -135 -222 -135 -72 0\n -86 3 -129 30 -64 40 -95 97 -95 176 0 32 -4 68 -10 81 -5 13 -19 178 -30 368\n -32 517 -66 983 -72 1000 -7 17 -90 1186 -91 1265 -1 133 61 243 197 353 42\n 34 123 58 231 71 6 0 38 -4 72 -9z m110 -3680 c64 -29 186 -127 177 -141 -2\n -4 2 -11 9 -16 8 -4 27 -42 42 -83 24 -62 29 -90 29 -163 -1 -53 -5 -92 -12\n -99 -7 -7 -12 -21 -12 -31 0 -69 -110 -195 -215 -248 -67 -34 -70 -34 -199\n -34 -128 0 -133 1 -199 33 -105 52 -217 180 -217 249 0 10 -5 24 -11 30 -7 7\n -12 48 -12 100 0 134 42 237 134 324 95 90 187 121 334 114 72 -4 102 -11 152\n -35z\"\n />\n </G>\n </Svg>\n );\n};\n\nexport const Dot = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg\n width={width}\n height={height}\n viewBox=\"0 0 1000.000000 1000.000000\"\n preserveAspectRatio=\"xMidYMid meet\">\n <G\n transform=\"translate(0.000000,1000.000000) scale(0.100000,-0.100000)\"\n fill={strokeColor}\n stroke=\"none\"></G>\n </Svg>\n );\n};\n\nexport const Decrease10Seconds = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg\n id=\"Layer_1\"\n x=\"0px\"\n y=\"0px\"\n width={width}\n height={height}\n viewBox=\"0 0 1000 1000\"\n enable-background=\"new 0 0 1000 1000\">\n <Image\n id=\"image0\"\n width=\"1000\"\n height=\"1000\"\n x=\"0\"\n y=\"0\"\n href=\"data:image/png;base64,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\"\n />\n </Svg>\n );\n};\n\nexport const Close = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg\n width={width}\n height={height}\n viewBox=\"0 0 1000.000000 1000.000000\"\n preserveAspectRatio=\"xMidYMid meet\">\n <G\n transform=\"translate(0.000000,1000.000000) scale(0.100000,-0.100000)\"\n fill={strokeColor}\n stroke=\"none\"></G>\n </Svg>\n );\n};\n\nexport const Back = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg\n width={width}\n height={height}\n viewBox=\"0 0 1000.000000 1000.000000\"\n preserveAspectRatio=\"xMidYMid meet\">\n <G\n transform=\"translate(0.000000,1000.000000) scale(0.100000,-0.100000)\"\n fill={strokeColor}\n stroke=\"none\"></G>\n </Svg>\n );\n};\n\nexport const Blur = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg\n width={width}\n height={height}\n viewBox=\"0 0 800.000000 455.000000\"\n preserveAspectRatio=\"xMidYMid meet\">\n <G\n transform=\"translate(0.000000,455.000000) scale(0.100000,-0.100000)\"\n fill={strokeColor}\n stroke=\"none\">\n <Path\n d=\"M3829 1514 c-5 -7 -19 -10 -30 -7 -12 4 -25 0 -30 -8 -5 -9 -9 -9 -9\n-2 0 15 -40 4 -40 -11 0 -6 -5 -4 -10 4 -5 8 -10 10 -10 3 0 -6 -9 -9 -20 -6\n-11 3 -28 -1 -37 -8 -10 -9 -14 -9 -10 -2 9 14 -28 9 -47 -7 -7 -5 -16 -6 -20\n-2 -12 12 -30 9 -44 -8 -12 -13 -12 -13 -6 0 7 13 6 13 -10 1 -21 -18 -54 -22\n-63 -8 -3 6 -1 7 5 3 6 -3 13 -2 16 3 4 5 -2 8 -11 6 -10 -1 -17 -9 -17 -18 1\n-9 -5 -14 -15 -12 -9 2 -20 4 -24 4 -5 1 -5 7 -1 14 4 6 -4 2 -18 -11 -19 -17\n-28 -20 -33 -11 -5 7 -4 10 3 5 6 -3 13 -2 16 2 7 12 -41 9 -51 -2 -5 -5 -2\n-6 6 -1 10 6 12 4 7 -4 -6 -9 -11 -9 -22 0 -9 7 -14 8 -14 1 0 -7 -10 -8 -29\n-2 -15 4 -34 4 -41 0 -7 -4 -24 -5 -39 -1 -14 4 -42 6 -61 5 -19 -1 -131 -3\n-247 -4 -145 -2 -213 -7 -213 -14 0 -6 -5 -4 -10 4 -6 9 -10 11 -10 3 0 -7 -7\n-10 -17 -6 -10 4 -14 2 -10 -4 3 -5 0 -10 -8 -10 -8 0 -11 5 -7 11 3 6 -7 3\n-22 -8 -16 -10 -25 -13 -22 -7 10 16 -6 13 -33 -6 -14 -9 -21 -11 -17 -5 5 8\n2 10 -8 6 -9 -3 -13 -11 -9 -18 4 -6 0 -5 -9 2 -14 11 -18 10 -27 -5 -7 -13\n-10 -14 -11 -4 0 11 -4 10 -16 -5 -8 -10 -12 -13 -8 -5 8 16 -8 9 -40 -18 -11\n-9 -16 -10 -12 -3 4 6 5 12 1 12 -3 0 -10 -10 -15 -22 -8 -21 -9 -22 -10 -3\n-1 19 -2 18 -10 -2 -7 -16 -14 -21 -26 -16 -13 5 -15 3 -9 -8 8 -12 6 -12 -8\n0 -15 12 -18 10 -26 -10 -5 -13 -10 -17 -11 -9 0 13 -2 13 -9 0 -6 -8 -7 -19\n-3 -25 3 -5 -2 -4 -12 4 -14 12 -17 12 -14 1 2 -8 -3 -15 -9 -16 -7 -1 -16 -2\n-19 -3 -4 0 -1 -8 6 -16 10 -12 8 -14 -9 -10 -12 2 -20 -1 -18 -8 1 -7 -4 -11\n-11 -9 -6 1 -11 -4 -10 -10 2 -7 -3 -12 -10 -10 -8 1 -11 -2 -7 -7 3 -6 -7\n-23 -22 -39 -15 -15 -21 -19 -13 -8 15 21 15 21 -8 2 -15 -13 -19 -23 -12 -30\n13 -13 -7 -37 -26 -29 -21 8 -47 -16 -34 -33 9 -10 6 -11 -12 -7 -22 5 -22 5\n-4 -9 15 -12 16 -17 6 -23 -9 -5 -11 -4 -6 3 4 7 1 12 -8 12 -16 0 -105 -89\n-106 -106 0 -12 -54 -66 -67 -66 -4 0 -7 -4 -6 -8 2 -5 -6 -7 -17 -5 -23 4\n-45 -19 -34 -37 6 -10 5 -11 -8 -1 -18 15 -28 7 -28 -21 0 -16 -2 -18 -9 -7\n-10 16 -41 8 -41 -10 0 -8 6 -7 18 2 15 13 16 12 3 -4 -8 -9 -16 -15 -19 -12\n-3 3 -17 -2 -31 -11 l-26 -15 25 22 c14 12 18 19 10 15 -8 -3 -23 -9 -33 -12\n-9 -4 -16 -12 -15 -20 2 -7 -1 -13 -6 -12 -5 0 -13 -6 -18 -14 -8 -10 -9 -10\n-5 2 2 8 10 14 16 12 7 -1 9 2 5 9 -5 9 -12 6 -25 -9 -12 -15 -19 -18 -22 -10\n-3 7 -6 2 -7 -12 -1 -23 -2 -23 -10 -5 -5 11 -9 14 -9 7 -1 -7 -5 -10 -11 -7\n-5 3 -10 -2 -11 -12 0 -11 -3 -13 -6 -5 -4 10 -8 10 -21 0 -13 -11 -15 -11 -8\n2 4 8 0 6 -8 -4 -17 -22 -50 -31 -40 -13 3 7 -2 3 -10 -7 -12 -15 -16 -16 -17\n-5 0 8 -4 6 -9 -6 -6 -13 -9 -15 -9 -5 -1 13 -2 13 -11 0 -8 -13 -10 -13 -10\n-1 0 11 -4 9 -15 -5 -12 -14 -14 -15 -9 -2 4 13 1 15 -15 11 -12 -3 -21 -10\n-21 -15 0 -5 4 -7 9 -4 11 7 8 -20 -3 -31 -4 -4 -6 -1 -4 7 2 8 -2 14 -9 13\n-8 -2 -10 4 -7 15 4 10 2 13 -3 7 -11 -14 -113 -14 -113 0 0 5 -4 3 -9 -5 -13\n-20 -2 -34 15 -19 19 15 18 2 -1 -17 -10 -10 -15 -11 -15 -3 0 8 -5 8 -17 -2\n-10 -8 -14 -9 -10 -2 4 6 3 14 -3 18 -5 3 -10 15 -10 25 0 14 -5 18 -17 13\n-10 -4 -14 -2 -10 4 4 7 0 10 -10 9 -10 -2 -21 1 -24 6 -3 5 -9 3 -12 -5 -4\n-11 0 -15 13 -12 13 3 17 -1 13 -12 -5 -12 -7 -12 -14 -1 -5 7 -9 9 -9 4 0 -5\n-7 -2 -17 5 -9 8 -17 12 -19 9 -1 -3 -6 -1 -11 4 -5 5 -3 6 5 2 7 -4 12 -2 12\n6 0 9 3 9 10 -2 9 -13 10 -13 10 0 0 8 -15 21 -32 29 -18 8 -41 21 -50 29 -10\n8 -18 12 -18 8 0 -3 -11 1 -24 9 -18 12 -26 13 -32 4 -5 -8 -3 -9 6 -4 9 5 11\n4 6 -4 -6 -8 -12 -9 -20 -2 -7 6 -16 8 -20 4 -4 -4 -4 1 0 11 5 14 9 15 16 4\n8 -11 9 -11 6 0 -2 8 -8 13 -13 13 -6 0 -17 7 -27 15 -12 12 -18 12 -24 3 -4\n-7 -3 -10 4 -5 6 3 13 2 16 -3 4 -5 -2 -8 -11 -6 -10 1 -17 10 -17 19 1 10 0\n15 -3 12 -3 -3 -15 0 -27 6 -27 15 -48 19 -40 7 3 -5 10 -6 16 -3 7 5 8 2 3\n-6 -6 -9 -4 -11 5 -5 9 6 11 4 5 -5 -6 -10 -14 -7 -32 14 -12 15 -23 21 -23\n14 0 -8 -4 -7 -10 4 -6 9 -19 15 -30 13 -11 -2 -22 1 -26 6 -4 6 -10 6 -19 -1\n-10 -8 -15 -8 -21 1 -5 8 -3 10 7 4 8 -5 11 -4 6 1 -10 10 -58 14 -51 3 12\n-19 -16 -17 -30 3 -11 15 -16 18 -16 8 0 -13 -2 -13 -10 0 -9 13 -10 13 -10 0\n0 -13 -1 -13 -10 0 -9 13 -10 13 -10 0 0 -13 -1 -13 -10 0 -9 13 -10 13 -10 0\n0 -9 -3 -11 -8 -5 -10 15 -38 12 -34 -4 1 -7 -2 -10 -8 -6 -6 3 -8 10 -6 14 6\n9 -54 8 -69 0 -5 -4 -18 -5 -28 -4 -9 2 -17 -2 -17 -8 0 -7 -5 -5 -10 3 -5 8\n-10 10 -10 3 0 -6 -8 -10 -17 -9 -10 2 -29 0 -43 -4 -91 -27 -110 -34 -110\n-39 0 -4 -9 -7 -19 -8 -11 -1 -31 -9 -45 -18 l-26 -17 0 -369 0 -369 4000 0\n4000 0 0 455 c0 296 -3 455 -10 456 -13 2 -29 6 -32 8 -8 5 -233 13 -463 15\n-143 1 -270 5 -282 9 -13 3 -25 1 -29 -4 -3 -6 -16 -4 -31 6 -14 10 -22 12\n-19 6 4 -6 3 -11 -3 -11 -5 0 -13 5 -16 10 -4 7 -13 6 -27 -1 -16 -9 -19 -8\n-13 2 6 9 2 11 -13 7 -12 -4 -22 -2 -22 2 0 5 -11 7 -25 6 -14 -2 -22 1 -18 7\n4 6 -2 8 -15 5 -15 -4 -25 0 -32 10 -7 13 -9 14 -10 3 0 -11 -4 -10 -16 5 -8\n10 -12 12 -8 4 5 -10 -1 -8 -16 5 -13 11 -20 14 -16 8 4 -7 2 -13 -3 -13 -6 0\n-11 5 -11 11 0 5 -4 8 -9 4 -5 -3 -12 -1 -16 5 -4 6 -11 8 -16 5 -5 -4 -9 -1\n-9 6 0 7 -3 9 -7 6 -3 -4 -15 1 -26 10 -15 13 -18 14 -12 3 6 -11 3 -10 -12 3\n-11 9 -23 14 -26 10 -4 -3 -7 -1 -7 6 0 7 -4 10 -9 6 -5 -3 -12 -1 -16 5 -4 6\n-11 8 -16 5 -5 -4 -9 2 -9 12 0 15 -2 16 -10 3 -7 -11 -10 -11 -10 -2 0 7 -4\n10 -10 7 -5 -3 -10 -1 -10 5 0 6 -4 8 -10 5 -5 -3 -10 -1 -10 5 0 6 -4 9 -9 6\n-5 -3 -11 1 -14 9 -4 8 -15 12 -27 10 -11 -2 -20 1 -20 8 0 7 -4 6 -10 -3 -7\n-12 -10 -12 -10 -1 0 7 -6 11 -15 8 -8 -4 -17 -1 -21 5 -4 6 -3 8 4 4 6 -3 13\n-2 16 3 7 11 -13 9 -33 -3 -10 -6 -12 -5 -7 2 4 7 2 12 -4 12 -6 0 -9 4 -6 8\n3 5 -1 9 -9 9 -8 0 -12 -5 -9 -11 3 -6 -2 -2 -10 8 -12 15 -16 16 -16 5 0 -12\n-2 -12 -10 1 -5 8 -10 11 -10 5 0 -5 -5 -3 -10 5 -11 17 -30 20 -47 7 -8 -5\n-16 -1 -25 12 -14 22 -33 30 -23 9 4 -7 0 -5 -8 5 -11 14 -16 15 -20 5 -4 -11\n-6 -11 -6 0 -1 7 -5 11 -10 7 -5 -3 -17 2 -25 11 -11 11 -16 12 -16 3 0 -7 -7\n-5 -16 7 -8 10 -13 14 -10 7 4 -6 1 -15 -5 -19 -7 -4 -9 -3 -6 2 3 6 2 16 -4\n24 -7 13 -9 13 -9 0 -1 -12 -2 -12 -10 2 -6 9 -18 15 -28 14 -9 -2 -20 2 -24\n8 -5 7 -8 6 -8 -4 0 -12 -2 -12 -9 -2 -4 7 -17 15 -27 17 -10 2 -19 4 -19 5 0\n1 -8 3 -18 5 -11 2 -15 -1 -10 -8 4 -8 1 -7 -9 1 -19 15 -49 23 -100 26 -21 1\n-41 6 -45 11 -5 4 -1 5 7 0 8 -5 12 -4 7 0 -12 14 -38 15 -31 2 3 -7 -2 -3\n-10 7 -12 15 -16 16 -16 5 0 -12 -2 -12 -10 1 -9 13 -10 13 -11 0 0 -10 -3 -8\n-9 5 -6 13 -9 15 -9 5 -1 -13 -2 -13 -11 0 -9 13 -10 13 -10 0 0 -13 -1 -13\n-10 0 -8 13 -10 13 -10 1 0 -11 -4 -10 -16 5 -8 10 -12 12 -8 4 7 -13 5 -13\n-9 -1 -9 7 -17 10 -17 5 0 -5 -5 -2 -10 6 -9 13 -10 13 -10 0 0 -11 -3 -12 -8\n-3 -10 17 -62 25 -62 10 0 -7 -4 -6 -10 3 -5 8 -20 15 -34 16 -14 0 -23 -3\n-21 -7 7 -10 -22 -5 -32 6 -4 4 -2 5 6 0 9 -5 12 -4 8 2 -7 11 -46 11 -64 0\n-8 -5 -13 -3 -13 3 0 6 -4 8 -10 5 -5 -3 -10 -1 -10 6 0 7 -6 5 -14 -6 -13\n-18 -13 -18 -24 1 -8 14 -12 15 -12 4 0 -13 -1 -13 -10 0 -5 8 -10 10 -10 3 0\n-11 -17 -12 -35 -2 -5 4 -19 5 -30 3 -11 -2 -62 -4 -113 -5 -51 -1 -95 -5 -98\n-10 -3 -5 -14 -5 -24 1 -11 6 -21 6 -24 1 -4 -5 -17 -8 -31 -6 -14 1 -25 -1\n-25 -5 0 -3 -17 -7 -37 -7 -91 -2 -104 -3 -100 -10 3 -5 -17 -8 -44 -7 -28 0\n-52 -3 -55 -8 -3 -5 -11 -5 -17 0 -15 11 -88 9 -106 -2 -10 -7 -12 -6 -6 3 5\n9 0 12 -16 10 -13 -1 -31 0 -39 3 -41 15 -88 25 -112 24 -15 -1 -24 3 -21 8 4\n5 -3 7 -15 4 -12 -4 -20 -2 -16 3 4 8 -40 14 -49 7 -2 -2 -10 2 -18 8 -8 6\n-22 10 -31 9 -10 -2 -18 0 -18 5 0 4 -13 6 -30 5 -16 -1 -30 2 -30 8 0 6 -3 8\n-6 4 -3 -3 -17 -2 -31 4 -18 7 -22 6 -17 -4 6 -9 3 -8 -8 1 -9 8 -25 13 -35\n12 -10 -1 -21 -1 -25 0 -5 1 -17 4 -28 5 -11 1 -21 4 -22 5 -2 1 -45 3 -96 4\n-60 1 -97 -3 -103 -10z m-1789 -458 c0 -2 -7 -7 -16 -10 -8 -3 -12 -2 -9 4 6\n10 25 14 25 6z m-63 -70 c0 -8 -5 -14 -11 -13 -6 1 -10 -4 -8 -10 1 -7 -4 -12\n-10 -10 -7 1 -12 -4 -10 -10 1 -7 -4 -12 -10 -10 -7 1 -12 -4 -10 -11 1 -8 -2\n-11 -9 -7 -7 5 3 21 27 46 21 22 39 39 39 39 1 0 2 -6 2 -14z m-1617 -152 c0\n-8 -19 -13 -24 -6 -3 5 1 9 9 9 8 0 15 -2 15 -3z m301 -29 c9 2 16 -3 16 -11\n0 -9 -4 -11 -12 -4 -7 5 -14 8 -17 5 -3 -3 -11 3 -19 12 -12 16 -12 17 1 7 8\n-6 22 -10 31 -9z m321 -139 c3 3 9 1 12 -4 8 -14 -18 -9 -36 6 -8 6 -17 10\n-20 7 -2 -3 -5 2 -5 10 0 12 5 11 22 -5 12 -11 24 -18 27 -14z m228 -82 c6 19\n7 19 12 -1 4 -15 1 -20 -11 -18 -9 1 -16 8 -17 16 -1 10 0 10 4 -1 4 -12 6\n-11 12 4z m42 -16 c-8 -8 -9 -4 -5 13 4 13 8 18 11 10 2 -7 -1 -18 -6 -23z\"\n />\n <Path d=\"M2045 1080 c4 -6 11 -8 16 -5 14 9 11 15 -7 15 -8 0 -12 -5 -9 -10z\" />\n <Path\n d=\"M1841 883 c-12 -13 -21 -26 -19 -29 3 -2 15 7 28 21 13 14 22 27 19\n29 -2 2 -15 -8 -28 -21z\"\n />\n <Path d=\"M530 841 c0 -6 4 -13 10 -16 6 -3 7 1 4 9 -7 18 -14 21 -14 7z\" />\n <Path d=\"M1124 609 c-3 -6 -2 -15 3 -20 5 -5 9 -1 9 11 0 23 -2 24 -12 9z\" />\n </G>\n </Svg>\n );\n};\n","import * as React from 'react';\nimport {normalize} from '../utils/helpers';\nimport Color from '../theme/Color';\nimport Svg, {Path} from 'react-native-svg';\n\nexport interface HeaderProps {\n width: number;\n height: number;\n color: string;\n}\n\nconst WIDTH = 17;\nconst HEIGHT = 17;\n\nexport const HeaderHelp = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg width={width} height={height} viewBox=\"0 0 20 20\" fill={strokeColor}>\n <Path\n d=\"M7.11956 8.09317C7.11956 5.60254 9.59056 4.46819 11.41 5.36853C12.5593 5.93725 13.26 7.30009 13.0294 8.41579C12.8581 9.24476 12.4996 9.72966 11.7763 10.3211L11.4973 10.5424C10.791 11.0964 10.5927 11.3836 10.5927 12.0489C10.5927 12.3713 10.3313 12.6326 10.0089 12.6326C9.68653 12.6326 9.42516 12.3713 9.42516 12.0489C9.42516 11.0017 9.77624 10.4383 10.6297 9.7413L10.905 9.52313C11.5325 9.02974 11.772 8.73156 11.8861 8.17946C12.0071 7.59409 11.5743 6.75251 10.8922 6.41495C9.78568 5.8674 8.28709 6.55535 8.28709 8.09317C8.28709 8.41558 8.02573 8.67694 7.70332 8.67694C7.38092 8.67694 7.11956 8.41558 7.11956 8.09317Z\"\n fill={strokeColor}\n />\n <Path\n d=\"M10.7681 14.227C10.7681 14.62 10.4496 14.9385 10.0566 14.9385C9.66369 14.9385 9.34516 14.62 9.34516 14.227C9.34516 13.8341 9.66369 13.5156 10.0566 13.5156C10.4496 13.5156 10.7681 13.8341 10.7681 14.227Z\"\n fill={strokeColor}\n />\n <Path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M10.0002 1.11133C5.09102 1.11133 1.11133 5.09102 1.11133 10.0002C1.11133 14.9094 5.09102 18.8891 10.0002 18.8891C14.9094 18.8891 18.8891 14.9094 18.8891 10.0002C18.8891 5.09102 14.9094 1.11133 10.0002 1.11133ZM10.0002 2.4282C14.1821 2.4282 17.5722 5.81831 17.5722 10.0002C17.5722 14.1821 14.1821 17.5722 10.0002 17.5722C5.81831 17.5722 2.4282 14.1821 2.4282 10.0002C2.4282 5.81831 5.81831 2.4282 10.0002 2.4282Z\"\n fill={strokeColor}\n />\n </Svg>\n );\n};\n\nexport const HeaderClose = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg width={width} height={height} viewBox=\"0 0 20 20\" fill=\"none\">\n <Path\n d=\"M10.8838 10.0001L16.0669 4.81694C16.311 4.57286 16.311 4.17714 16.0669 3.93306C15.8229 3.68898 15.4271 3.68898 15.1831 3.93306L9.99988 9.11624L4.81694 3.93352C4.57286 3.68944 4.17713 3.68945 3.93306 3.93354C3.68899 4.17762 3.689 4.57335 3.93308 4.81742L9.116 10.0001L3.93306 15.1831C3.68898 15.4272 3.68898 15.8229 3.93306 16.067C4.17714 16.311 4.57286 16.311 4.81694 16.067L9.9999 10.884L15.1831 16.067C15.4272 16.311 15.8229 16.311 16.067 16.0669C16.311 15.8229 16.311 15.4271 16.0669 15.1831L10.8838 10.0001Z\"\n fill={strokeColor}\n />\n </Svg>\n );\n};\n\nexport const HeaderLiveAgent = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg width={width} height={height} viewBox=\"0 0 20 20\" fill={strokeColor}>\n <Path\n d=\"M9.32692 1.25C2.94321 1.25 2.61719 5.45147 2.59615 8.79057C1.81791 9.09555 1.25 9.84225 1.25 10.6731C1.25 11.7458 2.05454 13.3654 3.26923 13.3654C3.3744 13.3654 3.48483 13.3549 3.59525 13.3444C4.58383 16.41 7.02374 18.75 9.32692 18.75C10.4259 18.75 11.5565 18.2031 12.5503 17.2987C12.1454 17.3618 11.7458 17.4038 11.3462 17.4038H9.32692C7.74414 17.4038 5.53561 15.4425 4.76262 12.524L4.54177 11.7563L3.91076 11.9141C3.52163 12.014 3.32182 12.0192 3.26923 12.0192C3.05364 11.9929 2.59615 11.2252 2.59615 10.6731C2.59615 10.3471 2.93795 10.021 3.3113 10L3.94231 9.95793V9.32692C3.94231 5.14123 4.30514 2.59615 9.32692 2.59615C9.48468 2.59615 11.3724 2.60141 12.6187 2.60667L12.1612 3.53741C12.0928 3.70042 11.8457 4.2473 10.9886 4.95192C10 5.77224 8.28576 6.63462 5.28846 6.63462V7.98077C8.54868 7.98077 10.6152 7.00796 11.851 5.99309C12.5083 5.44621 12.9079 4.90986 13.1603 4.49444C14.5433 5.19907 14.7115 6.59781 14.7115 9.32692V12.645C14.559 14.3382 12.2348 14.7115 11.3462 14.7115H10.6731C10.6731 13.9701 10.0684 13.3654 9.32692 13.3654C8.58549 13.3654 7.98077 13.9701 7.98077 14.7115C7.98077 15.453 8.58549 16.0577 9.32692 16.0577H11.3462C13.2024 16.0577 15.2479 15.2689 15.8736 13.5337H16.7308C17.8403 13.5337 18.75 12.6239 18.75 11.5144V10C18.75 8.89047 17.8403 7.98077 16.7308 7.98077H16.0314C15.963 6.05093 15.6318 4.23678 13.7861 3.29026L14.7852 1.27103L13.7019 1.26578C13.7019 1.26578 9.56355 1.25 9.32692 1.25ZM7.30769 9.32692C6.93434 9.32692 6.63462 9.62665 6.63462 10C6.63462 10.3733 6.93434 10.6731 7.30769 10.6731C7.68104 10.6731 7.98077 10.3733 7.98077 10C7.98077 9.62665 7.68104 9.32692 7.30769 9.32692ZM11.3462 9.32692C10.9728 9.32692 10.6731 9.62665 10.6731 10C10.6731 10.3733 10.9728 10.6731 11.3462 10.6731C11.7195 10.6731 12.0192 10.3733 12.0192 10C12.0192 9.62665 11.7195 9.32692 11.3462 9.32692ZM16.0577 9.32692H16.7308C17.1094 9.32692 17.4038 9.62139 17.4038 10V11.5144C17.4038 11.893 17.1094 12.1875 16.7308 12.1875H16.0577V9.32692Z\"\n fill={strokeColor}\n />\n </Svg>\n );\n};\n\nexport const HeaderLeft = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg width={width} height={height} viewBox=\"0 0 24 24\" fill=\"none\">\n <Path\n d=\"M14.3999 18L8.3999 12L14.3999 6\"\n stroke={strokeColor}\n stroke-width=\"1.67\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n </Svg>\n );\n};\n\nexport const HeaderMinimize = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg width={width} height={height} viewBox=\"0 0 20 20\" fill={strokeColor}>\n <Path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M16.8548 10C17.2112 10 17.5 10.2798 17.5 10.625C17.5 10.951 17.2424 11.2187 16.9136 11.2474L16.8548 11.25H3.14516C2.78885 11.25 2.5 10.9702 2.5 10.625C2.5 10.299 2.75765 10.0313 3.08644 10.0026L3.14516 10H16.8548Z\"\n fill={strokeColor}\n />\n </Svg>\n );\n};\n","import * as React from 'react';\nimport {normalize} from '../utils/helpers';\nimport Color from '../theme/Color';\nimport Svg, {Path} from 'react-native-svg';\n\nexport interface SvgProps {\n width: number;\n height: number;\n color: string;\n}\n\nconst WIDTH = 17;\nconst HEIGHT = 17;\n\nexport const MicIcon = (props: SvgProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg width={width} height={height} fill=\"none\" viewBox=\"0 0 20 20\">\n <Path\n d=\"M10 1.875C8.28613 1.875 6.875 3.28613 6.875 5V10C6.875 11.7139 8.28613 13.125 10 13.125C11.7139 13.125 13.125 11.7139 13.125 10V5C13.125 3.28613 11.7139 1.875 10 1.875ZM10 3.125C11.0352 3.125 11.875 3.96484 11.875 5V10C11.875 11.0352 11.0352 11.875 10 11.875C8.96484 11.875 8.125 11.0352 8.125 10V5C8.125 3.96484 8.96484 3.125 10 3.125ZM5 9.375C4.65482 9.375 4.375 9.65482 4.375 10C4.375 12.876 6.57715 15.2441 9.375 15.5615V16.875H7.5C7.15482 16.875 6.875 17.1548 6.875 17.5C6.875 17.8452 7.15482 18.125 7.5 18.125H12.5C12.8452 18.125 13.125 17.8452 13.125 17.5C13.125 17.1548 12.8452 16.875 12.5 16.875H10.625V15.5615C13.4229 15.2441 15.625 12.876 15.625 10C15.625 9.65482 15.3452 9.375 15 9.375C14.6548 9.375 14.375 9.65482 14.375 10C14.375 12.4072 12.4072 14.375 10 14.375C7.59277 14.375 5.625 12.4072 5.625 10C5.625 9.65482 5.34518 9.375 5 9.375Z\"\n fill={strokeColor}\n />\n </Svg>\n );\n};\n\nexport const MenuIcon = (props: SvgProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg width={width} height={height} viewBox=\"0 0 20 20\" fill=\"none\">\n <Path\n d=\"M2.5 3.125C2.15482 3.125 1.875 3.40482 1.875 3.75C1.875 4.09518 2.15482 4.375 2.5 4.375H17.5C17.8452 4.375 18.125 4.09518 18.125 3.75C18.125 3.40482 17.8452 3.125 17.5 3.125H2.5ZM2.5 9.375C2.15482 9.375 1.875 9.65482 1.875 10C1.875 10.3452 2.15482 10.625 2.5 10.625H17.5C17.8452 10.625 18.125 10.3452 18.125 10C18.125 9.65482 17.8452 9.375 17.5 9.375H2.5ZM2.5 15.625C2.15482 15.625 1.875 15.9048 1.875 16.25C1.875 16.5952 2.15482 16.875 2.5 16.875H17.5C17.8452 16.875 18.125 16.5952 18.125 16.25C18.125 15.9048 17.8452 15.625 17.5 15.625H2.5Z\"\n fill={strokeColor}\n />\n </Svg>\n );\n};\n\nexport const AttachmentIcon = (props: SvgProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg width={width} height={height} viewBox=\"0 0 20 20\" fill=\"none\">\n <Path\n d=\"M10 2.5C12.7733 2.5 15 4.79988 15 7.61355V13.341C15 13.7049 14.6924 13.9999 14.313 13.9999C13.9547 13.9999 13.6605 13.7368 13.6289 13.401L13.6261 13.341V7.61355C13.6261 5.5067 11.9908 3.81769 10 3.81769C8.00922 3.81769 6.37393 5.5067 6.37393 7.61355V13.9774C6.37393 15.1951 7.40322 16.1823 8.67291 16.1823C9.94261 16.1823 10.9719 15.1951 10.9719 13.9774V7.61355C10.9719 7.09876 10.5368 6.68143 10 6.68143C9.4856 6.68143 9.06454 7.0647 9.03035 7.54973L9.0281 7.61355V13.341C9.0281 13.7049 8.72054 13.9999 8.34114 13.9999C7.98282 13.9999 7.68857 13.7368 7.65698 13.401L7.65418 13.341V7.61355C7.65418 6.37101 8.70444 5.36374 10 5.36374C11.2956 5.36374 12.3458 6.37101 12.3458 7.61355L12.3458 13.9774C12.3453 15.9224 10.7011 17.5 8.67291 17.5C6.64442 17.5 5 15.9229 5 13.9774V7.61355C5 4.79988 7.22674 2.5 10 2.5Z\"\n fill={strokeColor}\n />\n </Svg>\n );\n};\n\nexport const KeyboardIcon = (props: SvgProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg width={width} height={height} viewBox=\"0 0 20 20\" fill=\"none\">\n <Path\n d=\"M1.875 3.75C0.844726 3.75 0 4.59473 0 5.625V13.125C0 14.1553 0.844726 15 1.875 15H16.875C17.9053 15 18.75 14.1553 18.75 13.125V5.625C18.75 4.59473 17.9053 3.75 16.875 3.75H1.875ZM1.875 5H16.875C17.2266 5 17.5 5.27344 17.5 5.625V13.125C17.5 13.4766 17.2266 13.75 16.875 13.75H1.875C1.52344 13.75 1.25 13.4766 1.25 13.125V5.625C1.25 5.27344 1.52344 5 1.875 5ZM3.125 6.25C2.77982 6.25 2.5 6.52982 2.5 6.875C2.5 7.22018 2.77982 7.5 3.125 7.5C3.47018 7.5 3.75 7.22018 3.75 6.875C3.75 6.52982 3.47018 6.25 3.125 6.25ZM5.625 6.25C5.27982 6.25 5 6.52982 5 6.875C5 7.22018 5.27982 7.5 5.625 7.5C5.97018 7.5 6.25 7.22018 6.25 6.875C6.25 6.52982 5.97018 6.25 5.625 6.25ZM8.125 6.25C7.77982 6.25 7.5 6.52982 7.5 6.875C7.5 7.22018 7.77982 7.5 8.125 7.5C8.47018 7.5 8.75 7.22018 8.75 6.875C8.75 6.52982 8.47018 6.25 8.125 6.25ZM10.625 6.25C10.2798 6.25 10 6.52982 10 6.875C10 7.22018 10.2798 7.5 10.625 7.5C10.9702 7.5 11.25 7.22018 11.25 6.875C11.25 6.52982 10.9702 6.25 10.625 6.25ZM13.125 6.25C12.7798 6.25 12.5 6.52982 12.5 6.875C12.5 7.22018 12.7798 7.5 13.125 7.5C13.4702 7.5 13.75 7.22018 13.75 6.875C13.75 6.52982 13.4702 6.25 13.125 6.25ZM15.625 6.25C15.2798 6.25 15 6.52982 15 6.875C15 7.22018 15.2798 7.5 15.625 7.5C15.9702 7.5 16.25 7.22018 16.25 6.875C16.25 6.52982 15.9702 6.25 15.625 6.25ZM3.125 8.75C2.77982 8.75 2.5 9.02982 2.5 9.375C2.5 9.72018 2.77982 10 3.125 10C3.47018 10 3.75 9.72018 3.75 9.375C3.75 9.02982 3.47018 8.75 3.125 8.75ZM5.625 8.75C5.27982 8.75 5 9.02982 5 9.375C5 9.72018 5.27982 10 5.625 10C5.97018 10 6.25 9.72018 6.25 9.375C6.25 9.02982 5.97018 8.75 5.625 8.75ZM8.125 8.75C7.77982 8.75 7.5 9.02982 7.5 9.375C7.5 9.72018 7.77982 10 8.125 10C8.47018 10 8.75 9.72018 8.75 9.375C8.75 9.02982 8.47018 8.75 8.125 8.75ZM10.625 8.75C10.2798 8.75 10 9.02982 10 9.375C10 9.72018 10.2798 10 10.625 10C10.9702 10 11.25 9.72018 11.25 9.375C11.25 9.02982 10.9702 8.75 10.625 8.75ZM13.125 8.75C12.7798 8.75 12.5 9.02982 12.5 9.375C12.5 9.72018 12.7798 10 13.125 10C13.4702 10 13.75 9.72018 13.75 9.375C13.75 9.02982 13.4702 8.75 13.125 8.75ZM15.625 8.75C15.2798 8.75 15 9.02982 15 9.375C15 9.72018 15.2798 10 15.625 10C15.9702 10 16.25 9.72018 16.25 9.375C16.25 9.02982 15.9702 8.75 15.625 8.75ZM6.875 11.25C6.52982 11.25 6.25 11.5298 6.25 11.875C6.25 12.2202 6.52982 12.5 6.875 12.5H11.875C12.2202 12.5 12.5 12.2202 12.5 11.875C12.5 11.5298 12.2202 11.25 11.875 11.25H6.875ZM3.12744 11.2598C2.78092 11.2598 2.5 11.5407 2.5 11.8872C2.5 12.2337 2.78092 12.5146 3.12744 12.5146H4.37256C4.71909 12.5146 5 12.2337 5 11.8872C5 11.5407 4.71909 11.2598 4.37256 11.2598H3.12744ZM14.397 11.2598C14.0504 11.2598 13.7695 11.5407 13.7695 11.8872C13.7695 12.2337 14.0504 12.5146 14.397 12.5146H15.6421C15.9886 12.5146 16.2695 12.2337 16.2695 11.8872C16.2695 11.5407 15.9886 11.2598 15.6421 11.2598H14.397Z\"\n fill={strokeColor}\n />\n </Svg>\n );\n};\n\nexport const SendIcon = (props: SvgProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.white;\n\n return (\n <Svg width={width} height={height} viewBox=\"0 0 15 14\" fill=\"none\">\n <Path\n d=\"M1.67123 5.0568C1.30302 5.19159 1.27011 5.69959 1.61729 5.88181L6.20644 8.29374L8.61632 12.8819C8.79859 13.2289 9.30601 13.1953 9.44085 12.8272L13.5965 1.4834C13.7288 1.12213 13.378 0.771245 13.0167 0.903509L1.67123 5.0568ZM2.9406 5.55723L11.4048 2.45618L6.45612 7.40487L2.9406 5.55723ZM7.0953 8.04405L12.044 3.09537L8.94544 11.5621L7.0953 8.04405Z\"\n fill={strokeColor}\n />\n </Svg>\n );\n};\n\nexport const HappyIcon = (props: SvgProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.white;\n\n return (\n <Svg width={width} height={height} viewBox=\"0 0 20 20\" fill=\"none\">\n <Path\n d=\"M5.96154 8.29627C5.96154 7.65625 6.47987 7.14243 7.11538 7.14243C7.7509 7.14243 8.26923 7.65625 8.26923 8.29627C8.26923 8.93179 7.7509 9.45012 7.11538 9.45012C6.47987 9.45012 5.96154 8.93179 5.96154 8.29627Z\"\n fill={strokeColor}\n />\n <Path\n d=\"M11.7308 8.29627C11.7308 7.65625 12.2491 7.14243 12.8846 7.14243C13.5201 7.14243 14.0385 7.65625 14.0385 8.29627C14.0385 8.93179 13.5201 9.45012 12.8846 9.45012C12.2491 9.45012 11.7308 8.93179 11.7308 8.29627Z\"\n fill={strokeColor}\n />\n <Path\n d=\"M6.52563 12.561C6.41013 12.4503 6.34275 12.2963 6.33794 12.1375C6.32831 11.8824 6.4775 11.6466 6.71331 11.5504C6.94912 11.4493 7.21862 11.5023 7.39669 11.6899C8.06562 12.3541 8.98481 12.7679 10.0051 12.7679C11.0253 12.7679 11.9445 12.3541 12.6134 11.6899C12.854 11.4493 13.2439 11.4493 13.4845 11.6899C13.7251 11.9306 13.7251 12.3204 13.4845 12.561C12.5942 13.4465 11.3622 13.9999 10.0051 13.9999C8.64793 13.9999 7.41594 13.4465 6.52563 12.561Z\"\n fill={strokeColor}\n />\n <Path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.5 10C2.5 5.86689 5.86689 2.5 10 2.5C14.1331 2.5 17.5 5.86689 17.5 10C17.5 14.1331 14.1331 17.5 10 17.5C5.86689 17.5 2.5 14.1331 2.5 10ZM16.3462 10C16.3462 6.48888 13.5111 3.65385 10 3.65385C6.48888 3.65385 3.65385 6.48888 3.65385 10C3.65385 13.5111 6.48888 16.3462 10 16.3462C13.5111 16.3462 16.3462 13.5111 16.3462 10Z\"\n fill={strokeColor}\n />\n </Svg>\n );\n};\n","import * as React from 'react';\nimport {normalize} from '../utils/helpers';\nimport Color from '../theme/Color';\nimport Svg, {Defs, LinearGradient, Path, Stop} from 'react-native-svg';\n\nexport interface HeaderProps {\n width: number;\n height: number;\n color: string;\n}\n\nconst WIDTH = 17;\nconst HEIGHT = 17;\n\nexport const IcIcon_1 = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg width={width} height={height} viewBox=\"0 0 24 18\">\n <Path\n fill={strokeColor}\n fill-rule=\"nonzero\"\n d=\"M12.6667 7.4618V10.0965C12.0584 10.8017 11.2505 11.0427 10.4419 11.0427C9.00304 11.0427 8 9.99141 8 8.78878C8 7.56693 9.00304 6.49573 10.4419 6.49573C11.2505 6.49573 12.0584 6.74061 12.6667 7.4618Z\"\n />\n <Path\n fill={strokeColor}\n fill-rule=\"evenodd\"\n d=\"M21.1338 0H4.86687C4.49043 0 4.11765 0.073067 3.76982 0.215302C3.422 0.357538 3.10596 0.566062 2.83973 0.828966C2.57351 1.09187 2.36233 1.404 2.21824 1.74754C2.07416 2.09107 2 2.45928 2 2.83112V11.889C4.15213 11.8975 5.83353 13.5193 5.83353 15.5982C5.83702 16.2822 5.64868 16.9538 5.28938 17.5385H21.1338C21.8938 17.5379 22.6225 17.2394 23.1599 16.7086C23.6973 16.1778 23.9994 15.458 24 14.7073V2.83397C24.0005 2.46191 23.9267 2.09342 23.7828 1.74956C23.639 1.4057 23.428 1.09323 23.1617 0.830014C22.8955 0.5668 22.5794 0.35801 22.2315 0.215588C21.8835 0.0731658 21.5105 0 21.1338 0ZM15.3965 13.5328H12.7088V12.8055C11.9948 13.2655 11.1253 13.5328 10.0824 13.5328C7.52933 13.5328 5.46069 11.4326 5.46069 8.77776C5.46069 6.08457 7.52933 4.0014 10.0824 4.0014C11.1232 4.0014 11.9948 4.26873 12.7088 4.72873V4.0014H15.3965V13.5328ZM20.5415 13.5328H17.8538V4.0014H20.5451L20.5415 13.5328Z\"\n />\n <Path\n fill={strokeColor}\n fill-rule=\"nonzero\"\n d=\"M1.98691 13.6411C0.899346 13.6411 0 14.4768 0 15.5772C0 16.7028 0.899346 17.5385 1.98691 17.5385C3.10065 17.5385 4 16.7028 4 15.5772C4 14.4761 3.10065 13.6411 1.98691 13.6411Z\"\n />\n </Svg>\n );\n};\n\nexport const IcIcon_2 = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg width={width} height={height} viewBox=\"0 0 22 20\">\n <Path\n fill={strokeColor}\n fill-rule=\"nonzero\"\n d=\"M2.5 0C1.26606 0 0.25 1.01606 0.25 2.25V9.75C0.25 10.9839 1.26606 12 2.5 12H4.74414V15L8.74316 12H13C14.2339 12 15.25 10.9839 15.25 9.75V2.25C15.25 1.01606 14.2339 0 13 0H2.5ZM2.5 1.5H13C13.4191 1.5 13.75 1.83094 13.75 2.25V9.75C13.75 10.1691 13.4191 10.5 13 10.5H8.24512L6.24414 12V10.5H2.5C2.08094 10.5 1.75 10.1691 1.75 9.75V2.25C1.75 1.83094 2.08094 1.5 2.5 1.5ZM3.25 3V4.5H12.25V3H3.25ZM16.75 4.5V6H19C19.42 6 19.75 6.33 19.75 6.75V14.25C19.75 14.67 19.42 15 19 15H15.25V16.5L13.2549 15H8.5C8.185 15 7.93117 14.8214 7.82617 14.5664L6.625 15.4805C7.015 16.0955 7.705 16.5 8.5 16.5H12.7598L16.75 19.5V16.5H19C20.245 16.5 21.25 15.495 21.25 14.25V6.75C21.25 5.505 20.245 4.5 19 4.5H16.75ZM3.25 6V7.5H9.25V6H3.25Z\"\n />\n </Svg>\n );\n};\nexport const IcIcon_3 = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg width={width} height={height} viewBox=\"0 0 19 18\">\n <Path\n d=\"M5.766,9H5.776M9.5,9H9.509M13.233,9H13.242M17.9,9C17.9,13.124 14.139,16.467 9.5,16.467C8.063,16.467 6.711,16.146 5.528,15.581L1.1,16.467L2.402,12.995C1.577,11.84 1.1,10.469 1.1,9C1.1,4.876 4.86,1.533 9.5,1.533C14.139,1.533 17.9,4.876 17.9,9Z\"\n fill=\"none\"\n stroke={strokeColor}\n stroke-width=\"1.67\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n </Svg>\n );\n};\n\nexport const IcIcon_4 = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg width={width} height={height} viewBox=\"0 0 22 22\">\n <Path\n d=\"M11.25,0.5C5.451,0.5 0.75,5.201 0.75,11C0.75,16.799 5.451,21.5 11.25,21.5C17.049,21.5 21.75,16.799 21.75,11C21.75,5.201 17.049,0.5 11.25,0.5ZM11.25,2.056C16.19,2.056 20.195,6.06 20.195,11C20.195,15.94 16.19,19.945 11.25,19.945C6.31,19.945 2.306,15.94 2.306,11C2.306,6.06 6.31,2.056 11.25,2.056ZM11.282,6.4C11.705,6.4 12.052,6.711 12.089,7.107L12.092,7.178V7.25C12.092,7.68 11.729,8.028 11.282,8.028C10.86,8.028 10.513,7.717 10.476,7.321L10.472,7.25V7.178C10.472,6.749 10.835,6.4 11.282,6.4ZM11.25,9.5C11.656,9.5 11.989,9.811 12.024,10.207L12.028,10.278V16.074C12.028,16.504 11.679,16.852 11.25,16.852C10.844,16.852 10.511,16.541 10.475,16.145L10.472,16.074V10.278C10.472,9.848 10.82,9.5 11.25,9.5Z\"\n fill={strokeColor}\n fill-rule=\"evenodd\"\n />\n </Svg>\n );\n};\n\nexport const Koreai_logo = (props: HeaderProps) => {\n let width = props.width || normalize(WIDTH);\n let height = props.height || normalize(HEIGHT);\n let strokeColor = props.color || Color.black;\n\n return (\n <Svg width={width} height={height} viewBox=\"0 0 41 10\" fill=\"none\">\n <Path\n d=\"M13.2751 5.23168C12.7964 4.75169 12.1468 4.48127 11.4689 4.47979C10.7911 4.47831 10.1403 4.74588 9.65953 5.22378C9.98131 4.90831 10.4144 4.73232 10.865 4.73392C11.3156 4.73553 11.7474 4.9146 12.0669 5.23235C12.3865 5.55011 12.568 5.98096 12.5722 6.4316C12.5763 6.88224 12.4028 7.31639 12.0893 7.64001L12.0869 7.64239L12.0754 7.65424L12.0569 7.67242C11.5772 8.15393 10.926 8.42517 10.2465 8.42647C9.56689 8.42776 8.91464 8.15901 8.4332 7.67934C7.95176 7.19966 7.68056 6.54835 7.67926 5.86869C7.67796 5.18903 7.94668 4.53669 8.42629 4.05518C7.78623 4.69453 7.42634 5.562 7.42578 6.46675C7.42523 7.3715 7.78405 8.23941 8.42332 8.87955C9.06259 9.5197 9.92994 9.87964 10.8346 9.8802C11.7392 9.88075 12.607 9.52188 13.247 8.88252C13.2514 8.87856 13.2557 8.87461 13.2597 8.87027L13.2755 8.85485L13.2806 8.84932C13.2877 8.8426 13.2944 8.83549 13.3012 8.82837L13.3103 8.81928C13.7751 8.33569 14.0318 7.68908 14.0252 7.0183C14.0186 6.34752 13.7493 5.70607 13.2751 5.23168Z\"\n fill=\"url(#paint0_linear_12409_520)\"\n />\n <Path\n d=\"M12.4082 3.42157C11.7709 3.09462 11.0469 2.97655 10.3387 3.08408C9.63061 3.19161 8.97426 3.51929 8.46271 4.02069L8.45125 4.03215L8.43939 4.04401L8.41647 4.06693C7.93802 4.54964 7.67089 5.20268 7.67385 5.88238C7.67682 6.56208 7.94963 7.21276 8.43228 7.69128C8.91493 8.16981 9.56788 8.43697 10.2475 8.43401C10.9271 8.43104 11.5777 8.15819 12.0561 7.67548C11.7339 7.99493 11.2981 8.1735 10.8444 8.17202C10.3907 8.17053 9.95606 7.98911 9.63591 7.66756C9.31576 7.34601 9.13621 6.91057 9.13665 6.45679C9.13709 6.003 9.31748 5.56792 9.63826 5.24699L9.64893 5.23671C10.1305 4.77099 10.7753 4.51243 11.4452 4.51644C12.1151 4.52045 12.7568 4.7867 13.2328 5.25815C13.7087 5.7296 13.9812 6.36875 13.9917 7.03866C14.0022 7.70856 13.7499 8.35595 13.289 8.8421C13.6623 8.45999 13.9407 7.99557 14.1017 7.48622C14.2628 6.97687 14.3021 6.43682 14.2164 5.90952C14.1308 5.38221 13.9225 4.88239 13.6084 4.45027C13.2944 4.01815 12.8833 3.6658 12.4082 3.42157Z\"\n fill=\"#17A674\"\n />\n <Path\n d=\"M12.4082 3.42157C11.7709 3.09462 11.0469 2.97655 10.3387 3.08408C9.63061 3.19161 8.97426 3.51929 8.46271 4.02069L8.45125 4.03215L8.43939 4.04401L8.41647 4.06693C7.93802 4.54964 7.67089 5.20268 7.67385 5.88238C7.67682 6.56208 7.94963 7.21276 8.43228 7.69128C8.91493 8.16981 9.56788 8.43697 10.2475 8.43401C10.9271 8.43104 11.5777 8.15819 12.0561 7.67548C11.7339 7.99493 11.2981 8.1735 10.8444 8.17202C10.3907 8.17053 9.95606 7.98911 9.63591 7.66756C9.31576 7.34601 9.13621 6.91057 9.13665 6.45679C9.13709 6.003 9.31748 5.56792 9.63826 5.24699L9.64893 5.23671C10.1305 4.77099 10.7753 4.51243 11.4452 4.51644C12.1151 4.52045 12.7568 4.7867 13.2328 5.25815C13.7087 5.7296 13.9812 6.36875 13.9917 7.03866C14.0022 7.70856 13.7499 8.35595 13.289 8.8421C13.6623 8.45999 13.9407 7.99557 14.1017 7.48622C14.2628 6.97687 14.3021 6.43682 14.2164 5.90952C14.1308 5.38221 13.9225 4.88239 13.6084 4.45027C13.2944 4.01815 12.8833 3.6658 12.4082 3.42157Z\"\n fill=\"url(#paint1_linear_12409_520)\"\n />\n <Path\n d=\"M12.4082 3.42157C11.7709 3.09462 11.0469 2.97655 10.3387 3.08408C9.63061 3.19161 8.97426 3.51929 8.46271 4.02069L8.45125 4.03215L8.43939 4.04401L8.41647 4.06693C7.93802 4.54964 7.67089 5.20268 7.67385 5.88238C7.67682 6.56208 7.94963 7.21276 8.43228 7.69128C8.91493 8.16981 9.56788 8.43697 10.2475 8.43401C10.9271 8.43104 11.5777 8.15819 12.0561 7.67548C11.7339 7.99493 11.2981 8.1735 10.8444 8.17202C10.3907 8.17053 9.95606 7.98911 9.63591 7.66756C9.31576 7.34601 9.13621 6.91057 9.13665 6.45679C9.13709 6.003 9.31748 5.56792 9.63826 5.24699L9.64893 5.23671C10.1305 4.77099 10.7753 4.51243 11.4452 4.51644C12.1151 4.52045 12.7568 4.7867 13.2328 5.25815C13.7087 5.7296 13.9812 6.36875 13.9917 7.03866C14.0022 7.70856 13.7499 8.35595 13.289 8.8421C13.6623 8.45999 13.9407 7.99557 14.1017 7.48622C14.2628 6.97687 14.3021 6.43682 14.2164 5.90952C14.1308 5.38221 13.9225 4.88239 13.6084 4.45027C13.2944 4.01815 12.8833 3.6658 12.4082 3.42157Z\"\n fill=\"url(#paint2_linear_12409_520)\"\n />\n <Path\n d=\"M12.4082 3.42157C11.7709 3.09462 11.0469 2.97655 10.3387 3.08408C9.63061 3.19161 8.97426 3.51929 8.46271 4.02069L8.45125 4.03215L8.43939 4.04401L8.41647 4.06693C7.93802 4.54964 7.67089 5.20268 7.67385 5.88238C7.67682 6.56208 7.94963 7.21276 8.43228 7.69128C8.91493 8.16981 9.56788 8.43697 10.2475 8.43401C10.9271 8.43104 11.5777 8.15819 12.0561 7.67548C11.7339 7.99493 11.2981 8.1735 10.8444 8.17202C10.3907 8.17053 9.95606 7.98911 9.63591 7.66756C9.31576 7.34601 9.13621 6.91057 9.13665 6.45679C9.13709 6.003 9.31748 5.56792 9.63826 5.24699L9.64893 5.23671C10.1305 4.77099 10.7753 4.51243 11.4452 4.51644C12.1151 4.52045 12.7568 4.7867 13.2328 5.25815C13.7087 5.7296 13.9812 6.36875 13.9917 7.03866C14.0022 7.70856 13.7499 8.35595 13.289 8.8421C13.6623 8.45999 13.9407 7.99557 14.1017 7.48622C14.2628 6.97687 14.3021 6.43682 14.2164 5.90952C14.1308 5.38221 13.9225 4.88239 13.6084 4.45027C13.2944 4.01815 12.8833 3.6658 12.4082 3.42157Z\"\n fill=\"url(#paint3_linear_12409_520)\"\n />\n <Path\n d=\"M12.4082 3.42157C11.7709 3.09462 11.0469 2.97655 10.3387 3.08408C9.63061 3.19161 8.97426 3.51929 8.46271 4.02069L8.45125 4.03215L8.43939 4.04401L8.41647 4.06693C7.93802 4.54964 7.67089 5.20268 7.67385 5.88238C7.67682 6.56208 7.94963 7.21276 8.43228 7.69128C8.91493 8.16981 9.56788 8.43697 10.2475 8.43401C10.9271 8.43104 11.5777 8.15819 12.0561 7.67548C11.7339 7.99493 11.2981 8.1735 10.8444 8.17202C10.3907 8.17053 9.95606 7.98911 9.63591 7.66756C9.31576 7.34601 9.13621 6.91057 9.13665 6.45679C9.13709 6.003 9.31748 5.56792 9.63826 5.24699L9.64893 5.23671C10.1305 4.77099 10.7753 4.51243 11.4452 4.51644C12.1151 4.52045 12.7568 4.7867 13.2328 5.25815C13.7087 5.7296 13.9812 6.36875 13.9917 7.03866C14.0022 7.70856 13.7499 8.35595 13.289 8.8421C13.6623 8.45999 13.9407 7.99557 14.1017 7.48622C14.2628 6.97687 14.3021 6.43682 14.2164 5.90952C14.1308 5.38221 13.9225 4.88239 13.6084 4.45027C13.2944 4.01815 12.8833 3.6658 12.4082 3.42157Z\"\n fill=\"url(#paint4_linear_12409_520)\"\n />\n <Path\n d=\"M12.4082 3.42157C11.7709 3.09462 11.0469 2.97655 10.3387 3.08408C9.63061 3.19161 8.97426 3.51929 8.46271 4.02069L8.45125 4.03215L8.43939 4.04401L8.41647 4.06693C7.93802 4.54964 7.67089 5.20268 7.67385 5.88238C7.67682 6.56208 7.94963 7.21276 8.43228 7.69128C8.91493 8.16981 9.56788 8.43697 10.2475 8.43401C10.9271 8.43104 11.5777 8.15819 12.0561 7.67548C11.7339 7.99493 11.2981 8.1735 10.8444 8.17202C10.3907 8.17053 9.95606 7.98911 9.63591 7.66756C9.31576 7.34601 9.13621 6.91057 9.13665 6.45679C9.13709 6.003 9.31748 5.56792 9.63826 5.24699L9.64893 5.23671C10.1305 4.77099 10.7753 4.51243 11.4452 4.51644C12.1151 4.52045 12.7568 4.7867 13.2328 5.25815C13.7087 5.7296 13.9812 6.36875 13.9917 7.03866C14.0022 7.70856 13.7499 8.35595 13.289 8.8421C13.6623 8.45999 13.9407 7.99557 14.1017 7.48622C14.2628 6.97687 14.3021 6.43682 14.2164 5.90952C14.1308 5.38221 13.9225 4.88239 13.6084 4.45027C13.2944 4.01815 12.8833 3.6658 12.4082 3.42157Z\"\n fill=\"url(#paint5_linear_12409_520)\"\n />\n <Path\n d=\"M12.4082 3.42157C11.7709 3.09462 11.0469 2.97655 10.3387 3.08408C9.63061 3.19161 8.97426 3.51929 8.46271 4.02069L8.45125 4.03215L8.43939 4.04401L8.41647 4.06693C7.93802 4.54964 7.67089 5.20268 7.67385 5.88238C7.67682 6.56208 7.94963 7.21276 8.43228 7.69128C8.91493 8.16981 9.56788 8.43697 10.2475 8.43401C10.9271 8.43104 11.5777 8.15819 12.0561 7.67548C11.7339 7.99493 11.2981 8.1735 10.8444 8.17202C10.3907 8.17053 9.95606 7.98911 9.63591 7.66756C9.31576 7.34601 9.13621 6.91057 9.13665 6.45679C9.13709 6.003 9.31748 5.56792 9.63826 5.24699L9.64893 5.23671C10.1305 4.77099 10.7753 4.51243 11.4452 4.51644C12.1151 4.52045 12.7568 4.7867 13.2328 5.25815C13.7087 5.7296 13.9812 6.36875 13.9917 7.03866C14.0022 7.70856 13.7499 8.35595 13.289 8.8421C13.6623 8.45999 13.9407 7.99557 14.1017 7.48622C14.2628 6.97687 14.3021 6.43682 14.2164 5.90952C14.1308 5.38221 13.9225 4.88239 13.6084 4.45027C13.2944 4.01815 12.8833 3.6658 12.4082 3.42157Z\"\n fill=\"url(#paint6_linear_12409_520)\"\n />\n <Path\n d=\"M34.372 4.19049V5.8073C34.0482 6.24002 33.6181 6.38793 33.1877 6.38793C32.4217 6.38793 31.8877 5.74278 31.8877 5.00479C31.8877 4.255 32.4217 3.59766 33.1877 3.59766C33.6181 3.59766 34.0482 3.74793 34.372 4.19049Z\"\n fill=\"#111827\"\n />\n <Path\n d=\"M38.9445 0.147949H30.1164C29.9121 0.147898 29.7098 0.188377 29.521 0.267076C29.3323 0.345775 29.1608 0.461151 29.0163 0.606615C28.8718 0.752079 28.7572 0.924782 28.679 1.11486C28.6008 1.30494 28.5605 1.50866 28.5605 1.71441V6.72613C29.7285 6.73085 30.641 7.62816 30.641 8.77842C30.6429 9.15686 30.5407 9.52844 30.3457 9.85196H38.9445C39.357 9.85165 39.7524 9.68651 40.0441 9.39281C40.3357 9.09911 40.4997 8.70086 40.5 8.28551V1.71598C40.5003 1.51012 40.4602 1.30624 40.3821 1.11598C40.3041 0.925722 40.1895 0.752831 40.0451 0.607195C39.9006 0.461559 39.729 0.346036 39.5402 0.267234C39.3514 0.188432 39.1489 0.147897 38.9445 0.147949ZM35.8309 7.63563H34.3723V7.2332C33.9848 7.48772 33.5129 7.63563 32.9469 7.63563C31.5613 7.63563 30.4387 6.47358 30.4387 5.00468C30.4387 3.51454 31.5613 2.36192 32.9469 2.36192C33.5117 2.36192 33.9848 2.50983 34.3723 2.76435V2.36192H35.8309V7.63563ZM38.623 7.63563H37.1644V2.36192H38.625L38.623 7.63563Z\"\n fill=\"#111827\"\n />\n <Path\n d=\"M4.87813 5.87122L7.49766 3.06206H5.0625L2.45742 5.88539V0.145508H0.5V9.85424H2.45742V8.44947L3.54258 7.30196L5.32969 9.85424H7.79297L4.87813 5.87122Z\"\n fill=\"#111827\"\n />\n <Path\n d=\"M16.8527 3.92404V3.05859H14.9258V9.85431H16.8527V5.86421C17.4082 5.25014 18.1418 4.94291 19.1813 4.90239V3.05977C18.1977 3.05977 17.4484 3.36661 16.8527 3.92404Z\"\n fill=\"#111827\"\n />\n <Path\n d=\"M25.9139 6.29483C25.9139 4.29997 24.5498 2.99512 22.7178 2.99512C20.6963 2.99512 19.3193 4.43569 19.3193 6.42819C19.3193 8.35577 20.7096 9.85063 22.7686 9.85063C24.2815 9.85063 25.485 9.00053 25.8322 7.76019H23.8951C23.6938 8.08407 23.3321 8.24602 22.81 8.24602C21.7943 8.24602 21.2994 7.65319 21.1525 6.89867H25.8737C25.9028 6.69877 25.9163 6.49686 25.9139 6.29483ZM21.1643 5.79484C21.3389 5.06904 21.833 4.54269 22.7291 4.54269C23.4787 4.54269 23.9608 4.988 24.067 5.79484H21.1643Z\"\n fill=\"#111827\"\n />\n <Path\n d=\"M28.5539 7.71143C27.9535 7.71143 27.457 8.1709 27.457 8.77592C27.457 9.39472 27.9535 9.85419 28.5539 9.85419C29.1688 9.85419 29.6652 9.39472 29.6652 8.77592C29.6652 8.17051 29.1688 7.71143 28.5539 7.71143Z\"\n fill=\"#111827\"\n />\n <Path\n d=\"M9.63184 5.25069L9.64009 5.24268C9.63791 5.24457 9.63586 5.24663 9.63398 5.24884L9.63184 5.25069Z\"\n fill=\"url(#paint7_linear_12409_520)\"\n />\n <Path\n d=\"M13.2143 8.85636L13.2182 8.85205L13.2051 8.8653L13.2143 8.85636Z\"\n fill=\"url(#paint8_linear_12409_520)\"\n />\n <Defs>\n <LinearGradient\n id=\"paint0_linear_12409_520\"\n x1=\"8.09462\"\n y1=\"8.5346\"\n x2=\"13.7939\"\n y2=\"4.76037\"\n gradientUnits=\"userSpaceOnUse\">\n <Stop stopColor=\"#8C8EFF\" />\n <Stop offset=\"0.549246\" stopColor=\"#4B4EFC\" />\n <Stop offset=\"1\" stopColor=\"#3D40F2\" />\n </LinearGradient>\n <LinearGradient\n id=\"paint1_linear_12409_520\"\n x1=\"11.9113\"\n y1=\"5.50395\"\n x2=\"14.4807\"\n y2=\"3.86994\"\n gradientUnits=\"userSpaceOnUse\">\n <Stop stopColor=\"#BFC527\" stopOpacity=\"0\" />\n <Stop offset=\"1\" stopColor=\"#BFC527\" />\n </LinearGradient>\n <LinearGradient\n id=\"paint2_linear_12409_520\"\n x1=\"11.2253\"\n y1=\"4.58099\"\n x2=\"10.6141\"\n y2=\"6.76368\"\n gradientUnits=\"userSpaceOnUse\">\n <Stop stopColor=\"#FEC412\" />\n <Stop offset=\"1\" stopColor=\"#FEC412\" stopOpacity=\"0\" />\n </LinearGradient>\n <LinearGradient\n id=\"paint3_linear_12409_520\"\n x1=\"9.19214\"\n y1=\"6.27724\"\n x2=\"12.6347\"\n y2=\"6.37703\"\n gradientUnits=\"userSpaceOnUse\">\n <Stop stopColor=\"#E05063\" />\n <Stop offset=\"1\" stopColor=\"#E05063\" stopOpacity=\"0\" />\n </LinearGradient>\n <LinearGradient\n id=\"paint4_linear_12409_520\"\n x1=\"9.29193\"\n y1=\"7.13784\"\n x2=\"11.1004\"\n y2=\"4.76799\"\n gradientUnits=\"userSpaceOnUse\">\n <Stop stopColor=\"#AF348D\" />\n <Stop offset=\"1\" stopColor=\"#AF348D\" stopOpacity=\"0\" />\n </LinearGradient>\n <LinearGradient\n id=\"paint5_linear_12409_520\"\n x1=\"11.2627\"\n y1=\"8.1107\"\n x2=\"10.3023\"\n y2=\"4.84288\"\n gradientUnits=\"userSpaceOnUse\">\n <Stop stopColor=\"#3596D5\" />\n <Stop offset=\"1\" stopColor=\"#3596D5\" stopOpacity=\"0\" />\n </LinearGradient>\n <LinearGradient\n id=\"paint6_linear_12409_520\"\n x1=\"13.5827\"\n y1=\"8.41004\"\n x2=\"11.6744\"\n y2=\"6.87583\"\n gradientUnits=\"userSpaceOnUse\">\n <Stop stopColor=\"#17A674\" />\n <Stop offset=\"1\" stopColor=\"#17A674\" stopOpacity=\"0\" />\n </LinearGradient>\n <LinearGradient\n id=\"paint7_linear_12409_520\"\n x1=\"10.8559\"\n y1=\"6.96799\"\n x2=\"11.5368\"\n y2=\"6.26582\"\n gradientUnits=\"userSpaceOnUse\">\n <Stop stopColor=\"#009DAB\" stopOpacity=\"0\" />\n <Stop offset=\"1\" stopColor=\"#009DAB\" />\n </LinearGradient>\n <LinearGradient\n id=\"paint8_linear_12409_520\"\n x1=\"15.0438\"\n y1=\"6.94979\"\n x2=\"11.8605\"\n y2=\"10.2201\"\n gradientUnits=\"userSpaceOnUse\">\n <Stop offset=\"0.24\" stopColor=\"#009DAB\" stopOpacity=\"0\" />\n <Stop offset=\"1\" stopColor=\"#009DAB\" />\n </LinearGradient>\n </Defs>\n </Svg>\n );\n};\n","/* eslint-disable @typescript-eslint/no-unused-vars */\nimport * as React from 'react';\nimport {normalize} from '../utils/helpers';\nimport Color from '../theme/Color';\nimport Svg, {Defs, G, Image, Path, Pattern, Rect, Use} from 'react-native-svg';\n\nexport interface SvgProps {\n width: number;\n height: number;\n color: string;\n style?: any;\n}\n\nconst WIDTH = 17;\nconst HEIGHT = 17;\n\nexport const UnLike = (_props: SvgProps) => {\n //let width = props.width || normalize(WIDTH);\n // let height = props.height || normalize(HEIGHT);\n // let strokeColor = props.color || Color.black;\n // let style = props.style;\n return (\n <Svg width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\n <Path\n d=\"M17.3083 9.5625C17.3083 10.2874 16.7207 10.875 15.9958 10.875C15.2709 10.875 14.6833 10.2874 14.6833 9.5625V4.3125C14.6833 3.58763 15.2709 3 15.9958 3C16.7207 3 17.3083 3.58763 17.3083 4.3125V9.5625Z\"\n fill=\"#DC2626\"\n />\n <Path\n d=\"M13.8083 9.70833V4.95656C13.8083 4.29371 13.4338 3.68775 12.8409 3.39131L12.7973 3.3695C12.3113 3.12651 11.7754 3 11.2321 3L6.49298 3C5.65879 3 4.94056 3.5888 4.77696 4.4068L3.72696 9.6568C3.51038 10.7397 4.33865 11.75 5.44298 11.75H8.55832V15.25C8.55832 16.2165 9.34182 17 10.3083 17C10.7916 17 11.1833 16.6082 11.1833 16.125V15.5417C11.1833 14.7844 11.4289 14.0475 11.8833 13.4417L13.1083 11.8083C13.5627 11.2025 13.8083 10.4656 13.8083 9.70833Z\"\n fill=\"#DC2626\"\n />\n </Svg>\n );\n};\n\nexport const Like = (_props: SvgProps) => {\n // let width = props.width || normalize(WIDTH);\n // let height = props.height || normalize(HEIGHT);\n // let strokeColor = props.color || Color.black;\n // let style = props.style;\n return (\n <Svg width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\n <Path\n d=\"M3.69238 10.4375C3.69238 9.71263 4.28001 9.125 5.00488 9.125C5.72976 9.125 6.31738 9.71263 6.31738 10.4375V15.6875C6.31738 16.4124 5.72976 17 5.00488 17C4.28001 17 3.69238 16.4124 3.69238 15.6875V10.4375Z\"\n fill=\"#16A34A\"\n />\n <Path\n d=\"M7.19238 10.2917V15.0434C7.19238 15.7063 7.56689 16.3123 8.15976 16.6087L8.20337 16.6305C8.68937 16.8735 9.22526 17 9.76862 17H14.5077C15.3419 17 16.0601 16.4112 16.2237 15.5932L17.2737 10.3432C17.4903 9.26032 16.6621 8.25 15.5577 8.25H12.4424V4.75C12.4424 3.7835 11.6589 3 10.6924 3C10.2091 3 9.81738 3.39175 9.81738 3.875V4.45833C9.81738 5.21563 9.57176 5.9525 9.11738 6.55833L7.89238 8.19167C7.43801 8.7975 7.19238 9.53437 7.19238 10.2917Z\"\n fill=\"#16A34A\"\n />\n </Svg>\n );\n};\n","import React, {useState} from 'react';\nimport {LayoutChangeEvent, View, Text} from 'react-native';\nimport Animated, {\n useAnimatedStyle,\n useSharedValue,\n withTiming,\n} from 'react-native-reanimated';\n\nexport const CollapsableContainer = ({\n children,\n expanded,\n}: {\n children: React.ReactNode;\n expanded: boolean;\n}) => {\n const [height, setHeight] = useState(0);\n const animatedHeight = useSharedValue(0);\n\n const onLayout = (event: LayoutChangeEvent) => {\n const onLayoutHeight = event.nativeEvent.layout.height;\n\n if (onLayoutHeight > 0 && height !== onLayoutHeight) {\n setHeight(onLayoutHeight);\n }\n };\n\n const collapsableStyle = useAnimatedStyle(() => {\n animatedHeight.value = expanded ? withTiming(height) : withTiming(0);\n\n return {\n height: animatedHeight.value,\n };\n }, [expanded, height]);\n\n return (\n <Animated.View style={[collapsableStyle, {overflow: 'scroll'}]}>\n <View style={{position: 'relative'}} onLayout={onLayout}>\n {children}\n </View>\n </Animated.View>\n );\n};\n","import {StyleSheet} from 'react-native';\nimport {normalize} from '../utils/helpers';\nimport Color from './Color';\nexport const TEMPLATE_STYLE_VALUES = {\n BORDER_WIDTH: StyleSheet.hairlineWidth,\n BORDER_COLOR: '#728387', //'#E0E1E9',\n BORDER_RADIUS: 6,\n BUBBLE_RADIUS: 10,\n\n TEXT_COLOR: Color.text_color, //'#202124',\n TEXT_SIZE: normalize(15),\n FONT_FAMILY: 'Inter',\n SUB_TEXT_SIZE: normalize(13),\n\n TEMPLATE_RIGHT_MARGIN: 12,\n TEMPLATE_LEFT_MARGIN: 12,\n MIN_WIDTH: 200,\n VIEW_MORE_TEXT_COLOR: '#4B4EDE',\n // TEXT_SIZE1: [{small: normalize(12)}],\n};\n\nexport const BUBBLE_STYLE_TYPE = {\n BALLOON: 'balloon',\n ROUNDED: 'rounded',\n RECTANGLE: 'rectangle',\n};\nexport const botTimeStyles = {\n medium: StyleSheet.create({\n size: {\n fontSize: normalize(11),\n },\n }),\n small: StyleSheet.create({\n size: {\n fontSize: normalize(10),\n },\n }),\n large: StyleSheet.create({\n size: {\n fontSize: normalize(14),\n },\n }),\n};\n\nexport const botStyles = {\n medium: StyleSheet.create({\n size: {\n fontSize: normalize(14),\n },\n }),\n small: StyleSheet.create({\n size: {\n fontSize: normalize(12),\n },\n }),\n large: StyleSheet.create({\n size: {\n fontSize: normalize(18),\n },\n }),\n};\nexport const rightBubbleStyles = {\n balloon: StyleSheet.create({\n bubble_style: {\n borderBottomLeftRadius: TEMPLATE_STYLE_VALUES.BUBBLE_RADIUS,\n borderTopRightRadius: TEMPLATE_STYLE_VALUES.BUBBLE_RADIUS,\n borderTopLeftRadius: TEMPLATE_STYLE_VALUES.BUBBLE_RADIUS,\n },\n }),\n rounded: StyleSheet.create({\n bubble_style: {\n borderBottomLeftRadius: TEMPLATE_STYLE_VALUES.BUBBLE_RADIUS,\n borderTopRightRadius: TEMPLATE_STYLE_VALUES.BUBBLE_RADIUS,\n borderTopLeftRadius: TEMPLATE_STYLE_VALUES.BUBBLE_RADIUS,\n borderBottomRightRadius: TEMPLATE_STYLE_VALUES.BUBBLE_RADIUS,\n },\n }),\n rectangle: StyleSheet.create({\n bubble_style: {\n // borderBottomLeftRadius: TEMPLATE_STYLE_VALUES.BUBBLE_RADIUS,\n // borderTopRightRadius: TEMPLATE_STYLE_VALUES.BUBBLE_RADIUS,\n // borderTopLeftRadius: TEMPLATE_STYLE_VALUES.BUBBLE_RADIUS,\n // borderBottomStartRadius: TEMPLATE_STYLE_VALUES.BUBBLE_RADIUS,\n },\n }),\n};\nexport const leftBubbleStyles = {\n balloon: StyleSheet.create({\n bubble_style: {\n borderBottomRightRadius: TEMPLATE_STYLE_VALUES.BUBBLE_RADIUS,\n borderTopRightRadius: TEMPLATE_STYLE_VALUES.BUBBLE_RADIUS,\n borderTopLeftRadius: TEMPLATE_STYLE_VALUES.BUBBLE_RADIUS,\n },\n }),\n rounded: StyleSheet.create({\n bubble_style: {\n borderBottomLeftRadius: TEMPLATE_STYLE_VALUES.BUBBLE_RADIUS,\n borderTopRightRadius: TEMPLATE_STYLE_VALUES.BUBBLE_RADIUS,\n borderTopLeftRadius: TEMPLATE_STYLE_VALUES.BUBBLE_RADIUS,\n borderBottomRightRadius: TEMPLATE_STYLE_VALUES.BUBBLE_RADIUS,\n },\n }),\n rectangle: StyleSheet.create({\n bubble_style: {\n // borderBottomLeftRadius: TEMPLATE_STYLE_VALUES.BUBBLE_RADIUS,\n // borderTopRightRadius: TEMPLATE_STYLE_VALUES.BUBBLE_RADIUS,\n // borderTopLeftRadius: TEMPLATE_STYLE_VALUES.BUBBLE_RADIUS,\n // borderBottomStartRadius: TEMPLATE_STYLE_VALUES.BUBBLE_RADIUS,\n },\n }),\n};\n","/* eslint-disable react-native/no-inline-styles */\nimport * as React from 'react';\nimport {\n View,\n Text,\n StyleSheet,\n TouchableOpacity,\n Dimensions,\n} from 'react-native';\n\nimport {normalize, renderImage} from '../utils/helpers';\nimport BaseView, {BaseViewProps, BaseViewState} from './BaseView';\nimport Color from '../theme/Color';\nimport {TEMPLATE_STYLE_VALUES, botStyles} from '../theme/styles';\n\nconst BORDER = {\n WIDTH: TEMPLATE_STYLE_VALUES.BORDER_WIDTH,\n COLOR: TEMPLATE_STYLE_VALUES.BORDER_COLOR, //'#728387', //'#E0E1E9',\n RADIUS: TEMPLATE_STYLE_VALUES.BORDER_RADIUS,\n TEXT_COLOR: TEMPLATE_STYLE_VALUES.TEXT_COLOR,\n\n TEXT_SIZE: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n};\nconst windowWidth = Dimensions.get('window').width;\n\ninterface CardProps extends BaseViewProps {}\ninterface CardState extends BaseViewState {}\n\nexport default class CardTemplate extends BaseView<CardProps, CardState> {\n constructor(props: any) {\n super(props);\n }\n\n private defaultCardView = (item: any, index: any, width: number) => {\n return (\n <View\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}\n key={index}\n style={[\n styles.container,\n {\n width: width,\n },\n ]}>\n <View\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}\n style={[\n styles.sub_container,\n item?.cardStyles && {\n backgroundColor:\n item?.cardStyles?.['box-shadow']?.split(' ')?.[3] ||\n Color.white,\n },\n ]}>\n <View\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}\n style={[\n styles.sub_container_1,\n item?.cardContentStyles\n ? {\n borderColor:\n item?.cardContentStyles?.['border']?.split(' ')?.[2] ||\n BORDER.COLOR,\n borderWidth: BORDER.WIDTH,\n }\n : {borderColor: BORDER.COLOR},\n item?.cardContentStyles?.['border-left']\n ? {\n borderColor:\n item?.cardContentStyles['border-left']?.split(' ')?.[2] ||\n BORDER.COLOR,\n borderLeftWidth: normalize(5),\n borderRadius: 10,\n }\n : {},\n ]}>\n {item?.cardHeading?.title && (\n <View\n style={[\n styles.header_container,\n item?.cardStyles\n ? {\n backgroundColor: 'transparent',\n borderColor: 'transparent',\n borderWidth: 0,\n }\n : item?.cardHeading?.headerStyles\n ? {\n backgroundColor:\n item.cardHeading.headerStyles?.['background-color'],\n borderColor:\n item.cardHeading.headerStyles?.['border']?.split(\n ' ',\n )?.[2] || BORDER.COLOR,\n borderWidth: StyleSheet.hairlineWidth,\n }\n : {},\n !item?.cardDescription && {\n borderBottomEndRadius: BORDER.RADIUS,\n borderBottomStartRadius: BORDER.RADIUS,\n borderColor: 'transparent',\n margin: 3,\n },\n ]}>\n {item?.cardHeading?.icon && (\n <View\n style={{\n justifyContent: 'flex-start',\n marginTop: 5,\n marginLeft: 8,\n }}>\n {renderImage({\n image: item?.cardHeading?.icon,\n iconShape: undefined,\n iconSize: item?.cardHeading?.iconSize || 'small',\n })}\n </View>\n )}\n <View style={{flex: 1}}>\n <Text\n style={[\n styles.item_title,\n styles.title_style,\n\n item?.cardHeading?.headerStyles\n ? {\n color: item.cardHeading.headerStyles?.color,\n fontWeight:\n item?.cardHeading?.headerStyles?.[\n 'font-weight'\n ] || 'normal',\n }\n : {},\n {\n paddingEnd: 10,\n\n flex: 1,\n fontFamily:\n this.props.theme?.v3?.body?.font?.family || 'Inter',\n },\n botStyles[\n this.props?.theme?.v3?.body?.font?.size || 'medium'\n ]?.size,\n ]}>\n {item?.cardHeading?.title}\n </Text>\n {item?.cardHeading?.description && (\n <Text\n style={[\n styles.item_title,\n styles.title_style,\n {\n fontWeight: 'normal',\n paddingTop: 0,\n fontSize: normalize(14),\n fontFamily:\n this.props.theme?.v3?.body?.font?.family || 'Inter',\n },\n botStyles['small']?.size,\n ]}>\n {item?.cardHeading?.description}\n </Text>\n )}\n </View>\n </View>\n )}\n {item?.cardDescription && (\n <View style={[styles.sub_view_container]}>\n {item?.cardDescription?.map((desc: any, index: number) => {\n return (\n <View key={index + ''} style={styles.desc_container}>\n <View\n style={{\n alignItems: 'center',\n justifyContent: 'center',\n }}>\n {renderImage({\n image: desc?.icon,\n iconShape: undefined,\n iconSize: desc?.iconSize,\n })}\n </View>\n <Text\n style={[\n styles.desc_text,\n {\n fontFamily:\n this.props.theme?.v3?.body?.font?.family ||\n 'Inter',\n },\n botStyles['small']?.size,\n ]}>\n {desc.title}\n </Text>\n </View>\n );\n })}\n </View>\n )}\n {item?.buttons && (\n <View style={{flexDirection: 'row'}}>\n {item?.buttons?.map((btn: any, index: number) => {\n return (\n <View\n key={index + ''}\n style={[\n styles.buttons_container,\n btn?.buttonStyles && {\n backgroundColor:\n btn?.buttonStyles['background-color'] ||\n Color.white,\n borderColor:\n btn?.buttonStyles?.['border']?.split(' ')?.[2] ||\n BORDER.COLOR,\n },\n\n index === 0 && {\n borderBottomLeftRadius: BORDER.RADIUS - 1,\n },\n index === item?.buttons.length - 1 && {\n borderBottomRightRadius: BORDER.RADIUS - 1,\n marginEnd: 0,\n },\n ]}>\n <TouchableOpacity\n onPress={() => {\n if (this.props.payload.onListItemClick) {\n this.props.payload.onListItemClick(\n this.props.payload.template_type,\n btn,\n );\n }\n }}\n style={styles.button}>\n <Text\n style={[\n styles.button_text,\n btn?.buttonStyles && {\n color: btn?.buttonStyles?.color || Color.black,\n },\n botStyles[\n this.props?.theme?.v3?.body?.font?.size ||\n 'medium'\n ]?.size,\n {\n fontFamily:\n this.props.theme?.v3?.body?.font?.family ||\n 'Inter',\n },\n ]}>\n {btn?.title}\n </Text>\n </TouchableOpacity>\n </View>\n );\n })}\n </View>\n )}\n </View>\n </View>\n </View>\n );\n };\n\n private listTypeCardView = (item: any, index: any, width: number) => {\n return (\n <View\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}\n key={index}\n style={[\n styles.container,\n {\n width: width,\n },\n ]}>\n <View\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}\n style={[\n styles.sub_container,\n item?.cardStyles && {\n backgroundColor: item?.cardStyles?.['background-color'],\n borderColor:\n item?.cardStyles?.['border-left']?.split(' ')?.[2] ||\n Color.white,\n borderLeftWidth: normalize(5),\n borderRadius: 10,\n },\n ]}>\n <View\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}\n style={[\n styles.sub_container_1,\n item?.cardContentStyles\n ? {\n borderColor:\n item?.cardContentStyles?.['border']?.split(' ')?.[2] ||\n BORDER.COLOR,\n borderWidth: BORDER.WIDTH,\n }\n : {borderColor: BORDER.COLOR},\n item?.cardContentStyles?.['border-left']\n ? {\n borderColor:\n item?.cardContentStyles['border-left']?.split(' ')?.[2] ||\n BORDER.COLOR,\n borderLeftWidth: normalize(5),\n borderRadius: 10,\n }\n : {},\n //item?.cardStyles box-shadow : \"4px 4px 0px #E7F1FF\"\n ]}>\n {item?.cardHeading?.title && (\n <View\n style={[\n styles.list_title_container,\n item?.cardStyles\n ? {\n backgroundColor: 'transparent',\n borderColor: 'transparent',\n borderWidth: 0,\n }\n : item?.cardHeading?.headerStyles\n ? {\n backgroundColor:\n item.cardHeading.headerStyles?.['background-color'],\n borderColor:\n item.cardHeading.headerStyles?.['border']?.split(\n ' ',\n )?.[2] || BORDER.COLOR,\n borderWidth: 1,\n }\n : {},\n !item?.cardDescription && {\n borderBottomEndRadius: BORDER.RADIUS,\n borderBottomStartRadius: BORDER.RADIUS,\n borderColor: 'transparent',\n margin: 3,\n },\n ]}>\n {item?.cardHeading?.icon && (\n <View style={styles.list_card_header_icon}>\n {renderImage({\n image: item?.cardHeading?.icon,\n iconShape: undefined,\n iconSize: item?.cardHeading?.iconSize || 'large',\n })}\n </View>\n )}\n {/* <View style={{width: (windowWidth / 4) * 3}}> */}\n <View style={{flex: 1}}>\n <Text\n style={[\n styles.item_title,\n styles.title_style,\n\n item?.cardHeading?.headerStyles\n ? {\n color: item.cardHeading.headerStyles?.color,\n fontWeight:\n item?.cardHeading?.headerStyles?.[\n 'font-weight'\n ] || 'normal',\n }\n : {},\n {\n fontFamily:\n this.props.theme?.v3?.body?.font?.family || 'Inter',\n },\n botStyles[\n this.props?.theme?.v3?.body?.font?.size || 'medium'\n ]?.size,\n ]}>\n {item?.cardHeading?.title}\n </Text>\n {item?.cardHeading?.description && (\n <Text\n style={[\n styles.item_title,\n styles.title_style,\n styles.card_heading_desc,\n {\n fontFamily:\n this.props.theme?.v3?.body?.font?.family || 'Inter',\n },\n botStyles['small']?.size,\n ]}>\n {item?.cardHeading?.description}\n </Text>\n )}\n </View>\n\n {item?.cardHeading?.headerExtraInfo && (\n <View style={styles.header_extra_info}>\n <Text\n style={[\n styles.item_desc,\n {fontSize: normalize(12), marginTop: 2},\n {\n fontFamily:\n this.props.theme?.v3?.body?.font?.family || 'Inter',\n },\n botStyles['small']?.size,\n ]}>\n {item?.cardHeading?.headerExtraInfo?.title}\n </Text>\n {item?.cardHeading?.headerExtraInfo?.icon && (\n <View style={styles.extra_icon}>\n {renderImage({\n image: item?.cardHeading?.headerExtraInfo?.icon,\n iconShape: undefined,\n iconSize:\n item?.cardHeading?.headerExtraInfo?.iconSize,\n width: normalize(12),\n height: normalize(7),\n })}\n </View>\n )}\n </View>\n )}\n </View>\n )}\n {item?.cardDescription && (\n <View style={[styles.sub_view_container, {flexDirection: 'row'}]}>\n {item?.cardDescription?.map((desc: any, index: number) => {\n return (\n <View\n key={index + ''}\n style={[\n styles.desc_container,\n {flexDirection: 'column', flex: 1},\n ]}>\n <Text\n style={[\n styles.desc_text,\n {fontWeight: 'bold'},\n botStyles['small']?.size,\n {\n fontFamily:\n this.props.theme?.v3?.body?.font?.family ||\n 'Inter',\n },\n ]}>\n {desc.title}\n </Text>\n <Text\n style={[\n styles.desc_text,\n {\n marginTop: 5,\n fontFamily:\n this.props.theme?.v3?.body?.font?.family ||\n 'Inter',\n },\n botStyles['small']?.size,\n ]}>\n {desc.description}\n </Text>\n </View>\n );\n })}\n </View>\n )}\n {item?.buttons && (\n <View style={{flexDirection: 'row'}}>\n {item?.buttons?.map((btn: any, index: number) => {\n return (\n <View\n key={index + ''}\n style={[\n styles.buttons_container,\n btn?.buttonStyles && {\n backgroundColor:\n btn?.buttonStyles['background-color'] ||\n Color.white,\n borderColor:\n btn?.buttonStyles?.['border']?.split(' ')?.[2] ||\n BORDER.COLOR,\n },\n\n index === 0 && {\n borderBottomLeftRadius: BORDER.RADIUS - 1,\n },\n index === item?.buttons.length - 1 && {\n borderBottomRightRadius: BORDER.RADIUS - 1,\n marginEnd: 0,\n },\n ]}>\n <TouchableOpacity\n onPress={() => {\n if (this.props.payload.onListItemClick) {\n this.props.payload.onListItemClick(\n this.props.payload.template_type,\n btn,\n );\n }\n }}\n style={styles.button}>\n <Text\n style={[\n styles.button_text,\n btn?.buttonStyles && {\n color: btn?.buttonStyles?.color || Color.black,\n },\n botStyles[\n this.props?.theme?.v3?.body?.font?.size ||\n 'medium'\n ]?.size,\n {\n fontFamily:\n this.props.theme?.v3?.body?.font?.family ||\n 'Inter',\n },\n ]}>\n {btn?.title}\n </Text>\n </TouchableOpacity>\n </View>\n );\n })}\n </View>\n )}\n </View>\n </View>\n </View>\n );\n };\n\n private getCardViews = (cards = []) => {\n //\n if (!cards.length) {\n return <></>;\n }\n\n const width = (windowWidth / 4) * 3;\n return (\n <View pointerEvents={this.isViewDisable() ? 'none' : 'auto'}>\n {cards.map((item: any, index: any) => {\n // if (item?.cardType === 'list') {\n // //TODO card type list view pending\n // return this.listTypeCardView(item, index, width);\n // }\n return this.defaultCardView(item, index, width);\n })}\n </View>\n );\n };\n\n render() {\n return this.props?.payload?.cards ? (\n this.getCardViews(this.props.payload.cards)\n ) : (\n <></>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n card_heading_desc: {\n fontWeight: 'normal',\n paddingTop: 0,\n fontSize: normalize(14),\n },\n button_text: {\n alignContent: 'center',\n alignSelf: 'center',\n fontSize: normalize(15),\n },\n button: {\n //backgroundColor: 'green',\n height: normalize(40),\n justifyContent: 'center',\n },\n buttons_container: {\n flex: 1,\n //margin: StyleSheet.hairlineWidth,\n borderWidth: BORDER.WIDTH,\n borderColor: BORDER.COLOR,\n marginEnd: 2,\n },\n extra_icon: {\n marginStart: 5,\n marginTop: 3,\n },\n header_extra_info: {\n flexDirection: 'row',\n justifyContent: 'flex-start',\n marginTop: 5,\n marginEnd: 5,\n marginStart: 5,\n },\n list_card_header_icon: {\n justifyContent: 'flex-start',\n marginTop: 5,\n marginLeft: 8,\n },\n list_title_container: {\n paddingTop: 5,\n paddingBottom: 5,\n flexDirection: 'row',\n },\n desc_text: {\n fontFamily: 'Inter',\n fontStyle: 'normal',\n fontSize: normalize(14),\n paddingStart: 8,\n color: Color.black,\n //flex: 1,\n },\n\n desc_container: {\n flexDirection: 'row',\n marginTop: 10,\n paddingBottom: 8,\n //flexGrow: 1,\n //flexWrap: 'wrap',\n //flex: 1,\n paddingEnd: 10,\n },\n title_style: {\n fontFamily: 'inter',\n fontSize: normalize(15),\n flexDirection: 'row',\n paddingStart: 8,\n paddingBottom: 5,\n paddingTop: 5,\n },\n header_container: {\n paddingTop: 5,\n paddingBottom: 5,\n //paddingEnd: 5,\n // marginTop: 5,\n //marginEnd: 0.2,\n flexDirection: 'row',\n //flex: 1,\n\n borderTopEndRadius: BORDER.RADIUS,\n borderTopStartRadius: BORDER.RADIUS,\n\n backgroundColor: Color.white,\n borderColor: BORDER.COLOR,\n borderWidth: 1,\n },\n sub_container_1: {\n //flex: 1,\n // marginEnd: 10,\n //marginStart: 10,\n borderWidth: BORDER.WIDTH,\n flex: 1,\n\n borderRadius: BORDER.RADIUS,\n borderBottomEndRadius: BORDER.RADIUS,\n borderBottomStartRadius: BORDER.RADIUS,\n },\n sub_container: {\n flexDirection: 'column',\n backgroundColor: Color.white,\n //flex: 1,\n marginBottom: 10,\n //marginStart: 5,\n width: '100%',\n //flexShrink: 10,\n // borderBottomEndRadius: BORDER.RADIUS,\n // borderBottomStartRadius: BORDER.RADIUS,\n borderRadius: BORDER.RADIUS,\n },\n\n container: {\n //marginTop: 5,\n // padding:5,\n backgroundColor: 'transparent',\n // borderWidth: BORDER.WIDTH,\n // borderColor: BORDER.COLOR,\n // //borderColor: '#95B6FB',\n //flex: 1,\n //margin: 20,\n // borderRadius: BORDER.RADIUS,\n //marginBottom: 10,\n paddingBottom: 10,\n },\n sub_view_container: {\n //flex: 1,\n // marginTop: 10,\n paddingTop: 5,\n //backgroundColor: 'red',\n //borderWidth: BORDER.WIDTH,\n marginEnd: BORDER.WIDTH,\n // borderBottomWidth: BORDER.WIDTH,\n // borderLeftWidth: BORDER.WIDTH,\n // borderRightWidth: BORDER.WIDTH,\n //borderColor: '#95B6FB',\n borderColor: '#85B7FE',\n paddingStart: 10,\n // margin: 10,\n // borderRadius: BORDER.RADIUS,\n borderBottomEndRadius: BORDER.RADIUS,\n borderBottomStartRadius: BORDER.RADIUS,\n paddingBottom: 10,\n },\n image_container: {\n // height: 50,\n // width: 60,\n // alignSelf: 'flex-start',\n // justifyContent: 'center',\n //borderColor: '#E4E5E7',\n //borderWidth: 1,\n // borderRadius: 4,\n ////flex: 1,\n },\n unfurlUrl4: {\n borderColor: 'gray',\n resizeMode: 'cover',\n alignSelf: 'center',\n // borderRadius: 6,\n alignContent: 'center',\n overflow: 'hidden',\n marginTop: 3,\n },\n\n item_title: {\n fontFamily: 'Inter',\n fontStyle: 'normal',\n fontWeight: 'bold',\n fontSize: 16,\n letterSpacing: 0.270833,\n color: '#202124',\n flex: 1,\n //marginEnd: 5,\n //backgroundColor: 'red',\n\n //width: '100%',\n },\n item_desc: {\n fontFamily: 'Inter',\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: normalize(14),\n letterSpacing: 0.270833,\n alignItems: 'flex-start',\n textAlign: 'justify',\n color: '#616368', //'#5F6368',\n },\n});\n","import * as React from 'react';\nimport {\n Dimensions,\n Platform,\n StyleSheet,\n Text,\n TouchableOpacity,\n View,\n} from 'react-native';\nimport FastImage from 'react-native-fast-image';\nimport BaseView, {BaseViewProps, BaseViewState} from './BaseView';\nimport {normalize} from '../utils/helpers';\n\nimport Carousel from 'react-native-reanimated-carousel';\nimport Color from '../theme/Color';\nimport {TEMPLATE_STYLE_VALUES, botStyles} from '../theme/styles';\nimport {getButtonTheme} from '../theme/themeHelper';\nimport {isIOS} from '../utils/PlatformCheck';\nconst windowWidth = Dimensions.get('window').width;\n\ninterface CarouselProps extends BaseViewProps {}\ninterface CarouselState extends BaseViewState {\n elements?: any;\n}\nexport default class CarouselTemplate extends BaseView<\n CarouselProps,\n CarouselState\n> {\n private max_btn_count = 0;\n\n constructor(props: CarouselProps) {\n super(props);\n this.state = {\n elements: null,\n };\n }\n\n componentDidMount() {\n const payload = this.props.payload;\n payload?.elements.map((item: any) => {\n if (this.max_btn_count < item?.buttons.length) {\n this.max_btn_count = item?.buttons.length;\n }\n });\n\n this.setState({\n elements: payload.elements,\n });\n }\n\n private getSingleCarouselView = (item: any, index: number) => {\n let btnViews = item?.buttons.map((btn: any, index: number) => {\n return this.getSingleButtonView(btn, index, item?.buttons.length);\n });\n let Image_Http_URL = {uri: item.image_url};\n return (\n <View key={index} style={[styles.container]}>\n {item?.image_url && item?.title && (\n <View style={{}}>\n <View style={styles.image_con}>\n <FastImage source={Image_Http_URL} style={styles.image} />\n </View>\n <View>\n <Text\n style={[\n styles.title,\n {\n color: Color.black,\n fontFamily: this.props.theme?.v3?.body?.font?.family,\n },\n botStyles[this.props?.theme?.v3?.body?.font?.size || 'medium']\n ?.size,\n {},\n ]}\n numberOfLines={1}>\n {item?.title}\n </Text>\n {item?.subtitle ? (\n <Text\n style={[\n styles.subtitle,\n {\n color: Color.black,\n fontFamily: this.props.theme?.v3?.body?.font?.family,\n },\n botStyles[\n this.props?.theme?.v3?.body?.font?.size || 'medium'\n ]?.size,\n ]}\n numberOfLines={2}>\n {item?.subtitle}\n </Text>\n ) : (\n <></>\n )}\n </View>\n </View>\n )}\n <View style={styles.stack_main}>\n {item?.topSection && (\n <View style={styles.top_sec_main}>\n <Text numberOfLines={2} style={styles.top_sec_text}>\n {item?.topSection?.title}\n </Text>\n </View>\n )}\n\n {item?.middleSection && (\n <View style={styles.mid_sec_main}>\n <Text numberOfLines={2} style={styles.mid_sec_text}>\n {item?.middleSection?.description}\n </Text>\n </View>\n )}\n\n {item?.bottomSection && (\n <View style={styles.bot_sec_main}>\n <Text numberOfLines={2} style={styles.bot_sec_text}>\n {item?.bottomSection?.title}\n </Text>\n <Text style={styles.bot_sec_desc}>\n {item?.bottomSection?.description}\n </Text>\n </View>\n )}\n {item?.default_action?.type === 'web_url' && (\n <TouchableOpacity\n onPress={() => {\n if (this.props.payload?.onListItemClick) {\n this.props.payload.onListItemClick(\n this.props.payload.template_type,\n item?.default_action,\n );\n }\n }}\n style={[\n styles.top_sec_main,\n isIOS ? {marginTop: 5} : {marginTop: 15},\n ]}>\n <Text numberOfLines={2} style={[{color: Color.blue}]}>\n {item?.default_action?.url}\n </Text>\n </TouchableOpacity>\n )}\n </View>\n\n <View key={index}>\n <View style={styles.btnStyles}>{btnViews}</View>\n </View>\n </View>\n );\n };\n private getSingleButtonView = (item: any, index: number, count: number) => {\n const bTheme = getButtonTheme(this.props?.theme);\n return (\n <View\n key={index}\n style={[\n styles.btn_view,\n // eslint-disable-next-line react-native/no-inline-styles\n count - 1 === index && {\n borderBottomEndRadius: 10,\n borderBottomStartRadius: 10,\n },\n {\n backgroundColor: this.isViewDisable()\n ? bTheme.INACTIVE_BG_COLOR\n : bTheme.ACTIVE_BG_COLOR,\n },\n ]}>\n <View style={styles.line} />\n <TouchableOpacity\n disabled={this.isViewDisable()}\n style={[styles.main_view_1]}\n onPress={() => {\n if (this.props.payload?.onListItemClick) {\n this.props.payload.onListItemClick(\n this.props.payload.template_type,\n item,\n );\n }\n }}>\n <Text\n style={[\n styles.item_text,\n {\n color: this.isViewDisable()\n ? bTheme.INACTIVE_TXT_COLOR || bTheme.ACTIVE_TXT_COLOR\n : this.props?.theme?.v3?.body?.buttons?.color || Color.white,\n fontFamily: this.props?.theme?.v3?.body?.font?.family,\n },\n ]}>\n {item.title}\n </Text>\n </TouchableOpacity>\n </View>\n );\n };\n\n private getTemplateWidth = () => {\n const value = this.props?.theme?.v3?.body?.icon?.show\n ? normalize(50)\n : normalize(30);\n return windowWidth - value;\n };\n\n private renderCarouselView = (list: any) => {\n if (!list || list?.length <= 0) {\n return <></>;\n }\n\n const isStacked = this.props.payload?.carousel_type === 'stacked' || false;\n\n const width = this.getTemplateWidth();\n if (isStacked) {\n const height1 = normalize(150) + normalize(42) * this.max_btn_count;\n return (\n <Carousel\n loop={false}\n width={width}\n height={height1}\n data={list}\n mode=\"horizontal-stack\"\n modeConfig={{\n stackInterval: 30,\n scaleInterval: 0.09,\n opacityInterval: 0.01,\n rotateZDeg: 30,\n snapDirection: 'left',\n }}\n onSnapToItem={index => console.log('stack current index:', index)}\n renderItem={({item, index}: any) => (\n <View style={[{}, styles.shadowContainer]}>\n {this.getSingleCarouselView(item, index)}\n </View>\n )}\n />\n );\n }\n const height = normalize(310) + normalize(42) * this.max_btn_count;\n return (\n <Carousel\n loop={false}\n width={width}\n height={height}\n //autoPlay={true}\n data={list}\n mode=\"parallax\"\n //scrollAnimationDuration={5000}\n onSnapToItem={index => console.log('parallax current index:', index)}\n renderItem={({item, index}: any) => (\n <View style={[{}, styles.shadowContainer]}>\n {this.getSingleCarouselView(item, index)}\n </View>\n )}\n />\n );\n };\n\n render() {\n return (\n <View\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}\n style={styles.sub_container}>\n {this.renderCarouselView(this.state.elements)}\n </View>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n bot_sec_desc: {\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n color: TEMPLATE_STYLE_VALUES.TEXT_COLOR,\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n fontWeight: 'normal',\n },\n bot_sec_text: {\n flex: 1,\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n color: TEMPLATE_STYLE_VALUES.TEXT_COLOR,\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n fontWeight: 'normal',\n },\n bot_sec_main: {\n flex: 1,\n flexDirection: 'row',\n alignItems: 'center',\n },\n mid_sec_text: {\n flex: 1,\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n color: Color.sub_text_color,\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n fontWeight: 'normal',\n },\n mid_sec_main: {\n flex: 1,\n flexDirection: 'row',\n alignItems: 'center',\n },\n top_sec_text: {\n flex: 1,\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n color: TEMPLATE_STYLE_VALUES.TEXT_COLOR,\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n fontWeight: '700',\n },\n top_sec_main: {\n flex: 1,\n flexDirection: 'row',\n alignItems: 'center',\n },\n stack_main: {\n flex: 1,\n marginLeft: 10,\n marginEnd: 5,\n },\n sub_container: {\n backgroundColor: Color.white,\n flex: 1, //Comment for BotSDK, uncomment for Templates NPM lib\n /*\n for Template npm lib\n \"react-native-reanimated-carousel\": \"^3.4.0”,\n For BotSDK NPM lib\n \"react-native-reanimated-carousel\": “^3.1.5”, \n */\n },\n image: {\n height: normalize(150),\n width: '90%',\n resizeMode: 'stretch',\n //margin: 0,\n marginTop: 10,\n borderRadius: 5,\n borderColor: Color.black,\n borderWidth: StyleSheet.hairlineWidth,\n },\n image_con: {\n justifyContent: 'center',\n alignItems: 'center',\n marginBottom: 10,\n padding: 5,\n },\n shadowContainer: {\n flex: 1,\n\n justifyContent: 'center',\n marginRight: '18.5%',\n margin: 5,\n borderRadius: 10,\n backgroundColor: 'white', // Set the background color of the view\n // borderRadius: 10, // Optional: Set borderRadius for rounded corners\n padding: 1, // Optional: Set padding for inner content\n ...Platform.select({\n ios: {\n shadowColor: '#000',\n shadowOffset: {width: 0, height: 2},\n shadowOpacity: 0.25,\n shadowRadius: 3.84,\n },\n android: {\n elevation: 5,\n },\n }),\n },\n container: {\n flex: 1,\n // padding: 5,\n backgroundColor: Color.white,\n borderRadius: 10,\n // width: width * 0.6,\n },\n\n btnStyles: {\n //flex: 1,\n justifyContent: 'flex-end',\n },\n title: {\n fontStyle: 'normal',\n fontFamily: 'Inter',\n marginStart: 10,\n marginBottom: 5,\n marginEnd: 10,\n alignSelf: 'center',\n marginTop: 0,\n fontWeight: '500',\n },\n\n subtitle: {\n fontWeight: '400',\n fontStyle: 'normal',\n fontFamily: 'Inter',\n marginStart: 10,\n marginBottom: 5,\n marginEnd: 10,\n alignSelf: 'center',\n marginTop: 0,\n paddingLeft: 5,\n paddingEnd: 5,\n opacity: 0.8,\n },\n\n btn_view: {\n paddingBottom: 0,\n flexDirection: 'column',\n alignItems: 'center',\n backgroundColor: 'blue',\n },\n line: {backgroundColor: Color.white, width: '100%', height: normalize(1.3)},\n\n item_text: {\n fontFamily: 'Inter',\n alignSelf: 'center',\n color: 'white',\n padding: 5,\n textTransform: 'uppercase',\n fontSize: TEMPLATE_STYLE_VALUES.SUB_TEXT_SIZE,\n },\n main_view_1: {margin: 5, padding: 3},\n});\n","import {BubbleTheme, ButtonTheme} from '../constants/Constant';\nimport {IThemeType} from './IThemeType';\n\nexport function getButtonTheme(\n propsTheme: IThemeType | undefined,\n): ButtonTheme {\n // editor.putString(BotResponseConstants.BUTTON_ACTIVE_BG_COLOR, brandingModel.general.colors.primary) //#ffffff\"\n // editor.putString(BotResponseConstants.BUTTON_ACTIVE_TXT_COLOR, brandingModel.general.colors.primaryText)//\"#505968\"\n // editor.putString(BotResponseConstants.BUTTON_INACTIVE_BG_COLOR, brandingModel.general.colors.secondary)\n // editor.putString(BotResponseConstants.BUTTON_INACTIVE_TXT_COLOR, brandingModel.general.colors.secondaryText)\n\n let theme: ButtonTheme = {\n ACTIVE_BG_COLOR: '#a37645',\n ACTIVE_TXT_COLOR: '#505968',\n INACTIVE_BG_COLOR: '#101828',\n INACTIVE_TXT_COLOR: '#1d2939',\n };\n\n if (!propsTheme) {\n return theme;\n }\n\n // console.log(\n // 'propsTheme.v3?.general?.colors ---->:',\n // propsTheme.v3?.general?.colors,\n // );\n\n if (propsTheme.v3?.general?.colors?.useColorPaletteOnly) {\n theme = {\n ...theme,\n ACTIVE_BG_COLOR: propsTheme.v3?.general?.colors?.primary || '#ffffff',\n ACTIVE_TXT_COLOR:\n propsTheme.v3?.general?.colors?.primary_text || '#505968',\n INACTIVE_BG_COLOR: propsTheme.v3?.general?.colors?.secondary || '#101828',\n INACTIVE_TXT_COLOR:\n propsTheme.v3?.general?.colors?.secondary_text || '#1d2939',\n };\n }\n //console.log('theme ---->:', theme);\n return theme;\n}\n\nexport function getBubbleTheme(\n propsTheme: IThemeType | undefined,\n): BubbleTheme {\n // editor.putString(BotResponseConstants.BUBBLE_LEFT_BG_COLOR, brandingModel.body.botMessage.bgColor)\n // editor.putString(BotResponseConstants.BUBBLE_LEFT_TEXT_COLOR, brandingModel.body.botMessage.color)\n // editor.putString(BotResponseConstants.BUBBLE_RIGHT_BG_COLOR, brandingModel.body.userMessage.bgColor)\n // editor.putString(BotResponseConstants.BUBBLE_RIGHT_TEXT_COLOR, brandingModel.body.userMessage.color)\n\n let theme: BubbleTheme = {\n BUBBLE_LEFT_BG_COLOR: '#3F51B5',\n BUBBLE_LEFT_TEXT_COLOR: '#FFFFFF',\n BUBBLE_RIGHT_BG_COLOR: '#3F51B5',\n BUBBLE_RIGHT_TEXT_COLOR: '#ffffff',\n };\n\n if (!propsTheme) {\n return theme;\n }\n\n // console.log(\n // 'propsTheme.v3?.general?.colors ---->:',\n // propsTheme.v3?.general?.colors,\n // );\n\n if (propsTheme.v3?.body?.user_message) {\n theme = {\n ...theme,\n\n BUBBLE_RIGHT_BG_COLOR:\n propsTheme.v3?.body?.user_message.bg_color || '#3F51B5',\n BUBBLE_RIGHT_TEXT_COLOR:\n propsTheme.v3?.body?.user_message.color || '#FFFFFF',\n };\n }\n\n if (propsTheme.v3?.body?.bot_message) {\n theme = {\n ...theme,\n\n BUBBLE_LEFT_BG_COLOR:\n propsTheme.v3?.body?.bot_message.bg_color || '#3F51B5',\n BUBBLE_LEFT_TEXT_COLOR:\n propsTheme.v3?.body?.bot_message.color || '#FFFFFF',\n };\n }\n\n if (propsTheme.v3?.general?.colors?.useColorPaletteOnly) {\n theme = {\n ...theme,\n BUBBLE_LEFT_BG_COLOR:\n propsTheme.v3?.general?.colors?.secondary || '#3F51B5',\n BUBBLE_LEFT_TEXT_COLOR:\n propsTheme.v3?.general?.colors?.primary_text || '#FFFFFF',\n BUBBLE_RIGHT_BG_COLOR:\n propsTheme.v3?.general?.colors?.primary || '#3F51B5',\n BUBBLE_RIGHT_TEXT_COLOR:\n propsTheme.v3?.general?.colors?.secondary_text || '#FFFFFF',\n };\n }\n //console.log('theme ---->:', theme);\n return theme;\n}\n","import BaseView, {BaseViewProps, BaseViewState} from './BaseView';\nimport * as React from 'react';\nimport {StyleSheet, View} from 'react-native';\nimport ComposePicker from '../components/datePicker/ComposePicker';\nimport BotText from './BotText';\nimport {normalize} from '../utils/helpers';\nimport {TEMPLATE_TYPES} from '../constants/Constant';\nimport Color from '../theme/Color';\nimport dayjs from 'dayjs';\nimport 'dayjs/locale/en'; // Load English locale for formatting\nimport advancedFormat from 'dayjs/plugin/advancedFormat';\ndayjs.extend(advancedFormat);\n\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\ndayjs.extend(customParseFormat);\n\ninterface DateTemplateProps extends BaseViewProps {}\ninterface DateTemplateState extends BaseViewState {\n startDate: Date | null;\n endDate: Date | null;\n isPickerVisible: boolean;\n}\n\nexport default class DateTemplate extends BaseView<\n DateTemplateProps,\n DateTemplateState\n> {\n constructor(props: DateTemplateProps) {\n super(props);\n this.state = {\n startDate: null,\n endDate: null,\n isPickerVisible: false,\n };\n }\n\n private getPickerMode(): string {\n return this.props.payload?.template_type ===\n TEMPLATE_TYPES.DATE_RANGE_TEMPLATE\n ? 'range'\n : 'single';\n }\n\n private handleConfirm = (dateObj: any) => {\n // console.log('onConfirm ---->:', dateObj);\n if (!dateObj) {\n return;\n }\n if (this.props.payload.onListItemClick) {\n this.props.payload.onListItemClick(\n this.props.payload.template_type,\n dateObj,\n );\n }\n };\n\n private getStartDate = () => {\n let sDate = this.props.payload?.startDate\n ? dayjs(this.props.payload?.startDate, this.props.payload?.format, true)\n : undefined;\n\n if (!sDate?.isValid()) {\n return dayjs();\n }\n return sDate;\n };\n private getBlockBeforeDate = () => {\n let sDate = this.getStartDate();\n if (!this.props.payload?.endDate && sDate) {\n sDate = sDate.subtract(1, 'day');\n }\n\n return sDate;\n };\n private getEndDate = () => {\n let eDate = this.props.payload?.endDate\n ? dayjs(this.props.payload?.endDate, this.props.payload?.format, true)\n : undefined;\n // if (!eDate?.isValid()) {\n // return dayjs();\n // }\n return eDate;\n };\n private getCurrentDate(): any {\n let startDate = this.getStartDate();\n if (startDate) {\n return startDate;\n }\n return dayjs();\n }\n\n render() {\n return (\n <View pointerEvents={this.isViewDisable() ? 'none' : 'auto'}>\n {this.props.payload?.text && (\n <BotText\n text={\n this.props.payload?.text_message?.trim() ||\n this.props.payload?.text?.trim()\n }\n isFilterApply={true}\n isLastMsz={!this.isViewDisable()}\n theme={this.props.theme}\n />\n )}\n <ComposePicker\n modalVisible={!this.isViewDisable()}\n customStyles={customStyles}\n selectedBgColor={customStyles.styles.selectedBgColor}\n selectedTextColor={customStyles.styles.selectedTextColor}\n currentDate={this.getCurrentDate()}\n ButtonTextStyle={styles.btn_text}\n headerText={this.props.payload?.title}\n mode={this.getPickerMode()}\n calendarBgColor={Color.white}\n blockBefore={this.getBlockBeforeDate()}\n blockAfter={this.getEndDate()}\n returnFormat={this.props.payload?.format}\n onConfirm={this.handleConfirm}\n />\n </View>\n );\n }\n}\nconst customStyles = {\n styles: {\n selectedBgColor: '#4751B1',\n selectedTextColor: Color.white,\n textColor: '#555555',\n },\n\n placeholderText: {fontSize: normalize(20)}, // placeHolder style\n headerStyle: {\n backgroundColor: 'rgba(71, 81, 177, 1)',\n borderTopRightRadius: 3,\n borderTopLeftRadius: 2,\n },\n headerMarkTitle: {\n color: Color.white,\n fontSize: normalize(18),\n fontWeight: '500',\n }, // title mark style\n headerDateTitle: {\n //color: Color.carrot,\n }, // title Date style\n headerDateSingle: {\n color: Color.white,\n fontSize: normalize(18),\n fontWeight: '500',\n },\n contentInput: {}, //content text container style\n contentText: {}, //after selected text style\n monthPickerText: {}, //focused month picker text style\n datePickerText: {}, //calendar dates text style\n dayNameText: {}, //day of week title text style (M, T, W, T, F, S, S)\n};\n\nconst styles = StyleSheet.create({\n btn_text: {color: customStyles.styles.textColor, fontSize: normalize(17)},\n});\n","import React, {Component} from 'react';\nimport {\n View,\n Modal,\n Text,\n TouchableOpacity,\n StyleSheet,\n Alert,\n} from 'react-native';\nimport DateRange from './DateRange';\nimport normalize from './normalizeText';\nimport dayjs from 'dayjs';\ninterface composeProps {\n currentDate?: any;\n textStartDate?: any;\n textEndDate?: any;\n alertMessageText?: any;\n modalVisible?: any;\n blockBefore?: any;\n blockAfter?: any;\n returnFormat?: any;\n mode?: any;\n outFormat?: any;\n onConfirm?: any;\n customStyles?: any;\n dateSplitter?: any;\n allowFontScaling?: any;\n customButton?: any;\n ButtonStyle?: any;\n ButtonTextStyle?: any;\n headFormat?: any;\n ButtonText?: any;\n markText?: any;\n calendarBgColor?: any;\n selectedBgColor?: any;\n selectedTextColor?: any;\n headerText?: any;\n}\ninterface composeState {\n modalVisible?: any;\n allowPointerEvents?: any;\n showContent?: any;\n selected?: any;\n startDate?: any;\n endDate?: any;\n date?: any;\n focus?: any;\n currentDate?: any;\n textStartDate?: any;\n textEndDate?: any;\n alertMessageText?: any;\n selectState?: any;\n}\nexport default class ComposePicker extends Component<\n composeProps,\n composeState\n> {\n constructor(props: composeProps) {\n super(props);\n this.state = {\n modalVisible: false,\n allowPointerEvents: true,\n showContent: false,\n selected: '',\n startDate: null,\n endDate: null,\n date: new Date(),\n focus: 'startDate',\n currentDate: this.props.currentDate,\n textStartDate: props.textStartDate || 'Start Date',\n textEndDate: props.textEndDate || 'End Date',\n alertMessageText: props.alertMessageText || 'Please select a date range',\n selectState: undefined,\n };\n }\n\n componentDidMount() {\n setTimeout(() => {\n if (this.props.modalVisible) {\n this.setState({\n modalVisible: this.props.modalVisible,\n });\n }\n }, 1000);\n }\n\n isDateBlocked = (date: any) => {\n // console.log('isDateBlocked date ---->:', date);\n // console.log('this.props.blockAfter ---->:', this.props.blockAfter);\n // // console.log('this.props.blockBefore ======>>:', this.props.blockBefore);\n // console.log('================== XXXXXXX ===============');\n if (this.props.blockBefore) {\n if (dayjs(date).isBefore(this.props.blockBefore)) {\n return true;\n }\n }\n if (this.props.blockAfter) {\n if (dayjs(date).isAfter(this.props.blockAfter)) {\n return true;\n }\n }\n return false;\n };\n private onDatesChange = event => {\n const {startDate, endDate, focusedInput, currentDate} = event;\n\n if (currentDate && !this.isDateBlocked(currentDate)) {\n this.setState({currentDate});\n return;\n }\n this.setState({...this.state, focus: focusedInput}, () => {\n this.setState({...this.state, startDate, endDate});\n });\n };\n setModalVisible = visible => {\n this.setState({modalVisible: visible});\n };\n onCancel = () => {\n this.setModalVisible(false);\n };\n onConfirm = () => {\n if (!this.state.currentDate) {\n return 0;\n }\n let returnFormat = this.props.returnFormat || 'YYYY/MM/DD';\n const outFormat = this.props.outFormat || 'LL';\n if (!this.props.mode || this.props.mode === 'single') {\n this.setState({\n showContent: true,\n selected: this.state.currentDate?.format(outFormat),\n });\n this.setModalVisible(false);\n if (typeof this.props.onConfirm === 'function') {\n this.props.onConfirm({\n currentDate: this.state.currentDate?.format(returnFormat),\n });\n }\n return;\n }\n\n if (this.state.startDate && this.state.endDate) {\n const start = this.state.startDate.format(outFormat);\n const end = this.state.endDate.format(outFormat);\n this.setState({\n showContent: true,\n selected: `${start} ${this.props.dateSplitter} ${end}`,\n });\n this.setModalVisible(false);\n\n returnFormat = 'YYYY-MM-DD';\n if (typeof this.props.onConfirm === 'function') {\n this.props.onConfirm({\n startDate: this.state.startDate.format(returnFormat),\n endDate: this.state.endDate.format(returnFormat),\n });\n }\n } else {\n //alert(this.state.alertMessageText);\n Alert.alert(this.state.alertMessageText);\n }\n };\n getTitleElement() {\n const {customStyles = {}, allowFontScaling} = this.props;\n // const showContent = this.state.showContent;\n\n return (\n <Text\n allowFontScaling={allowFontScaling}\n style={[styles.contentText, customStyles.contentText]}>\n {'Select date'}\n </Text>\n );\n }\n\n renderButton = () => {\n const {customButton} = this.props;\n\n if (customButton) {\n return customButton(this.onConfirm);\n }\n return (\n <View style={styles.main}>\n <View style={styles.btn_con}>\n <TouchableOpacity\n // underlayColor={'transparent'}\n onPress={this.onConfirm}\n style={[styles.btn_style, this.props.ButtonStyle]}>\n <Text\n style={[styles.btn_default_style, this.props.ButtonTextStyle]}>\n {this.props.ButtonText ? this.props.ButtonText : 'Submit'}\n </Text>\n </TouchableOpacity>\n </View>\n </View>\n );\n };\n\n renderCancelButton = () => {\n return (\n <View style={styles.can_main}>\n <View style={styles.can_main1}>\n <TouchableOpacity\n // underlayColor={'transparent'}\n onPress={this.onCancel}\n style={[styles.can_btn_default, this.props.ButtonStyle]}>\n <Text style={[styles.can_btn_text, this.props.ButtonTextStyle]}>\n {'Cancel'}\n </Text>\n </TouchableOpacity>\n </View>\n </View>\n );\n };\n\n render() {\n const {customStyles = {}} = this.props;\n\n //let style = styles.stylish;\n //style = this.props.centerAlign ? {...style} : style;\n //style = {...style, ...this.props.style};\n\n return (\n <Modal\n animationType=\"slide\"\n onRequestClose={() => this.setModalVisible(false)}\n transparent={true}\n hardwareAccelerated={true}\n visible={this.state.modalVisible}>\n <View style={styles.main_con1}>\n <View style={styles.date_ran_con}>\n <DateRange\n //date={new Date()}\n headFormat={this.props.headFormat}\n customStyles={customStyles}\n markText={this.props.markText}\n onDatesChange={this.onDatesChange}\n isDateBlocked={this.isDateBlocked}\n startDate={this.state.startDate}\n endDate={this.state.endDate}\n focusedInput={this.state.focus}\n calendarBgColor={this.props.calendarBgColor || undefined}\n selectedBgColor={this.props.selectedBgColor || undefined}\n selectedTextColor={this.props.selectedTextColor || undefined}\n mode={this.props.mode || 'single'}\n currentDate={this.state.currentDate}\n textStartDate={this.state.textStartDate}\n textEndDate={this.state.textEndDate}\n headerText={this.props.headerText}\n getSelectState={selectState => {\n if (this.state?.selectState !== selectState) {\n this.setState({\n selectState,\n });\n }\n }}\n />\n {this.state?.selectState !== 'year' && (\n <View style={styles.main_con}>\n {this.renderCancelButton()}\n {this.renderButton()}\n </View>\n )}\n </View>\n </View>\n </Modal>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n can_btn_text: {fontSize: normalize(16), textAlign: 'left'},\n can_btn_default: {\n padding: 5,\n paddingEnd: 20,\n },\n can_main1: {flexWrap: 'wrap', marginStart: 10},\n can_main: {flex: 1},\n btn_default_style: {fontSize: 20, textAlign: 'right'},\n btn_style: {\n padding: 5,\n paddingStart: 20,\n },\n main: {flex: 1},\n btn_con: {\n flexWrap: 'wrap',\n alignSelf: 'flex-end',\n marginEnd: 10,\n },\n date_ran_con: {width: '90%', borderColor: 'transparent'},\n main_con1: {\n flexDirection: 'column',\n // justifyContent: 'center',\n // alignSelf: 'center',\n // alignItems: 'center',\n //backgroundColor: this.props.calendarBgColor,\n\n flex: 1,\n justifyContent: 'center',\n alignItems: 'center',\n width: '100%',\n backgroundColor: 'rgba(0, 0, 0, 0.3)',\n },\n main_con: {\n paddingTop: 5,\n paddingBottom: 5,\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: 'white',\n borderBottomEndRadius: 2,\n borderBottomStartRadius: 2,\n },\n placeholderText: {\n color: '#c9c9c9',\n fontSize: normalize(18),\n },\n contentInput: {\n alignItems: 'center',\n justifyContent: 'center',\n },\n contentText: {\n fontSize: normalize(18),\n },\n stylish: {\n borderColor: 'transparent',\n borderWidth: 1,\n },\n});\n","import React, {Component} from 'react';\nimport {Text, View, TouchableOpacity, Platform} from 'react-native';\nimport dayjs from 'dayjs';\nimport normalize from './normalizeText';\nimport Month from './Month';\nimport {Picker} from '@react-native-picker/picker';\nimport {SvgIcon} from '../../utils/SvgIcon';\nimport Color from '../../theme/Color';\nimport {isAndroid} from '../../utils/PlatformCheck';\n\nimport 'dayjs/locale/en'; // Load English locale for formatting\nimport advancedFormat from 'dayjs/plugin/advancedFormat';\ndayjs.extend(advancedFormat);\n\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\ndayjs.extend(customParseFormat);\n\nconst styles = {\n calendar: {\n backgroundColor: 'rgb(255, 255, 255)',\n //marginHorizontal: normalize(10),\n },\n headActionContainer: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'space-between',\n paddingTop: 10,\n paddingBottom: 10,\n //paddingLeft: 10,\n // paddingRight: 10,\n },\n headCoverContainer: {\n paddingTop: 20,\n paddingBottom: 20,\n //height: normalize(120),\n width: '100%',\n justifyContent: 'center',\n backgroundColor: '#ff3431',\n paddingHorizontal: 20,\n },\n dateContainer: {\n flexDirection: 'row',\n justifyContent: 'space-between',\n },\n headTitleText: {\n fontSize: normalize(18),\n color: 'white',\n fontWeight: 'bold',\n },\n headerDateSingle: {\n fontSize: normalize(20),\n color: 'white',\n fontWeight: 'bold',\n },\n};\n\nconst min = 1900;\nconst max = 2100;\nconst interval = max - min + 1;\nconst rangeArray = Array.from(new Array(interval), (val, index) => index + min);\n\nexport default class DateRange extends Component {\n constructor(props) {\n super(props);\n const defalutFormat =\n !props.mode || props.mode === 'single' ? 'ddd, MMM D' : 'MMM DD,YYYY';\n this.state = {\n focusedMonth: props.currentDate || dayjs().startOf('month'),\n currentDate: props.currentDate,\n startDate: props.startDate || '',\n endDate: props.endDate || '',\n focus: props.focusedInput || 'startDate',\n clearStart: '',\n clearEnd: '',\n clearSingle: props.currentDate?.format(defalutFormat) || 'Select Date',\n selectState: 'monthAndDate', // or year\n selectedYear: null,\n textStartDate: props.textStartDate || 'Start Date',\n textEndDate: props.textEndDate || 'End Date',\n };\n }\n previousMonth = () => {\n this.setState({\n focusedMonth: this.state.focusedMonth.add(-1, 'M'),\n });\n };\n nextMonth = () => {\n this.setState({\n focusedMonth: this.state.focusedMonth.add(1, 'M'),\n });\n };\n onDatesChange = event => {\n this.props.onDatesChange(event);\n const defalutFormat =\n !this.props.mode || this.props.mode === 'single'\n ? 'ddd, MMM D'\n : 'MMM DD,YYYY';\n const headFormat = this.props.headFormat || defalutFormat;\n const {startDate, endDate, focusedInput, currentDate} = event;\n if (currentDate && !this.props.isDateBlocked(currentDate)) {\n this.setState({currentDate});\n this.setState({clearSingle: currentDate.format(headFormat)});\n return;\n }\n this.setState({...this.state, focus: focusedInput}, () => {\n this.setState({...this.state, startDate, endDate});\n if (endDate) {\n this.setState({\n clearStart: startDate.format(headFormat),\n clearEnd: endDate.format(headFormat),\n });\n } else {\n this.setState({\n clearStart: startDate.format(headFormat),\n clearEnd: '',\n });\n }\n });\n };\n selectYear = () => {\n this.setState({\n selectState: 'year',\n selectedYear: parseInt(this.state.focusedMonth.format('YYYY')),\n });\n };\n selectMonthAndDate = () => {\n this.setState({\n selectState: 'monthAndDate',\n });\n };\n changeYear = itemValue => {\n if (this.state.currentDate) {\n let newDate = dayjs(this.state.currentDate).year(itemValue);\n\n if (this.props.isDateBlocked(newDate)) {\n return;\n }\n }\n\n this.setState({selectedYear: itemValue});\n this.setState({\n focusedMonth: this.state.focusedMonth.year(itemValue),\n currentDate: this.state.currentDate?.year(itemValue),\n });\n const defalutFormat =\n !this.props.mode || this.props.mode === 'single'\n ? 'ddd, MMM D'\n : 'MMM DD,YYYY';\n const headFormat = this.props.headFormat || defalutFormat;\n this.setState({clearSingle: this.state.currentDate?.format(headFormat)});\n this.selectMonthAndDate();\n };\n\n componentDidUpdate(preProps, preState) {\n if (preState.selectState !== this.state.selectState) {\n if (this.props.getSelectState) {\n this.props.getSelectState?.(this.state.selectState);\n }\n }\n }\n\n renderButton = () => {\n return (\n <View style={{}}>\n <View\n style={{\n flexWrap: 'wrap',\n alignSelf: 'flex-end',\n marginEnd: 10,\n }}>\n <TouchableOpacity\n underlayColor={'transparent'}\n onPress={() => {\n this.changeYear(this.state.selectedYear);\n }}\n style={[\n {\n padding: 5,\n paddingStart: 20,\n },\n this.props.ButtonStyle,\n ]}>\n <Text\n style={[{fontSize: 20, textAlign: 'center', color: '#555555'}]}>\n {'Select'}\n </Text>\n </TouchableOpacity>\n </View>\n </View>\n );\n };\n render() {\n const markText = this.props.markText || '';\n const {customStyles = {}} = this.props;\n\n const headerContainer = {\n ...styles.headCoverContainer,\n ...customStyles.headerStyle,\n };\n const markTitleText = {\n opacity: 1,\n marginBottom: 10,\n fontSize: normalize(14),\n\n color: 'white',\n fontWeight: '500',\n };\n const markTitle = {\n // ...styles.headTitleText,\n color: 'white',\n //opacity: 0.8,\n marginBottom: 15,\n //fontSize: normalize(18),\n ...customStyles.headerMarkTitle,\n };\n const headerDate = {\n ...styles.headTitleText,\n ...customStyles.headerDateTitle,\n };\n const headerDateSingle = {\n ...styles.headerDateSingle,\n ...customStyles.headerDateSingle,\n };\n\n return (\n <View>\n <View style={headerContainer}>\n <View style={{}}>\n <Text\n style={[\n markTitleText,\n isAndroid && {\n marginBottom: -10,\n fontSize: normalize(17),\n fontWeight: '400',\n },\n ]}>\n {this.props.headerText}\n </Text>\n\n {this.props.mode === 'single' && (\n <View style={{}}>\n <View>\n {Platform.OS == 'ios' ? (\n <TouchableOpacity onPress={this.selectYear}>\n <Text style={markTitle}>\n {this.state.focusedMonth.format('YYYY')}\n </Text>\n </TouchableOpacity>\n ) : (\n <View style={{}}>\n <View\n style={{\n width: 150,\n marginStart: -15,\n }}>\n <Picker\n mode=\"dropdown\"\n prompt={this.state.selectedYear + ''}\n selectedValue={parseInt(\n this.state.focusedMonth.format('YYYY'),\n )}\n style={{\n color: Color.white,\n fontSize: normalize(20),\n height: normalize(50),\n backgroundColor: 'transparent',\n\n // backgroundColor: 'yellow',\n ...customStyles.headerMarkTitle,\n }}\n dropdownIconColor={\n customStyles.headerStyle?.backgroundColor ||\n Color.white\n }\n dropdownIconRippleColor={\n customStyles.headerStyle?.backgroundColor ||\n Color.white\n }\n itemStyle={{\n fontWeight: '900',\n height: normalize(50),\n }}\n onValueChange={this.changeYear}>\n {rangeArray.map((value, index) => {\n return (\n <Picker.Item\n key={index}\n label={String(value)}\n value={value}\n style={{\n fontSize: normalize(20),\n fontWeight: '900',\n }}\n />\n );\n })}\n </Picker>\n </View>\n </View>\n )}\n </View>\n <View style={{}} onPress={this.selectMonthAndDate}>\n <Text style={headerDateSingle}>{this.state.clearSingle}</Text>\n </View>\n </View>\n )}\n </View>\n\n {this.props.mode === 'range' && (\n <View>\n <Text style={markTitle}>{markText}</Text>\n <View style={styles.dateContainer}>\n <Text style={headerDate}>\n {this.state.clearStart\n ? this.state.clearStart\n : this.state.textStartDate}\n </Text>\n <Text style={styles.headTitleText} />\n <Text style={headerDate}>\n {this.state.clearEnd\n ? this.state.clearEnd\n : this.state.textEndDate}\n </Text>\n </View>\n </View>\n )}\n </View>\n {this.state.selectState === 'monthAndDate' && (\n <View\n style={[\n styles.calendar,\n {backgroundColor: this.props.calendarBgColor},\n ]}>\n <View style={styles.headActionContainer}>\n <TouchableOpacity\n style={{\n paddingHorizontal: 20,\n paddingBottom: 10,\n paddingTop: 5,\n }}\n onPress={this.previousMonth}>\n <SvgIcon\n name={'Left'}\n width={normalize(13)}\n height={normalize(13)}\n color={'#555555'}\n />\n </TouchableOpacity>\n <Text\n style={{\n fontSize: 20,\n color: '#555555',\n fontWeight: '400',\n ...customStyles.monthPickerText,\n }}>\n {this.state.focusedMonth.format('MMMM YYYY')}\n </Text>\n <TouchableOpacity\n style={{\n paddingHorizontal: 20,\n paddingBottom: 10,\n paddingTop: 5,\n }}\n onPress={this.nextMonth}>\n <SvgIcon\n name={'Right'}\n width={normalize(13)}\n height={normalize(13)}\n color={'#555555'}\n />\n </TouchableOpacity>\n </View>\n <Month\n customStyles={customStyles}\n mode={this.props.mode}\n date={this.props.date}\n startDate={this.props.startDate}\n endDate={this.props.endDate}\n focusedInput={this.props.focusedInput}\n currentDate={this.state.currentDate}\n focusedMonth={this.state.focusedMonth}\n onDatesChange={this.onDatesChange}\n isDateBlocked={this.props.isDateBlocked}\n onDisableClicked={this.props.onDisableClicked}\n selectedBgColor={this.props.selectedBgColor}\n selectedTextColor={this.props.selectedTextColor}\n />\n </View>\n )}\n {/* //dfsd */}\n {this.state.selectState === 'year' && (\n <View\n style={[\n styles.calendar,\n {\n justifyContent: 'center',\n backgroundColor: this.props.calendarBgColor,\n },\n ]}>\n <Picker\n selectedValue={this.state.selectedYear}\n mode={'dropdown'}\n onValueChange={itemValue => {\n this.setState({selectedYear: itemValue});\n //\n }}>\n {rangeArray.map((value, index) => {\n return (\n <Picker.Item\n key={index}\n label={String(value)}\n value={value}\n />\n );\n })}\n </Picker>\n {this.renderButton()}\n </View>\n )}\n </View>\n );\n }\n}\n","import {PixelRatio, Dimensions} from 'react-native';\nconst pixelRatio = PixelRatio.get();\nconst deviceHeight = Dimensions.get('window').height;\nconst deviceWidth = Dimensions.get('window').width;\n\nconst normalize = size => {\n if (pixelRatio === 2) {\n // iphone 5s and older Androids\n if (deviceWidth < 360) {\n return size * 0.95;\n }\n // iphone 5\n if (deviceHeight < 667) {\n return size;\n // iphone 6-6s\n } else if (deviceHeight >= 667 && deviceHeight <= 735) {\n return size * 1.15;\n }\n // older phablets\n return size * 1.25;\n }\n if (pixelRatio === 3) {\n // catch Android font scaling on small machines\n // where pixel ratio / font scale ratio => 3:3\n if (deviceWidth <= 360) {\n return size;\n }\n // Catch other weird android width sizings\n if (deviceHeight < 667) {\n return size * 1.15;\n // catch in-between size Androids and scale font up\n // a tad but not too much\n }\n if (deviceHeight >= 667 && deviceHeight <= 735) {\n return size * 1.2;\n }\n // catch larger devices\n // ie iphone 6s plus / 7 plus / mi note 等等\n return size * 1.27;\n }\n if (pixelRatio === 3.5) {\n // catch Android font scaling on small machines\n // where pixel ratio / font scale ratio => 3:3\n if (deviceWidth <= 360) {\n return size;\n // Catch other smaller android height sizings\n }\n if (deviceHeight < 667) {\n return size * 1.2;\n // catch in-between size Androids and scale font up\n // a tad but not too much\n }\n if (deviceHeight >= 667 && deviceHeight <= 735) {\n return size * 1.25;\n }\n // catch larger phablet devices\n return size * 1.4;\n }\n // if older device ie pixelRatio !== 2 || 3 || 3.5\n return size;\n};\n\n//module.exports = normalize; // eslint-disable-line no-undef\n\nexport default normalize;\n","import React, {Component} from 'react';\nimport {View, Text} from 'react-native';\nimport dayjs from 'dayjs';\nimport Week from './Week';\nimport normalize from './normalizeText';\n\ndayjs.extend(require('dayjs/plugin/advancedFormat'));\n\nconst styles = {\n month: {},\n week: {\n flexDirection: 'row',\n marginVertical: 5,\n // justifyContent: 'space-between',\n },\n dayName: {\n flexGrow: 1,\n flexBasis: 1,\n textAlign: 'center',\n color: '#555555',\n opacity: 0.9,\n fontWeight: '500',\n fontSize: normalize(12),\n },\n};\n\nexport default class Month extends Component {\n render() {\n const {\n customStyles = {},\n mode,\n date,\n startDate,\n endDate,\n focusedInput,\n currentDate,\n focusedMonth,\n onDatesChange,\n isDateBlocked,\n onDisableClicked,\n selectedBgColor,\n selectedTextColor,\n } = this.props;\n const dayNames = []; // store week's each day title\n const weeks = [];\n const startOfMonth = focusedMonth?.clone()?.startOf('month');\n //?.startOf('week'); // make startOfMonth is immutable\n const endOfMonth = focusedMonth?.clone?.()?.endOf('month'); // same logic as below\n\n // get the interval of week of first day and last day\n const currentDate1 = startOfMonth ? dayjs(startOfMonth) : dayjs();\n //console.log(\"currentDate1 --->:\",currentDate1);\n const weekStart = currentDate1.clone().startOf('week');\n const weekEnd = currentDate1.clone().endOf('week');\n let currentDay = weekStart;\n // console.log(\"currentDay.isBefore(weekEnd) --->:\",currentDay.isBefore(weekEnd));\n // console.log(\"currentDay.isSame(weekEnd) --->:\",currentDay.isSame(weekEnd));\n while (currentDay.isBefore(weekEnd) || currentDay.isSame(weekEnd)) {\n dayNames.push(\n <Text\n key={currentDay.format('YYYY-MM-DD')}\n style={[styles.dayName, customStyles.dayNameText]}>\n {currentDay.format('dd')[0]}\n </Text>,\n );\n currentDay = currentDay.add(1, 'day');\n }\n const weekRange = [];\n currentDay = weekStart;\n // console.log(\"weekStart --->:\",weekStart);\n //console.log(\"weekEnd --->:\",weekEnd);\n // console.log(\"currentDay.isSame(weekEnd) --->:\",currentDay.isSame(weekEnd));\n // console.log(\"currentDay.isBefore(weekEnd) --->:\",currentDay.isSame(weekEnd));\n while (currentDay.isBefore(endOfMonth) || currentDay.isSame(weekEnd)) {\n // console.log(\"currentDay --->:\",currentDay);\n weekRange.push(currentDay);\n currentDay = currentDay.add(7, 'day');\n }\n\n //console.log(\"weekRange --->:\",weekRange);\n weekRange.forEach(week => {\n //console.log(\"week --->:\",week);\n weeks.push(\n <Week\n customStyles={customStyles}\n key={week.format('YYYY-MM-DD')}\n mode={mode}\n date={date}\n startDate={startDate}\n endDate={endDate}\n focusedInput={focusedInput}\n currentDate={currentDate}\n focusedMonth={focusedMonth}\n startOfWeek={week}\n onDatesChange={onDatesChange}\n isDateBlocked={isDateBlocked}\n onDisableClicked={onDisableClicked}\n selectedBgColor={selectedBgColor}\n selectedTextColor={selectedTextColor}\n startOfMonth={startOfMonth}\n endOfMonth={endOfMonth}\n />,\n );\n });\n return (\n <View style={styles.month}>\n <View style={styles.week}>{dayNames}</View>\n {weeks}\n </View>\n );\n }\n}\n","import React, {Component} from 'react';\nimport {Text, TouchableOpacity, View} from 'react-native';\nimport dayjs from 'dayjs'; // Importing the entire Day.js library\nimport {dates} from './dates';\nimport normalize from './normalizeText';\n\nimport 'dayjs/locale/en'; // Load English locale for formatting\nimport isBetween from 'dayjs/plugin/isBetween';\nimport {createDateRange} from '../../utils/helpers';\ndayjs.extend(isBetween);\n\nconst styles = {\n week: {\n flexDirection: 'row',\n marginVertical: 5,\n },\n day: {\n flexGrow: 1,\n flexBasis: 1,\n alignItems: 'center',\n },\n dayText: {\n color: '#555555',\n fontWeight: '500',\n fontSize: normalize(12),\n },\n dayBlocked: {\n backgroundColor: 'rgb(255, 255, 255)',\n },\n daySelected: {\n backgroundColor: 'rgb(71, 81, 177)',\n },\n dayDisabledText: {\n color: 'gray',\n opacity: 0.5,\n fontWeight: '400',\n },\n daySelectedText: {\n color: 'rgb(252, 252, 252)',\n },\n dayStarted: {\n borderTopLeftRadius: 20,\n borderBottomLeftRadius: 20,\n },\n dayEnded: {\n borderTopRightRadius: 20,\n borderBottomRightRadius: 20,\n },\n borderContainer: {\n width: 40,\n height: 40,\n alignItems: 'center',\n justifyContent: 'center',\n },\n};\n\nexport default class Week extends Component {\n render() {\n const {\n customStyles = {},\n mode,\n date,\n startDate,\n endDate,\n focusedInput,\n startOfWeek,\n onDatesChange,\n isDateBlocked,\n onDisableClicked,\n selectedBgColor,\n selectedTextColor,\n currentDate,\n endOfMonth,\n startOfMonth,\n } = this.props;\n const days = [];\n const endOfWeek = dayjs(startOfWeek).endOf('week'); // Ensure startOfWeek is a Day.js object\n\n // Function to check if two dates are in the same month\n const areDatesInSameMonth = (date1, date2) => {\n return dayjs(date1).isSame(date2, 'month');\n };\n\n // Create an array containing all the days in the week range\n const weekRange = [];\n let currentDay = dayjs(startOfWeek).startOf('day'); // Ensure startOfWeek is a Day.js object and start from the beginning of the day\n while (\n currentDay.isBefore(endOfWeek) ||\n currentDay.isSame(endOfWeek, 'day')\n ) {\n weekRange.push(currentDay);\n currentDay = currentDay.add(1, 'day');\n }\n\n // Iterate over each day in the week range\n weekRange.forEach(day => {\n const onPress = () => {\n if (isDateBlocked(day)) {\n onDisableClicked(day);\n } else if (mode === 'range') {\n let isPeriodBlocked = false;\n const start = focusedInput === 'startDate' ? day : startDate;\n const end = focusedInput === 'endDate' ? day : endDate;\n\n if (start && end) {\n createDateRange(start, end).forEach(dayPeriod => {\n if (isDateBlocked(dayPeriod)) isPeriodBlocked = true;\n });\n }\n onDatesChange(\n isPeriodBlocked\n ? dates(end, null, 'startDate')\n : dates(start, end, focusedInput),\n );\n } else if (mode === 'single') {\n onDatesChange({currentDate: day});\n } else {\n onDatesChange({date: day});\n }\n };\n\n // Helper functions to check date selection status\n const isDateRangeSelected = () => {\n if (mode === 'range') {\n if (startDate && endDate) {\n return (\n (day.isSame(startDate, 'day') || day.isAfter(startDate, 'day')) &&\n (day.isSame(endDate, 'day') || day.isBefore(endDate, 'day'))\n );\n }\n return (\n (startDate && day.isSame(startDate, 'day')) ||\n (endDate && day.isSame(endDate, 'day'))\n );\n }\n return date && day.isSame(date, 'day');\n };\n\n const isDateSelected = () => {\n if (mode === 'single') {\n return currentDate && day.isSame(currentDate, 'day');\n }\n return date && day.isSame(date, 'day');\n };\n\n const isDateStart = () => {\n return startDate && day.isSame(startDate, 'day');\n };\n\n const isDateEnd = () => {\n return endDate && day.isSame(endDate, 'day');\n };\n\n // Check if the day is blocked\n let isBlocked = !areDatesInSameMonth(endOfMonth, day);\n if (isDateBlocked(day)) {\n isBlocked = true;\n }\n\n // Check selection status for various cases\n const isRangeSelected = isDateRangeSelected();\n const isStart = isDateStart();\n const isEnd = isDateEnd();\n const isSelected = isDateSelected();\n\n // Apply styles based on selection status\n const dayRangeSelectedStyle = selectedBgColor\n ? [styles.daySelected, {backgroundColor: selectedBgColor}]\n : styles.daySelected;\n const daySelectedText = selectedTextColor\n ? [styles.daySelectedText, {color: selectedTextColor}]\n : styles.daySelectedText;\n const style = [\n styles.day,\n isBlocked && styles.dayBlocked,\n isRangeSelected && dayRangeSelectedStyle,\n isStart && styles.dayStarted,\n isEnd && styles.dayEnded,\n ];\n\n const styleText = [\n styles.dayText,\n customStyles.datePickerText,\n isBlocked && styles.dayDisabledText,\n isRangeSelected && daySelectedText,\n isSelected && daySelectedText,\n ];\n const borderContainer =\n mode === 'single' && isSelected\n ? [\n styles.borderContainer,\n {\n borderRadius: 20,\n backgroundColor: selectedBgColor\n ? selectedBgColor\n : styles.daySelected.backgroundColor,\n },\n ]\n : styles.borderContainer;\n days.push(\n <TouchableOpacity\n key={day.format('YYYY-MM-DD')}\n style={style}\n onPress={onPress}\n disabled={isBlocked && !onDisableClicked}>\n <View style={borderContainer}>\n <Text style={styleText}>{day.format('DD')}</Text>\n </View>\n </TouchableOpacity>,\n );\n });\n\n return <View style={styles.week}>{days}</View>;\n }\n}\n","export const dates = (startDate, endDate, focusedInput) => {\n if (focusedInput === 'startDate') {\n if (startDate && endDate) {\n return {startDate, endDate: null, focusedInput: 'endDate'};\n }\n return {startDate, endDate, focusedInput: 'endDate'};\n }\n\n if (focusedInput === 'endDate') {\n if (endDate && startDate && endDate.isBefore(startDate)) {\n return {startDate: endDate, endDate: null, focusedInput: 'endDate'};\n }\n return {startDate, endDate, focusedInput: 'startDate'};\n }\n\n return {startDate, endDate, focusedInput};\n};\n","import * as React from 'react';\nimport {Linking, StyleSheet, View, Text} from 'react-native';\nimport Communications from 'react-native-communications';\n\nimport {TEMPLATE_STYLE_VALUES, leftBubbleStyles} from '../theme/styles';\n\nimport BaseView, {BaseViewProps, BaseViewState} from './BaseView';\nimport {ThemeContext} from '../theme/ThemeContext';\nimport {botStyles} from '../theme/styles';\nimport {getBubbleTheme} from '../theme/themeHelper';\nimport ParsedText from 'react-native-parsed-text';\nimport {getParseList} from '../utils/ParseList';\n\nconst WWW_URL_PATTERN = /^www\\./i;\n\n//const DEFAULT_OPTION_TITLES = ['Call', 'Text', 'Cancel'];\n\nexport interface BotTextProps extends BaseViewProps {\n text?: string;\n optionTitles?: [];\n isFromViewMore?: boolean;\n isLastMsz?: boolean;\n isFilterApply?: boolean;\n text_color?: any;\n}\nexport interface BotTextState extends BaseViewState {}\n\nexport default class BotText extends BaseView<BotTextProps, BotTextState> {\n static contextType = ThemeContext;\n // static contextTypes: {\n // actionSheet: PropTypes.Requireable<(...args: any[]) => any>;\n // };\n //static BotText: {};\n\n static defaultProps: {\n position: 'left';\n optionTitles: ['Call', 'Text', 'Cancel'];\n isFilterApply: false;\n text_color: undefined;\n };\n // shouldComponentUpdate(nextProps: any) {\n // return (\n // !!this.props.text &&\n // !!nextProps.text &&\n // this.props.text !== nextProps.text\n // );\n // }\n\n onLinkCallback = (url: any) => {\n let isErrorResult = false;\n\n return new Promise<void>((resolve, reject) => {\n isErrorResult = this.onUrlPress(url);\n isErrorResult ? reject() : resolve();\n });\n };\n\n private onUrlPress = (url: string) => {\n // When someone sends a message that includes a website address beginning with \"www.\" (omitting the scheme),\n // react-native-parsed-text recognizes it as a valid url, but Linking fails to open due to the missing scheme.\n if (WWW_URL_PATTERN.test(url)) {\n this.onUrlPress(`http://${url}`);\n } else {\n Linking.canOpenURL(url).then(supported => {\n if (!supported) {\n try {\n Linking.openURL(url);\n } catch (e) {}\n console.log('No handler for URL:', url);\n } else {\n Linking.openURL(url);\n }\n });\n }\n return true;\n };\n\n // private onPhonePress = (phone: string | null | undefined) => {\n // const {optionTitles} = this.props;\n // const options =\n // optionTitles && optionTitles.length > 0\n // ? optionTitles.slice(0, 3)\n // : DEFAULT_OPTION_TITLES;\n // const cancelButtonIndex = options.length - 1;\n // // this.context.actionSheet().showActionSheetWithOptions(\n // // {\n // // options,\n // // cancelButtonIndex,\n // // },\n // // buttonIndex => {\n // // switch (buttonIndex) {\n // // case 0:\n // // Communications.phonecall(phone, true);\n // // break;\n // // case 1:\n // // Communications.text(phone);\n // // break;\n // // default:\n // // break;\n // // }\n // // },\n // // );\n // };\n\n isViewDisable = () => {\n if (this.props.isFromViewMore) {\n return false;\n }\n\n return !this.props?.isLastMsz;\n };\n\n private onEmailPress = (email: string) =>\n Communications.email([email], null, null, null, null);\n render() {\n let text = this.props?.text;\n const bubbleTheme = getBubbleTheme(this.props?.theme);\n\n return text ? (\n <View style={{flexWrap: 'wrap', marginBottom: 5, marginEnd: 30}}>\n <View\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}\n style={[\n styles.container,\n {\n backgroundColor: bubbleTheme.BUBBLE_LEFT_BG_COLOR,\n },\n leftBubbleStyles[\n this.props?.theme?.v3?.body?.bubble_style || 'balloon'\n ].bubble_style,\n ]}>\n <ParsedText\n style={[\n styles.text,\n {\n color: bubbleTheme.BUBBLE_LEFT_TEXT_COLOR,\n fontFamily: this.props.theme?.v3?.body?.font?.family || 'Inter',\n },\n botStyles[this.props?.theme?.v3?.body?.font?.size || 'medium']\n ?.size,\n this.props.text_color && {\n color: this.props.text_color,\n },\n ]}\n parse={getParseList()}>\n {this.props.isFilterApply\n ? text.toString().replace(/\\s\\s+/g, '\\n').trim()\n : text.trim()}\n </ParsedText>\n </View>\n </View>\n ) : (\n <></>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n text: {\n color: '#202124',\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n marginTop: 5,\n marginBottom: 5,\n marginLeft: 5,\n marginRight: 10,\n },\n container: {\n padding: 5,\n //backgroundColor: 'red', //'#EFF0F0',\n // marginRight: 30,\n //flexWrap: 'wrap',\n marginLeft: 0,\n minHeight: 10,\n justifyContent: 'flex-start',\n },\n});\n","/* eslint-disable react-native/no-inline-styles */\nimport React from 'react';\nimport {Alert, Linking, StyleSheet, Text, View} from 'react-native';\nimport Communications from 'react-native-communications';\nconst WWW_URL_PATTERN = /^www\\./i;\n\nconst emojiMap = {\n ':)': '😀',\n ':(': '😞',\n ':D': '😁',\n ':P': '😛',\n ';)': '😉',\n ':O': '😮',\n ':|': '😐',\n ':’(': '😢',\n ':’D': '😂',\n ':3': '😺',\n ':*)': '😍',\n ':S': '😖',\n '>:( ': '😠',\n ':/': '😕',\n ':o': '😲',\n ':c': '😔',\n ':X': '😶',\n xD: '😆',\n 'B-)': '😎',\n ':^)': '😄',\n '>.<': '😣',\n '-_-': '😑',\n};\n\nconst htmlEntities = {\n '"': '\"',\n ''': \"'\",\n '&': '&',\n '<': '<',\n '>': '>',\n ' ': ' ',\n '©': '©',\n '®': '®',\n '€': '€',\n '¥': '¥',\n '¢': '¢',\n '£': '£',\n '°': '°',\n '¶': '¶',\n '§': '§',\n '™': '™',\n '×': '×',\n '÷': '÷',\n '«': '«',\n '»': '»',\n};\n\nexport function getParseList(): [] {\n // const renderText = (matchingString: any, matches: any) => {\n // // matches => [\"[@michel:5455345]\", \"@michel\", \"5455345\"]\n // let pattern = /\\[(@[^:]+):([^\\]]+)\\]/i;\n // let match = matchingString.match(pattern);\n // return `^^${match[1]}^^`;\n // };\n\n const renderHeaderNew = (\n level: number,\n matchingString: string,\n matches: string[],\n ) => {\n const Header = `h${level}`;\n return <Text style={styles1[Header]}>{matches[1]}</Text>;\n };\n\n //start\n\n const renderBold = (matchingString: string, matches: string[]) => (\n <Text style={styles1.bold}>{matches[1]}</Text>\n );\n\n const renderItalic = (matchingString: string, matches: string[]) => (\n <Text style={[styles1.italic]}>{matches[1]}</Text>\n );\n\n const renderBoldItalic = (matchingString: string, matches: string[]) => (\n <Text style={styles1.boldItalic}>{matches[1]}</Text>\n );\n\n const renderLink = (matchingString: string, matches: string[]) => (\n <Text\n style={styles1.link}\n onPress={() => console.log('Link pressed:', matches[2])}>\n {matches[1]}\n </Text>\n );\n\n const renderHeader =\n (level: number) => (matchingString: string, matches: string[]) => {\n const Header = `h${level}`;\n return (\n <Text style={styles1[Header]}>\n {matches[3]}\n {'\\n'}\n </Text>\n );\n };\n // renderHeaderNew = (\n // level: number,\n // matchingString: string,\n // matches: string[],\n // ) => {\n // const Header = `h${level}`;\n // return <Text style={styles1[Header]}>{matches[1]}</Text>;\n // };\n\n const renderStrikethrough = (matchingString: string, matches: string[]) => (\n <Text style={styles1.strikethrough}>{matches[1]}</Text>\n );\n\n const renderBlockquote = (matchingString: string, matches: string[]) => (\n <Text style={styles1.blockquote}>{matches[1]}</Text>\n );\n\n const renderCode = (matchingString: string, matches: string[]) => (\n <Text style={styles1.code}>{matches[1]}</Text>\n );\n\n // const renderUnorderedList2 = (matchingString: string, matches: string[]) => (\n // <Text style={styles1.unorderedList}>{matches[1]}</Text>\n // );\n const renderUnorderedList = (matchingString: string, matches: string[]) => {\n return `\\n\\u2022 ${matches[1]}`;\n };\n\n const renderCheckboxList = (matchingString: string, matches: string[]) => {\n const isChecked = matches[1] === 'x';\n return (\n <View key={matchingString} style={styles1.taskItem}>\n <Text style={styles1.taskCheckbox}>{isChecked ? '✔️' : '⬜'}</Text>\n <Text style={styles1.taskText}>{matches[2]}</Text>\n </View>\n );\n };\n\n const renderOrderedList = (matchingString: string, matches: string[]) => (\n <Text style={styles1.orderedList}>{matches[1]}</Text>\n );\n\n const renderHorizontalRule = () => (\n <Text style={styles1.horizontalRule}>\n {'\\n'}────────────{'\\n'}\n </Text>\n );\n\n const renderBlockCode = (matchingString: string, matches: string[]) => (\n <Text style={styles1.codeBlock}>{matches[1]}</Text>\n );\n\n const renderTable_2 = (matchingString: string, _matches: string[]) => {\n // Split the table into rows\n const rows = matchingString\n .trim()\n .split('\\n')\n .map(row =>\n row\n .split('|')\n .map(cell => cell.trim())\n .filter(cell => cell),\n );\n\n // Extract headers and body\n const headers = rows[0];\n const body = rows.slice(2); // Adjust slice to skip the separator row\n\n return (\n <View key={matchingString} style={styles1.table}>\n <View style={styles1.tableRow}>\n {headers.map((cell, i) => (\n <Text key={i} style={styles1.tableHeader}>\n {cell}\n </Text>\n ))}\n </View>\n {body.map((row, i) => (\n <View key={i} style={styles1.tableRow}>\n {row.map((cell, j) => (\n <Text key={j} style={styles1.tableCell}>\n {cell}\n </Text>\n ))}\n </View>\n ))}\n </View>\n );\n };\n\n const renderTable = (matchingString: string, matches: string[]) => {\n const rows = matches[0].trim().split('\\n');\n const header = rows[0]\n .split('|')\n .map(cell => cell.trim())\n .filter(cell => cell);\n // const align = rows[1]\n // .split('|')\n // .map(cell => cell.trim())\n // .filter(cell => cell);\n const body = rows.slice(2).map(row =>\n row\n .split('|')\n .map(cell => cell.trim())\n .filter(cell => cell),\n );\n\n return (\n <View style={styles1.table}>\n <View style={styles1.tableRow}>\n {header.map((cell, i) => (\n <Text key={i} style={styles1.tableHeader}>\n {cell}\n </Text>\n ))}\n </View>\n {body.map((row, i) => (\n <View key={i} style={styles1.tableRow}>\n {row.map((cell, j) => (\n <Text key={j} style={styles1.tableCell}>\n {cell}\n </Text>\n ))}\n </View>\n ))}\n </View>\n );\n };\n\n const renderTaskList = (matchingString: string, matches: string[]) => (\n <Text style={styles1.taskListItem}>\n {matches[1] === 'x' ? '☑️' : '⬜️'} {matches[2]}\n </Text>\n );\n\n const renderFootnote = (matchingString: string, matches: string[]) => (\n <Text style={styles1.footnote}>\n {matches[1]}: {matches[2]}\n </Text>\n );\n\n const renderFootnoteReference = (\n matchingString: string,\n matches: string[],\n ) => (\n <Text key={matchingString} style={styles1.footnoteReference}>\n {`[${matches[1]}]`}\n </Text>\n );\n\n const renderHTML = (matchingString: string, matches: string[]) => (\n <Text style={styles1.html}>{matches[1]}</Text>\n );\n const renderParagraph = (matchingString: string, matches: string[]) => (\n <View style={styles1.paragraph}>\n <Text style={styles1.paragraph}>{matches[1]}</Text>\n </View>\n );\n\n const renderPhone = (matchingString: string, matches: string[]) => (\n <Text style={styles1.phone} onPress={() => onPhonePress(matches[0])}>\n {matches[0]}\n </Text>\n );\n\n const renderUrl = (matchingString: string, matches: string[]) => (\n <Text style={styles1.url} onPress={() => onUrlPress(matches[0])}>\n {matches[0]}\n </Text>\n );\n const renderUrl_2 = (matchingString: string, matches: string[]) => (\n <Text\n key={matchingString}\n style={styles1.link}\n onPress={() => onUrlPress(matches[2])}>\n {matches[1]}\n </Text>\n );\n\n const renderEmail = (matchingString: string, matches: string[]) => (\n <Text style={styles1.email} onPress={() => onEmailPress(matches[0])}>\n {matches[0]}\n </Text>\n );\n\n // Custom render function to replace emoticons with emojis\n const renderEmoticon = (match: string) => {\n return emojiMap[match] || match; // Use the emoji from the map or return the original match\n };\n\n const onUrlPress = (url: string) => {\n if (WWW_URL_PATTERN.test(url)) {\n onUrlPress(`http://${url}`);\n } else {\n Linking.canOpenURL(url).then(supported => {\n if (!supported) {\n console.log('No handler for URL:', url);\n try {\n Linking.openURL(url);\n } catch (e) {}\n } else {\n Linking.openURL(url);\n }\n });\n }\n };\n\n const onPhonePress = (phone: string) => {\n Communications.phonecall(phone, true);\n };\n\n const sendEmail = (email: string, subject?: string, body?: string) => {\n // Construct the mailto URL\n let url = `mailto:${email}`;\n let params: string[] = [];\n\n if (subject) {\n params.push(`subject=${encodeURIComponent(subject)}`);\n }\n if (body) {\n params.push(`body=${encodeURIComponent(body)}`);\n }\n\n if (params.length > 0) {\n url += `?${params.join('&')}`;\n }\n\n Linking.openURL(url)\n .then(() => console.log('Email client opened successfully'))\n .catch(err => {\n console.error('Error opening email client:', err);\n Alert.alert('Error', `An error occurred: ${err.message}`);\n });\n };\n\n const onEmailPress = (email: string) => {\n console.log('email ------------>:', email);\n //Communications.email([email], null, null, null, null);\n sendEmail(email);\n };\n\n let parseList: any = [\n // Smileys & Emotion\n {\n pattern: /(^|[^\\w]):\\)(?=[^\\w]|$)/g,\n renderText: (match: string) => renderEmoticon(match.trim()),\n },\n {\n pattern: /(^|[^\\w]):\\((?=[^\\w]|$)/g,\n renderText: (match: string) => renderEmoticon(match.trim()),\n },\n {\n pattern: /(^|[^\\w]):D(?=[^\\w]|$)/g,\n renderText: (match: string) => renderEmoticon(match.trim()),\n },\n {\n pattern: /(^|[^\\w]):P(?=[^\\w]|$)/g,\n renderText: (match: string) => renderEmoticon(match.trim()),\n },\n {\n pattern: /(^|[^\\w]);\\)(?=[^\\w]|$)/g,\n renderText: (match: string) => renderEmoticon(match.trim()),\n },\n {\n pattern: /(^|[^\\w]):O(?=[^\\w]|$)/g,\n renderText: (match: string) => renderEmoticon(match.trim()),\n },\n {\n pattern: /(^|[^\\w]):\\|(?=[^\\w]|$)/g,\n renderText: (match: string) => renderEmoticon(match.trim()),\n },\n {\n pattern: /(^|[^\\w]):’\\((?=[^\\w]|$)/g,\n renderText: (match: string) => renderEmoticon(match.trim()),\n },\n {\n pattern: /(^|[^\\w]):’D(?=[^\\w]|$)/g,\n renderText: (match: string) => renderEmoticon(match.trim()),\n },\n {\n pattern: /(^|[^\\w]):3(?=[^\\w]|$)/g,\n renderText: (match: string) => renderEmoticon(match.trim()),\n },\n {\n pattern: /(^|[^\\w]):\\*\\)(?=[^\\w]|$)/g,\n renderText: (match: string) => renderEmoticon(match.trim()),\n },\n {\n pattern: /(^|[^\\w]):S(?=[^\\w]|$)/g,\n renderText: (match: string) => renderEmoticon(match.trim()),\n },\n {\n pattern: /(^|[^\\w])>:\\((?=[^\\w]|$)/g,\n renderText: (match: string) => renderEmoticon(match.trim()),\n },\n {\n pattern: /(^|[^\\w]):\\/(?=[^\\w]|$)/g,\n renderText: (match: string) => renderEmoticon(match.trim()),\n },\n {\n pattern: /(^|[^\\w]):o(?=[^\\w]|$)/g,\n renderText: (match: string) => renderEmoticon(match.trim()),\n },\n {\n pattern: /(^|[^\\w]):c(?=[^\\w]|$)/g,\n renderText: (match: string) => renderEmoticon(match.trim()),\n },\n {\n pattern: /(^|[^\\w]):X(?=[^\\w]|$)/g,\n renderText: (match: string) => renderEmoticon(match.trim()),\n },\n {\n pattern: /(^|[^\\w])xD(?=[^\\w]|$)/g,\n renderText: (match: string) => renderEmoticon(match.trim()),\n },\n {\n pattern: /(^|[^\\w])B-\\)(?=[^\\w]|$)/g,\n renderText: (match: string) => renderEmoticon(match.trim()),\n },\n {\n pattern: /(^|[^\\w]):\\^\\)(?=[^\\w]|$)/g,\n renderText: (match: string) => renderEmoticon(match.trim()),\n },\n {\n pattern: /(^|[^\\w])>.<(?=[^\\w]|$)/g,\n renderText: (match: string) => renderEmoticon(match.trim()),\n },\n {\n pattern: /(^|[^\\w])-_-(?=[^\\w]|$)/g,\n renderText: (match: string) => renderEmoticon(match.trim()),\n },\n {\n pattern: /#h1(\\w+)/,\n renderText: (matchingString: string, matches: string[]) =>\n renderHeaderNew(1, matchingString, matches),\n },\n {\n pattern: /#h2(\\w+)/,\n renderText: (matchingString: string, matches: string[]) =>\n renderHeaderNew(2, matchingString, matches),\n },\n {\n pattern: /#h3(\\w+)/,\n renderText: (matchingString: string, matches: string[]) =>\n renderHeaderNew(3, matchingString, matches),\n },\n {\n pattern: /#h4(\\w+)/,\n renderText: (matchingString: string, matches: string[]) =>\n renderHeaderNew(4, matchingString, matches),\n },\n {\n pattern: /#h5(\\w+)/,\n renderText: (matchingString: string, matches: string[]) =>\n renderHeaderNew(5, matchingString, matches),\n },\n {\n pattern: /#h6(\\w+)/,\n renderText: (matchingString: string, matches: string[]) =>\n renderHeaderNew(6, matchingString, matches),\n },\n\n {\n pattern: /^(\\+\\d{1,2}\\s?)?\\(?\\d{3}\\)?[\\s.-]?\\d{3}[\\s.-]?\\d{4}$/,\n renderText: renderPhone,\n onPress: onPhonePress,\n },\n {\n pattern: /\\[([^\\]]+)\\]\\(([^)]+)\\)/g,\n renderText: renderUrl_2,\n onPress: onUrlPress,\n },\n {\n pattern: /(\\b(https?:\\/\\/|www\\.)\\S+\\b)/,\n renderText: renderUrl,\n onPress: onUrlPress,\n },\n {\n pattern: /(\\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Z|a-z]{2,}\\b)/,\n renderText: renderEmail,\n onPress: onEmailPress,\n },\n {pattern: /~(.*?)~/, renderText: renderItalic},\n {pattern: /<p>(.*?)<\\/p>/, renderText: renderParagraph},\n {pattern: /<div>(.*?)<\\/div>/g, renderText: renderHTML},\n {pattern: /(^|\\s)(#)\\s(.*)/, renderText: renderHeader(1)},\n {pattern: /(^|\\s)(##)\\s(.*)/, renderText: renderHeader(2)},\n {pattern: /(^|\\s)(###)\\s(.*)/, renderText: renderHeader(3)},\n {pattern: /(^|\\s)(####)\\s(.*)/, renderText: renderHeader(4)},\n {pattern: /(^|\\s)(#####)\\s(.*)/, renderText: renderHeader(5)},\n {pattern: /(^|\\s)(######)\\s(.*)/, renderText: renderHeader(6)},\n\n {pattern: /\\~\\~(.*?)\\~\\~/, renderText: renderStrikethrough},\n // {pattern: /~(.*?)~/, renderText: renderItalic},\n\n {pattern: />(.*?)$/, renderText: renderBlockquote},\n {pattern: />\\s*(.*)$/gm, renderText: renderBlockquote},\n {pattern: /`([^`]*)`/, renderText: renderCode},\n {pattern: /^\\d+\\.\\s(.*?)$/, renderText: renderOrderedList},\n {pattern: /^---$/, renderText: renderHorizontalRule},\n {pattern: /```([\\s\\S]*?)```/, renderText: renderBlockCode},\n {pattern: /\\[(.*?)\\]\\((.*?)\\)/, renderText: renderLink},\n {pattern: /\\|([^|]+)\\|([^|]+)\\|$/, renderText: renderTable},\n {\n pattern:\n /(?:\\|([\\s\\S]*?)\\|\\r?\\n)(?:\\|[-:| ]+\\|\\r?\\n)(?:\\|([\\s\\S]*?)\\|\\r?\\n)+/g,\n renderText: renderTable_2,\n },\n {\n pattern: /^\\s*\\|.*\\|\\r?\\n(?:^\\s*\\|.*\\|\\r?\\n)*/gm,\n renderText: renderTable_2,\n },\n {\n pattern: /^\\s*\\|.*\\|\\s*\\r?\\n(?:^\\s*\\|.*\\|\\s*\\r?\\n)*/gm,\n renderText: renderTable_2,\n },\n //{pattern: /~(.*?)~/, renderText: renderItalic},\n {pattern: /-\\s\\[(\\s|x)\\]\\s(.*?)$/, renderText: renderTaskList},\n {pattern: /\\[\\^(\\d+)\\]:\\s(.*?)$/, renderText: renderFootnote},\n {pattern: /^\\[\\^(\\d+)\\]:\\s*(.*)$/gm, renderText: renderFootnote},\n {pattern: /\\[\\^(\\d+)\\]/g, renderText: renderFootnoteReference},\n\n {pattern: /\\*\\*\\*(.*?)\\*\\*\\*/, renderText: renderBoldItalic},\n {pattern: /\\*(.*?)\\*/, renderText: renderBold},\n //{pattern: /\\*(.*?)\\*/g, renderText: renderItalic}, // Correct renderText to renderItalic\n\n {pattern: /(?:^\\s*\\*\\s)(.*)/gm, renderText: renderUnorderedList},\n {pattern: /^\\s*-\\s+(.*)$/, renderText: renderUnorderedList},\n {pattern: /^\\s*\\*\\s+(.*)$/, renderText: renderUnorderedList},\n {pattern: /^\\s*[-*]\\s+(.*)$/, renderText: renderUnorderedList},\n {pattern: /- \\[([ x])\\] (.+)/g, renderText: renderCheckboxList},\n {pattern: /^-{3,}$/gm, renderText: renderHorizontalRule},\n {\n pattern:\n /"|'|&|<|>| |©|®|€|¥|¢|£|°|¶|§|™|×|÷|«|»/g,\n renderText: (match: string) => {\n return htmlEntities[match]; // Return the corresponding character for each entity\n },\n },\n ];\n\n // let parseList1: any = [\n // {pattern: /^\\s*-\\s+(.*)$/, renderText: renderUnorderedList},\n // {pattern: /^\\s*\\*\\s+(.*)$/, renderText: renderUnorderedList},\n // {pattern: /^\\s*[-*]\\s+(.*)$/, renderText: renderUnorderedList},\n // ];\n\n return parseList;\n}\n\nconst styles1 = StyleSheet.create({\n taskItem: {\n flexDirection: 'row',\n alignItems: 'center',\n marginVertical: 4,\n },\n taskCheckbox: {\n // fontSize: 16,\n marginRight: 8,\n color: '#000', // Change the color as needed\n },\n taskText: {\n //fontSize: 14,\n //color: '#333', // Change the color as needed\n },\n footnoteReference: {\n color: 'blue',\n textDecorationLine: 'underline',\n },\n container: {\n flex: 1,\n justifyContent: 'center',\n padding: 10,\n },\n text: {\n fontSize: 16,\n },\n bold: {\n fontWeight: 'bold',\n },\n italic: {\n fontStyle: 'italic',\n },\n boldItalic: {\n fontWeight: 'bold',\n fontStyle: 'italic',\n },\n link: {\n color: 'blue',\n textDecorationLine: 'underline',\n },\n h1: {\n fontSize: 24,\n fontWeight: 'bold',\n },\n h2: {\n fontSize: 22,\n fontWeight: 'bold',\n },\n h3: {\n fontSize: 20,\n fontWeight: 'bold',\n },\n h4: {\n fontSize: 18,\n fontWeight: 'bold',\n },\n h5: {\n fontSize: 16,\n fontWeight: 'bold',\n },\n h6: {\n fontSize: 14,\n fontWeight: 'bold',\n },\n strikethrough: {\n textDecorationLine: 'line-through',\n },\n blockquote: {\n // borderLeftWidth: 4,\n // borderLeftColor: '#cccccc',\n // paddingLeft: 10,\n // color: '#666666',\n // fontStyle: 'italic',\n\n borderLeftWidth: 4,\n //borderLeftColor: 'gray',\n paddingLeft: 10,\n marginVertical: 10,\n backgroundColor: '#f9f9f9',\n fontStyle: 'italic', // Add italic if needed\n color: '#666666', // Add color if needed\n },\n code: {\n fontFamily: 'monospace',\n backgroundColor: '#f5f5f5',\n padding: 2,\n borderRadius: 4,\n },\n unorderedList: {\n //fontSize: 16,\n marginBottom: 5,\n marginLeft: 20, // Indent list items\n },\n orderedList: {\n marginLeft: 20,\n },\n horizontalRule: {\n textAlign: 'center',\n },\n codeBlock: {\n fontFamily: 'monospace',\n backgroundColor: '#f5f5f5',\n padding: 10,\n borderRadius: 4,\n },\n table: {\n borderWidth: 1,\n borderColor: '#cccccc',\n marginTop: 10,\n marginBottom: 10,\n },\n tableRow: {\n flexDirection: 'row',\n },\n tableHeader: {\n flex: 1,\n fontWeight: 'bold',\n padding: 5,\n borderWidth: 1,\n borderColor: '#cccccc',\n backgroundColor: '#f0f0f0',\n },\n tableCell: {\n flex: 1,\n padding: 5,\n borderWidth: 1,\n borderColor: '#cccccc',\n },\n taskListItem: {\n marginLeft: 20,\n },\n footnote: {\n fontSize: 12,\n color: '#666666',\n },\n html: {\n paddingTop: 5,\n fontFamily: 'serif',\n //color: '#333333',\n paddingBottom: 5,\n },\n paragraph: {\n paddingBottom: 5,\n paddingTop: 5,\n },\n phone: {\n //color: 'blue',\n textDecorationLine: 'underline',\n },\n url: {\n color: 'blue',\n textDecorationLine: 'underline',\n },\n email: {\n color: 'blue',\n textDecorationLine: 'underline',\n },\n});\n","import BaseView, {BaseViewProps, BaseViewState} from './BaseView';\n\nimport * as React from 'react';\nimport {View} from 'react-native';\nimport BotText from './BotText';\nimport {ThemeContext} from '../theme/ThemeContext';\n\ninterface ErrorProps extends BaseViewProps {}\ninterface ErrorState extends BaseViewState {}\n\nexport default class ErrorTemplate extends BaseView<ErrorProps, ErrorState> {\n static contextType = ThemeContext;\n static propTypes: {\n payload: any;\n onListItemClick?: any;\n };\n\n constructor(props: any) {\n super(props);\n }\n\n // shouldComponentUpdate(nextProps: ErrorProps) {\n // return (\n // !!this.props.payload &&\n // !!nextProps.payload &&\n // this.props.payload !== nextProps.payload\n // );\n // }\n render() {\n return (\n <View>\n {this.props.payload && (\n <View>\n {this.props.payload?.text && (\n <BotText\n text={this.props.payload?.text}\n isFilterApply={true}\n text_color={this.props.payload?.color}\n isLastMsz={!this.isViewDisable()}\n theme={this.props.theme}\n />\n )}\n </View>\n )}\n </View>\n );\n }\n}\n","import BaseView, {BaseViewProps, BaseViewState} from './BaseView';\nimport * as React from 'react';\nimport {Text, View, StyleSheet, ImageBackground} from 'react-native';\nimport FastImage from 'react-native-fast-image';\nimport {normalize} from '../utils/helpers';\nimport Color from '../theme/Color';\nimport {TEMPLATE_STYLE_VALUES, botStyles} from '../theme/styles';\nimport {getBubbleTheme} from '../theme/themeHelper';\n//const windowWidth = Dimensions.get('window').width;\n\ninterface ImageProps extends BaseViewProps {\n payload?: any;\n}\ninterface ImageState extends BaseViewState {\n imageUri: string;\n}\n\nexport default class ImageTemplate extends BaseView<ImageProps, ImageState> {\n static propTypes: {\n payload: any;\n };\n placeholderImage: any;\n\n constructor(props: any) {\n super(props);\n this.state = {\n imageUri: this.props.payload?.url,\n };\n this.placeholderImage = require('../assets/placehoder/image.png');\n }\n\n componentDidMount(): void {}\n\n handleImageError = () => {\n // this.setState({imageUri: this.placeholderImage});\n };\n\n shouldComponentUpdate(nextProps: ImageProps) {\n return (\n !!this.props.payload &&\n !!nextProps.payload &&\n this.props.payload !== nextProps.payload\n );\n }\n private getFileNameFromUrl = (url: string) => {\n // Extract the filename using a regular expression\n const matches = url?.match?.(/\\/([^\\/?#]+)[^\\/]*$/);\n if (matches && matches.length > 1) {\n return matches[1];\n }\n // If the regular expression doesn't match or there's no filename, return null\n return null;\n };\n private renderImageView(item: any) {\n console.log('this.state.imageUri ---->:', this.state.imageUri);\n console.log('this.placeholderImage ------>:', this.placeholderImage);\n const bbtheme = getBubbleTheme(this.props?.theme);\n return (\n <View style={[styles.main_container_1]}>\n <View\n style={[\n styles.main_container,\n {\n backgroundColor: bbtheme?.BUBBLE_LEFT_BG_COLOR || '#4B4EDE',\n },\n ]}>\n {this.state.imageUri && (\n <ImageBackground\n style={styles.image_view}\n source={this.placeholderImage}>\n <FastImage\n source={{uri: this.state.imageUri}}\n style={styles.image}\n onError={this.handleImageError}\n />\n </ImageBackground>\n )}\n <View style={styles.image_name_con} />\n <Text\n style={[\n styles.image_name,\n\n {\n color: bbtheme.BUBBLE_LEFT_TEXT_COLOR,\n fontFamily: this.props.theme?.v3?.body?.font?.family || 'Inter',\n },\n botStyles[this.props?.theme?.v3?.body?.font?.size || 'medium']\n ?.size,\n ]}>\n {this.getFileNameFromUrl(item.url)}\n </Text>\n </View>\n </View>\n );\n }\n\n render() {\n return this.props.payload ? (\n <View style={styles.main_container_3}>\n {this.renderImageView(this.props.payload)}\n </View>\n ) : (\n <></>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n main_container_3: {\n backgroundColor: Color.white,\n minWidth: '90%',\n padding: 10,\n },\n main_container_1: {\n //backgroundColor: 'yellow',\n minHeight: 50,\n // width: '100%',\n // width: windowWidth - normalize(30),\n },\n main_container: {\n // backgroundColor: 'yellow',\n borderRadius: TEMPLATE_STYLE_VALUES.BORDER_RADIUS,\n //borderWidth: TEMPLATE_STYLE_VALUES.BORDER_WIDTH,\n padding: 10,\n borderColor: TEMPLATE_STYLE_VALUES.BORDER_COLOR,\n },\n image_view: {\n justifyContent: 'center',\n alignItems: 'center',\n marginTop: 10,\n alignSelf: 'center',\n height: normalize(140),\n width: normalize(200),\n },\n image_name_con: {\n width: '100%',\n height: 0.5,\n backgroundColor: Color.white,\n marginTop: 20,\n marginBottom: 10,\n },\n\n image_name: {\n alignSelf: 'center',\n\n fontFamily: 'Inter',\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: normalize(13),\n letterSpacing: 0.270833,\n alignItems: 'flex-start',\n textAlign: 'justify',\n color: '#616368', //'#5F6368',\n },\n\n image: {\n height: normalize(140),\n width: normalize(200),\n resizeMode: 'stretch',\n margin: 0,\n },\n});\n","import * as React from 'react';\nimport {\n Dimensions,\n StyleSheet,\n Text,\n TouchableOpacity,\n View,\n} from 'react-native';\nimport FastImage from 'react-native-fast-image';\nimport BaseView, {BaseViewProps, BaseViewState} from './BaseView';\nimport {normalize} from '../utils/helpers';\nimport Color from '../theme/Color';\nimport {TEMPLATE_STYLE_VALUES, botStyles} from '../theme/styles';\n\ninterface ListProps extends BaseViewProps {}\ninterface ListState extends BaseViewState {}\nconst windowWidth = Dimensions.get('window').width;\n\nconst width = (windowWidth / 4) * 3;\n\nexport const LIST_TYPES = {\n web_url: 'web_url',\n};\n//const MAX_COUNT = 3;\n\nexport default class ListTemplate extends BaseView<ListProps, ListState> {\n constructor(props: any) {\n super(props);\n }\n\n getSingleElementView = (item: any, index: number, size: number = 0) => {\n let Image_Http_URL = {uri: item?.image_url};\n let buttons = item?.buttons ? [...item?.buttons] : []; //, ...item?.buttons, ...item?.buttons];\n return (\n <View key={index + '_' + index} style={styles.main_view_1}>\n <View style={styles.sub_container}>\n <View>\n <View style={styles.image_container}>\n <FastImage source={Image_Http_URL} style={styles.image} />\n </View>\n </View>\n\n <TouchableOpacity\n disabled={!item?.default_action}\n style={styles.sub_container_1}\n onPress={\n !item?.default_action\n ? undefined\n : () => {\n if (this.props.payload.onListItemClick) {\n this.props.payload.onListItemClick(\n this.props.payload.template_type,\n item?.default_action,\n );\n }\n }\n }>\n <Text\n style={[\n styles.displayTextStyle,\n\n {\n color: Color.text_color, ////this.props.theme?.v3?.general?.colors?.primary_text,\n fontFamily: this.props.theme?.v3?.body?.font?.family,\n },\n botStyles[this.props?.theme?.v3?.body?.font?.size || 'medium']\n ?.size,\n ]}>\n {item.title}\n </Text>\n\n <Text\n style={[\n styles.descTextStyle,\n\n {\n //color: this.props.theme?.v3?.general?.colors?.primary_text,\n color: Color.sub_text_color,\n fontFamily: this.props.theme?.v3?.body?.font?.family,\n },\n botStyles['small']?.size,\n ]}>\n {item.subtitle}\n </Text>\n </TouchableOpacity>\n </View>\n\n {buttons && (\n <View\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}\n style={[\n styles.buttons_container,\n buttons?.length > 0 && {marginBottom: 10},\n ]}>\n {buttons.map((btn: any, i: number) => {\n return (\n <TouchableOpacity\n key={i + '_'}\n onPress={() => {\n if (this.props.payload.onListItemClick) {\n this.props.payload.onListItemClick(\n this.props.payload.template_type,\n btn,\n );\n }\n }}\n style={[\n styles.buttons_container_1,\n {\n backgroundColor:\n this.props?.theme?.v3?.body?.buttons?.bg_color ||\n '#a37645',\n },\n ]}>\n <Text\n style={[\n styles.btn_text,\n {\n color:\n this.props?.theme?.v3?.body?.buttons?.color ||\n '#ffffff',\n fontFamily:\n this.props.theme?.v3?.body?.font?.family || 'Inter',\n },\n botStyles['small']?.size,\n ]}>\n {btn?.title}\n </Text>\n </TouchableOpacity>\n );\n })}\n </View>\n )}\n </View>\n );\n };\n\n renderElementsView = (list: any) => {\n return (\n <View\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}\n style={[{width: width}]}>\n {list?.map((item: any, index: any) => {\n return this.getSingleElementView(item, index, list.length);\n })}\n\n {this.props.payload?.buttons && (\n <View\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}\n style={styles.more_btn_container}>\n {this.props.payload?.buttons.map((btn: any) => {\n return (\n <TouchableOpacity\n style={styles.more_sub_con1}\n onPress={() => {\n if (this.props.payload.onListItemClick) {\n this.props.payload.onListItemClick(\n this.props.payload.template_type,\n btn,\n true,\n );\n }\n }}>\n <Text\n style={[\n styles.more_text,\n {\n fontFamily: this.props.theme?.v3?.body?.font?.family,\n },\n botStyles[\n this.props?.theme?.v3?.body?.font?.size || 'medium'\n ]?.size,\n ]}>\n {btn?.title}\n </Text>\n </TouchableOpacity>\n );\n })}\n </View>\n )}\n </View>\n );\n };\n\n render() {\n return this.props.payload ? (\n this.renderElementsView(this.props.payload.elements.slice(0, 3))\n ) : (\n <></>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n more_text: {\n flex: 1,\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n color: TEMPLATE_STYLE_VALUES.VIEW_MORE_TEXT_COLOR,\n // alignSelf: 'flex-start',\n alignSelf: 'flex-start',\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n },\n more_sub_con1: {\n flex: 1,\n justifyContent: 'flex-start',\n alignItems: 'flex-start',\n backgroundColor: 'transparent',\n paddingBottom: 10,\n },\n more_btn_container: {\n flexDirection: 'row',\n justifyContent: 'flex-start',\n alignItems: 'flex-start',\n },\n btn_text: {\n padding: 12,\n color: Color.white,\n fontWeight: '500',\n },\n buttons_container_1: {\n // backgroundColor: Color.blue,\n paddingLeft: 5,\n paddingRight: 5,\n marginBottom: 5,\n borderRadius: TEMPLATE_STYLE_VALUES.BORDER_RADIUS,\n alignItems: 'center',\n },\n buttons_container: {\n flexDirection: 'column',\n // backgroundColor: 'green',\n justifyContent: 'flex-end',\n marginTop: 10,\n marginEnd: 10,\n marginStart: 10,\n },\n sub_container_1: {\n flexDirection: 'column',\n marginStart: 10,\n flex: 1,\n },\n sub_container: {flexDirection: 'row', marginTop: 10},\n image: {\n height: normalize(55),\n width: normalize(55),\n resizeMode: 'stretch',\n margin: 0,\n },\n image_container: {\n backgroundColor: 'transparent',\n minHeight: normalize(55),\n minWidth: normalize(55),\n },\n\n line: {\n backgroundColor: TEMPLATE_STYLE_VALUES.BORDER_COLOR,\n width: '100%',\n height: StyleSheet.hairlineWidth,\n },\n\n main_view_1: {\n paddingEnd: 5,\n paddingStart: 5,\n flexDirection: 'column',\n marginBottom: 15,\n backgroundColor: Color.white,\n borderRadius: TEMPLATE_STYLE_VALUES.BORDER_RADIUS,\n borderWidth: TEMPLATE_STYLE_VALUES.BORDER_WIDTH,\n borderColor: TEMPLATE_STYLE_VALUES.BORDER_COLOR,\n },\n btn_views_1: {\n backgroundColor: 'white',\n marginBottom: 2,\n\n borderRadius: TEMPLATE_STYLE_VALUES.BORDER_RADIUS,\n borderWidth: TEMPLATE_STYLE_VALUES.BORDER_WIDTH,\n borderColor: TEMPLATE_STYLE_VALUES.BORDER_COLOR,\n },\n displayTextStyle: {\n fontWeight: '500',\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n fontStyle: 'normal',\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n color: TEMPLATE_STYLE_VALUES.TEXT_COLOR,\n marginBottom: 5,\n marginEnd: 10,\n },\n descTextStyle: {\n fontWeight: '400',\n fontSize: normalize(13),\n fontStyle: 'normal',\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n color: '#485260',\n marginBottom: 3,\n marginEnd: 10,\n opacity: 0.6,\n },\n});\n","import * as React from 'react';\nimport BaseView, {BaseViewProps, BaseViewState} from './BaseView';\nimport {Dimensions, Platform, StyleSheet, Text, View} from 'react-native';\nimport BotText from './BotText';\nimport Color from '../theme/Color';\nimport {TEMPLATE_STYLE_VALUES, botStyles} from '../theme/styles';\nimport {normalize} from '../utils/helpers';\nimport Carousel from 'react-native-reanimated-carousel';\nconst windowWidth = Dimensions.get('window').width;\n\ninterface MiniTableProps extends BaseViewProps {}\ninterface MiniTableState extends BaseViewState {}\n\nexport default class MiniTableTemplate extends BaseView<\n MiniTableProps,\n MiniTableState\n> {\n private renderVerticalTable = (payload: any) => {\n if (!payload) {\n return <></>;\n }\n return (\n <View style={{}}>\n {payload.elements.map((item: any, index: number) => {\n return this.renderTablesViewMore(item, true, index);\n })}\n </View>\n );\n };\n\n private getTemplateWidth = () => {\n // const value = this.props?.theme?.v3?.body?.icon?.show\n // ? normalize(60)\n // : normalize(40);\n return (windowWidth / 4) * 3;\n };\n\n private renderHorizontalTable = (payload: any) => {\n if (!payload) {\n return <></>;\n }\n\n const height = this.getColumnCount(payload) * normalize(45);\n const width = this.getTemplateWidth();\n return (\n <Carousel\n vertical={false}\n loop={false}\n width={width}\n height={height}\n data={payload.elements}\n mode=\"parallax\"\n modeConfig={{\n // parallaxAdjacentItemScale: 0.5,\n //parallaxScrollingOffset: 100,\n parallaxAdjacentItemScale: 0.45,\n }}\n renderItem={({item, index}: any) => (\n <View style={[styles.shadowContainer]}>\n {this.renderTablesViewMore(item, false, index)}\n </View>\n )}\n />\n );\n };\n\n renderMiniTableTemplate() {\n const payload = this.props.payload;\n if (!payload) {\n return <></>;\n }\n let type = payload?.layout;\n\n switch (type) {\n case 'horizontal':\n return this.renderHorizontalTable(payload);\n case 'vertical':\n return this.renderVerticalTable(payload);\n default:\n return this.renderVerticalTable(payload);\n }\n }\n private getColumnCount(payload: any) {\n let maxColCount = 0;\n\n for (let i = 0; i <= payload.elements?.length; i++) {\n if (!payload?.elements[i]?.additional) {\n continue;\n }\n if (payload.elements[i]?.additional?.length > maxColCount) {\n maxColCount = payload.elements[i].additional?.length + 1;\n }\n }\n maxColCount = maxColCount + 1;\n\n return maxColCount;\n }\n\n private renderTablesViewMore = (\n element?: any,\n isVertical?: boolean,\n index?: number,\n ) => {\n // const payload = this.props.payload;\n if (!element) {\n return null;\n }\n let flexArry: any = [];\n\n return (\n <View key={index + ''} style={[[styles.mainContainer, styles.main_con2]]}>\n <View style={[styles.sub_con]}>\n <View style={[styles.subContainer_more]}>\n <View\n style={[\n styles.subContainer2_more,\n\n isVertical && {\n paddingTop: 10,\n paddingBottom: 10,\n },\n ]}>\n {element?.primary?.map((coloum: any, i: number) => {\n flexArry[i] = coloum?.[0]?.length;\n return (\n <Text\n key={i + ' ' + i}\n style={[\n styles.titles,\n {\n flex: coloum?.[0]?.length,\n color: '#2E3A92',\n paddingEnd: 5,\n },\n {\n fontFamily: this.props?.theme?.v3?.body?.font?.family,\n },\n botStyles[isVertical ? 'small' : 'medium']?.size,\n coloum?.[1] && {\n textAlign: coloum?.[1] || 'center',\n },\n ]}>\n {coloum?.[0]}\n </Text>\n );\n })}\n </View>\n <View style={styles.thick_line}></View>\n <View style={styles.view_more_main}>\n {this.getTableRowViewsMore(element, flexArry, isVertical)}\n </View>\n </View>\n </View>\n </View>\n );\n };\n\n private getTableRowViewsMore = (\n element: any,\n flexArry = [],\n isVertical?: boolean,\n ) => {\n let elements = element?.additional;\n let views: any = [];\n if (!elements || elements?.length === 0) {\n return null;\n }\n for (let i = 0; i < elements?.length; i++) {\n let view = (\n <View key={'key_' + i} style={{flexDirection: 'column'}}>\n <View\n style={{\n flexDirection: 'row',\n }}>\n {elements[i].map((value: any, index: number) => {\n return (\n <View\n key={index + '_' + index + '_'}\n style={[\n {\n flex: flexArry[index],\n paddingEnd: 5,\n },\n styles.view_more_sub,\n isVertical && {\n paddingTop: 10,\n paddingBottom: 10,\n },\n ]}>\n <Text\n style={[\n styles.row_text,\n {\n color: Color.text_color,\n // this.props.theme?.v3?.general?.colors?.primary_text,\n fontFamily: this.props?.theme?.v3?.body?.font?.family,\n },\n botStyles[isVertical ? 'small' : 'medium']?.size,\n element?.primary?.[index][1] && {\n textAlign: element?.primary?.[index][1] || 'center', //'right',\n },\n ]}>\n {value}\n </Text>\n </View>\n );\n })}\n </View>\n {i !== elements?.length - 1 && <View style={styles.line}></View>}\n </View>\n );\n\n views[i] = view;\n }\n\n return views;\n };\n\n render() {\n return this.props.payload ? (\n <View style={{width: windowWidth}}>\n {this.props.payload?.text && (\n <BotText\n text={this.props.payload?.text?.trim()}\n isLastMsz={!this.isViewDisable()}\n isFilterApply={true}\n theme={this.props.theme}\n />\n )}\n {this.renderMiniTableTemplate()}\n </View>\n ) : (\n <></>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n shadowContainer: {\n //flex: 1,\n // justifyContent: 'center',\n marginRight: '2.5%',\n //paddingBottom: '10%',\n //borderRadius: 10,\n //backgroundColor: 'white', // Set the background color of the view\n // borderRadius: 10, // Optional: Set borderRadius for rounded corners\n // padding: 1, // Optional: Set padding for inner content\n ...Platform.select({\n ios: {\n // shadowColor: '#000',\n // shadowOffset: {width: 0, height: 2},\n // shadowOpacity: 0.25,\n // shadowRadius: 3.84,\n },\n android: {\n //elevation: 5,\n },\n }),\n },\n view_more_sub: {\n paddingTop: 15,\n paddingBottom: 15,\n },\n view_more_main: {\n flexDirection: 'column',\n },\n sub_con: {\n flexDirection: 'row',\n },\n main_con2: {\n minHeight: 50,\n marginTop: 10,\n marginRight: 10,\n },\n\n mainContainer: {\n flexDirection: 'column',\n },\n\n subContainer_more: {\n flexDirection: 'column',\n borderRadius: TEMPLATE_STYLE_VALUES.BORDER_RADIUS,\n borderWidth: TEMPLATE_STYLE_VALUES.BORDER_WIDTH,\n borderColor: TEMPLATE_STYLE_VALUES.BORDER_COLOR,\n flex: 1,\n // width: windowWidth - normalize(0),\n overflow: 'scroll',\n backgroundColor: Color.white,\n },\n\n subContainer2_more: {\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: '#A6A7BC',\n paddingTop: 15,\n paddingBottom: 15,\n },\n\n row_text: {\n textAlign: 'center',\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n color: TEMPLATE_STYLE_VALUES.TEXT_COLOR,\n fontWeight: '500',\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n },\n line: {\n width: '100%',\n height: 1,\n opacity: 0.5,\n backgroundColor: TEMPLATE_STYLE_VALUES.BORDER_COLOR,\n },\n thick_line: {\n height: 1,\n opacity: 1,\n backgroundColor: TEMPLATE_STYLE_VALUES.BORDER_COLOR,\n },\n titles: {\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n color: TEMPLATE_STYLE_VALUES.TEXT_COLOR,\n justifyContent: 'center',\n textAlign: 'center',\n fontWeight: 'bold',\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n },\n});\n","import * as React from 'react';\nimport BaseView, {BaseViewProps, BaseViewState} from './BaseView';\nimport {\n Dimensions,\n StyleSheet,\n Text,\n TouchableOpacity,\n View,\n} from 'react-native';\nimport BotText from './BotText';\nimport {normalize} from '../utils/helpers';\nimport {TEMPLATE_STYLE_VALUES, botStyles} from '../theme/styles';\nconst windowWidth = Dimensions.get('window').width;\n\nconst SLICE = 2;\n\nconst TABLE_TYPES = {\n RESPONSIVE: 'responsive',\n NORMAL: 'normal',\n};\n\ninterface TableProps extends BaseViewProps {\n payload?: any;\n isFromViewMore?: boolean;\n}\ninterface TableState extends BaseViewState {\n payload?: any;\n}\n\nimport {SvgIcon} from '../utils/SvgIcon.js';\nimport Color from '../theme/Color';\nimport {ScrollView} from 'react-native-gesture-handler';\n\nexport default class TableTemplate extends BaseView<TableProps, TableState> {\n static propTypes: {\n payload: any;\n isFromViewMore?: boolean;\n };\n downSVG: any;\n upSVG: any;\n flatListRef: any;\n constructor(props: any) {\n super(props);\n this.state = {\n payload: undefined,\n };\n }\n\n componentDidMount(): void {\n this.updatePayloadValues();\n }\n\n componentDidUpdate(\n prevProps: Readonly<TableProps>,\n prevState: Readonly<TableState>,\n snapshot?: any,\n ): void {\n if (prevProps.payload !== this.props.payload) {\n this.updatePayloadValues();\n }\n }\n\n private updatePayloadValues() {\n let payload = this.props.payload;\n\n const elements = payload?.elements.slice(0, 3).map((element: any) => {\n let values = element.Values.map((value: any, i: number) => {\n return {\n value: value,\n title: payload?.columns?.[i]?.[0],\n };\n });\n\n return {\n ...element,\n isCollapse: false,\n Values: values,\n };\n });\n\n this.setState({\n payload: {\n elements: elements,\n },\n });\n }\n\n private renderTablesView = () => {\n const payload = this.state.payload;\n if (!payload) {\n return null;\n }\n let flexArry: any = [];\n return (\n <View style={[styles.mainContainer, {width: (windowWidth / 4) * 3}]}>\n <View style={styles.subContainer}>\n {this.getTableRowViews(payload?.elements, flexArry)}\n {!this.props.isFromViewMore && (\n <View>\n <View style={styles.line} />\n <TouchableOpacity\n onPress={() => {\n if (this.props.payload?.onListItemClick) {\n this.props.payload?.onListItemClick(\n this.props.payload?.template_type,\n this.props.payload,\n true,\n this.props.theme,\n );\n }\n }}\n style={styles.show_more_con}>\n <Text\n style={[\n styles.row_text,\n {color: Color.blue},\n\n {\n color: Color.blue,\n fontFamily: this.props?.theme?.v3?.body?.font?.family,\n },\n botStyles[\n this.props?.theme?.v3?.body?.font?.size || 'medium'\n ]?.size,\n ]}>\n {'Show More'}\n </Text>\n </TouchableOpacity>\n </View>\n )}\n </View>\n </View>\n );\n };\n\n private getTableRowViews = (elements: any, flexArry: any = []) => {\n let views: any = [];\n\n if (!elements || elements.length === 0) {\n return null;\n }\n\n for (let i = 0; i < elements.length; i++) {\n let view = (\n <View key={i + '__' + i} style={styles.tr_con}>\n <View style={styles.tr_con_2}>\n {elements[i].Values.slice(0, SLICE).map(\n (value: any, index: number) => {\n return (\n <TouchableOpacity\n key={index + ''}\n onPress={() => {\n this.toggleButton(i, !elements[i].isCollapse);\n }}\n style={styles.tb_row_con}>\n {elements[i].isCollapse && (\n <Text\n style={[\n styles.item_title,\n {\n color: Color.text_color,\n //this.props.theme?.v3?.general?.colors\n // ?.primary_text,\n fontFamily:\n this.props?.theme?.v3?.body?.font?.family,\n opacity: 0.8,\n },\n botStyles[\n this.props?.theme?.v3?.body?.font?.size || 'medium'\n ]?.size,\n ]}>\n {value.title}\n </Text>\n )}\n <Text\n style={[\n {flex: flexArry[index]},\n styles.row_text,\n\n {\n color: Color.text_color,\n // this.props.theme?.v3?.general?.colors?.primary_text,\n fontFamily: this.props?.theme?.v3?.body?.font?.family,\n },\n botStyles[\n this.props?.theme?.v3?.body?.font?.size || 'medium'\n ]?.size,\n ]}>\n {value.value}\n </Text>\n </TouchableOpacity>\n );\n },\n )}\n <TouchableOpacity\n style={styles.icon_style}\n onPress={() => {\n this.toggleButton(i, !elements?.[i]?.isCollapse);\n }}>\n <SvgIcon\n name={elements?.[i]?.isCollapse ? 'DownSolid' : 'RightArrow'}\n width={normalize(10)}\n height={normalize(10)}\n />\n </TouchableOpacity>\n </View>\n\n {elements[i].isCollapse && this.renderTableItems1(elements[i])}\n\n {i !== elements.length - 1 && <View style={styles.line} />}\n </View>\n );\n\n views[i] = view;\n }\n\n return views;\n };\n\n private toggleButton = (index: number, isCollapse: boolean) => {\n let payload = this.state.payload;\n payload.elements = payload?.elements.map((element: any, i: number) => {\n if (index === i) {\n return {\n ...element,\n isCollapse: isCollapse,\n };\n }\n return {\n ...element,\n isCollapse: false,\n };\n });\n this.setState({\n payload: payload,\n });\n };\n\n private renderTableItems1 = (element: any) => {\n const renderedItems: any = [];\n {\n for (let i = 1; i <= element.Values.length / SLICE; i++) {\n renderedItems.push(\n this.renderTableItems(element, i * SLICE, i * SLICE + SLICE, i),\n );\n }\n }\n return renderedItems;\n };\n\n private renderTableItems = (\n element: any,\n fromValue: number,\n toValue: number,\n i: number,\n ): any => {\n return (\n <View key={i + ' ' + i + '_'} style={styles.ti_con}>\n {element.Values.slice(fromValue, toValue).map(\n (value: any, index: number) => {\n return (\n <View key={index + ''} style={{flex: 1}}>\n <Text\n style={[\n styles.item_title,\n {\n color: Color.text_color,\n // this.props.theme?.v3?.general?.colors?.primary_text,\n fontFamily: this.props?.theme?.v3?.body?.font?.family,\n opacity: 0.8,\n },\n botStyles[\n this.props?.theme?.v3?.body?.font?.size || 'medium'\n ]?.size,\n ]}>\n {value.title}\n </Text>\n <Text\n style={[\n {},\n styles.row_text,\n\n {\n color: Color.text_color,\n // this.props.theme?.v3?.general?.colors?.primary_text,\n fontFamily: this.props?.theme?.v3?.body?.font?.family,\n },\n botStyles[\n this.props?.theme?.v3?.body?.font?.size || 'medium'\n ]?.size,\n ]}>\n {value.value}\n </Text>\n </View>\n );\n },\n )}\n\n <View style={styles.empty_view} />\n </View>\n );\n };\n\n private renderTablesViewMore = () => {\n const payload = this.props.payload;\n if (!payload) {\n return null;\n }\n let flexArry: any = [];\n\n const Wrapper: any = this.props.isFromViewMore ? ScrollView : View;\n return (\n <View\n style={[\n [\n styles.mainContainer,\n styles.main_con2,\n {width: (windowWidth / 4) * 3},\n ],\n ]}>\n <Wrapper\n ref={(ref: any) => (this.flatListRef = ref)}\n style={[styles.sub_con]}\n nestedScrollEnabled={true}\n scrollEnabled={true}\n keyboardShouldPersistTaps={'handled'}\n keyboardDismissMode=\"none\"\n contentInsetAdjustmentBehavior=\"scrollableAxes\"\n horizontal={true}>\n <View style={[styles.subContainer_more]}>\n <View style={[styles.subContainer2_more]}>\n {payload?.columns.map((coloum: any, i: number) => {\n flexArry[i] = coloum[0].length;\n return (\n <Text\n key={i + ''}\n style={[\n styles.titles,\n {flex: coloum[0].length, color: '#2E3A92'},\n {\n fontFamily: this.props?.theme?.v3?.body?.font?.family,\n },\n botStyles.small?.size,\n ]}>\n {coloum[0]}\n </Text>\n );\n })}\n </View>\n <View style={styles.thick_line} />\n <View style={styles.view_more_main}>\n {this.getTableRowViewsMore(payload?.elements, flexArry)}\n </View>\n </View>\n </Wrapper>\n </View>\n );\n };\n\n private getTableRowViewsMore = (elements: any, flexArry = []) => {\n let views: any = [];\n if (!elements || elements.length === 0) {\n return null;\n }\n for (let i = 0; i < elements.length; i++) {\n let view = (\n <View key={'_' + i + '' + i} style={{flexDirection: 'column'}}>\n <View\n style={{\n flexDirection: 'row',\n }}>\n {elements[i].Values.map((value: any, index: number) => {\n return (\n <View\n key={index + ''}\n style={[\n {\n flex: flexArry[index],\n },\n styles.view_more_sub,\n ]}>\n <Text\n style={[\n {},\n styles.row_text,\n {fontSize: 13},\n {\n color: Color.text_color,\n // color:\n // this.props.theme?.v3?.general?.colors?.primary_text,\n fontFamily: this.props?.theme?.v3?.body?.font?.family,\n },\n botStyles.small?.size,\n ]}>\n {value}\n </Text>\n </View>\n );\n })}\n </View>\n {i !== elements.length - 1 && <View style={styles.line} />}\n </View>\n );\n\n views[i] = view;\n }\n\n return views;\n };\n\n private renderTableTemplate = () => {\n const table_design = this.props.payload?.table_design;\n\n switch (table_design) {\n case TABLE_TYPES.RESPONSIVE:\n return this.renderTablesView();\n case TABLE_TYPES.NORMAL:\n return this.renderTablesViewMore();\n default:\n return this.renderTablesViewMore();\n }\n };\n\n render() {\n if (this.props.isFromViewMore) {\n return this.renderTablesViewMore();\n }\n return this.props.payload ? (\n <View>\n {this.props.payload?.text && (\n <BotText\n text={this.props.payload?.text?.trim()}\n isLastMsz={!this.isViewDisable()}\n isFilterApply={true}\n theme={this.props.theme}\n />\n )}\n <View style={styles.mainContainer_2}>{this.renderTableTemplate()}</View>\n </View>\n ) : (\n <></>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n mainContainer_2: {\n alignSelf: 'center',\n justifyContent: 'center',\n alignItems: 'center',\n },\n view_more_sub: {\n marginEnd: 2,\n marginStart: 2,\n paddingTop: 7,\n paddingBottom: 7,\n },\n view_more_main: {\n flexDirection: 'column',\n backgroundColor: Color.white,\n },\n sub_con: {\n backgroundColor: 'transparent',\n flexDirection: 'row',\n },\n main_con2: {\n backgroundColor: 'transparent',\n minHeight: 50,\n marginTop: 10,\n width: windowWidth - normalize(50),\n },\n tb_row_con: {\n flex: 1,\n padding: 10,\n justifyContent: 'center',\n },\n empty_view: {\n backgroundColor: 'transparent',\n alignItems: 'center',\n justifyContent: 'center',\n flex: 0.45,\n },\n ti_con: {\n width: '100%',\n flexDirection: 'row',\n paddingBottom: 5,\n },\n tr_con_2: {\n flexDirection: 'row',\n padding: 5,\n flex: 1,\n },\n tr_con: {flexDirection: 'column', flex: 1},\n show_more_con: {\n backgroundColor: 'transparent',\n margin: 3,\n justifyContent: 'center',\n alignItems: 'center',\n padding: 10,\n },\n icon_style: {\n alignItems: 'center',\n flex: 0.5,\n justifyContent: 'center',\n },\n item_title: {\n textAlign: 'center',\n fontSize: TEMPLATE_STYLE_VALUES.SUB_TEXT_SIZE,\n color: TEMPLATE_STYLE_VALUES.BORDER_COLOR,\n fontWeight: '300',\n padding: 5,\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n marginEnd: 5,\n },\n mainContainer: {\n flexDirection: 'column',\n backgroundColor: 'transparent',\n },\n\n subContainer: {\n marginTop: 10,\n flexDirection: 'column',\n borderRadius: TEMPLATE_STYLE_VALUES.BORDER_RADIUS,\n borderWidth: TEMPLATE_STYLE_VALUES.BORDER_WIDTH,\n borderColor: TEMPLATE_STYLE_VALUES.BORDER_COLOR,\n backgroundColor: Color.white,\n flex: 1,\n },\n subContainer_more: {\n flexDirection: 'column',\n borderRadius: TEMPLATE_STYLE_VALUES.BORDER_RADIUS,\n borderWidth: TEMPLATE_STYLE_VALUES.BORDER_WIDTH,\n borderColor: TEMPLATE_STYLE_VALUES.BORDER_COLOR,\n flex: 1,\n width: windowWidth - normalize(0),\n overflow: 'scroll',\n backgroundColor: 'transparent',\n //width: windowWidth - normalize(50),\n },\n\n subContainer2: {\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n flex: 1,\n },\n subContainer2_more: {\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: '#A6A7BC',\n paddingTop: 7,\n paddingBottom: 7,\n },\n\n row_text: {\n textAlign: 'center',\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n color: TEMPLATE_STYLE_VALUES.TEXT_COLOR,\n fontWeight: '500',\n //padding: 12,\n\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n },\n line: {\n width: '100%',\n height: StyleSheet.hairlineWidth,\n opacity: 0.5,\n backgroundColor: TEMPLATE_STYLE_VALUES.BORDER_COLOR,\n },\n thick_line: {\n height: 1,\n opacity: 1,\n backgroundColor: TEMPLATE_STYLE_VALUES.BORDER_COLOR,\n },\n titles: {\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n color: TEMPLATE_STYLE_VALUES.TEXT_COLOR,\n justifyContent: 'center',\n textAlign: 'center',\n //padding: 10,\n\n fontWeight: 'bold',\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n },\n});\n","import * as React from 'react';\nimport {View, StyleSheet, processColor, Dimensions} from 'react-native';\n\nimport {generateColor, normalize} from '../../utils/helpers';\nimport {BarChart, HorizontalBarChart} from 'react-native-charts-wrapper';\nimport BotText from '../BotText';\nimport BaseView, {BaseViewProps, BaseViewState} from '../BaseView';\nimport Color from '../../theme/Color';\nimport {isIOS} from '../../utils/PlatformCheck';\nconst windowWidth = Dimensions.get('window').width;\n\ninterface BarChartProps extends BaseViewProps {}\ninterface BarChartState extends BaseViewState {\n payload?: any;\n}\n\nconst legend: any = {\n enabled: true,\n textSize: 14,\n form: 'SQUARE',\n formSize: 12,\n xEntrySpace: 10,\n yEntrySpace: 5,\n formToTextSpace: 5,\n wordWrapEnabled: true,\n maxSizePercent: 0.5,\n horizontalAlignment: 'CENTER',\n};\nconst colors = [\n processColor(generateColor()),\n processColor(generateColor()),\n processColor(generateColor()),\n processColor(generateColor()),\n processColor(generateColor()),\n processColor(generateColor()),\n processColor(generateColor()),\n];\n\nexport default class BarChartTemplate extends BaseView<\n BarChartProps,\n BarChartState\n> {\n private renderBarChartView = (payload: any) => {\n let dataSets = payload.elements.map((element: any, i: number) => {\n return {\n values: element.values,\n label: element.title,\n config: {\n drawValues: true,\n colors: [colors[i % colors.length]],\n },\n };\n });\n\n let data = {\n dataSets: dataSets,\n\n config: {\n barWidth: 0.35,\n group: {\n fromX: 0,\n groupSpace: 0.1,\n barSpace: 0.1,\n },\n },\n };\n\n let xAxis: any = {\n valueFormatter: payload.X_axis,\n granularityEnabled: true,\n granularity: 1,\n axisMaximum: payload?.X_axis?.length || 1,\n axisMinimum: isIOS ? 0 : 0,\n centerAxisLabels: true,\n position: 'BOTTOM',\n labelRotationAngle:\n this.props.payload?.direction === 'vertical' ? 0 : -90,\n drawLimitLinesBehindData: false,\n\n textSize: 8,\n drawGridLines: false,\n avoidFirstLastClipping: true,\n yOffset: 10,\n };\n\n let yAxis = {\n left: {\n spaceTop: 0,\n drawGridLines: false,\n },\n right: {\n spaceTop: 0,\n drawGridLines: false,\n enabled: false,\n },\n };\n\n let marker = {\n enabled: true,\n digits: 3,\n backgroundTint: processColor('teal'),\n markerColor: processColor('#F0C0FF8C'),\n textColor: processColor('black'),\n };\n const height = payload.X_axis.length * 80;\n const Wrapper: any =\n this.props.payload?.direction === 'vertical'\n ? BarChart\n : HorizontalBarChart;\n return (\n <View\n style={[\n styles.container,\n {height: normalize(height), minWidth: (windowWidth / 4) * 3},\n ]}>\n <Wrapper\n pinchZoom={true}\n touchEnabled={true}\n drawGridBackground={false}\n //dragDecelerationEnabled={true}\n style={styles.chart}\n xAxis={xAxis}\n yAxis={yAxis}\n data={data}\n legend={legend}\n drawValueAboveBar={false}\n highlightFullBarEnabled={true}\n minOffset={0}\n marker={marker}\n chartDescription={{\n text: '',\n }}\n />\n </View>\n );\n };\n\n render() {\n if (!this.props.payload) {\n return <></>;\n }\n return (\n <View pointerEvents={this.isViewDisable() ? 'none' : 'auto'}>\n {this.props.payload?.text && (\n <BotText\n text={this.props.payload?.text?.trim()}\n isFilterApply={true}\n isLastMsz={!this.isViewDisable()}\n theme={this.props.theme}\n />\n )}\n\n <View style={styles.main_container}>\n {this.renderBarChartView(this.props.payload)}\n </View>\n </View>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n main_container: {\n marginTop: 10,\n },\n container: {\n backgroundColor: Color.white,\n padding: 2,\n },\n chart: {\n flex: 1,\n },\n});\n","import * as React from 'react';\nimport {View, StyleSheet, processColor, Dimensions} from 'react-native';\n\nimport {LineChart} from 'react-native-charts-wrapper';\n\nimport BotText from '../BotText';\nimport BaseView, {BaseViewProps, BaseViewState} from '../BaseView';\nimport {generateColor, normalize} from '../../utils/helpers';\nimport {TEMPLATE_STYLE_VALUES} from '../../theme/styles';\nconst windowWidth = Dimensions.get('window').width;\n\ninterface LineChartProps extends BaseViewProps {}\ninterface LineChartState extends BaseViewState {\n payload?: any;\n}\n\nconst legend: any = {\n enabled: true,\n textSize: 11,\n form: 'SQUARE',\n horizontalAlignment: 'CENTER',\n verticalAlignment: 'BOTTOM',\n orientation: 'HORIZONTAL',\n wordWrapEnabled: true,\n};\n\nconst colors = [\n processColor(generateColor()),\n processColor(generateColor()),\n processColor(generateColor()),\n processColor(generateColor()),\n processColor(generateColor()),\n processColor(generateColor()),\n processColor(generateColor()),\n];\nexport default class LineChartTemplate extends BaseView<\n LineChartProps,\n LineChartState\n> {\n private renderLineChart = (payload: any) => {\n let data = {\n dataSets: payload?.elements?.map((element: any, i: number) => {\n return {\n values: element.values.map((value: any, index: number) => {\n return {x: index, y: value};\n }),\n label: element.title,\n config: {\n mode: 'LINEAR',\n drawValues: false,\n lineWidth: normalize(1.5),\n dashedLine: {\n lineLength: 10,\n spaceLength: 1,\n phase: 10,\n },\n drawCircles: true,\n circleColor: colors[i % colors.length],\n drawCircleHole: false,\n circleRadius: normalize(4),\n highlightColor: processColor('transparent'),\n color: colors[i % colors.length],\n drawFilled: true,\n fillGradient: {\n colors: payload?.elements?.map((element: any, i: number) => {\n return colors[i % colors.length];\n }),\n\n positions: [0, 1],\n angle: 90,\n orientation: 'BOTTOM_TOP',\n },\n fillAlpha: 50,\n valueTextSize: normalize(14),\n },\n };\n }),\n };\n\n let marker = {\n enabled: true,\n digits: 4,\n backgroundTint: processColor('teal'),\n markerColor: processColor('#F0C0FF8C'),\n textColor: processColor('black'),\n };\n\n let xAxis: any = {\n valueFormatter: payload.X_axis,\n granularityEnabled: true,\n granularity: 1,\n\n axisMaximum: payload?.X_axis?.length || 1,\n axisMinimum: 0,\n //centerAxisLabels: true,\n position: 'BOTTOM',\n labelRotationAngle: 30,\n //drawLimitLinesBehindData: false,\n\n textSize: 8,\n drawGridLines: false,\n avoidFirstLastClipping: true,\n\n enabled: true,\n drawLabels: true,\n drawAxisLine: true,\n };\n let yAxis = {\n left: {\n spaceTop: 0,\n drawGridLines: false,\n },\n right: {\n spaceTop: 0,\n drawGridLines: false,\n enabled: false,\n },\n };\n\n return (\n <View style={[styles.container]}>\n <LineChart\n style={[styles.chart, {minWidth: (windowWidth / 4) * 3}]}\n data={data}\n chartDescription={{text: ''}}\n marker={marker}\n xAxis={xAxis}\n yAxis={yAxis}\n drawGridBackground={false}\n borderColor={processColor('teal')}\n borderWidth={1}\n drawBorders={false}\n touchEnabled={true}\n dragEnabled={true}\n scaleEnabled={true}\n scaleXEnabled={true}\n scaleYEnabled={true}\n pinchZoom={true}\n doubleTapToZoomEnabled={true}\n highlightPerTapEnabled={true}\n highlightPerDragEnabled={false}\n dragDecelerationEnabled={true}\n dragDecelerationFrictionCoef={1}\n keepPositionOnRotation={false}\n legend={legend}\n autoScaleMinMaxEnabled={true}\n />\n </View>\n );\n };\n\n render() {\n return this.props.payload ? (\n <View style={{}}>\n {this.props.payload?.text && (\n <BotText\n text={this.props.payload?.text?.trim()}\n isFilterApply={true}\n isLastMsz={!this.isViewDisable()}\n theme={this.props.theme}\n />\n )}\n\n {this.renderLineChart(this.props.payload)}\n </View>\n ) : null;\n }\n}\n\nconst styles = StyleSheet.create({\n container: {\n marginTop: 15,\n padding: 5,\n height: normalize(350),\n marginBottom: 5,\n borderWidth: TEMPLATE_STYLE_VALUES.BORDER_WIDTH,\n borderColor: TEMPLATE_STYLE_VALUES.BORDER_COLOR,\n borderRadius: TEMPLATE_STYLE_VALUES.BORDER_RADIUS,\n },\n chart: {\n flex: 1,\n },\n});\n","import * as React from 'react';\nimport {View, StyleSheet, processColor, Dimensions} from 'react-native';\nimport {PieChart} from 'react-native-charts-wrapper';\nimport BotText from '../BotText';\nimport {generateColor, normalize} from '../../utils/helpers';\nimport {TEMPLATE_STYLE_VALUES} from '../../theme/styles';\nimport BaseView, {BaseViewProps, BaseViewState} from '../BaseView';\nconst windowWidth = Dimensions.get('window').width;\n\nconst PIE_TYPE_DONUT = 'donut';\n\ninterface PieChartProps extends BaseViewProps {}\ninterface PieChartState extends BaseViewState {}\nconst legend: any = {\n enabled: true,\n textSize: 11,\n form: 'SQUARE',\n horizontalAlignment: 'CENTER',\n verticalAlignment: 'BOTTOM',\n orientation: 'HORIZONTAL',\n wordWrapEnabled: true,\n};\n\nconst colors = [\n processColor(generateColor()),\n processColor(generateColor()),\n processColor(generateColor()),\n processColor(generateColor()),\n processColor(generateColor()),\n processColor(generateColor()),\n processColor(generateColor()),\n];\n\nexport default class PieChartTemplate extends BaseView<\n PieChartProps,\n PieChartState\n> {\n private getExtraConfig = (payload: any) => {\n if (!payload) {\n return {};\n }\n\n return payload.pie_type === PIE_TYPE_DONUT\n ? {\n xValuePosition: 'OUTSIDE_SLICE',\n yValuePosition: 'OUTSIDE_SLICE',\n drawValues: true,\n valueTextColor: processColor('black'),\n valueLinePart2Length: 0.2,\n }\n : {\n valueLinePart2Length: 0,\n valueLineWidth: 0,\n valueLineColor: processColor('white'),\n drawValues: true,\n valueTextColor: processColor('white'),\n };\n };\n private renderPieChartView = (payload: any) => {\n let extraConfig = this.getExtraConfig(payload);\n\n let data: any = {\n dataSets: [\n {\n values: payload?.elements?.map?.((element: any) => {\n return {\n value: parseFloat(element?.value),\n label: element?.title + ' ' + element?.value,\n };\n }),\n label: '',\n config: {\n colors: colors,\n valueTextSize: 11,\n sliceSpace: 3,\n selectionShift: 10,\n valueFormatter: \"#.## '%'\",\n ...extraConfig,\n },\n },\n ],\n };\n\n let highlights: any = [];\n let description = {\n text: '',\n textSize: 15,\n textColor: processColor('darkgray'),\n };\n\n let holeRadius = 0;\n let transparentCircleRadius = 0;\n\n let pieType = payload.pie_type;\n if (pieType && pieType === PIE_TYPE_DONUT) {\n holeRadius = 55;\n transparentCircleRadius = 60;\n }\n let marker = {\n enabled: true,\n digits: 3,\n backgroundTint: processColor('teal'),\n markerColor: processColor('#F0C0FF8C'),\n textColor: processColor('black'),\n };\n\n let styledCenterText = {\n text: '',\n color: processColor(generateColor()),\n fontFamily: 'HelveticaNeue-Medium',\n size: normalize(12),\n };\n\n return (\n <View\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}\n style={[\n styles.container,\n {\n width: (windowWidth / 4) * 3, //normalize(280), //\n },\n ]}>\n <PieChart\n // xAxis={xAxis}\n style={styles.chart}\n logEnabled={true}\n chartBackgroundColor={processColor('white')}\n chartDescription={description}\n data={data}\n legend={legend}\n highlights={highlights}\n //extraOffsets={{left: 5, top: 5, right: 5, bottom: 5}}\n entryLabelColor={processColor('white')}\n entryLabelTextSize={12}\n entryLabelFontFamily={'HelveticaNeue-Medium'}\n drawEntryLabels={false}\n rotationEnabled={true}\n rotationAngle={270}\n usePercentValues={true}\n styledCenterText={styledCenterText}\n highlightPerTapEnabled={true}\n centerTextRadiusPercent={100}\n holeRadius={holeRadius}\n holeColor={processColor('#f0f0f0')}\n transparentCircleRadius={transparentCircleRadius}\n transparentCircleColor={processColor('#f0f0f088')}\n maxAngle={360}\n marker={marker}\n />\n </View>\n );\n };\n\n render() {\n return this.props.payload ? (\n <View>\n <View style={styles.sub_container}>\n {this.props.payload?.text && (\n <BotText\n text={this.props.payload?.text?.trim?.()}\n isFilterApply={true}\n isLastMsz={!this.isViewDisable()}\n theme={this.props.theme}\n />\n )}\n </View>\n <View style={[styles.chart_view]}>\n {this.renderPieChartView(this.props.payload)}\n </View>\n </View>\n ) : (\n <></>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n chart_view: {\n padding: 10,\n backgroundColor: 'white',\n borderWidth: TEMPLATE_STYLE_VALUES.BORDER_WIDTH,\n borderColor: TEMPLATE_STYLE_VALUES.BORDER_COLOR,\n borderRadius: TEMPLATE_STYLE_VALUES.BORDER_RADIUS,\n alignItems: 'center',\n },\n text: {\n flexWrap: 'wrap',\n color: '#485260',\n fontSize: normalize(16),\n margin: 5,\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n },\n sub_container: {\n marginBottom: 10,\n marginTop: 5,\n },\n container: {\n //flex: 1,\n // backgroundColor: 'red',\n // width: '100%',\n height: normalize(280),\n marginBottom: 5,\n // justifyContent: 'center',\n // alignItems: 'center',\n },\n chart: {\n flex: 1,\n justifyContent: 'center',\n alignItems: 'center',\n },\n});\n","/* eslint-disable @typescript-eslint/no-unused-vars */\nimport * as React from 'react';\nimport {View, StyleSheet, processColor, Dimensions} from 'react-native';\n\nimport {generateColor, normalize} from '../../utils/helpers';\nimport {BarChart, HorizontalBarChart} from 'react-native-charts-wrapper';\nimport BotText from '../BotText';\nimport BaseView, {BaseViewProps, BaseViewState} from '../BaseView';\nimport Color from '../../theme/Color';\nimport {isIOS} from '../../utils/PlatformCheck';\nconst windowWidth = Dimensions.get('window').width;\n\ninterface BarChartProps extends BaseViewProps {}\ninterface BarChartState extends BaseViewState {\n payload?: any;\n}\n\nconst legend: any = {\n enabled: true,\n textSize: 14,\n form: 'SQUARE',\n formSize: 12,\n xEntrySpace: 10,\n yEntrySpace: 5,\n formToTextSpace: 5,\n wordWrapEnabled: true,\n maxSizePercent: 0.5,\n\n horizontalAlignment: 'CENTER',\n};\n\nconst colors = [\n processColor(generateColor()),\n processColor(generateColor()),\n processColor(generateColor()),\n processColor(generateColor()),\n processColor(generateColor()),\n processColor(generateColor()),\n processColor(generateColor()),\n];\n\nexport default class StackBarChartTemplate extends BaseView<\n BarChartProps,\n BarChartState\n> {\n private renderBarChartView = (payload: any) => {\n let y: any = [];\n let m: any = [];\n payload.elements.map((element: any, i: number) => {\n element.values.map((val: any, num: number) => {\n let l = element?.displayValues[num];\n y[num] = y?.[num] ? [...y[num], val] : [val];\n m[num] = m?.[num] ? [...m[num], l] : [l];\n });\n return y;\n });\n\n let dataSets = [\n {\n values: y.map((element: any, i: number) => {\n return {\n y: element,\n label: m[i],\n };\n }),\n label: '',\n config: {\n colors: payload.elements.map((element: any, i: number) => {\n return colors[i % colors.length];\n }),\n stackLabels: payload.elements.map((element: any, i: number) => {\n return element.title;\n }),\n barSpacePercent: 40,\n group: {\n fromX: -0.5,\n groupSpace: 0.1,\n barSpace: 0.1,\n ScrollExtended: true,\n HighlightExtended: true,\n },\n },\n },\n ];\n\n let data = {\n dataSets: dataSets,\n\n config: {\n barWidth: 0.4,\n group: {\n //fromX: 0,\n groupSpace: 0.15,\n barSpace: 0.45,\n },\n },\n };\n\n let xAxis: any = {\n valueFormatter: payload.X_axis,\n granularityEnabled: true,\n granularity: 1,\n\n axisMaximum: isIOS ? payload?.X_axis?.length || 1 : undefined,\n axisMinimum: isIOS ? 0 : undefined,\n position: 'BOTTOM',\n labelRotationAngle:\n this.props.payload?.direction === 'vertical' ? 0 : -90,\n centerAxisLabels: isIOS,\n drawGridLines: false,\n textSize: 8,\n };\n\n let yAxis = {\n left: {\n spaceTop: 0,\n drawGridLines: false,\n },\n right: {\n spaceTop: 0,\n drawGridLines: false,\n enabled: false,\n },\n };\n\n let marker = {\n enabled: true,\n digits: 2,\n backgroundTint: processColor('teal'),\n markerColor: processColor('#F0C0FF8C'),\n textColor: processColor('black'),\n };\n const height = payload.X_axis.length * 80;\n const Wrapper: any =\n this.props.payload?.direction === 'vertical'\n ? BarChart\n : HorizontalBarChart;\n return (\n <View\n style={[\n styles.container,\n {height: normalize(height), minWidth: (windowWidth / 4) * 3},\n ]}>\n <Wrapper\n pinchZoom={true}\n touchEnabled={true}\n drawGridBackground={false}\n style={styles.chart}\n xAxis={xAxis}\n yAxis={yAxis}\n data={data}\n legend={legend}\n drawValueAboveBar={false}\n highlightFullBarEnabled={true}\n minOffset={0}\n marker={marker}\n chartDescription={{\n text: '',\n }}\n />\n </View>\n );\n };\n\n render() {\n if (!this.props.payload) {\n return <></>;\n }\n return (\n <View pointerEvents={this.isViewDisable() ? 'none' : 'auto'}>\n {this.props.payload?.text && (\n <BotText\n text={this.props.payload?.text?.trim()}\n isFilterApply={true}\n isLastMsz={!this.isViewDisable()}\n theme={this.props.theme}\n />\n )}\n <View style={styles.main_container}>\n {this.renderBarChartView(this.props.payload)}\n </View>\n </View>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n main_container: {\n marginTop: 10,\n },\n container: {\n backgroundColor: Color.white,\n padding: 2,\n },\n chart: {\n flex: 1,\n },\n});\n","import BaseView, {BaseViewProps, BaseViewState} from './BaseView';\n\nimport * as React from 'react';\nimport {Text, TouchableOpacity, View, StyleSheet} from 'react-native';\nimport {TEMPLATE_STYLE_VALUES, botStyles} from '../theme/styles';\nimport Color from '../theme/Color';\nimport BotText from './BotText';\nimport {ThemeContext} from '../theme/ThemeContext';\nimport {BubbleTheme, ButtonTheme} from '../constants/Constant';\nimport {getBubbleTheme, getButtonTheme} from '../theme/themeHelper';\n\ninterface ButtonProps extends BaseViewProps {\n buttonContainerStyle?: any;\n buttonTextStyle?: any;\n}\ninterface ButtonState extends BaseViewState {}\n\nexport default class Button extends BaseView<ButtonProps, ButtonState> {\n static contextType = ThemeContext;\n static propTypes: {\n payload: any;\n onListItemClick?: any;\n };\n\n constructor(props: any) {\n super(props);\n }\n\n // shouldComponentUpdate(nextProps: ButtonProps) {\n // return (\n // !!this.props.payload &&\n // !!nextProps.payload &&\n // this.props.payload !== nextProps.payload\n // );\n // }\n\n private getSingleButtonsViewForFlatList = (item: any) => {\n return this.getSingleButtonView(\n item.item,\n item.index,\n item?.btheme,\n item?.bbtheme,\n );\n };\n\n private getSingleButtonView = (\n item: any,\n index = 0,\n btheme: ButtonTheme,\n bbtheme: BubbleTheme,\n ) => {\n return (\n <View key={index + ''} style={styles.item_container}>\n <TouchableOpacity\n key={index}\n style={[\n styles.btn_view,\n {\n borderColor: bbtheme?.BUBBLE_LEFT_BG_COLOR || '#3F51B5',\n borderWidth: 1,\n },\n this.isViewDisable() && {\n backgroundColor: btheme?.INACTIVE_BG_COLOR,\n },\n ]}\n onPress={() => {\n if (this.props.payload.onListItemClick) {\n this.props.payload.onListItemClick(\n this.props.payload.template_type,\n item,\n );\n }\n }}>\n <Text\n style={[\n styles.item_text,\n {\n color: this.isViewDisable()\n ? btheme?.INACTIVE_TXT_COLOR\n : btheme.ACTIVE_TXT_COLOR,\n fontFamily:\n this.props?.theme?.v3?.body?.font?.family || 'Inter',\n },\n botStyles[this.props?.theme?.v3?.body?.font?.size || 'medium']\n .size,\n ]}>\n {item.title}\n </Text>\n </TouchableOpacity>\n </View>\n );\n };\n\n private renderButtonsView = (list: []) => {\n if (!list || list.length === 0) {\n return <></>;\n }\n const btheme = getButtonTheme(this.props?.theme);\n const bbtheme = getBubbleTheme(this.props?.theme);\n return (\n <View\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}\n style={styles.btn_views_1}>\n {list.map((item: any, index: any) => {\n return this.getSingleButtonsViewForFlatList({\n item,\n index,\n btheme,\n bbtheme,\n });\n })}\n </View>\n );\n };\n\n render() {\n return (\n <View>\n {this.props.payload && (\n <View>\n {this.props.payload?.text && (\n <BotText\n text={this.props.payload?.text?.trim()}\n isFilterApply={true}\n isLastMsz={!this.isViewDisable()}\n theme={this.props.theme}\n />\n )}\n {this.renderButtonsView(this.props.payload.buttons)}\n </View>\n )}\n </View>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n item_container: {\n flexWrap: 'wrap',\n marginBottom: 10,\n marginRight: 10,\n marginTop: 10,\n },\n mainContainer: {\n backgroundColor: Color.white,\n borderWidth: TEMPLATE_STYLE_VALUES.BORDER_WIDTH,\n borderColor: TEMPLATE_STYLE_VALUES.BORDER_COLOR,\n borderRadius: TEMPLATE_STYLE_VALUES.BORDER_RADIUS,\n minWidth: TEMPLATE_STYLE_VALUES.MIN_WIDTH,\n marginRight: TEMPLATE_STYLE_VALUES.TEMPLATE_RIGHT_MARGIN,\n marginLeft: TEMPLATE_STYLE_VALUES.TEMPLATE_LEFT_MARGIN,\n },\n\n text: {\n color: TEMPLATE_STYLE_VALUES.TEXT_COLOR,\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n marginStart: 10,\n marginEnd: 10,\n marginTop: 10,\n marginBottom: 10,\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n },\n\n bottom_btns: {flexDirection: 'row', marginTop: 0},\n btn_view: {\n flexDirection: 'column',\n alignItems: 'center',\n borderRadius: 10,\n padding: 10,\n fontWeight: 'bold',\n },\n\n item_text: {\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n alignSelf: 'center',\n color: Color.blue,\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n fontWeight: 'normal',\n //marginTop: 10,\n },\n main_view_1: {\n padding: 5,\n },\n btn_views_1: {\n flexDirection: 'column',\n },\n});\n","import * as React from 'react';\nimport {\n Linking,\n StyleSheet,\n View,\n ViewStyle,\n TextStyle,\n StyleProp,\n} from 'react-native';\n\nimport ParsedText from 'react-native-parsed-text';\nimport Communications from 'react-native-communications';\nimport BaseView, {BaseViewProps, BaseViewState} from './BaseView';\nimport {\n TEMPLATE_STYLE_VALUES,\n botStyles,\n leftBubbleStyles,\n rightBubbleStyles,\n} from '../theme/styles';\nimport Color from '../theme/Color';\nimport {ThemeContext} from '../theme/ThemeContext';\nimport {getBubbleTheme} from '../theme/themeHelper';\nimport {getParseList} from '../utils/ParseList';\n\ninterface MessageTextProps extends BaseViewProps {\n optionTitles?: string[];\n containerStyle?: any;\n template_type?: any;\n\n textStyle?: {\n left?: any;\n right?: any;\n center?: any;\n };\n linkStyle?: {\n left?: any;\n right?: any;\n center?: any;\n };\n parsePatterns: (arg: any) => [];\n textProps?: Record<string, any>;\n customTextStyle?: StyleProp<TextStyle>;\n}\n\ninterface MessageTextState extends BaseViewState {}\n\nconst WWW_URL_PATTERN = /^www\\./i;\n\nconst textStyle: TextStyle = {\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n // lineHeight: 20,\n marginTop: 5,\n marginBottom: 5,\n marginLeft: 10,\n marginRight: 10,\n};\n\nconst styles = {\n left: StyleSheet.create({\n container: {\n marginRight: 30,\n minHeight: 20,\n justifyContent: 'flex-end',\n paddingBottom: 5,\n paddingTop: 5,\n } as ViewStyle,\n text: {\n color: Color.black,\n ...textStyle,\n } as TextStyle,\n link: {\n color: Color.black,\n textDecorationLine: 'underline',\n } as TextStyle,\n }),\n center: StyleSheet.create({\n container: {} as ViewStyle,\n text: {\n color: Color.white,\n ...textStyle,\n } as TextStyle,\n link: {\n color: Color.white,\n textDecorationLine: 'underline',\n } as TextStyle,\n }),\n right: StyleSheet.create({\n container: {\n //backgroundColor: Color.defaultBlue,\n marginLeft: 30,\n minHeight: 20,\n minWidth: 40,\n justifyContent: 'flex-end',\n paddingBottom: 5,\n paddingTop: 5,\n },\n text: {\n color: Color.white,\n ...textStyle,\n alignSelf: 'center',\n } as TextStyle,\n link: {\n color: Color.white,\n textDecorationLine: 'underline',\n } as TextStyle,\n }),\n};\n\n//const DEFAULT_OPTION_TITLES = ['Call', 'Text', 'Cancel'];\n\nclass MessageText extends BaseView<MessageTextProps, MessageTextState> {\n //private actionSheet?: any;\n static contextType = ThemeContext;\n static propTypes: {\n containerStyle: any;\n textStyle: any;\n linkStyle: any;\n\n parsePatterns: any;\n textProps: any;\n customTextStyle: any;\n payload: any;\n template_type?: any;\n };\n\n constructor(props: MessageTextProps) {\n super(props);\n //let {actionSheet} = useChatContext();\n // this.actionSheet = BotChatContext;\n }\n\n static defaultProps: {\n position: 'left';\n optionTitles: ['Call', 'Text', 'Cancel'];\n\n containerStyle: undefined;\n textStyle: {};\n linkStyle: {};\n customTextStyle: {};\n textProps: {};\n parsePatterns: () => [];\n payload: undefined;\n template_type: undefined;\n };\n\n onUrlPress = (url: string) => {\n if (WWW_URL_PATTERN.test(url)) {\n this.onUrlPress(`http://${url}`);\n } else {\n Linking.canOpenURL(url).then(supported => {\n if (!supported) {\n console.log('No handler for URL:', url);\n try {\n Linking.openURL(url);\n } catch (e) {}\n } else {\n Linking.openURL(url);\n }\n });\n }\n };\n\n onPhonePress = (_phone: string) => {\n // const {optionTitles} = this.props;\n // const options =\n // optionTitles && optionTitles.length > 0\n // ? optionTitles.slice(0, 3)\n // : DEFAULT_OPTION_TITLES;\n // const cancelButtonIndex = options.length - 1;\n //Communications.phonecall(phone, false);\n // this.actionSheet?.().showActionSheetWithOptions(\n // {\n // options,\n // cancelButtonIndex,\n // },\n // (buttonIndex: any) => {\n // switch (buttonIndex) {\n // case 0:\n // Communications.phonecall(phone, true);\n // break;\n // case 1:\n // Communications.text(phone);\n // break;\n // default:\n // break;\n // }\n // },\n // );\n };\n\n onEmailPress = (email: string) =>\n Communications.email([email], null, null, null, null);\n\n parseTextWithIcons = (text: string) => {\n const entityRegex = /&#(\\d+);/g;\n const parsedText = text?.replace(entityRegex, (match, decimal) =>\n String.fromCodePoint(decimal),\n );\n return parsedText;\n };\n\n render() {\n //console.log('this.props.position --->:', this.props.position);\n const linkStyle = [\n styles[this.props.position!]?.link,\n this.props.linkStyle && this.props.linkStyle[this.props.position!],\n ];\n\n const payload: any = this.props?.payload?.payload || this.props?.payload;\n\n // if (payload) {\n // console.log('this.props.payload --->:', JSON.stringify(payload));\n // }\n let message: any = payload?.text;\n if (!message) {\n message = payload?.payload?.text;\n }\n\n if (!message) {\n message = payload;\n }\n\n //console.log('this.props.payload message--->:', message);\n\n let text: string | undefined = message;\n // console.log('========================');\n // console.log(\n // 'this.props?.theme?.v3?.body?.bubble_style ---->:',\n // this.props?.theme?.v3?.body?.bubble_style,\n // );\n // console.log('========================');\n let parseList: any = [];\n if (this.props.parsePatterns && this.props.parsePatterns(linkStyle)) {\n parseList = {...this.props.parsePatterns(linkStyle)};\n }\n const position = this.props.position ? this.props.position : 'left';\n\n const bubbleTheme = getBubbleTheme(this.props?.theme);\n\n const isPassword = this.checkIsPassword(text);\n\n return text ? (\n <View\n style={\n this.props.containerStyle\n ? this.props.containerStyle\n : [\n styles[position]?.container,\n\n position === 'left' && {\n backgroundColor: bubbleTheme.BUBBLE_LEFT_BG_COLOR,\n ...leftBubbleStyles[\n this.props?.theme?.v3?.body?.bubble_style || 'balloon'\n ].bubble_style,\n },\n position === 'right' && {\n backgroundColor: bubbleTheme.BUBBLE_RIGHT_BG_COLOR,\n ...rightBubbleStyles[\n this.props?.theme?.v3?.body?.bubble_style || 'balloon'\n ].bubble_style,\n },\n ]\n }>\n <ParsedText\n style={[\n styles[position!]?.text,\n this.props.textStyle && this.props.textStyle[position!],\n this.props.customTextStyle,\n\n {\n fontFamily: this.props?.theme?.v3?.body?.font?.family,\n color:\n this.props?.theme?.v3?.general?.colors?.primary_text ||\n '#ffffff',\n },\n botStyles[this.props?.theme?.v3?.body?.font?.size || 'medium']\n ?.size,\n\n position === 'left' && {\n color: bubbleTheme.BUBBLE_LEFT_TEXT_COLOR,\n },\n position === 'right' && {\n color: bubbleTheme.BUBBLE_RIGHT_TEXT_COLOR,\n },\n ]}\n parse={isPassword ? [] : [...parseList, ...getParseList()]}\n childrenProps={{...this.props.textProps}}>\n {this.parseTextWithIcons(text?.trim?.())?.trim()}\n </ParsedText>\n </View>\n ) : (\n <View />\n );\n }\n private checkIsPassword(text: string | undefined) {\n if (!text || text?.trim().length === 0) {\n return false;\n }\n\n const code = text?.trim();\n if (!code || code?.trim().length === 0) {\n return false;\n }\n\n for (let i = 0; i < code.length; i++) {\n if (code[i] !== '*') {\n return false;\n }\n }\n\n return true;\n }\n}\n\nexport default MessageText;\n","import * as React from 'react';\nimport BaseView, {BaseViewProps, BaseViewState} from './BaseView';\nimport {\n Dimensions,\n ImageBackground,\n StyleSheet,\n Text,\n TouchableOpacity,\n View,\n} from 'react-native';\nimport Color from '../theme/Color';\nimport {normalize} from '../utils/helpers';\nimport FastImage from 'react-native-fast-image';\nconst windowWidth = Dimensions.get('window').width;\n\ninterface TableListProps extends BaseViewProps {}\ninterface TableListState extends BaseViewState {}\n\nexport default class TableListTemplate extends BaseView<\n TableListProps,\n TableListState\n> {\n private placeholderImage: any;\n constructor(props: any) {\n super(props);\n\n // this.placeholderImage = require('../assets/placehoder/image.png');\n }\n\n private renderElements(elements: any) {\n if (!elements || elements?.length === 0) {\n return <></>;\n }\n const data = elements?.[0] || null;\n if (!data) {\n return <></>;\n }\n\n return (\n <View style={styles.main}>\n <View style={styles.sub}>\n <Text style={styles.sectionHeader}>{data?.sectionHeader}</Text>\n <Text style={styles.sectionHeaderDesc}>\n {data?.sectionHeaderDesc}\n </Text>\n </View>\n {data?.rowItems?.map((item: any, index: number) => {\n let title = item?.title?.url\n ? item?.title?.url?.title\n : item?.title?.text?.title;\n let subtitle = item?.title?.url\n ? item?.title?.url?.subtitle\n : item?.title?.text?.subtitle;\n\n let value = item?.value?.url\n ? item?.value?.url?.title\n : item?.value?.text;\n\n const MainWrapper: any = item?.default_action\n ? TouchableOpacity\n : View;\n const TitleWrapper: any = item?.title?.url ? TouchableOpacity : View;\n const ValueWrapper: any = item?.value?.url ? TouchableOpacity : View;\n\n return (\n <MainWrapper\n key={index + '___'}\n onPress={() => {\n // console.log('item?.default_action ===>:', item?.default_action);\n\n if (this.props.payload.onListItemClick) {\n this.props.payload.onListItemClick(\n this.props.payload.template_type,\n item?.default_action,\n );\n }\n }}>\n <View\n style={[\n styles.rowItems_main,\n {backgroundColor: item?.bgcolor || Color.transparent},\n ]}>\n <ImageBackground\n style={[\n styles.image_view,\n {backgroundColor: item?.bgcolor || Color.transparent},\n ]}\n source={this.placeholderImage}>\n <FastImage\n source={{uri: item?.title?.image?.image_src}}\n style={[styles.image]}\n />\n </ImageBackground>\n <View style={styles.rowItems_sub}>\n <TitleWrapper\n onPress={() => {\n console.log(\n 'item?.title?.url?.link ---->:',\n item?.title?.url?.link,\n );\n\n if (this.props.payload.onListItemClick) {\n this.props.payload.onListItemClick(\n this.props.payload.template_type,\n {\n ...item?.title?.url,\n type: item?.title?.type,\n },\n );\n }\n }}\n style={styles.rowItem_title}>\n <Text\n style={[\n styles.rowItem_title_text,\n {color: item?.title?.rowColor || Color.black},\n TitleWrapper === TouchableOpacity && {\n textDecorationLine: 'underline',\n },\n ]}>\n {title}\n </Text>\n </TitleWrapper>\n <Text\n style={[\n styles.subtitle_text,\n {color: item?.title?.rowColor || Color.black},\n ]}>\n {subtitle}\n </Text>\n </View>\n <ValueWrapper\n onPress={() => {\n if (this.props.payload.onListItemClick) {\n this.props.payload.onListItemClick(\n this.props.payload.template_type,\n {\n ...item?.value,\n url: item?.value?.url?.link,\n },\n );\n }\n }}\n style={[\n styles.value_main,\n {justifyContent: item?.value?.layout?.align || 'center'},\n ]}>\n <Text\n style={[\n styles.value_text,\n {\n color: item?.value?.layout?.color || Color.black,\n textDecorationLine:\n ValueWrapper === TouchableOpacity\n ? 'underline'\n : 'none',\n },\n ]}>\n {value}\n </Text>\n </ValueWrapper>\n </View>\n\n {index !== data?.rowItems?.length - 1 && (\n <View style={styles.line}></View>\n )}\n </MainWrapper>\n );\n })}\n </View>\n );\n }\n\n render() {\n return (\n <View style={[styles.main_con, {width: (windowWidth / 4) * 3.2}]}>\n {this.renderElements(this.props?.payload?.elements)}\n </View>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n main_con: {\n borderRadius: 5,\n borderWidth: StyleSheet.hairlineWidth,\n borderColor: Color.black,\n marginBottom: normalize(10),\n },\n line: {\n height: StyleSheet.hairlineWidth,\n width: '100%',\n backgroundColor: Color.black,\n },\n value_text: {\n fontSize: normalize(12),\n fontWeight: '700',\n },\n value_main: {\n marginLeft: normalize(5),\n },\n subtitle_text: {\n fontSize: normalize(13),\n fontWeight: 'normal',\n flex: 1,\n },\n rowItem_title_text: {\n fontSize: normalize(15),\n fontWeight: '600',\n textDecorationLine: 'none',\n paddingBottom: 5,\n paddingRight: 5,\n },\n rowItem_title: {flex: 1},\n rowItems_sub: {\n justifyContent: 'center',\n marginLeft: normalize(8),\n flex: 1,\n },\n rowItems_main: {\n flexDirection: 'row',\n\n padding: normalize(8),\n },\n sectionHeaderDesc: {\n fontWeight: 'normal',\n fontSize: normalize(14),\n color: Color.black,\n opacity: 0.6,\n },\n sectionHeader: {\n fontWeight: '800',\n fontSize: normalize(15),\n color: Color.black,\n },\n sub: {padding: normalize(8)},\n main: {flexDirection: 'column'},\n image_view: {\n // marginTop: 10,\n height: normalize(50),\n width: normalize(50),\n borderColor: Color.bisque,\n borderWidth: StyleSheet.hairlineWidth / 2,\n },\n image: {\n height: normalize(50),\n width: normalize(50),\n resizeMode: 'stretch',\n margin: 0,\n },\n});\n","import * as React from 'react';\nimport BaseView, {BaseViewProps, BaseViewState} from './BaseView';\nimport {\n Dimensions,\n ImageBackground,\n StyleSheet,\n Text,\n TouchableOpacity,\n View,\n} from 'react-native';\nimport BotText from './BotText';\nimport {normalize} from '../utils/helpers';\nimport CheckBox from '@react-native-community/checkbox';\nimport Color from '../theme/Color';\nimport FastImage from 'react-native-fast-image';\nimport {isIOS} from '../utils/PlatformCheck';\nconst windowWidth = Dimensions.get('window').width;\n\ninterface AdvanceMultiSelectProps extends BaseViewProps {}\ninterface AdvanceMultiSelectState extends BaseViewState {\n elements?: [];\n limit?: number;\n showViewMore?: boolean;\n totalLength?: number;\n}\n\nexport default class AdvanceMultiSelectTemplate extends BaseView<\n AdvanceMultiSelectProps,\n AdvanceMultiSelectState\n> {\n private placeholderImage: any;\n constructor(props: AdvanceMultiSelectProps) {\n super(props);\n\n this.state = {\n elements: [],\n limit: 1,\n showViewMore: false,\n totalLength: 0,\n };\n }\n\n componentDidMount(): void {\n this.setState({\n elements: this.props.payload.elements,\n limit: this.props.payload?.showViewMore\n ? this.props.payload?.limit\n ? this.props.payload?.limit\n : 1\n : this.props.payload.elements.length,\n showViewMore: this.props.payload?.showViewMore,\n totalLength: this.props.payload.elements.length,\n });\n }\n\n render() {\n const buttons: any = [\n ...this.props.payload.buttons,\n ...this.props.payload.buttons,\n ...this.props.payload.buttons,\n ];\n\n let selectList = this.getSelectedList();\n\n return (\n <View pointerEvents={this.isViewDisable() ? 'none' : 'auto'}>\n {this.props.payload?.heading && (\n <BotText\n text={this.props.payload?.heading?.trim()}\n isFilterApply={true}\n isLastMsz={!this.isViewDisable()}\n theme={this.props.theme}\n />\n )}\n {this.renderMultiSelectView(\n this.state.showViewMore\n ? this.state.elements?.slice(0, this.state.limit)\n : this.state.elements,\n )}\n {this.state.showViewMore && (\n <TouchableOpacity\n style={styles.view_more_main}\n onPress={() => {\n this.setState({\n showViewMore: false,\n });\n }}>\n <Text style={styles.view_more_text}>{'View more'}</Text>\n </TouchableOpacity>\n )}\n\n <View pointerEvents={selectList?.length === 0 ? 'none' : 'auto'}>\n {this.props.payload.buttons.map((btn: any, btnIndex: number) => {\n return (\n <TouchableOpacity\n onPress={\n selectList?.length === 0\n ? undefined\n : () => {\n let itemsStr = 'Here are the selected items : ';\n selectList?.map((item: any, index: number) => {\n if (index < selectList.length - 1) {\n itemsStr = itemsStr + '' + item + ',';\n } else {\n itemsStr = itemsStr + '' + item;\n }\n });\n\n if (this.props.payload.onListItemClick) {\n this.props.payload.onListItemClick(\n this.props.payload.template_type,\n {\n title: itemsStr,\n type: btn?.type,\n },\n );\n }\n }\n }\n style={[\n styles.btn_main,\n selectList?.length === 0\n ? {backgroundColor: Color.gray}\n : {backgroundColor: '#303f9f'},\n this.isViewDisable() && {backgroundColor: Color.gray},\n ]}>\n <Text style={[styles.btn_text]}>{btn?.title}</Text>\n </TouchableOpacity>\n );\n })}\n </View>\n </View>\n );\n }\n\n private getSelectedList = () => {\n let selectList = [];\n\n this.state.elements?.map((ele: any) => {\n let list: [] = ele?.collection\n ?.filter((col: any) => col?.isChecked)\n .map((item: any) => {\n return item?.value;\n });\n\n selectList.push(...list);\n });\n\n return selectList;\n };\n\n renderMultiSelectView(elements: any) {\n if (!elements || elements?.length === 0) {\n return <></>;\n }\n\n return (\n <View>\n {elements.map((item: any, index: number) => {\n return (\n <View style={styles.ele_main}>\n <View>\n <Text style={styles.ele_title}>{item?.collectionTitle}</Text>\n </View>\n\n <View style={styles.che_main}>\n <CheckBox\n style={styles.check_box}\n value={item?.isChecked || false}\n onValueChange={value => {\n let allElements: any = this.state.elements;\n allElements[index] = {\n ...item,\n isChecked: value,\n collection: item?.collection.map((col: any) => {\n return {\n ...col,\n isChecked: value,\n };\n }),\n };\n\n this.setState({\n elements: allElements,\n });\n }}\n />\n <Text style={[styles.select_all, {marginLeft: normalize(5)}]}>\n {'Select all'}\n </Text>\n </View>\n {this.renderCollections(item?.collection, index)}\n </View>\n );\n })}\n </View>\n );\n }\n renderCollections(collections: any, elementIndex: number) {\n if (!collections || collections?.length === 0) {\n return <></>;\n }\n\n return (\n <View style={[styles.col_main, {width: (windowWidth / 4) * 3}]}>\n {collections.map((item: any, index: number) => {\n return (\n <View style={styles.col_item_main}>\n <View style={styles.col_check_main}>\n <CheckBox\n style={styles.check_box}\n // boxType=\"circle\"\n value={item?.isChecked || false}\n lineWidth={2}\n hideBox={false}\n //onCheckColor={'#6F763F'}\n //onFillColor={'#4DABEC'}\n // onTintColor={'#F4DCF8'}\n animationDuration={0.2}\n onAnimationType={'stroke'}\n offAnimationType={'stroke'}\n onValueChange={value => {\n const elements: any = this.state.elements;\n elements[elementIndex] = {\n ...elements[elementIndex],\n // isChecked: value?,\n collection: elements[elementIndex]?.collection.map(\n (col: any, colIndex: number) => {\n if (colIndex === index) {\n return {\n ...col,\n isChecked: value,\n };\n }\n return col;\n },\n ),\n };\n\n const selectList = elements[\n elementIndex\n ]?.collection.filter((col: any) => col?.isChecked || false);\n\n elements[elementIndex] = {\n ...elements[elementIndex],\n isChecked:\n selectList.length === 0\n ? false\n : selectList.length ===\n elements[elementIndex]?.collection?.length\n ? true\n : false,\n };\n\n this.setState({\n elements,\n });\n }}\n />\n <ImageBackground\n style={[\n styles.image_view,\n isIOS && {marginLeft: normalize(7)},\n ]}\n source={this.placeholderImage}>\n <FastImage\n source={{uri: item?.image_url}}\n style={[styles.image]}\n resizeMode={'cover'}\n />\n </ImageBackground>\n <Text numberOfLines={1} style={styles.item_title}>\n {item?.title}\n </Text>\n </View>\n </View>\n );\n })}\n </View>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n btn_text: {color: Color.white, fontSize: normalize(14)},\n btn_main: {\n backgroundColor: '#303f9f',\n //marginBottom: 10,\n padding: 10,\n borderRadius: 5,\n justifyContent: 'center',\n alignItems: 'center',\n },\n view_more_text: {color: '#0076FF', fontSize: normalize(15)},\n view_more_main: {padding: 10},\n item_title: {\n textAlign: 'center',\n alignSelf: 'center',\n color: Color.black,\n fontWeight: 'normal',\n fontSize: normalize(14),\n flexShrink: 1,\n },\n col_check_main: {\n flexDirection: 'row',\n // backgroundColor: 'yellow',\n },\n col_item_main: {\n flexDirection: 'column',\n marginBottom: normalize(5),\n borderRadius: 5,\n borderColor: Color.black,\n borderWidth: StyleSheet.hairlineWidth,\n padding: normalize(8),\n },\n col_main: {marginStart: normalize(30)},\n select_all: {\n justifyContent: 'center',\n // backgroundColor: 'red',\n textAlign: 'center',\n alignSelf: 'center',\n\n color: Color.black,\n fontWeight: 'normal',\n fontSize: normalize(14),\n },\n che_main: {\n flexDirection: 'row',\n marginStart: -normalize(6),\n marginTop: normalize(5),\n marginBottom: normalize(5),\n },\n ele_main: {flexDirection: 'column', marginBottom: normalize(5)},\n ele_title: {\n color: Color.black,\n fontWeight: '800',\n marginTop: normalize(15),\n fontSize: normalize(15),\n },\n check_box: {\n // width: normalize(50),\n // height: normalize(50),\n // backgroundColor: 'green',\n justifyContent: 'center',\n alignSelf: 'center',\n width: normalize(25),\n marginEnd: normalize(10),\n },\n image_view: {\n // marginTop: 10,\n height: normalize(30),\n width: normalize(30),\n justifyContent: 'center',\n alignSelf: 'center',\n marginEnd: 5,\n borderColor: Color.bisque,\n borderWidth: StyleSheet.hairlineWidth / 2,\n },\n image: {\n height: normalize(20),\n width: normalize(20),\n resizeMode: 'stretch',\n justifyContent: 'center',\n alignSelf: 'center',\n margin: 0,\n },\n});\n","import * as React from 'react';\nimport BaseView, {BaseViewProps, BaseViewState} from './BaseView';\nimport {\n Dimensions,\n StyleSheet,\n Text,\n TouchableOpacity,\n View,\n} from 'react-native';\nimport {normalize} from '../utils/helpers';\nimport CheckBox from '@react-native-community/checkbox';\nimport Color from '../theme/Color';\nimport {isIOS} from '../utils/PlatformCheck';\nconst windowWidth = Dimensions.get('window').width;\n\ninterface MultiSelectProps extends BaseViewProps {}\ninterface MultiSelectState extends BaseViewState {\n mPayload?: any;\n}\n\nexport default class MultiSelectTemplate extends BaseView<\n MultiSelectProps,\n MultiSelectState\n> {\n constructor(props: MultiSelectProps) {\n super(props);\n\n this.state = {\n mPayload: null,\n };\n }\n\n componentDidMount(): void {\n this.setState({\n mPayload: this.props.payload,\n });\n }\n\n private renderMultiSelectView(payload: any) {\n if (!payload?.elements || payload.elements?.length === 0) {\n return <></>;\n }\n\n return (\n <View style={[styles.ele_main, isIOS && {marginLeft: normalize(10)}]}>\n <View style={styles.che_main}>\n <CheckBox\n style={styles.check_box}\n boxType=\"square\"\n value={payload?.isChecked || false}\n onValueChange={value => {\n let payload: any = this.state.mPayload;\n payload = {\n ...payload,\n isChecked: value,\n elements: this.state.mPayload?.elements.map((col: any) => {\n return {\n ...col,\n isChecked: value,\n };\n }),\n };\n this.setState({\n mPayload: payload,\n });\n }}\n />\n <Text\n style={[styles.select_all, isIOS && {marginLeft: normalize(5)}]}>\n {'Select all'}\n </Text>\n </View>\n {this.renderCollections(payload?.elements)}\n </View>\n );\n }\n renderCollections(collections: any) {\n if (!collections || collections?.length === 0) {\n return <></>;\n }\n\n return (\n <View style={[styles.col_main, {width: (windowWidth / 4) * 3}]}>\n {collections.map((item: any, index: number) => {\n return (\n <View style={[styles.col_item_main]}>\n <View style={styles.col_check_main}>\n <CheckBox\n style={styles.check_box}\n // boxType=\"circle\"\n value={item?.isChecked || false}\n lineWidth={2}\n hideBox={false}\n boxType=\"square\"\n //onCheckColor={'#6F763F'}\n //onFillColor={'#4DABEC'}\n // onTintColor={'#F4DCF8'}\n animationDuration={0}\n onAnimationType={'stroke'}\n offAnimationType={'stroke'}\n onValueChange={value => {\n let payload: any = this.state.mPayload;\n payload = {\n ...payload,\n elements: this.state.mPayload?.elements.map(\n (col: any, colIndex: number) => {\n if (colIndex === index) {\n return {\n ...col,\n isChecked: value,\n };\n }\n\n return col;\n },\n ),\n };\n\n let checkedElements = payload?.elements.filter(\n (ele: any) => ele?.isChecked,\n );\n\n if (\n checkedElements?.length <\n this.state.mPayload?.elements?.length\n ) {\n payload = {\n ...payload,\n isChecked: false,\n };\n } else if (\n checkedElements?.length ===\n this.state.mPayload?.elements?.length\n ) {\n payload = {\n ...payload,\n isChecked: true,\n };\n }\n\n this.setState({\n mPayload: payload,\n });\n }}\n />\n\n <Text\n numberOfLines={1}\n style={[\n styles.item_title,\n isIOS && {marginLeft: normalize(5)},\n ]}>\n {item?.title}\n </Text>\n </View>\n </View>\n );\n })}\n </View>\n );\n }\n\n render() {\n let selectList = this.getSelectedList();\n if (!this.state.mPayload) {\n return <></>;\n }\n return (\n <View pointerEvents={this.isViewDisable() ? 'none' : 'auto'}>\n {this.renderMultiSelectView(this.state.mPayload)}\n <View pointerEvents={selectList?.length === 0 ? 'none' : 'auto'}>\n {this.props.payload.buttons.map((btn: any) => {\n return (\n <TouchableOpacity\n onPress={() => {\n let msgsStr = '';\n let botStr = '';\n selectList?.map((item: any, index: number) => {\n if (index < selectList.length - 1) {\n msgsStr = msgsStr + '' + item?.title + ',';\n botStr = botStr + '' + item?.value + ',';\n } else {\n msgsStr = msgsStr + '' + item?.title;\n botStr = botStr + '' + item?.value;\n }\n });\n\n if (this.props.payload.onListItemClick) {\n this.props.payload.onListItemClick(\n this.props.payload.template_type,\n {\n message: msgsStr,\n payload: botStr,\n type: btn.type,\n },\n );\n }\n }}\n style={[\n styles.btn_main,\n selectList?.length === 0\n ? {backgroundColor: Color.gray}\n : {backgroundColor: '#303f9f'},\n this.isViewDisable() && {backgroundColor: Color.gray},\n ]}>\n <Text style={[styles.btn_text]}>{btn?.title}</Text>\n </TouchableOpacity>\n );\n })}\n </View>\n </View>\n );\n }\n private getSelectedList = () => {\n let selectList = [];\n if (!this.state?.mPayload || !this.state?.mPayload?.elements) {\n return selectList;\n }\n\n selectList = this.state?.mPayload?.elements?.filter(\n (col: any) => col?.isChecked,\n );\n\n return selectList;\n };\n}\n\nconst styles = StyleSheet.create({\n btn_text: {color: Color.white, fontSize: normalize(14)},\n btn_main: {\n backgroundColor: '#303f9f',\n //marginBottom: 10,\n padding: 10,\n borderRadius: 5,\n justifyContent: 'center',\n alignItems: 'center',\n marginStart: normalize(30),\n },\n item_title: {\n textAlign: 'center',\n alignSelf: 'center',\n color: Color.black,\n fontWeight: 'normal',\n fontSize: normalize(14),\n flexShrink: 1,\n },\n col_check_main: {\n flexDirection: 'row',\n // backgroundColor: 'yellow',\n },\n col_item_main: {\n flexDirection: 'column',\n marginBottom: normalize(5),\n borderRadius: 5,\n borderColor: Color.black,\n borderWidth: StyleSheet.hairlineWidth,\n padding: normalize(8),\n },\n col_main: {marginStart: normalize(30)},\n select_all: {\n justifyContent: 'center',\n // backgroundColor: 'red',\n textAlign: 'center',\n alignSelf: 'center',\n\n color: Color.black,\n fontWeight: 'normal',\n fontSize: normalize(14),\n },\n che_main: {\n flexDirection: 'row',\n marginStart: -normalize(6),\n marginTop: normalize(5),\n marginBottom: normalize(5),\n },\n ele_main: {flexDirection: 'column', marginBottom: normalize(5)},\n\n check_box: {\n justifyContent: 'center',\n alignSelf: 'center',\n height: normalize(25),\n },\n});\n","import * as React from 'react';\nimport BaseView, {BaseViewProps, BaseViewState} from './BaseView';\nimport {\n Dimensions,\n StyleSheet,\n Text,\n TouchableOpacity,\n View,\n} from 'react-native';\nimport BotText from './BotText';\nimport {RadioButton} from 'react-native-radio-buttons-group';\nimport {normalize} from '../utils/helpers';\nimport Color from '../theme/Color';\nconst windowWidth = Dimensions.get('window').width;\n\ninterface RadioOptionProps extends BaseViewProps {}\ninterface RadioOptionState extends BaseViewState {\n radioOptions: any;\n selectedItem: any;\n}\n\nexport default class RadioOptionTemplate extends BaseView<\n RadioOptionProps,\n RadioOptionState\n> {\n constructor(props: RadioOptionProps) {\n super(props);\n\n this.state = {\n radioOptions: [],\n selectedItem: null,\n };\n }\n\n componentDidMount(): void {\n this.setState({\n radioOptions: this.props.payload.radioOptions,\n });\n }\n private onPressRadioButton = (index: number) => {\n let options = this.state.radioOptions.map((opt: any, optIndex: number) => {\n if (optIndex === index) {\n return {\n ...opt,\n isChecked: true,\n };\n }\n return {\n ...opt,\n isChecked: false,\n };\n });\n\n this.setState({\n radioOptions: options,\n selectedItem: options[index],\n });\n };\n private renderRadioOptions = (radioOptions: any) => {\n if (!radioOptions || radioOptions?.length === 0) {\n return <></>;\n }\n\n return (\n <View\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}\n style={styles.radio_main}>\n {radioOptions.map((item: any, index: number) => {\n return (\n <TouchableOpacity\n onPress={() => {\n this.onPressRadioButton(index);\n }}>\n <View style={styles.item_main}>\n <View>\n <RadioButton\n size={20}\n borderSize={1}\n id={item?.id} // acts as primary key, should be unique and non-empty string\n selected={item?.isChecked}\n onPress={(id: string) => {\n this.onPressRadioButton(index);\n }}\n />\n </View>\n <View style={styles.title_main}>\n <Text style={styles.item_title}>{item?.title}</Text>\n <Text style={styles.item_value}>{item?.value}</Text>\n </View>\n </View>\n </TouchableOpacity>\n );\n })}\n </View>\n );\n\n return <></>;\n };\n render() {\n return (\n <View pointerEvents={this.isViewDisable() ? 'none' : 'auto'}>\n {this.props.payload && (\n <View>\n {this.props.payload?.heading && (\n <BotText\n text={this.props.payload?.heading?.trim()}\n isFilterApply={true}\n isLastMsz={!this.isViewDisable()}\n theme={this.props.theme}\n />\n )}\n {this.renderRadioOptions(this.state.radioOptions)}\n <TouchableOpacity\n onPress={() => {\n const item = this.state.selectedItem?.postback;\n\n if (item && this.props.payload.onListItemClick) {\n this.props.payload.onListItemClick(\n this.props.payload.template_type,\n {\n title: item?.title,\n payload: item?.value,\n type: 'postback',\n },\n );\n }\n }}\n style={[\n styles.btn_main,\n this.state.selectedItem\n ? {backgroundColor: '#303f9f'}\n : {backgroundColor: Color.gray},\n this.isViewDisable() && {backgroundColor: Color.gray},\n ]}>\n <Text style={[styles.btn_text]}>{'Done'}</Text>\n </TouchableOpacity>\n </View>\n )}\n </View>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n item_value: {\n color: Color.black,\n fontSize: normalize(12),\n fontWeight: '400',\n // marginBottom: 5,\n opacity: 0.5,\n },\n item_title: {\n flex: 1,\n color: Color.black,\n fontSize: normalize(14),\n fontWeight: '600',\n marginBottom: 3,\n marginTop: 5,\n },\n title_main: {flexDirection: 'column', flex: 1},\n item_main: {\n padding: 5,\n marginBottom: 5,\n flexDirection: 'row',\n },\n radio_main: {width: (windowWidth / 4) * 3, marginBottom: 10},\n btn_main: {\n backgroundColor: '#303f9f',\n //marginBottom: 10,\n padding: 10,\n borderRadius: 5,\n justifyContent: 'center',\n alignItems: 'center',\n //marginStart: normalize(20),\n },\n btn_text: {color: Color.white, fontSize: normalize(14)},\n});\n","import * as React from 'react';\nimport {\n Dimensions,\n ImageBackground,\n StyleSheet,\n Text,\n TouchableOpacity,\n View,\n} from 'react-native';\nimport FastImage from 'react-native-fast-image';\nimport BaseView, {BaseViewProps, BaseViewState} from './BaseView';\nimport {normalize} from '../utils/helpers';\nimport Color from '../theme/Color';\nimport {TEMPLATE_STYLE_VALUES, botStyles} from '../theme/styles';\nimport BotText from './BotText';\nimport {TEMPLATE_TYPES} from '../constants/Constant';\n\ninterface ListProps extends BaseViewProps {}\ninterface ListState extends BaseViewState {}\nconst windowWidth = Dimensions.get('window').width;\n\nconst width = (windowWidth / 4) * 3.1;\n\nexport const LIST_TYPES = {\n web_url: 'web_url',\n};\n//const MAX_COUNT = 3;\n\nexport default class ListViewTemplate extends BaseView<ListProps, ListState> {\n private placeholderImage: any;\n constructor(props: any) {\n super(props);\n }\n\n private getSingleElementView = (\n item: any,\n index: number,\n size: number = 0,\n ) => {\n let Image_Http_URL = {uri: item?.image_url};\n let buttons = item?.buttons ? [...item?.buttons] : []; //, ...item?.buttons, ...item?.buttons];\n return (\n <View key={index + '_' + index} style={styles.main_view_1}>\n <TouchableOpacity\n style={styles.sub_container}\n onPress={\n !item?.default_action\n ? undefined\n : () => {\n //console.log('item ---->:', item);\n if (this.props.payload.onListItemClick) {\n this.props.payload.onListItemClick(\n TEMPLATE_TYPES.LIST_VIEW_TEMPLATE,\n item?.default_action,\n false,\n this.props?.theme,\n );\n }\n }\n }>\n {item?.image_url && (\n <View>\n <ImageBackground\n style={[styles.image_view]}\n source={this.placeholderImage}>\n <FastImage source={Image_Http_URL} style={[styles.image]} />\n </ImageBackground>\n </View>\n )}\n\n <View style={styles.sub_container_1}>\n <Text style={[styles.displayTextStyle]}>{item.title}</Text>\n\n <Text style={[styles.descTextStyle]}>{item.subtitle}</Text>\n </View>\n <View style={styles.item_value_con}>\n <Text style={styles.item_value}>{item?.value}</Text>\n </View>\n </TouchableOpacity>\n\n {buttons && (\n <View\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}\n style={[\n styles.buttons_container,\n buttons?.length > 0 && {marginBottom: 10},\n ]}>\n {buttons.map((btn: any, i: number) => {\n return (\n <TouchableOpacity\n key={i + '_'}\n onPress={() => {\n if (this.props.payload.onListItemClick) {\n this.props.payload.onListItemClick(\n this.props.payload.template_type,\n btn,\n );\n }\n }}\n style={[\n styles.buttons_container_1,\n {\n backgroundColor:\n this.props?.theme?.v3?.body?.buttons?.bg_color ||\n '#a37645',\n },\n ]}>\n <Text\n style={[\n styles.btn_text,\n {\n color:\n this.props?.theme?.v3?.body?.buttons?.color ||\n '#ffffff',\n fontFamily:\n this.props.theme?.v3?.body?.font?.family || 'Inter',\n },\n botStyles['small']?.size,\n ]}>\n {btn?.title}\n </Text>\n </TouchableOpacity>\n );\n })}\n </View>\n )}\n </View>\n );\n };\n\n private renderElementsView = (list: any) => {\n return (\n <View\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}\n style={[{width: width, marginTop: 15}]}>\n {list?.map((item: any, index: any) => {\n return this.getSingleElementView(item, index, list.length);\n })}\n\n {this.props.payload?.seeMore && (\n <View\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}\n style={styles.more_btn_container}>\n <TouchableOpacity\n style={styles.more_sub_con1}\n onPress={() => {\n let data = null;\n\n if (this.props?.payload?.moreData) {\n data = this.props?.payload?.moreData;\n } else {\n data = this.props?.payload?.elements;\n }\n\n let data1 = {\n ...data,\n heading: this.props.payload?.heading,\n };\n\n if (this.props.payload.onListItemClick) {\n this.props.payload.onListItemClick(\n this.props.payload.template_type,\n data1,\n true,\n );\n }\n }}>\n <Text\n style={[\n styles.more_text,\n {\n fontFamily: this.props.theme?.v3?.body?.font?.family,\n },\n botStyles[this.props?.theme?.v3?.body?.font?.size || 'medium']\n ?.size,\n {\n textDecorationLine: 'underline',\n },\n ]}>\n {'See more'}\n </Text>\n </TouchableOpacity>\n </View>\n )}\n </View>\n );\n };\n\n render() {\n const size =\n this.props.payload?.moreCount || this.props.payload.elements?.length || 0;\n return this.props.payload ? (\n <View>\n {this.props.payload?.text && (\n <BotText\n text={this.props.payload?.text?.trim()}\n isFilterApply={true}\n isLastMsz={!this.isViewDisable()}\n theme={this.props.theme}\n />\n )}\n {this.props.payload?.heading && (\n <View style={styles.sub_container_title1}>\n <Text style={[styles.displayTextHeaderStyle]}>\n {this.props.payload?.heading}\n </Text>\n </View>\n )}\n {this.renderElementsView(this.props.payload.elements.slice(0, size))}\n </View>\n ) : (\n <></>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n item_value: {\n color: '#008000',\n fontWeight: '400',\n fontSize: normalize(13),\n fontStyle: 'normal',\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n },\n item_value_con: {justifyContent: 'center', marginEnd: normalize(5)},\n image_view: {\n // marginTop: 10,\n height: normalize(45),\n width: normalize(45),\n justifyContent: 'center',\n alignSelf: 'center',\n marginEnd: 5,\n borderColor: Color.bisque,\n borderWidth: StyleSheet.hairlineWidth / 2,\n },\n more_text: {\n flex: 1,\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n color: TEMPLATE_STYLE_VALUES.VIEW_MORE_TEXT_COLOR,\n // alignSelf: 'flex-start',\n alignSelf: 'flex-end',\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n },\n more_sub_con1: {\n flex: 1,\n justifyContent: 'flex-start',\n alignItems: 'flex-start',\n backgroundColor: 'transparent',\n paddingBottom: 10,\n },\n more_btn_container: {\n flexDirection: 'row',\n justifyContent: 'flex-start',\n alignItems: 'flex-start',\n },\n btn_text: {\n padding: 12,\n color: Color.white,\n fontWeight: '500',\n },\n buttons_container_1: {\n // backgroundColor: Color.blue,\n paddingLeft: 5,\n paddingRight: 5,\n marginBottom: 5,\n borderRadius: TEMPLATE_STYLE_VALUES.BORDER_RADIUS,\n alignItems: 'center',\n },\n buttons_container: {\n flexDirection: 'column',\n // backgroundColor: 'green',\n justifyContent: 'flex-end',\n marginTop: 10,\n marginEnd: 10,\n marginStart: 10,\n },\n sub_container_1: {\n flexDirection: 'column',\n marginStart: 5,\n marginEnd: 10,\n flex: 1,\n },\n sub_container_title1: {\n flexDirection: 'column',\n marginStart: 5,\n marginEnd: 10,\n },\n sub_container: {flexDirection: 'row', marginTop: 10},\n image: {\n height: normalize(45),\n width: normalize(45),\n resizeMode: 'stretch',\n margin: 0,\n },\n image_container: {\n backgroundColor: 'transparent',\n minHeight: normalize(50),\n minWidth: normalize(50),\n },\n\n line: {\n backgroundColor: TEMPLATE_STYLE_VALUES.BORDER_COLOR,\n width: '100%',\n height: StyleSheet.hairlineWidth,\n },\n\n main_view_1: {\n paddingEnd: 5,\n paddingStart: 5,\n flexDirection: 'column',\n marginBottom: 15,\n backgroundColor: Color.white,\n borderRadius: TEMPLATE_STYLE_VALUES.BORDER_RADIUS,\n borderWidth: StyleSheet.hairlineWidth,\n\n borderColor: TEMPLATE_STYLE_VALUES.BORDER_COLOR,\n },\n btn_views_1: {\n backgroundColor: Color.white,\n marginBottom: 2,\n\n borderRadius: TEMPLATE_STYLE_VALUES.BORDER_RADIUS,\n borderWidth: TEMPLATE_STYLE_VALUES.BORDER_WIDTH,\n borderColor: TEMPLATE_STYLE_VALUES.BORDER_COLOR,\n },\n displayTextStyle: {\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n fontStyle: 'normal',\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n marginEnd: 10,\n\n //backgroundColor: 'yellow',\n textAlign: 'left',\n justifyContent: 'center',\n\n color: Color.text_color,\n fontWeight: '700',\n },\n displayTextHeaderStyle: {\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n fontStyle: 'normal',\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n marginTop: 10,\n\n //backgroundColor: 'yellow',\n textAlign: 'left',\n justifyContent: 'center',\n\n color: Color.text_color,\n fontWeight: '600',\n },\n descTextStyle: {\n fontWeight: '400',\n fontSize: normalize(13),\n fontStyle: 'normal',\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n marginEnd: 10,\n flex: 1,\n\n color: Color.sub_text_color,\n // backgroundColor: 'green',\n },\n});\n","import * as React from 'react';\nimport BaseView, {BaseViewProps, BaseViewState} from './BaseView';\nimport {\n Dimensions,\n StyleSheet,\n Text,\n TouchableOpacity,\n View,\n} from 'react-native';\nimport BotText from './BotText';\nimport {Picker} from '@react-native-picker/picker';\nimport Color from '../theme/Color';\nimport {normalize} from '../utils/helpers';\nimport {TEMPLATE_STYLE_VALUES} from '../theme/styles';\nimport {isIOS} from '../utils/PlatformCheck';\nimport {getBubbleTheme, getButtonTheme} from '../theme/themeHelper';\nconst windowWidth = Dimensions.get('window').width;\n\ninterface DropdownProps extends BaseViewProps {\n buttonContainerStyle?: any;\n buttonTextStyle?: any;\n}\ninterface DropdownState extends BaseViewState {\n selectedValue?: any;\n item?: any;\n}\n\nexport default class DropdownTemplate extends BaseView<\n DropdownProps,\n DropdownState\n> {\n constructor(props: DropdownProps) {\n super(props);\n this.state = {\n selectedValue: undefined,\n };\n }\n\n render() {\n const bubbleTheme = getBubbleTheme(this.props?.theme);\n const btnTheme = getButtonTheme(this.props?.theme);\n return (\n <View pointerEvents={this.isViewDisable() ? 'none' : 'auto'}>\n {this.props.payload && (\n <View>\n {this.props.payload?.label && (\n <BotText\n text={this.props.payload?.label?.trim()}\n isFilterApply={true}\n isLastMsz={!this.isViewDisable()}\n theme={this.props.theme}\n />\n )}\n <View\n style={{\n marginTop: normalize(isIOS ? 45 : 5),\n marginBottom: normalize(isIOS ? 45 : 5),\n }}>\n {this.renderDropDownView(this.props.payload.elements)}\n </View>\n <View style={styles.btn_main}>\n <TouchableOpacity\n style={[\n styles.btn_con,\n {\n backgroundColor: bubbleTheme.BUBBLE_RIGHT_BG_COLOR,\n },\n this.isViewDisable() && {\n backgroundColor: btnTheme?.INACTIVE_BG_COLOR,\n },\n ]}\n onPress={() => {\n const item = this.state.item;\n if (!item) {\n return;\n }\n this.props.payload.onListItemClick(\n this.props.payload.template_type,\n {\n title: item?.title,\n payload: item?.value,\n type: 'postback',\n },\n );\n }}>\n <Text\n style={{\n color: this.isViewDisable()\n ? btnTheme?.INACTIVE_TXT_COLOR\n : bubbleTheme.BUBBLE_RIGHT_TEXT_COLOR,\n fontSize: normalize(14),\n }}>\n {'Submit'}\n </Text>\n </TouchableOpacity>\n </View>\n </View>\n )}\n </View>\n );\n }\n private renderDropDownView(elements: any): React.ReactNode {\n let mode = this.props.payload?.heading?.toLowerCase();\n if (mode !== 'dialog' && mode !== 'dropdown') {\n mode = 'dropdown';\n }\n\n return (\n <View\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}\n style={[styles.calendar, {}]}>\n <Picker\n selectedValue={this.state.selectedValue}\n mode={mode}\n placeholder={this.props.payload?.placeholder}\n itemStyle={{\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n color: isIOS ? Color.black : Color.white,\n //backgroundColor: 'red',\n }}\n //selectionColor={'green'}\n style={{margin: 5}}\n onValueChange={(itemValue: any, itemIndex: number) => {\n if (itemIndex !== 0 && !this.state.selectedValue) {\n itemIndex = itemIndex - 1;\n let item = elements[itemIndex];\n // console.log('selected item_3 --------> :', item);\n this.setState({selectedValue: itemValue, item: item});\n\n // this.props.payload.onListItemClick(\n // this.props.payload.template_type,\n // {\n // title: item?.title,\n // payload: item?.value,\n // type: 'postback',\n // },\n // );\n } else if (itemIndex === 0 && !this.state.selectedValue) {\n //let item = this.props.payload?.placeholder || 'Select';\n // console.log('selected item_1 --------> :', item);\n this.setState({selectedValue: undefined, item: undefined});\n } else {\n let item = elements[itemIndex];\n // console.log('selected item_2 --------> :', item);\n this.setState({selectedValue: itemValue, item: item});\n // this.props.payload.onListItemClick(\n // this.props.payload.template_type,\n // {\n // title: item?.title,\n // payload: item?.value,\n // type: 'postback',\n // },\n // );\n }\n }}>\n {!this.state.selectedValue && (\n <Picker.Item\n key={'placeholder'}\n label={this.props.payload?.placeholder}\n value={this.props.payload?.placeholder}\n style={{\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n color: Color.black,\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n backgroundColor: Color.white,\n }}\n />\n )}\n {elements?.map((item: any, index: any) => {\n return (\n <Picker.Item\n key={index}\n label={item?.title}\n value={item?.value}\n style={{\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n color: Color.text_color,\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n backgroundColor: Color.white,\n }}\n />\n );\n })}\n </Picker>\n </View>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n btn_main: {marginTop: 10, marginBottom: 5},\n btn_con: {\n padding: 12,\n borderRadius: 8,\n alignItems: 'center',\n },\n calendar: {\n backgroundColor: Color.white,\n width: (windowWidth / 4) * 3,\n height: normalize(55),\n borderRadius: normalize(8),\n borderWidth: StyleSheet.hairlineWidth,\n borderColor: Color.black,\n marginTop: normalize(5),\n marginBottom: normalize(5),\n justifyContent: 'center',\n\n //marginHorizontal: normalize(10),\n },\n});\n","import * as React from 'react';\nimport BaseView, {BaseViewProps, BaseViewState} from './BaseView';\nimport {\n Dimensions,\n StyleSheet,\n Text,\n TouchableOpacity,\n View,\n} from 'react-native';\nimport Color from '../theme/Color';\nimport {TEMPLATE_STYLE_VALUES} from '../theme/styles';\nconst windowWidth = Dimensions.get('window').width;\nimport Icon from 'react-native-vector-icons/MaterialIcons';\nimport {RatingBar} from '@aashu-dubey/react-native-rating-bar';\nimport {SvgIcon} from '../utils/SvgIcon';\nimport {normalize} from '../utils/helpers';\n\ninterface FeedbackProps extends BaseViewProps {}\ninterface FeedbackState extends BaseViewState {\n rating?: any;\n}\n\nconst FeedbackTypes = {\n star: 'star',\n CSAT: 'CSAT',\n NPS: 'NPS',\n THUMBS_UP_DOWN: 'ThumbsUpDown',\n};\nconst ThumbsUpDown = [\n {\n icon: 'Like',\n bg: '#E2FBE8',\n color: '#16A34A',\n },\n {\n icon: 'Unlike',\n bg: '#FCF2F2',\n color: '#DC2626',\n },\n];\n\nexport default class FeedbackTemplate extends BaseView<\n FeedbackProps,\n FeedbackState\n> {\n constructor(props: FeedbackProps) {\n super(props);\n this.state = {\n rating: 0,\n };\n }\n\n private renderFeedbackView = (viewType: any) => {\n switch (viewType) {\n case FeedbackTypes.star:\n return this.renderStarViewFeedback();\n case FeedbackTypes.CSAT:\n return this.renderEmojiViewFeedback();\n case FeedbackTypes.THUMBS_UP_DOWN:\n return this.renderThumbsUpDownFeedback();\n default:\n return this.renderPendingFeedback(viewType);\n }\n };\n\n private renderPendingFeedback = (viewType: any) => {\n return (\n <View\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}\n style={styles.container}>\n {this.props.payload?.text && (\n <Text style={styles.title}>{this.props.payload?.text}</Text>\n )}\n <View style={{marginTop: 10, marginBottom: 10}}>\n <View>\n <Text>\n {'The feedback template view type \"' + viewType + '\" is pending'}\n </Text>\n </View>\n </View>\n </View>\n );\n };\n\n private renderEmojiViewFeedback = () => {\n return (\n <View\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}\n style={styles.container}>\n <Text style={styles.title}>{this.props.payload?.text}</Text>\n <View style={{marginTop: 10, marginBottom: 10}}>\n <RatingBar\n initialRating={0}\n itemCount={5}\n itemPadding={4}\n itemBuilder={index => {\n switch (index) {\n case 0:\n return (\n <Icon\n name=\"sentiment-very-dissatisfied\"\n color=\"#F44336\"\n size={40}\n />\n );\n case 1:\n return (\n <Icon\n name=\"sentiment-dissatisfied\"\n color=\"#FF5252\"\n size={40}\n />\n );\n case 2:\n return (\n <Icon name=\"sentiment-neutral\" color=\"#FFC107\" size={40} />\n );\n case 3:\n return (\n <Icon\n name=\"sentiment-satisfied\"\n color=\"#8BC34A\"\n size={40}\n />\n );\n case 4:\n return (\n <Icon\n name=\"sentiment-very-satisfied\"\n color=\"#4CAF50\"\n size={40}\n />\n );\n default:\n return <View />;\n }\n }}\n onRatingUpdate={value => {\n // console.log('Rating --------->:', value);\n\n let starObjArray = this.props.payload?.starArrays.filter(\n (obj: any) => obj?.starId === value,\n );\n\n let startObj = starObjArray?.[0] || null;\n\n if (startObj && startObj?.value) {\n if (this.props.payload?.onListItemClick) {\n setTimeout(() => {\n this.props.payload.onListItemClick(\n this.props.payload.template_type,\n {\n title: startObj?.value + '',\n type: 'postback',\n },\n );\n }, 1000);\n }\n }\n }}\n />\n </View>\n </View>\n );\n };\n\n private renderStarViewFeedback = () => {\n return (\n <View\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}\n style={styles.container}>\n <Text style={styles.title}>{this.props.payload?.text}</Text>\n <View style={{marginTop: 10, marginBottom: 10}}>\n <RatingBar\n initialRating={0}\n direction=\"horizontal\"\n allowHalfRating={false}\n itemCount={5}\n itemPadding={4}\n ratingElement={{\n full: <Icon name=\"star-rate\" color={'#E9A93B'} size={45} />,\n half: <Icon name=\"star-half\" color=\"#54D3C2\" size={45} />,\n empty: <Icon name=\"star-rate\" color={'#a7b0be'} size={45} />,\n }}\n onRatingUpdate={value => {\n // console.log('Rating --------->:', value);\n\n let starObjArray = this.props.payload?.starArrays.filter(\n (obj: any) => obj?.starId === value,\n );\n\n let startObj = starObjArray?.[0] || null;\n\n if (startObj && startObj?.value) {\n if (this.props.payload?.onListItemClick) {\n setTimeout(() => {\n this.props.payload.onListItemClick(\n this.props.payload.template_type,\n {\n title: startObj?.value + '',\n type: 'postback',\n },\n );\n }, 1000);\n }\n }\n }}\n />\n </View>\n </View>\n );\n };\n\n private renderThumbsUpDownFeedback = () => {\n return (\n <View\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}\n style={styles.container}>\n <Text style={[styles.title1, {}]}>{this.props.payload?.text}</Text>\n <View style={styles.thumb_main}>\n {this.props.payload?.thumpsUpDownArrays.map(\n (item: any, index: number) => {\n return (\n <TouchableOpacity\n onPress={() => {\n // console.log('item ---->:', item);\n this.props.payload.onListItemClick(\n this.props.payload.template_type,\n {\n title: item?.value + '',\n type: 'postback',\n ...item,\n },\n );\n }}\n style={styles.thumb_item_main}>\n <View\n style={[\n styles.thumb_item,\n {backgroundColor: ThumbsUpDown[index % 2].bg},\n ]}>\n <SvgIcon\n name={ThumbsUpDown[index % 2].icon}\n width={normalize(22)}\n height={normalize(22)}\n color={'#697586'}\n />\n <Text\n style={[\n styles.thumb_text,\n {color: ThumbsUpDown[index % 2].color},\n ]}>\n {item?.reviewText}\n </Text>\n </View>\n </TouchableOpacity>\n );\n },\n )}\n </View>\n </View>\n );\n };\n\n render() {\n let viewType = this.props.payload?.view;\n return (\n <View pointerEvents={this.isViewDisable() ? 'none' : 'auto'}>\n {this.renderFeedbackView(viewType)}\n </View>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n thumb_text: {\n fontSize: normalize(12),\n marginLeft: 2,\n fontFamily: 'inter',\n },\n thumb_item: {\n padding: 10,\n margin: 7,\n flexDirection: 'row',\n borderRadius: 5,\n alignItems: 'center',\n justifyContent: 'center',\n flex: 1,\n },\n thumb_item_main: {\n flexShrink: 1,\n alignItems: 'center',\n justifyContent: 'center',\n },\n thumb_main: {\n marginTop: 10,\n marginBottom: 10,\n flexDirection: 'row',\n },\n title: {\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n color: Color.text_color,\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n fontWeight: '800',\n },\n title1: {\n color: Color.text_color,\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n fontWeight: '500',\n fontSize: TEMPLATE_STYLE_VALUES.SUB_TEXT_SIZE,\n },\n container: {\n maxWidth: (windowWidth / 4) * 3.2,\n marginStart: 5,\n marginBottom: 10,\n padding: 10,\n borderRadius: 6,\n borderWidth: StyleSheet.hairlineWidth,\n borderColor: Color.black,\n },\n});\n","import * as React from 'react';\nimport BaseView, {BaseViewProps, BaseViewState} from './BaseView';\nimport {\n Dimensions,\n StyleSheet,\n Text,\n TextInput,\n TouchableOpacity,\n View,\n} from 'react-native';\nimport Color from '../theme/Color';\nimport {TEMPLATE_STYLE_VALUES} from '../theme/styles';\nconst windowWidth = Dimensions.get('window').width;\n\ninterface FormProps extends BaseViewProps {}\ninterface FormState extends BaseViewState {\n inputText?: string;\n}\n\nexport default class FormTemplate extends BaseView<FormProps, FormState> {\n constructor(props: FormProps) {\n super(props);\n this.state = {\n inputText: undefined,\n };\n }\n\n private renderFormFields = (formFields: any) => {\n if (!formFields || formFields?.length === 0) {\n return <></>;\n }\n\n const Wrapper: any = this.state.inputText ? TouchableOpacity : View;\n\n return (\n <View pointerEvents={this.isViewDisable() ? 'none' : 'auto'}>\n {formFields.map((form: any) => {\n return (\n <View>\n <Text style={styles.lable}>{form?.label}</Text>\n <TextInput\n editable={!this.isViewDisable()}\n maxLength={50}\n numberOfLines={1}\n textContentType={form?.type === 'text' ? 'none' : 'password'}\n secureTextEntry={form?.type !== 'text'}\n autoCorrect={false}\n style={[styles.input, {}]}\n placeholder={form?.placeholder}\n placeholderTextColor={'#e4e5eb'}\n autoCapitalize=\"none\"\n onChangeText={text => {\n if (text?.trim().length === 0) {\n this.setState({\n inputText: undefined,\n });\n } else {\n this.setState({\n inputText: text,\n });\n }\n }}\n />\n {form?.fieldButton && (\n <Wrapper\n onPress={() => {\n if (!this.state?.inputText) {\n return;\n }\n let title = '';\n const length = this.state?.inputText?.length || 0;\n for (let i = 0; i < length; i++) {\n title = title + '*';\n }\n\n if (form?.type === 'text') {\n title = this.state?.inputText;\n }\n\n this.props.payload.onListItemClick(\n this.props.payload.template_type,\n {\n title: title,\n payload: this.state?.inputText,\n type: 'postback',\n },\n );\n }}\n style={[\n styles.button,\n {\n backgroundColor:\n this.state.inputText && !this.isViewDisable()\n ? Color.button_blue\n : Color.gray,\n },\n ]}>\n <Text style={{color: Color.white}}>\n {form?.fieldButton?.title}\n </Text>\n </Wrapper>\n )}\n </View>\n );\n })}\n </View>\n );\n };\n render() {\n return this.props?.payload?.formFields ? (\n <View\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}\n style={styles.container}>\n <Text style={styles.heading}>{this.props?.payload?.heading}</Text>\n {this.renderFormFields(this.props?.payload?.formFields)}\n </View>\n ) : (\n <></>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n button: {\n marginHorizontal: 10,\n marginBottom: 15,\n padding: 10,\n borderRadius: 5,\n justifyContent: 'center',\n alignItems: 'center',\n },\n lable: {\n paddingHorizontal: 10,\n marginTop: 10,\n color: '#404051',\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n fontWeight: 'normal',\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n letterSpacing: 0.2,\n marginBottom: 3,\n },\n heading: {\n color: '#404051',\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n fontWeight: '800',\n padding: 10,\n letterSpacing: 0.2,\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n },\n container: {\n backgroundColor: '#e4e5eb',\n marginEnd: 10,\n borderRadius: 5,\n width: (windowWidth / 4) * 3,\n },\n input: {\n height: 40,\n borderColor: Color.gray,\n borderWidth: 1,\n backgroundColor: Color.white,\n paddingLeft: 8,\n marginBottom: 15,\n borderRadius: 5,\n letterSpacing: 0.2,\n marginHorizontal: 10,\n },\n});\n","import * as React from 'react';\nimport BaseView, {BaseViewProps, BaseViewState} from './BaseView';\nimport {View, Text, TouchableOpacity, StyleSheet} from 'react-native';\nimport DateTimePickerModal from 'react-native-modal-datetime-picker';\nimport BotText from './BotText';\nimport Color from '../theme/Color';\nimport {getButtonTheme} from '../theme/themeHelper';\nimport {normalize} from '../utils/helpers';\n\ninterface ClockProps extends BaseViewProps {}\ninterface ClockState extends BaseViewState {\n isShowTime?: boolean;\n isClickCancel?: boolean;\n}\n\nexport default class ClockTemplate extends BaseView<ClockProps, ClockState> {\n constructor(props: ClockProps) {\n super(props);\n this.state = {\n isShowTime: false,\n };\n }\n\n componentDidMount(): void {\n setTimeout(() => {\n if (!this.isViewDisable()) {\n this.setState({\n isShowTime: true,\n });\n }\n }, 1000);\n }\n private handleConfirm = (date: Date) => {\n // console.log('handleConfirm date --->:', date);\n const time = this.getCurrentTime(date);\n // console.log('handleConfirm time --->:', time);\n this.setState(\n {\n isShowTime: false,\n isClickCancel: false,\n },\n () => {\n setTimeout(() => {\n if (this.props.payload.onListItemClick) {\n this.props.payload.onListItemClick(\n this.props.payload.template_type,\n {\n title: time,\n type: 'postback',\n },\n );\n }\n }, 500);\n },\n );\n };\n\n private getCurrentTime = (date: Date) => {\n return date.toLocaleTimeString('en-US', {\n hour: '2-digit',\n minute: '2-digit',\n hour12: true,\n });\n };\n\n private handleCancel = (date: Date) => {\n //console.log('handleCancel date --->:', date);\n this.setState({\n isShowTime: false,\n isClickCancel: true,\n });\n };\n\n render() {\n const btheme = getButtonTheme(this.props?.theme);\n return (\n <View pointerEvents={this.isViewDisable() ? 'none' : 'auto'}>\n {this.props.payload && (\n <View>\n {this.props.payload?.title && (\n <BotText\n text={this.props.payload?.title?.trim()}\n isFilterApply={true}\n isLastMsz={!this.isViewDisable()}\n theme={this.props.theme}\n />\n )}\n {this.state.isClickCancel && (\n <View>\n <TouchableOpacity\n disabled={this.isViewDisable()}\n style={[\n styles.btn_main,\n this.isViewDisable() && {\n backgroundColor: btheme?.INACTIVE_BG_COLOR,\n },\n ]}\n onPress={() => {\n this.setState({\n isShowTime: true,\n });\n }}>\n <Text\n style={[\n {padding: 8},\n {\n color: this.isViewDisable()\n ? btheme?.INACTIVE_TXT_COLOR\n : Color.white,\n fontFamily:\n this.props?.theme?.v3?.body?.font?.family || 'Inter',\n },\n ]}>\n {'Open clock'}\n </Text>\n </TouchableOpacity>\n </View>\n )}\n\n <DateTimePickerModal\n isVisible={this.state.isShowTime}\n mode=\"time\"\n date={new Date()}\n onConfirm={this.handleConfirm}\n onCancel={this.handleCancel}\n is24Hour={false}\n />\n </View>\n )}\n </View>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n btn_main: {\n backgroundColor: Color.button_blue,\n width: normalize(100),\n alignItems: 'center',\n borderRadius: 5,\n },\n});\n","import * as React from 'react';\nimport BaseView, {BaseViewProps, BaseViewState} from './BaseView';\nimport {\n View,\n Text,\n Dimensions,\n StyleSheet,\n ImageBackground,\n TouchableOpacity,\n} from 'react-native';\nimport {TEMPLATE_STYLE_VALUES, botStyles} from '../theme/styles';\nimport RenderImage from '../utils/RenderImage';\nimport FastImage from 'react-native-fast-image';\nimport {normalize} from '../utils/helpers';\nimport Color from '../theme/Color';\nimport {SvgIcon} from '../utils/SvgIcon';\nimport {getButtonTheme} from '../theme/themeHelper';\nimport {ButtonTheme} from '../constants/Constant';\nimport Popover from 'react-native-popover-view';\nimport ListWidgetButtonsView from '../components/ListWidgetButtonsView';\nconst windowWidth = Dimensions.get('window').width;\n\ninterface listWidgetTemplateProps extends BaseViewProps {}\ninterface listWidgetTemplateState extends BaseViewState {\n showPopover?: boolean;\n showBtnPopover?: boolean;\n}\n\nconst ValueTypes = {\n BUTTON: 'button',\n MENU: 'menu',\n TEXT: 'text',\n URL: 'url',\n IMAGE: 'image',\n};\n\nexport default class ListWidgetTemplate extends BaseView<\n listWidgetTemplateProps,\n listWidgetTemplateState\n> {\n placeholderImage: any;\n btheme: ButtonTheme;\n popoverRef: any;\n constructor(props: any) {\n super(props);\n this.state = {\n showPopover: false,\n showBtnPopover: false,\n };\n this.btheme = getButtonTheme(this.props?.theme);\n this.placeholderImage = require('../assets/placehoder/image.png');\n }\n\n private renderValueTypeComponent = (\n value: any,\n index: number,\n ): React.ReactNode => {\n if (!value || !value?.type) {\n return <></>;\n }\n\n const type = value?.type;\n\n switch (type) {\n case ValueTypes.BUTTON:\n return (\n <View>\n <TouchableOpacity style={styles.values_btn_main}>\n <Text\n style={[\n styles.values_btn_title,\n {\n fontFamily:\n this.props.theme?.v3?.body?.font?.family || 'Inter',\n },\n ]}>\n {value?.title || value?.text}\n </Text>\n </TouchableOpacity>\n </View>\n );\n case ValueTypes.MENU:\n return (\n <Popover\n key={index + ' ' + index}\n ref={ref => (this.popoverRef = ref)}\n //isVisible={false}\n onRequestClose={() => {\n this.setState({\n showPopover: false,\n });\n }}\n isVisible={this.state.showPopover}\n from={\n <TouchableOpacity\n style={styles.popover_main}\n onPress={() => {\n this.setState({\n showPopover: true,\n });\n }}>\n <SvgIcon\n name={'ThreeDots'}\n width={normalize(18)}\n height={normalize(18)}\n />\n </TouchableOpacity>\n }>\n <View style={{marginTop: 5}}>\n {value?.menu?.map((option: any, index: number) => {\n return (\n <TouchableOpacity\n key={index + ''}\n onPress={() => {\n this.setState({\n showPopover: false,\n });\n\n this.props.payload?.onListItemClick(\n this.props.payload?.template_type.trim(),\n option,\n );\n }}\n style={styles.opt_title_con}>\n <View style={styles.menu_main}>\n {option?.image?.image_src &&\n option?.image?.image_src?.length !== 0 && (\n <View style={styles.menu_image_main}>\n <RenderImage\n image={option?.image?.image_src}\n width={15}\n height={15}\n />\n </View>\n )}\n <Text\n style={[\n {\n color: '#444444',\n fontFamily:\n this.props?.theme?.v3?.body?.font?.family ||\n 'Inter',\n },\n botStyles[\n this.props?.theme?.v3?.body?.font?.size || 'medium'\n ]?.size,\n ]}>\n {option?.title}\n </Text>\n </View>\n </TouchableOpacity>\n );\n })}\n </View>\n </Popover>\n );\n\n case ValueTypes.TEXT:\n return (\n <View>\n <Text\n style={{\n color: Color.text_color,\n fontSize: normalize(13),\n fontFamily: this.props.theme?.v3?.body?.font?.family || 'Inter',\n }}>\n {value?.title || value?.text}\n </Text>\n </View>\n );\n case ValueTypes.URL:\n return (\n <View>\n <TouchableOpacity style={styles.url_main}>\n <Text\n style={[\n styles.url_text,\n {\n fontFamily:\n this.props.theme?.v3?.body?.font?.family || 'Inter',\n },\n ]}>\n {value?.title || value?.text}\n </Text>\n </TouchableOpacity>\n </View>\n );\n case ValueTypes.IMAGE:\n return (\n <View>\n <FastImage\n source={{uri: value?.image?.image_src}}\n style={styles.value_image}\n onError={this.handleImageError}\n />\n </View>\n );\n }\n return <></>;\n };\n\n handleImageError = () => {\n // this.setState({imageUri: this.placeholderImage});\n };\n private renderDetailsView = (details: any): React.ReactNode => {\n if (!details || details?.length === 0) {\n return <></>;\n }\n\n return (\n <View style={{marginTop: 5, marginBottom: 5}}>\n {details?.map((item: any, index: number) => {\n return (\n <View style={{flexDirection: 'row', marginBottom: 5}}>\n <View style={{marginRight: 5}}>\n <FastImage\n source={{uri: item?.image?.image_src}}\n style={styles.value_image}\n onError={this.handleImageError}\n />\n </View>\n <Text\n numberOfLines={1}\n style={{\n color: this.btheme?.ACTIVE_TXT_COLOR,\n fontFamily:\n this.props.theme?.v3?.body?.font?.family || 'Inter',\n fontSize: normalize(13),\n }}>\n {item?.description}\n </Text>\n </View>\n );\n })}\n </View>\n );\n };\n\n private renderElements = (elements: any): React.ReactNode => {\n if (!elements || elements?.length === 0) {\n return <></>;\n }\n\n return (\n <View>\n {elements?.map((item: any, index: number) => {\n return (\n <View>\n <View style={styles.ele_main} />\n <View style={{flexDirection: 'row'}}>\n {item?.image?.image_src && (\n <View style={{marginRight: 10}}>\n <ImageBackground\n style={styles.image_view}\n source={this.placeholderImage}>\n <FastImage\n source={{uri: item?.image?.image_src}}\n style={styles.image}\n onError={this.handleImageError}\n />\n </ImageBackground>\n </View>\n )}\n <View style={styles.title_main}>\n <Text\n style={[\n {\n color: this.btheme?.ACTIVE_TXT_COLOR,\n fontFamily:\n this.props.theme?.v3?.body?.font?.family || 'Inter',\n fontSize: normalize(16),\n },\n ]}>\n {item?.title}\n </Text>\n <Text\n style={[\n {\n color: this.btheme?.ACTIVE_TXT_COLOR,\n fontFamily:\n this.props.theme?.v3?.body?.font?.family || 'Inter',\n fontSize: normalize(14),\n },\n ]}>\n {item?.subtitle}\n </Text>\n </View>\n {this.renderValueTypeComponent(item?.value, index)}\n </View>\n {this.renderDetailsView(item?.details)}\n <ListWidgetButtonsView\n buttonsLayout={item?.buttonsLayout}\n buttons={item?.buttons}\n theme={this.props.theme}\n payload={this.props.payload}\n />\n </View>\n );\n })}\n </View>\n );\n };\n\n render() {\n return (\n <View\n pointerEvents={this.isViewDisable() ? 'none' : 'auto'}\n style={styles.mainContainer}>\n <View style={{marginBottom: 5}}>\n <Text\n style={[\n styles.main_title,\n {\n color: this.btheme?.ACTIVE_TXT_COLOR,\n fontFamily: this.props.theme?.v3?.body?.font?.family || 'Inter',\n },\n ]}>\n {this.props.payload?.title}\n </Text>\n <Text\n style={[\n {\n color: this.btheme?.ACTIVE_TXT_COLOR,\n fontFamily: this.props.theme?.v3?.body?.font?.family || 'Inter',\n fontSize: normalize(14),\n },\n ]}>\n {this.props.payload?.description}\n </Text>\n </View>\n {this.renderElements(this.props.payload?.elements)}\n </View>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n main_title: {\n fontSize: normalize(17),\n fontWeight: 'bold',\n letterSpacing: 0.1,\n },\n title_main: {marginRight: 10, flex: 1, marginBottom: 10},\n ele_main: {\n backgroundColor: '#A7A9BE',\n width: '100%',\n height: 1,\n marginTop: 5,\n marginBottom: 10,\n },\n url_text: {\n color: '#4741fa',\n fontSize: normalize(11),\n textDecorationLine: 'underline',\n },\n url_main: {\n paddingBottom: 15,\n paddingLeft: 10,\n borderRadius: 5,\n },\n menu_image_main: {\n marginRight: 5,\n justifyContent: 'center',\n alignItems: 'center',\n },\n menu_main: {\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n },\n values_btn_title: {\n color: '#4741fa',\n fontSize: normalize(13),\n },\n values_btn_main: {\n padding: 5,\n borderRadius: 5,\n backgroundColor: 'rgba(71, 65, 250, 0.13)',\n },\n opt_title_con: {padding: 10, marginBottom: 10},\n\n popover_main: {\n paddingLeft: 15,\n paddingTop: 10,\n //paddingBottom: 10,\n marginRight: -5,\n //backgroundColor: 'yellow',\n },\n image: {\n height: normalize(50),\n width: normalize(50),\n resizeMode: 'stretch',\n margin: 0,\n },\n value_image: {\n height: normalize(22),\n width: normalize(22),\n resizeMode: 'stretch',\n borderRadius: 3,\n margin: 0,\n },\n btn_image: {\n height: normalize(15),\n width: normalize(15),\n resizeMode: 'stretch',\n borderRadius: 3,\n margin: 0,\n },\n image_view: {\n // justifyContent: 'center',\n // alignItems: 'center',\n // marginTop: 10,\n //alignSelf: 'center',\n height: normalize(55),\n width: normalize(55),\n },\n mainContainer: {\n flexDirection: 'column',\n backgroundColor: 'transparent',\n width: (windowWidth / 4) * 3.2,\n borderRadius: 10,\n borderWidth: StyleSheet.hairlineWidth,\n padding: 10,\n borderColor: TEMPLATE_STYLE_VALUES.BORDER_COLOR,\n },\n});\n","import React from 'react';\nimport {StyleSheet, Text, TouchableOpacity, View} from 'react-native';\nimport Popover from 'react-native-popover-view';\nimport RenderImage from '../utils/RenderImage';\nimport {normalize} from '../utils/helpers';\nimport {IThemeType} from '../theme/IThemeType';\n\ninterface ListButtonsProps {\n buttonsLayout: any;\n buttons: any;\n isFromMore?: boolean;\n theme?: IThemeType;\n payload?: any;\n}\ninterface ListButtonsState {\n showBtnPopover?: boolean;\n}\n\nexport default class ListWidgetButtonsView extends React.Component<\n ListButtonsProps,\n ListButtonsState\n> {\n constructor(props: ListButtonsProps) {\n super(props);\n this.state = {\n showBtnPopover: false,\n };\n }\n\n private renderButtonsView = (buttonsLayout: any, buttons: any) => {\n if (!buttons || buttons?.length === 0) {\n return <></>;\n }\n const limitCount = buttonsLayout?.displayLimit?.count;\n\n let dButtons = buttons.slice(0, limitCount || buttons?.length);\n\n const bStyle = buttonsLayout?.style || 'float';\n\n if (buttons?.length > limitCount) {\n dButtons = [\n ...dButtons,\n {\n isMoreButton: true,\n },\n ];\n }\n\n return (\n <View\n style={[\n {marginBottom: 5},\n bStyle !== 'fitToWidth' && styles.btn_main2,\n ]}>\n {dButtons.map((btn: any, index: number) => {\n return (\n <View\n style={[bStyle !== 'fitToWidth' && {marginEnd: 10}]}\n key={index + '_' + index}>\n {btn?.isMoreButton\n ? this.renderMoreButton(buttons, index)\n : this.renderButtonView(btn)}\n </View>\n );\n })}\n </View>\n );\n };\n\n private renderMoreButton = (buttons: any, index: number) => {\n return (\n <Popover\n key={index + ' ' + index}\n onRequestClose={() => {\n this.setState({\n showBtnPopover: false,\n });\n }}\n isVisible={this.state.showBtnPopover}\n from={\n <TouchableOpacity\n style={[styles.popover_main]}\n onPress={() => {\n this.setState({\n showBtnPopover: true,\n });\n }}>\n <Text\n style={[\n styles.more_text,\n {\n fontFamily:\n this.props.theme?.v3?.body?.font?.family || 'Inter',\n },\n ]}>\n {'...More'}\n </Text>\n </TouchableOpacity>\n }>\n <View style={styles.btn_main}>\n {buttons.map((btn: any, index: number) => {\n return (\n <View style={{}} key={index + '_' + index}>\n {this.renderButtonView(btn, () => {\n this.setState({\n showBtnPopover: false,\n });\n })}\n </View>\n );\n })}\n </View>\n </Popover>\n );\n };\n\n private renderButtonView = (btn: any, onBtnPress?: any) => {\n if (!btn) {\n return <></>;\n }\n return (\n <TouchableOpacity\n onPress={() => {\n onBtnPress?.();\n if (!btn?.isMoreButton) {\n this.props.payload?.onListItemClick(\n this.props.payload?.template_type.trim(),\n btn,\n );\n }\n }}\n style={styles.btn_sub}>\n <View style={styles.btn_sub2}>\n <View style={{marginRight: 5}}>\n <RenderImage\n image={btn?.image?.image_src} //'https://picsum.photos/200/300'} //btn?.image?.image_src}\n width={15}\n height={15}\n />\n </View>\n <Text\n style={[\n styles.btn_title,\n {\n fontFamily: this.props.theme?.v3?.body?.font?.family || 'Inter',\n },\n ]}>\n {btn?.title || btn?.text}\n </Text>\n </View>\n </TouchableOpacity>\n );\n };\n\n render() {\n return this.renderButtonsView(this.props.buttonsLayout, this.props.buttons);\n }\n}\n\nconst styles = StyleSheet.create({\n btn_title: {\n color: '#4741fa',\n fontSize: normalize(13),\n },\n btn_sub2: {flexDirection: 'row', alignSelf: 'center'},\n btn_sub: {\n padding: 10,\n borderRadius: 5,\n backgroundColor: 'rgba(71, 65, 250, 0.13)',\n\n // flexShrink: 1,\n\n marginBottom: 10,\n //marginEnd: 10,\n },\n btn_main: {\n marginTop: 5,\n padding: 10,\n minWidth: normalize(150),\n // justifyContent: 'center',\n //alignItems: 'center',\n },\n more_text: {\n color: '#4741fa',\n //flexShrink: 1,\n\n fontSize: normalize(13),\n },\n btn_main2: {\n flexDirection: 'row',\n flexShrink: 1,\n flexWrap: 'wrap',\n },\n opt_title_con: {padding: 10, marginBottom: 10},\n\n popover_main: {\n paddingLeft: 15,\n paddingTop: 10,\n //paddingBottom: 10,\n marginRight: -5,\n //backgroundColor: 'yellow',\n padding: 10,\n borderRadius: 5,\n backgroundColor: 'rgba(71, 65, 250, 0.13)',\n minWidth: normalize(60),\n marginBottom: 10,\n alignItems: 'center',\n },\n image: {\n height: normalize(50),\n width: normalize(50),\n resizeMode: 'stretch',\n margin: 0,\n },\n value_image: {\n height: normalize(22),\n width: normalize(22),\n resizeMode: 'stretch',\n borderRadius: 3,\n margin: 0,\n },\n btn_image: {\n height: normalize(15),\n width: normalize(15),\n resizeMode: 'stretch',\n borderRadius: 3,\n margin: 0,\n },\n image_view: {\n // justifyContent: 'center',\n // alignItems: 'center',\n // marginTop: 10,\n //alignSelf: 'center',\n height: normalize(55),\n width: normalize(55),\n },\n});\n","import React from 'react';\nimport BaseView, {BaseViewProps, BaseViewState} from './BaseView';\nimport {Dimensions, StyleSheet, View} from 'react-native';\nconst windowWidth = Dimensions.get('window').width;\n\nimport AudioPlayer from '../components/AudioPlayer';\nimport BotText from './BotText';\n\ninterface AudioProps extends BaseViewProps {}\n\ninterface AudioState extends BaseViewState {\n isPlaying?: boolean;\n duration?: any;\n currentTime?: any;\n}\n\nexport default class AudioTemplate extends BaseView<AudioProps, AudioState> {\n intervalId: number | undefined;\n constructor(props: AudioProps) {\n super(props);\n this.state = {isPlaying: false};\n }\n\n render() {\n const url = this.props.payload?.audioUrl;\n console.log('this.props.payload --->:', this.props.payload);\n console.log('this.props.payload?.audioUrl url--->:', url);\n\n const isDisable = this.isViewDisable();\n return (\n <View pointerEvents={isDisable ? 'none' : 'auto'}>\n {this.props.payload?.text && (\n <View style={{marginBottom: 10}}>\n <BotText\n text={this.props.payload?.text?.trim()}\n isFilterApply={true}\n isLastMsz={!this.isViewDisable()}\n theme={this.props.theme}\n />\n </View>\n )}\n {url && (\n <View style={styles.container}>\n <AudioPlayer\n url={url}\n onMenuClick={() => {\n console.log('=================>>> OnMenu clicked ');\n }}\n isStopPlayer={isDisable}\n />\n </View>\n )}\n </View>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n container: {\n backgroundColor: '#efeffc',\n borderRadius: 5,\n flexDirection: 'row',\n width: (windowWidth / 4) * 3.15,\n },\n});\n","// AudioPlayer.tsx\nimport React, {Component} from 'react';\nimport {View, Text, TouchableOpacity, StyleSheet} from 'react-native';\nimport {Slider} from '@react-native-assets/slider';\nimport TrackPlayer, {\n Event,\n PlaybackState,\n State,\n} from 'react-native-track-player';\nimport {SvgIcon} from '../utils/SvgIcon';\nimport {normalize} from '../utils/helpers';\nimport Color from '../theme/Color';\nimport uuid from 'react-native-uuid';\n\ninterface AudioPlayerProps {\n url: string;\n title?: string;\n artist?: string;\n artwork?: string;\n onMenuClick?: any;\n isStopPlayer?: boolean;\n}\n\ninterface AudioPlayerState {\n isPlaying: boolean;\n\n position: number;\n duration: number;\n isMuted: boolean;\n}\n\nclass AudioPlayer extends Component<AudioPlayerProps, AudioPlayerState> {\n private positionUpdateInterval: number | undefined;\n eventListener: any;\n isFristTime: boolean;\n\n constructor(props: AudioPlayerProps) {\n super(props);\n this.isFristTime = true;\n this.state = {\n isPlaying: false,\n position: 0,\n duration: 0,\n isMuted: false,\n };\n }\n\n componentDidUpdate(\n prevProps: Readonly<AudioPlayerProps>,\n prevState: Readonly<AudioPlayerState>,\n snapshot?: any,\n ): void {\n if (prevProps.isStopPlayer !== this.props.isStopPlayer) {\n TrackPlayer.getActiveTrackIndex().then(\n async (index: number | undefined) => {\n if (index !== undefined) {\n try {\n await TrackPlayer.reset();\n } catch (error) {\n console.log('TrackPlayer.reset error --->:', error);\n }\n\n try {\n await TrackPlayer.remove(index);\n } catch (error) {\n console.log('TrackPlayer.remove error --->:', error);\n }\n }\n },\n );\n }\n }\n\n componentDidMount() {\n setTimeout(() => {\n this.initApp()\n .then(() => {\n this.eventListener = TrackPlayer.addEventListener(\n Event.PlaybackState,\n (event: PlaybackState) => {\n this.onPlaybackStateChanged(event?.state);\n },\n );\n\n this.positionUpdateInterval = setInterval(this.updatePosition, 500);\n })\n .catch(error => {\n console.error('initApp failed:', error);\n });\n }, 1000);\n }\n\n private initApp = async () => {\n try {\n await TrackPlayer.setupPlayer();\n } catch (error) {\n console.log('setupPlayer error ----->:', error);\n }\n try {\n await TrackPlayer.removeUpcomingTracks();\n } catch (error) {\n console.log('removeUpcomingTracks error ----->:', error);\n }\n try {\n await TrackPlayer.add({\n // key: uuid.v4() + '',\n //id: uuid.v4() + '',\n url: this.props.url, //'https://file-examples.com/storage/fe0e5e78596682d89b36118/2017/11/file_example_MP3_700KB.mp3',\n title: this.props.title || 'Audio title',\n artist: this.props.artist || 'artist',\n artwork: this.props.artwork || 'https://picsum.photos/200',\n });\n } catch (error) {\n console.log('this.props.url, ----->:', this.props.url);\n console.log('TrackPlayer.add error ----->:', error);\n }\n };\n\n componentWillUnmount() {\n this.eventListener?.remove?.();\n if (this.positionUpdateInterval) {\n clearInterval(this.positionUpdateInterval);\n }\n }\n\n private onPlaybackStateChanged = (state: State) => {\n switch (state) {\n case State.Playing:\n this.setState({isPlaying: true});\n break;\n\n case State.Paused:\n this.setState({isPlaying: false});\n break;\n\n case State.Stopped:\n case State.Ended:\n if (this.positionUpdateInterval) {\n clearInterval(this.positionUpdateInterval);\n }\n\n this.setState(\n {\n isPlaying: false,\n },\n () => {\n setTimeout(async () => {\n this.setState({\n position: 0,\n });\n await TrackPlayer.pause();\n }, 2000);\n },\n );\n\n break;\n\n default:\n this.setState({isPlaying: false});\n }\n };\n\n private updatePosition = async () => {\n if (this.isFristTime || this.state.isPlaying) {\n TrackPlayer.getProgress().then(progress => {\n // console.log('progress ------->:', progress);\n this.setState(\n {\n position: this.isFristTime ? 0 : progress.position,\n duration: progress.duration,\n },\n () => {\n this.isFristTime = false;\n },\n );\n });\n }\n };\n\n private togglePlayback = async () => {\n const {isPlaying} = this.state;\n if (isPlaying) {\n await TrackPlayer.pause();\n } else {\n if (this.positionUpdateInterval) {\n clearInterval(this.positionUpdateInterval);\n }\n if (this.state.position === 0) {\n await TrackPlayer?.seekTo?.(0);\n }\n await TrackPlayer.play();\n this.positionUpdateInterval = setInterval(this.updatePosition, 1000);\n }\n };\n\n render() {\n const {position, duration} = this.state;\n return (\n <View\n style={{\n flex: 1,\n padding: 8,\n }}>\n <View style={styles.container}>\n <TouchableOpacity onPress={this.togglePlayback}>\n <SvgIcon\n name={this.state?.isPlaying ? 'Pause' : 'Play'}\n width={normalize(22)}\n height={normalize(22)}\n />\n </TouchableOpacity>\n <Text style={styles.timeText}>\n {this.formatTime(position)}/{this.formatTime(duration)}\n </Text>\n\n <Slider\n style={styles.slider}\n value={position || 0}\n minimumValue={0}\n slideOnTap={false}\n maximumValue={duration || 100}\n minimumTrackTintColor={Color.green}\n maximumTrackTintColor=\"#A7A9BE\"\n thumbTintColor={'#000000'}\n onValueChange={val => {}}\n />\n {/* <TouchableOpacity\n onPress={() => {\n if (this.props?.onMenuClick) {\n this.props?.onMenuClick?.();\n }\n }}>\n <SvgIcon\n name={'ThreeDots'}\n width={normalize(18)}\n height={normalize(18)}\n />\n </TouchableOpacity> */}\n </View>\n </View>\n );\n }\n\n private formatTime(seconds: number) {\n const minutes = Math.floor(seconds / 60);\n const secs = Math.floor(seconds % 60);\n return `${minutes}:${secs < 10 ? '0' : ''}${secs}`;\n }\n}\n\nconst styles = StyleSheet.create({\n container: {\n flexDirection: 'row',\n alignItems: 'center',\n backgroundColor: Color.white,\n padding: 5,\n paddingStart: 8,\n paddingEnd: 8,\n borderRadius: 15,\n },\n timeText: {\n marginVertical: 5,\n marginHorizontal: 5,\n fontSize: normalize(12),\n color: '#000',\n },\n slider: {\n flex: 1,\n height: 40,\n marginStart: 5,\n marginEnd: 10,\n },\n});\n\nexport default AudioPlayer;\n","import * as React from 'react';\nimport {createRef} from 'react';\nimport BaseView, {BaseViewProps, BaseViewState} from './BaseView';\nimport {\n Dimensions,\n Modal,\n Platform,\n StatusBar,\n StyleSheet,\n View,\n} from 'react-native';\n\nimport FullScreenVideo, {\n MyFunctionComponentRef,\n} from '../components/FullScreenVideo';\nimport Orientation from 'react-native-orientation-locker';\nimport {normalize} from '../utils/helpers';\nimport MoVideoPlayer from '../components/MoVideoPlayer';\nimport BotText from './BotText';\n\nconst WIDTH = Dimensions.get('window').width;\n\ninterface VideoProps extends BaseViewProps {}\n\ninterface VideoState extends BaseViewState {\n modalVisible?: boolean;\n myVideoRef: any;\n duration: any;\n url?: string | undefined;\n}\n\nexport default class VideoTemplate extends BaseView<VideoProps, VideoState> {\n private videoRef = createRef<MyFunctionComponentRef>();\n dur?: any;\n constructor(props: VideoProps) {\n super(props);\n this.state = {\n modalVisible: false,\n myVideoRef: null,\n duration: 0,\n url: this.props?.payload?.videoUrl,\n };\n }\n\n componentDidUpdate(\n _prevProps: Readonly<VideoProps>,\n prevState: Readonly<VideoState>,\n _snapshot?: any,\n ): void {\n if (prevState.modalVisible !== this.state.modalVisible) {\n Orientation.lockToPortrait();\n StatusBar.setHidden(false);\n }\n\n if (this.isViewDisable() && this.state.url) {\n this.setState({\n url: undefined,\n });\n this.videoRef?.current?.setVideoState?.(true);\n }\n }\n private renderPlayerView = () => {\n return (\n <View pointerEvents={this.isViewDisable() ? 'none' : 'auto'} style={{}}>\n <MoVideoPlayer\n ref={(ref: any) => {\n if (!this.state.myVideoRef) {\n this.videoRef = ref;\n this.setState({\n myVideoRef: ref,\n });\n }\n }}\n style={styles.player}\n source={{\n uri: this.state.url,\n }}\n //poster=\"https://www.carage.net/media/halfhd/carage_fahrzeuge_square_8.jpg\"\n // title=\"React Native MO-VIDEO-PLAYER\"\n autoPlay={false}\n playInBackground={false}\n // source={{uri: this.state.url}}\n isFromNormalScreen={true}\n getCurrentVideoDuration={(dur: any) => {\n this.dur = dur;\n }}\n isViewDisable={this.isViewDisable()}\n showSettingButton={false}\n showSeeking10SecondsButton={true}\n showCoverButton={true}\n showFullScreenButton={true}\n onFullScreen={() => {\n this.state.myVideoRef?.setVideoState?.(true);\n setTimeout(() => {\n // this.state.myVideoRef?.setVideoState?.(true);\n this.setState({\n modalVisible: true,\n duration: this.dur,\n });\n }, 100);\n }}\n />\n\n <Modal\n visible={this.state.modalVisible}\n animationType=\"slide\"\n onRequestClose={() => {\n this.setState({\n modalVisible: false,\n });\n }}>\n <FullScreenVideo\n onClose={() => {\n this.setState({\n modalVisible: false,\n });\n }}\n getVideoRef={this.state.myVideoRef}\n duration={this.state.duration}\n />\n </Modal>\n </View>\n );\n };\n\n render() {\n return (\n <View>\n {this.props.payload && (\n <View>\n {this.props.payload?.text && (\n <BotText\n text={this.props.payload?.text?.trim()}\n isFilterApply={true}\n isLastMsz={!this.isViewDisable()}\n theme={this.props.theme}\n />\n )}\n {this.renderPlayerView()}\n </View>\n )}\n </View>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n player: {\n width: (WIDTH / 4) * 3.2,\n height: normalize(200),\n marginTop: Platform.OS == 'ios' ? 30 : 0,\n backgroundColor: 'green',\n },\n});\n","import React, {Component, createRef} from 'react';\nimport {\n View,\n StyleSheet,\n GestureResponderEvent,\n BackHandler,\n StatusBar,\n} from 'react-native';\nimport VideoPlayer from './MoVideoPlayer';\n\ninterface FullScreenVideoProps {\n onClose: (event: GestureResponderEvent | undefined) => void;\n getVideoRef?: any;\n duration?: any;\n}\n\nexport interface MyFunctionComponentRef {\n onCloseScreen: () => void;\n onOpenScreen: (val: any) => void;\n onGetVideoDuration: () => any;\n onSetVideoDuration: (val: any) => void;\n getSource: () => string;\n setVideoState: (state: any) => void;\n}\n\nclass FullScreenVideo extends Component<FullScreenVideoProps> {\n private myRef = createRef<MyFunctionComponentRef>();\n\n private backAction = () => {\n if (this.myRef?.current?.onCloseScreen) {\n this.myRef?.current?.onCloseScreen?.();\n }\n this.props.onClose(undefined);\n\n return false;\n };\n backHandler: any;\n\n componentDidMount(): void {\n this.props?.getVideoRef?.setVideoState?.(true);\n setTimeout(() => {\n StatusBar.setHidden(false);\n this.props?.getVideoRef?.setVideoState?.(true);\n if (this.myRef?.current?.onOpenScreen) {\n //this.myRef?.current?.setVideoState?.(false);\n this.myRef?.current?.onOpenScreen?.(this.props.duration);\n }\n }, 500);\n\n this.backHandler = BackHandler.addEventListener(\n 'hardwareBackPress',\n this.backAction,\n );\n }\n\n componentWillUnmount() {\n this.backHandler?.remove?.();\n }\n render() {\n return (\n <View style={styles.container}>\n <StatusBar hidden={true} />\n <VideoPlayer\n ref={this.myRef}\n source={this.props?.getVideoRef?.getSource()}\n disableBack={true}\n autoPlay={true}\n fullScreen={true}\n // showFullScreenButton={false}\n onBackPress={() => {\n if (this.myRef?.current?.onCloseScreen) {\n this.myRef?.current?.onCloseScreen?.();\n }\n this.props.onClose(undefined);\n }}\n duration={this.props.duration}\n />\n </View>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n backgroundColor: 'black',\n // margin: 2,\n justifyContent: 'center',\n alignItems: 'center',\n },\n closeButton: {\n position: 'absolute',\n top: 30,\n right: 20,\n backgroundColor: 'rgba(0, 0, 0, 0.7)',\n padding: 10,\n borderRadius: 5,\n },\n closeButtonText: {\n color: 'white',\n fontSize: 16,\n },\n});\n\nexport default FullScreenVideo;\n","import React, {\n forwardRef,\n useImperativeHandle,\n useState,\n useRef,\n useEffect,\n} from 'react';\nimport {\n View,\n Text,\n TouchableOpacity,\n ActivityIndicator,\n TouchableWithoutFeedback,\n AppState,\n Dimensions,\n StatusBar,\n BackHandler,\n Image,\n FlatList,\n ImageBackground,\n} from 'react-native';\nimport Video from 'react-native-video';\nimport {Slider} from '@react-native-assets/slider';\nimport Orientation from 'react-native-orientation-locker';\nimport {SvgIcon} from '../utils/SvgIcon';\nimport {normalize} from '../utils/helpers';\nimport Color from '../theme/Color';\nimport uuid from 'react-native-uuid';\n\nconst MoVideoPlayer = forwardRef((props, ref) => {\n useImperativeHandle(\n ref,\n () => ({\n onCloseScreen() {\n StatusBar.setHidden(false);\n Orientation.lockToPortrait();\n },\n onOpenScreen() {\n // StatusBar.setHidden(true);\n // Orientation.lockToLandscapeLeft();\n // setDimension(window);\n // setIsVideoFullScreen(window.width > window.height ? true : false);\n\n setAutoHideOptions(true, false, timeOutHandler);\n setIsPaused(false);\n setTimeout(() => {\n setCurrentVideoDuration(duration);\n videoRef?.current?.seek(duration);\n }, 2000);\n },\n onSetVideoResume() {\n videoRef.current.seek(currentVideoDuration - 10);\n },\n onGetVideoDuration() {\n return currentVideoDuration;\n },\n\n getSource() {\n return props?.source;\n },\n setVideoState(isPaused1) {\n setIsPaused(isPaused1);\n },\n }),\n [isPaused, duration, videoRef],\n );\n\n const {\n style = {},\n source,\n poster,\n title = '',\n playList = [],\n autoPlay = false,\n playInBackground = false,\n showSeeking10SecondsButton = true,\n showHeader = true,\n showCoverButton = true,\n showFullScreenButton = true,\n showSettingButton = false,\n showMuteButton = true,\n duration = 0,\n isViewDisable,\n } = props;\n\n const videoRef = useRef(null);\n const [isPaused, setIsPaused] = useState(!autoPlay);\n const [isMuted, setIsMuted] = useState(false);\n const [isVideoSeeked, setIsVideoSeeked] = useState(false);\n const [isVideoFocused, setIsVideoFocused] = useState(true);\n const [isShowVideoCurrentDuration, setIsShowVideoCurrentDuration] =\n useState(false);\n const [isShowSettingsBottomSheet, setIsShowSettingsBottomSheet] =\n useState(false);\n const [isShowVideoRateSettings, setIsShowVideoRateSettings] = useState(false);\n const [isShowVideoQualitiesSettings, setIsShowVideoQualitiesSettings] =\n useState(false);\n const [isShowVideoSoundSettings, setIsShowVideoSoundSettings] =\n useState(false);\n const [isShowVideoPlaylist, setIsShowVideoPlaylist] = useState(false);\n const [isVideoFullScreen, setIsVideoFullScreen] = useState(false);\n const [isErrorInLoadVideo, setIsVErrorInLoadVideo] = useState(false);\n const [isVideoEnd, setIsVideoEnd] = useState(false);\n const [isVideoCovered, setIsVideoCovered] = useState(false);\n const [videoDuration, setVideoDuration] = useState(0);\n const [videoQuality, setVideoQuality] = useState(480);\n const [videoSound, setVideoSound] = useState(1.0);\n const [currentVideoDuration, setCurrentVideoDuration] = useState(duration);\n const [videoRate, setVideoRate] = useState(1);\n const [playlistSelectedVideo, setPlaylistSelectedVideo] = useState(null);\n const [dimension, setDimension] = useState(Dimensions.get('window'));\n const [timeOutHandler, setTimeOutHandler] = useState(0);\n\n const portraitStyle = {\n alignSelf: 'center',\n height: 200,\n width: 330,\n ...style,\n };\n const landScapeStyle = {\n alignSelf: 'center',\n justifyContent: 'center',\n height: dimension.height - 50,\n width: dimension.width - 50,\n };\n const videoStyle = isVideoFullScreen ? landScapeStyle : portraitStyle;\n\n useEffect(() => {\n props?.getCurrentVideoDuration?.(currentVideoDuration);\n }, [currentVideoDuration]);\n\n const setAutoHideOptions = (\n isFocus,\n isPaused,\n timeOutHandler,\n isViewDisable,\n ) => {\n if (isViewDisable) {\n clearTimeout(timeOutHandler);\n setIsVideoFocused(true);\n return;\n }\n setIsVideoFocused(isFocus);\n\n if (isFocus) {\n clearTimeout(timeOutHandler);\n let handler = setTimeout(() => {\n if (!isPaused) {\n setIsVideoFocused(false);\n }\n }, 5000);\n setTimeOutHandler(handler);\n }\n };\n useEffect(() => {\n if (isViewDisable) {\n setIsVideoFocused(true);\n } else if (isPaused && !isVideoFocused) {\n setIsVideoFocused(true);\n }\n }, [isPaused, isVideoFocused, isViewDisable]);\n\n useEffect(() => {\n if (isViewDisable) {\n setIsVideoFocused(true);\n }\n }, [isViewDisable]);\n\n useEffect(() => {\n const dimensionSubscriber = Dimensions.addEventListener(\n 'change',\n ({window, screen}) => {\n setDimension(window);\n setIsVideoFullScreen(window.width > window.height ? true : false);\n },\n );\n\n const backHandlerSubscriber = BackHandler.addEventListener(\n 'hardwareBackPress',\n () => {\n // if(isVideoFullScreen){\n Orientation.lockToPortrait();\n StatusBar.setHidden(false);\n return false;\n // }else{\n // return false\n // }\n },\n );\n\n return () => {\n dimensionSubscriber.remove();\n backHandlerSubscriber.remove();\n };\n }, [isVideoFullScreen]);\n\n useEffect(() => {\n const appStateSubscriber = AppState.addEventListener('change', state => {\n console.log('APP STATE CHANGE IS ', state);\n if (playInBackground && isPaused == false) {\n setIsPaused(false);\n } else {\n setIsPaused(true);\n props?.onBackPress?.();\n }\n });\n\n return () => {\n appStateSubscriber.remove();\n };\n }, [isPaused]);\n\n const videoHeaders = () => {\n let isFromNormal = props?.isFromNormalScreen || false;\n\n return (\n <View\n style={{\n paddingHorizontal: 10,\n width: videoStyle.width,\n height: 35,\n position: 'absolute',\n top: 0,\n left: 0,\n backgroundColor: 'rgba(0 ,0, 0,0.5)',\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'space-between',\n zIndex: 100000,\n }}>\n <Text\n numberOfLines={1}\n style={{color: 'white', fontSize: 12, width: videoStyle.width - 170}}>\n {/* {playlistSelectedVideo\n ? playlistSelectedVideo.title\n ? playlistSelectedVideo.title\n : ''\n : title} */}\n </Text>\n <View\n style={{\n flexDirection: 'row-reverse',\n alignItems: 'center',\n justifyContent: 'space-between',\n }}>\n {showFullScreenButton && (\n <TouchableOpacity\n onPress={() => {\n if (props?.onFullScreen) {\n props.onFullScreen?.();\n } else {\n if (isVideoFullScreen) {\n StatusBar.setHidden(false);\n Orientation.lockToPortrait();\n } else {\n StatusBar.setHidden(true);\n Orientation.lockToLandscapeLeft();\n }\n }\n }}\n style={{\n marginRight: 0,\n // backgroundColor: 'red',\n padding: 5,\n //paddingRight: 0,\n }}>\n <SvgIcon\n name={\n isVideoFullScreen\n ? 'ExitFullScreen'\n : isFromNormal\n ? 'Expand'\n : 'FullScreen'\n }\n color={Color.white}\n width={normalize(isFromNormal ? 18 : 18)}\n height={normalize(isFromNormal ? 18 : 18)}\n />\n </TouchableOpacity>\n )}\n\n {playList.length > 0 && (\n <TouchableOpacity\n style={{marginRight: 10, marginTop: 5}}\n onPress={() => {\n setIsShowVideoPlaylist(true);\n setAutoHideOptions(\n false,\n isPaused,\n timeOutHandler,\n isViewDisable,\n );\n }}>\n <SvgIcon\n name={'Playlist'}\n color={Color.white}\n width={normalize(18)}\n height={normalize(18)}\n />\n </TouchableOpacity>\n )}\n {/* {showSettingButton && (\n <TouchableOpacity\n style={{marginRight: 10}}\n onPress={() => {\n setIsShowSettingsBottomSheet(true);\n setIsVideoFocused(false);\n }}>\n <Image\n source={require('../assets/images/settings.png')}\n style={{width: 18, height: 18}}\n />\n </TouchableOpacity>\n )} */}\n\n {showMuteButton && (\n <TouchableOpacity\n onPress={() => {\n setIsMuted(!isMuted);\n if (isMuted && videoSound == 0) {\n setVideoSound(1.0);\n }\n }}\n style={{marginRight: 20, padding: 5}}>\n <SvgIcon\n name={isMuted ? 'MuteSound' : 'FullSound'}\n color={Color.white}\n width={normalize(20)}\n height={normalize(20)}\n />\n </TouchableOpacity>\n )}\n </View>\n </View>\n );\n };\n\n const videoFooter = () => {\n // console.log('videoFooter currentVideoDuration -->:', currentVideoDuration);\n return (\n <View\n style={{\n paddingHorizontal: 10,\n width: videoStyle.width,\n height: 35,\n position: 'absolute',\n bottom: 0,\n left: 0,\n backgroundColor: 'rgba(0 ,0, 0,0.5)',\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'space-between',\n zIndex: 100000,\n }}>\n <TouchableOpacity\n onPress={() => {\n let value = !isPaused;\n if (isVideoEnd) {\n videoRef.current.seek(0);\n setIsVideoEnd(false);\n setCurrentVideoDuration(0);\n value = false;\n setIsPaused(false);\n } else {\n setIsPaused(value);\n }\n\n setAutoHideOptions(true, value, timeOutHandler, isViewDisable);\n }}\n style={{\n marginRight: 0,\n paddingTop: 8,\n paddingBottom: 8,\n paddingRight: 15,\n paddingLeft: 8,\n //paddingRight: 0,\n }}>\n <SvgIcon\n name={isPaused ? 'PPlay' : 'PPause'}\n color={Color.white}\n width={normalize(17)}\n height={normalize(17)}\n />\n </TouchableOpacity>\n\n <Slider\n style={{flex: 1, marginEnd: 5}}\n //disabled={isRecordBeforePlay}\n maximumValue={videoDuration}\n minimumValue={0}\n minimumTrackTintColor=\"white\"\n maximumTrackTintColor=\"gray\"\n thumbTintColor=\"white\"\n thumbStyle={{height: 12, width: 12}}\n trackStyle={{height: 1.8, width: videoStyle.width - 140}}\n useNativeDriver\n value={currentVideoDuration}\n onSlidingComplete={sliderData => {\n //console.log('sliderData --------->:', sliderData);\n setCurrentVideoDuration(sliderData);\n videoRef.current.seek(sliderData);\n }}\n />\n\n <Text style={{color: 'white', fontSize: 12, marginRight: 10}}>\n {new Date(currentVideoDuration * 1000).toISOString().substr(14, 5)} /\n <Text style={{color: 'white'}}>\n {' '}\n {new Date(videoDuration * 1000).toISOString().substr(14, 5)}\n </Text>\n </Text>\n </View>\n );\n };\n\n const videoSeekingIncreaseButton = () => (\n <TouchableOpacity\n style={{\n height: videoStyle.height - 70,\n justifyContent: 'center',\n alignItems: 'center',\n width: 35,\n borderColor: 'red',\n position: 'absolute',\n right: 30,\n top: 35,\n bottom: 0,\n zIndex: 100000,\n }}\n onPress={() => videoRef.current.seek(currentVideoDuration + 10)}>\n <SvgIcon\n name={'Increase10Seconds'}\n color={Color.white}\n width={normalize(25)}\n height={normalize(25)}\n />\n </TouchableOpacity>\n );\n\n const videoSeekingDecreaseButton = () => (\n <TouchableOpacity\n style={{\n height: videoStyle.height - 70,\n justifyContent: 'center',\n alignItems: 'center',\n width: 35,\n borderColor: 'red',\n position: 'absolute',\n left: 30,\n top: 35,\n bottom: 0,\n zIndex: 100000,\n }}\n onPress={() => videoRef.current.seek(currentVideoDuration - 10)}>\n <SvgIcon\n name={'Decrease10Seconds'}\n color={Color.white}\n width={normalize(25)}\n height={normalize(25)}\n />\n </TouchableOpacity>\n );\n\n const videoSettingsView = () => (\n <TouchableWithoutFeedback>\n <View\n style={{\n position: 'absolute',\n bottom: 0,\n left: 0,\n backgroundColor: 'rgba(0 ,0, 0,0.9)',\n alignItems: 'center',\n justifyContent: 'center',\n zIndex: 100000,\n ...videoStyle,\n }}>\n <TouchableOpacity\n style={{\n justifyContent: 'center',\n alignItems: 'center',\n position: 'absolute',\n right: 10,\n top: 10,\n }}\n onPress={() => {\n setIsShowSettingsBottomSheet(false);\n setAutoHideOptions(true, isPaused, timeOutHandler, isViewDisable);\n }}>\n <SvgIcon\n name={'Close'}\n color={Color.white}\n width={normalize(20)}\n height={normalize(22)}\n />\n </TouchableOpacity>\n\n <View\n style={{\n width: 170,\n flexDirection: 'row',\n alignItems: 'flex-end',\n justifyContent: 'space-between',\n }}>\n <TouchableOpacity\n style={{justifyContent: 'center', alignItems: 'center'}}\n onPress={() => {\n setIsShowSettingsBottomSheet(false);\n setIsShowVideoQualitiesSettings(true);\n }}>\n <SvgIcon\n name={'Quality'}\n color={Color.white}\n width={normalize(26)}\n height={normalize(27)}\n />\n <Text style={{color: 'white', fontSize: 13}}>Quality</Text>\n </TouchableOpacity>\n\n <TouchableOpacity\n style={{justifyContent: 'center', alignItems: 'center'}}\n onPress={() => {\n setIsShowSettingsBottomSheet(false);\n setIsShowVideoRateSettings(true);\n }}>\n <SvgIcon\n name={'speed'}\n color={Color.white}\n width={normalize(20)}\n height={normalize(25)}\n />\n <Text style={{color: 'white', fontSize: 13}}>Speed</Text>\n </TouchableOpacity>\n\n <TouchableOpacity\n style={{justifyContent: 'center', alignItems: 'center'}}\n onPress={() => {\n setIsShowSettingsBottomSheet(false);\n setIsShowVideoSoundSettings(true);\n }}>\n <SvgIcon\n name={'SoundMixer'}\n color={Color.white}\n width={normalize(20)}\n height={normalize(22)}\n />\n <Text style={{color: 'white', fontSize: 13}}>Sound</Text>\n </TouchableOpacity>\n </View>\n </View>\n </TouchableWithoutFeedback>\n );\n\n const videoRateSettingView = () => (\n <TouchableWithoutFeedback>\n <View\n style={{\n position: 'absolute',\n bottom: 0,\n left: 0,\n backgroundColor: 'rgba(0 ,0, 0,0.9)',\n alignItems: 'center',\n justifyContent: 'center',\n zIndex: 100000,\n ...videoStyle,\n }}>\n <TouchableOpacity\n style={{\n justifyContent: 'center',\n alignItems: 'center',\n position: 'absolute',\n right: 10,\n top: 10,\n }}\n onPress={() => {\n setIsShowVideoRateSettings(false);\n setAutoHideOptions(true, isPaused, timeOutHandler, isViewDisable);\n }}>\n <SvgIcon\n name={'Close'}\n color={Color.white}\n width={normalize(20)}\n height={normalize(22)}\n />\n </TouchableOpacity>\n\n <TouchableOpacity\n style={{\n justifyContent: 'center',\n alignItems: 'center',\n position: 'absolute',\n left: 10,\n top: 10,\n }}\n onPress={() => {\n setIsShowVideoRateSettings(false);\n setIsShowSettingsBottomSheet(true);\n }}>\n <SvgIcon\n name={'Back'}\n color={Color.white}\n width={normalize(23)}\n height={normalize(18)}\n />\n </TouchableOpacity>\n\n <View\n style={{\n width: 230,\n height: 50,\n borderWidth: 0,\n borderColor: 'red',\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'space-between',\n }}>\n <TouchableOpacity\n style={{\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n width: 70,\n height: 25,\n borderWidth: 1,\n borderColor: 'white',\n borderRadius: 4,\n }}\n onPress={() => {\n setVideoRate(0.5);\n }}>\n {videoRate == 0.5 && (\n <SvgIcon\n name={'Dot'}\n color={Color.white}\n width={normalize(10)}\n height={normalize(10)}\n />\n )}\n <Text\n style={{\n color: 'white',\n fontSize: 13,\n marginLeft: videoRate == 0.5 ? 3 : 0,\n }}>\n Slow\n </Text>\n </TouchableOpacity>\n\n <TouchableOpacity\n style={{\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n width: 70,\n height: 25,\n borderWidth: 1,\n borderColor: 'white',\n borderRadius: 4,\n }}\n onPress={() => {\n setVideoRate(1);\n }}>\n {videoRate == 1 && (\n <SvgIcon\n name={'Dot'}\n color={Color.white}\n width={normalize(10)}\n height={normalize(10)}\n />\n )}\n <Text\n style={{\n color: 'white',\n fontSize: 13,\n marginLeft: videoRate == 1 ? 3 : 0,\n }}>\n Normal\n </Text>\n </TouchableOpacity>\n\n <TouchableOpacity\n style={{\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n width: 70,\n height: 25,\n borderWidth: 1,\n borderColor: 'white',\n borderRadius: 4,\n }}\n onPress={() => {\n setVideoRate(4);\n }}>\n {videoRate == 4 && (\n <SvgIcon\n name={'Dot'}\n color={Color.white}\n width={normalize(10)}\n height={normalize(10)}\n />\n )}\n <Text\n style={{\n color: 'white',\n fontSize: 13,\n marginLeft: videoRate == 4 ? 3 : 0,\n }}>\n Fast\n </Text>\n </TouchableOpacity>\n </View>\n </View>\n </TouchableWithoutFeedback>\n );\n\n const videoQualitiesSettingView = () => (\n <TouchableWithoutFeedback>\n <View\n style={{\n position: 'absolute',\n bottom: 0,\n left: 0,\n backgroundColor: 'rgba(0 ,0, 0,0.9)',\n alignItems: 'center',\n justifyContent: 'center',\n zIndex: 100000,\n ...videoStyle,\n }}>\n <TouchableOpacity\n style={{\n justifyContent: 'center',\n alignItems: 'center',\n position: 'absolute',\n right: 10,\n top: 10,\n }}\n onPress={() => {\n setIsShowVideoQualitiesSettings(false);\n setAutoHideOptions(true, isPaused, timeOutHandler, isViewDisable);\n }}>\n <SvgIcon\n name={'Close'}\n color={Color.white}\n width={normalize(20)}\n height={normalize(22)}\n />\n </TouchableOpacity>\n\n <TouchableOpacity\n style={{\n justifyContent: 'center',\n alignItems: 'center',\n position: 'absolute',\n left: 10,\n top: 10,\n }}\n onPress={() => {\n setIsShowVideoQualitiesSettings(false);\n setIsShowSettingsBottomSheet(true);\n }}>\n <SvgIcon\n name={'Back'}\n color={Color.white}\n width={normalize(23)}\n height={normalize(18)}\n />\n </TouchableOpacity>\n\n <View\n style={{\n width: 260,\n borderWidth: 0,\n borderColor: 'red',\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'space-between',\n }}>\n <TouchableOpacity\n style={{\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n width: 60,\n height: 25,\n borderWidth: 1,\n borderColor: 'white',\n borderRadius: 4,\n }}\n onPress={() => {\n setVideoQuality(144);\n }}>\n {videoQuality == 144 && (\n <SvgIcon\n name={'Dot'}\n color={Color.white}\n width={normalize(10)}\n height={normalize(10)}\n />\n )}\n\n <Text\n style={{\n color: 'white',\n fontSize: 13,\n marginLeft: videoQuality == 144 ? 3 : 0,\n }}>\n 144p\n </Text>\n </TouchableOpacity>\n\n <TouchableOpacity\n style={{\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n width: 60,\n height: 25,\n borderWidth: 1,\n borderColor: 'white',\n borderRadius: 4,\n }}\n onPress={() => {\n setVideoQuality(240);\n }}>\n {videoQuality == 240 && (\n <SvgIcon\n name={'Dot'}\n color={Color.white}\n width={normalize(10)}\n height={normalize(10)}\n />\n )}\n <Text\n style={{\n color: 'white',\n fontSize: 13,\n marginLeft: videoQuality == 240 ? 3 : 0,\n }}>\n 240p\n </Text>\n </TouchableOpacity>\n\n <TouchableOpacity\n style={{\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n width: 60,\n height: 25,\n borderWidth: 1,\n borderColor: 'white',\n borderRadius: 4,\n }}\n onPress={() => {\n setVideoQuality(360);\n }}>\n {videoQuality == 360 && (\n <SvgIcon\n name={'Dot'}\n color={Color.white}\n width={normalize(10)}\n height={normalize(10)}\n />\n )}\n <Text\n style={{\n color: 'white',\n fontSize: 13,\n marginLeft: videoQuality == 360 ? 3 : 0,\n }}>\n 360p\n </Text>\n </TouchableOpacity>\n\n <TouchableOpacity\n style={{\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n width: 60,\n height: 25,\n borderWidth: 1,\n borderColor: 'white',\n borderRadius: 4,\n }}\n onPress={() => {\n setVideoQuality(480);\n }}>\n {videoQuality == 480 && (\n <SvgIcon\n name={'Dot'}\n color={Color.white}\n width={normalize(10)}\n height={normalize(10)}\n />\n )}\n <Text\n style={{\n color: 'white',\n fontSize: 13,\n marginLeft: videoQuality == 480 ? 3 : 0,\n }}>\n 480p\n </Text>\n </TouchableOpacity>\n </View>\n\n <View\n style={{\n width: 260,\n marginTop: 15,\n borderWidth: 0,\n borderColor: 'red',\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'space-between',\n }}>\n <TouchableOpacity\n style={{\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n width: 60,\n height: 25,\n borderWidth: 1,\n borderColor: 'white',\n borderRadius: 4,\n }}\n onPress={() => {\n setVideoQuality(720);\n }}>\n {videoQuality == 720 && (\n <SvgIcon\n name={'Dot'}\n color={Color.white}\n width={normalize(10)}\n height={normalize(10)}\n />\n )}\n <Text\n style={{\n color: 'white',\n fontSize: 13,\n marginLeft: videoQuality == 720 ? 3 : 0,\n }}>\n 720p\n </Text>\n </TouchableOpacity>\n\n <TouchableOpacity\n style={{\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n width: 60,\n height: 25,\n borderWidth: 1,\n borderColor: 'white',\n borderRadius: 4,\n }}\n onPress={() => {\n setVideoQuality(1080);\n }}>\n {videoQuality == 1080 && (\n <SvgIcon\n name={'Dot'}\n color={Color.white}\n width={normalize(10)}\n height={normalize(10)}\n />\n )}\n <Text\n style={{\n color: 'white',\n fontSize: 13,\n marginLeft: videoQuality == 1080 ? 3 : 0,\n }}>\n 1080p\n </Text>\n </TouchableOpacity>\n\n <TouchableOpacity\n style={{\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n width: 60,\n height: 25,\n borderWidth: 1,\n borderColor: 'white',\n borderRadius: 4,\n }}\n onPress={() => {\n setVideoQuality(1440);\n }}>\n {videoQuality == 1440 && (\n <SvgIcon\n name={'Dot'}\n color={Color.white}\n width={normalize(10)}\n height={normalize(10)}\n />\n )}\n <Text\n style={{\n color: 'white',\n fontSize: 13,\n marginLeft: videoQuality == 1440 ? 3 : 0,\n }}>\n 1440p\n </Text>\n </TouchableOpacity>\n\n <TouchableOpacity\n style={{\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n width: 60,\n height: 25,\n borderWidth: 1,\n borderColor: 'white',\n borderRadius: 4,\n }}\n onPress={() => {\n setVideoQuality(2160);\n }}>\n {videoQuality == 2160 && (\n <SvgIcon\n name={'Dot'}\n color={Color.white}\n width={normalize(10)}\n height={normalize(10)}\n />\n )}\n <Text\n style={{\n color: 'white',\n fontSize: 13,\n marginLeft: videoQuality == 2160 ? 3 : 0,\n }}>\n 2160p\n </Text>\n </TouchableOpacity>\n </View>\n </View>\n </TouchableWithoutFeedback>\n );\n\n const videoSoundView = () => (\n <TouchableWithoutFeedback>\n <View\n style={{\n position: 'absolute',\n bottom: 0,\n left: 0,\n backgroundColor: 'rgba(0 ,0, 0,0.9)',\n alignItems: 'center',\n justifyContent: 'center',\n zIndex: 100000,\n ...videoStyle,\n }}>\n <TouchableOpacity\n style={{\n justifyContent: 'center',\n alignItems: 'center',\n position: 'absolute',\n right: 10,\n top: 10,\n }}\n onPress={() => {\n setIsShowVideoSoundSettings(false);\n setAutoHideOptions(true, isPaused, timeOutHandler, isViewDisable);\n }}>\n <SvgIcon\n name={'Close'}\n color={Color.white}\n width={normalize(20)}\n height={normalize(22)}\n />\n </TouchableOpacity>\n\n <TouchableOpacity\n style={{\n justifyContent: 'center',\n alignItems: 'center',\n position: 'absolute',\n left: 10,\n top: 10,\n }}\n onPress={() => {\n setIsShowVideoSoundSettings(false);\n setIsShowSettingsBottomSheet(true);\n }}>\n <SvgIcon\n name={'Back'}\n color={Color.white}\n width={normalize(23)}\n height={normalize(18)}\n />\n </TouchableOpacity>\n\n <Slider\n //disabled={isRecordBeforePlay}\n style={{flex: 1}}\n maximumValue={1}\n minimumValue={0}\n step={0.1}\n minimumTrackTintColor=\"white\"\n maximumTrackTintColor=\"gray\"\n thumbTintColor=\"white\"\n thumbStyle={{height: 12, width: 12}}\n trackStyle={{height: 1.8, width: videoStyle.width - 130}}\n useNativeDriver\n value={videoSound}\n onSlidingComplete={sliderData => {\n // console.log('TYPE OF', typeof Number(sliderData[0].toFixed(1)));\n setVideoSound(Number(sliderData.toFixed(1)));\n if (sliderData == 0) {\n setIsMuted(true);\n } else {\n setIsMuted(false);\n }\n }}\n />\n\n <Text style={{color: 'white'}}>{videoSound}</Text>\n </View>\n </TouchableWithoutFeedback>\n );\n\n const videoSeekedLoader = () => (\n <View\n style={{\n height: videoStyle.height,\n width: videoStyle.width,\n position: 'absolute',\n top: 0,\n left: 0,\n backgroundColor: 'rgba(0 ,0, 0,0.5)',\n justifyContent: 'center',\n alignItems: 'center',\n }}>\n <ActivityIndicator color=\"white\" size=\"large\" />\n </View>\n );\n\n const videoErrorView = () => {\n return (\n <View\n style={{\n height: videoStyle.height,\n width: videoStyle.width,\n position: 'absolute',\n top: 0,\n left: 0,\n backgroundColor: 'rgba(0 ,0, 0,0.5)',\n justifyContent: 'center',\n alignItems: 'center',\n }}>\n <SvgIcon\n name={'Error'}\n color={Color.red}\n width={normalize(30)}\n height={normalize(30)}\n />\n {/* <SvgIcon\n name={isViewDisable ? 'Error' : 'PPlay'}\n color={isViewDisable ? Color.red : Color.white}\n width={isViewDisable ? normalize(30) : normalize(20)}\n height={isViewDisable ? normalize(30) : normalize(20)}\n /> */}\n {!isViewDisable && (\n <Text style={{color: 'white', fontSize: 12, marginTop: 0}}>\n Error when load video\n </Text>\n )}\n </View>\n );\n };\n\n const videoPosterView = () => (\n <Image\n source={{\n uri: playlistSelectedVideo\n ? playlistSelectedVideo.poster\n ? playlistSelectedVideo.poster\n : ''\n : poster,\n }}\n style={{\n height: videoStyle.height,\n width: videoStyle.width,\n position: 'absolute',\n top: 0,\n left: 0,\n backgroundColor: 'rgba(0 ,0, 0,0.5)',\n }}\n />\n );\n\n const videoPlaylistView = () => {\n console.log(\n 'INDEX OF LIST ',\n playlistSelectedVideo && playlistSelectedVideo.index > 0\n ? playlistSelectedVideo.index - 1\n : 0,\n );\n return (\n <TouchableWithoutFeedback>\n <View\n style={{\n position: 'absolute',\n bottom: 0,\n left: 0,\n backgroundColor: 'rgba(0 ,0, 0,0.9)',\n alignItems: 'center',\n justifyContent: 'center',\n zIndex: 100000,\n ...videoStyle,\n }}>\n <TouchableOpacity\n style={{\n justifyContent: 'center',\n alignItems: 'center',\n position: 'absolute',\n right: 10,\n top: 10,\n }}\n onPress={() => {\n setIsShowVideoPlaylist(false);\n setAutoHideOptions(true, isPaused, timeOutHandler, isViewDisable);\n }}>\n <SvgIcon\n name={'Close'}\n color={Color.white}\n width={normalize(20)}\n height={normalize(22)}\n />\n </TouchableOpacity>\n\n <View\n style={{\n marginVertical: 5,\n height: playlistSelectedVideo ? 140 : 120,\n marginHorizontal: 20,\n }}>\n <FlatList\n horizontal\n showsHorizontalScrollIndicator={false}\n contentContainerStyle={{alignItems: 'center'}}\n initialScrollIndex={\n playlistSelectedVideo && playlistSelectedVideo.index > 0\n ? playlistSelectedVideo.index - 1\n : 0\n }\n keyExtractor={(item, index) => index}\n data={playList}\n renderItem={({item, index}) => {\n const isSelected = playlistSelectedVideo\n ? playlistSelectedVideo.url == item.url\n ? true\n : false\n : false;\n return (\n <TouchableOpacity\n style={{\n marginRight: 10,\n justifyContent: 'center',\n alignItems: 'center',\n width: isSelected ? 150 : 130,\n height: isSelected ? 140 : 120,\n }}\n onPress={() => {\n if (isSelected) {\n setIsPaused(!isPaused);\n setIsShowVideoPlaylist(false);\n } else {\n videoRef.current.seek(0);\n setPlaylistSelectedVideo({...item, index: index});\n setIsPaused(false);\n setIsShowVideoPlaylist(false);\n setAutoHideOptions(\n true,\n isPaused,\n timeOutHandler,\n isViewDisable,\n );\n }\n }}>\n <Image\n source={{uri: item.poster}}\n resizeMode=\"stretch\"\n style={{\n position: 'absolute',\n top: 0,\n left: 0,\n width: isSelected ? 150 : 130,\n height: isSelected ? 140 : 120,\n borderRadius: 5,\n borderWidth: 2,\n borderColor: 'white',\n }}\n />\n <View\n style={{\n width: 40,\n height: 40,\n borderRadius: 20,\n backgroundColor: '#900C3F',\n justifyContent: 'center',\n alignItems: 'center',\n zIndex: 10000,\n }}>\n <SvgIcon\n name={\n isSelected\n ? isPaused\n ? 'PPlay'\n : 'PPause.png'\n : 'PPlay'\n }\n color={Color.white}\n width={normalize(27)}\n height={normalize(17)}\n />\n </View>\n </TouchableOpacity>\n );\n }}\n />\n </View>\n </View>\n </TouchableWithoutFeedback>\n );\n };\n\n const videoCoverView = () => (\n <TouchableWithoutFeedback>\n <ImageBackground\n style={{\n position: 'absolute',\n bottom: 0,\n left: 0,\n alignItems: 'center',\n justifyContent: 'center',\n zIndex: 100000,\n ...videoStyle,\n }}\n source={require('../assets/images/blur.png')}>\n <SvgIcon\n name={'Eye'}\n color={Color.white}\n width={normalize(70)}\n height={normalize(100)}\n />\n\n <TouchableOpacity\n style={{\n width: 80,\n height: 30,\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: 'rgba(0 ,0, 0,0.5)',\n marginTop: 20,\n borderRadius: 5,\n }}\n onPress={() => {\n setAutoHideOptions(true, isPaused, timeOutHandler, isViewDisable);\n setIsVideoCovered(false);\n }}>\n <Text style={{color: 'white'}}>Uncover</Text>\n </TouchableOpacity>\n </ImageBackground>\n </TouchableWithoutFeedback>\n );\n\n return (\n <TouchableWithoutFeedback\n onPress={() => {\n console.log('TOUCH');\n\n let value = !isPaused;\n\n if (isPaused) {\n setIsPaused(value);\n }\n\n if (!isVideoEnd && value) {\n setAutoHideOptions(true, false, timeOutHandler, isViewDisable);\n } else {\n setAutoHideOptions(true, value, timeOutHandler, isViewDisable);\n }\n }}>\n <View style={videoStyle}>\n <Video\n keyExtractor={uuid.v4() + ''}\n style={{flex: 1}}\n posterResizeMode=\"cover\"\n resizeMode=\"cover\"\n bufferConfig={{\n minBufferMs: 1000 * 60,\n bufferForPlaybackMs: 1000 * 60,\n bufferForPlaybackAfterRebufferMs: 1000 * 60,\n }}\n ref={videoRef}\n source={\n playlistSelectedVideo ? {uri: playlistSelectedVideo.url} : source\n }\n paused={isPaused}\n muted={isMuted}\n rate={videoRate}\n selectedVideoTrack={{\n type: 'resolution',\n value: videoQuality,\n }}\n volume={videoSound}\n playInBackground={playInBackground}\n onLoad={videoData => {\n setVideoDuration(videoData.duration);\n setCurrentVideoDuration(duration);\n setIsVErrorInLoadVideo(false);\n }}\n onProgress={videoData => {\n setCurrentVideoDuration(videoData.currentTime);\n }}\n /*onSeek={()=>{\n if(Platform.OS=='android'){\n setIsVideoSeeked(true)\n }\n }}\n onReadyForDisplay={()=>{\n console.log(\"onReadyForDisplay\")\n setIsVideoSeeked(false)\n setIsVErrorInLoadVideo(false)\n }}*/\n onError={videoData => setIsVErrorInLoadVideo(true)}\n onEnd={() => {\n console.log('on end');\n setIsVideoEnd(true);\n setIsPaused(true);\n if (playList.length > 0) {\n setIsShowVideoPlaylist(true);\n }\n }}\n />\n {currentVideoDuration == 0 && poster && videoPosterView()}\n {isVideoFocused && showHeader && videoHeaders()}\n {isVideoFocused &&\n showSeeking10SecondsButton &&\n !isErrorInLoadVideo &&\n videoSeekingIncreaseButton()}\n {isVideoFocused &&\n showSeeking10SecondsButton &&\n !isErrorInLoadVideo &&\n videoSeekingDecreaseButton()}\n {isVideoFocused && videoFooter()}\n {/* {isShowSettingsBottomSheet && videoSettingsView()} */}\n {/* {isShowVideoRateSettings && videoRateSettingView()} */}\n {isShowVideoSoundSettings && videoSoundView()}\n {/* {isShowVideoQualitiesSettings && videoQualitiesSettingView()} */}\n {isVideoSeeked && videoSeekedLoader()}\n {isErrorInLoadVideo && videoErrorView()}\n {isViewDisable && videoErrorView()}\n {/* {playList.length > 0 && isShowVideoPlaylist && videoPlaylistView()} */}\n {isVideoCovered && videoCoverView()}\n </View>\n </TouchableWithoutFeedback>\n );\n});\n\nexport default MoVideoPlayer;\n","/* eslint-disable @typescript-eslint/no-unused-vars */\nimport BaseView, {BaseViewProps, BaseViewState} from './BaseView';\n\nimport * as React from 'react';\nimport {\n Text,\n View,\n StyleSheet,\n Dimensions,\n Platform,\n TouchableOpacity,\n} from 'react-native';\nimport {TEMPLATE_STYLE_VALUES} from '../theme/styles';\nimport Color from '../theme/Color';\nimport {ThemeContext} from '../theme/ThemeContext';\nimport {normalize, renderImage} from '../utils/helpers';\nimport FileIcon from '../utils/FileIcon';\nimport VideoTemplate from './VideoTemplate';\nimport AudioTemplate from './AudioTemplate';\nconst windowWidth = Dimensions.get('window').width;\nimport FileViewer from 'react-native-file-viewer';\nimport RNFS from 'react-native-fs';\nimport RNBlobUtil from 'react-native-blob-util';\n\nconst imageFilesTypes = ['jpg', 'jpeg', 'png'];\nconst audioTypes: any = [\n 'aac',\n 'aiff',\n 'amr',\n 'flac',\n 'm4a',\n 'mp3',\n 'ogg',\n 'opus',\n 'pcm',\n 'wav',\n 'wma',\n];\nconst videoTypes: any = [\n '3g2',\n '3gp',\n 'asf',\n 'avi',\n 'flv',\n 'm4v',\n 'mov',\n 'mp4',\n 'mpg',\n 'rm',\n 'srt',\n 'swf',\n 'vob',\n 'wmv',\n];\n\ninterface AttachementsProps extends BaseViewProps {\n buttonContainerStyle?: any;\n buttonTextStyle?: any;\n}\ninterface AttachementsState extends BaseViewState {}\n\nexport default class Attachements extends BaseView<\n AttachementsProps,\n AttachementsState\n> {\n static contextType = ThemeContext;\n static propTypes: {\n payload: any;\n onListItemClick?: any;\n };\n\n constructor(props: any) {\n super(props);\n }\n\n private getFileType = (fileName?: string) => {\n if (!fileName) {\n return '';\n }\n try {\n let fileType = fileName?.slice(\n fileName?.lastIndexOf('.') + 1,\n fileName?.length,\n );\n\n return fileType?.toLowerCase?.()?.trim?.();\n } catch (error) {}\n\n return '';\n };\n\n private getMediaView = (media: any, fileType: any) => {\n if (!fileType) {\n return <></>;\n }\n\n if (imageFilesTypes.includes(fileType)) {\n return (\n <TouchableOpacity\n onPress={() => {\n this.openFile(media?.uri);\n }}>\n {renderImage({\n image: media?.uri,\n iconShape: null,\n iconSize: null,\n width: (windowWidth / 4) * 3,\n height: 200,\n })}\n </TouchableOpacity>\n );\n }\n\n if (videoTypes.includes(fileType)) {\n return (\n <VideoTemplate\n payload={{videoUrl: media?.uri, isLastMessage: true}}\n theme={this.props.theme}\n />\n );\n }\n\n if (audioTypes.includes(fileType)) {\n return (\n <AudioTemplate\n payload={{audioUrl: media?.uri, isLastMessage: true}}\n theme={this.props.theme}\n />\n );\n }\n\n return (\n <TouchableOpacity\n onPress={() => {\n //console.log('media ------>:', media);\n this.handleOpenFile(media?.uri, fileType);\n //this.openFile(media?.uri);\n }}>\n <FileIcon fileType={fileType} size={45} />\n </TouchableOpacity>\n );\n };\n\n private handleOpenFile = async (fileUri: any, fileType: any) => {\n try {\n let localFilePath: any;\n\n //console.log('fileUri ------>:', fileUri);\n\n if (Platform.OS === 'android' && fileUri.startsWith('content://')) {\n // For Android content:// URIs, resolve the real path\n const blob = await RNBlobUtil.fs.readFile(fileUri, 'base64');\n\n let temp = new Date().getTime() + '_file.';\n\n // Define where you want to store the file locally\n const filePath = `${RNFS.DocumentDirectoryPath}/` + temp + fileType;\n\n // Write the blob data to a file\n await RNFS.writeFile(filePath, blob, 'base64');\n // console.log('filePath ------>:', filePath);\n localFilePath = filePath; // This is the resolved file path now\n } else {\n // For iOS or already resolved paths\n localFilePath = fileUri;\n }\n\n this.openFile(localFilePath);\n } catch (error) {\n //console.log('Error downloading the file:', error);\n }\n };\n\n private openFile = (localFilePath?: any) => {\n if (!localFilePath) {\n return;\n }\n //console.log('localFilePath --------->:', localFilePath);\n FileViewer.open(localFilePath, {\n showOpenWithDialog: true,\n showAppsSuggestions: true,\n })\n .then(() => {\n // success\n //console.log('Image opened successfully');\n })\n .catch(error => {\n // error\n console.log('Error opening the image:', error);\n });\n };\n\n private renderAttachment = (payload: any) => {\n let attachments;\n\n if (payload?.payload?.attachments) {\n attachments = payload?.payload?.attachments.map(media => {\n let fileType: string = this.getFileType(media?.fileName);\n //console.log('fileType >>>>>>>>>>>>>>>>>>>>>>>>>:', fileType);\n return (\n <View style={styles.main}>\n {this.getMediaView(media, fileType)}\n <Text style={styles.fileName}>{media?.fileName}</Text>\n </View>\n );\n });\n }\n\n return attachments;\n };\n\n render() {\n return <View>{this.renderAttachment(this.props.payload)}</View>;\n }\n}\n\nconst styles = StyleSheet.create({\n fileName: {\n color: Color.black,\n fontSize: normalize(14),\n marginTop: normalize(10),\n marginBottom: normalize(5),\n },\n player: {\n width: (windowWidth / 4) * 3.2,\n height: normalize(200),\n marginTop: Platform.OS == 'ios' ? 30 : 0,\n backgroundColor: 'green',\n },\n main: {\n margin: 6,\n alignItems: 'center',\n borderRadius: 3,\n borderWidth: StyleSheet.hairlineWidth,\n borderColor: Color.black,\n padding: 10,\n },\n item_container: {\n flexWrap: 'wrap',\n marginBottom: 10,\n marginRight: 10,\n marginTop: 10,\n },\n mainContainer: {\n backgroundColor: Color.white,\n borderWidth: TEMPLATE_STYLE_VALUES.BORDER_WIDTH,\n borderColor: TEMPLATE_STYLE_VALUES.BORDER_COLOR,\n borderRadius: TEMPLATE_STYLE_VALUES.BORDER_RADIUS,\n minWidth: TEMPLATE_STYLE_VALUES.MIN_WIDTH,\n marginRight: TEMPLATE_STYLE_VALUES.TEMPLATE_RIGHT_MARGIN,\n marginLeft: TEMPLATE_STYLE_VALUES.TEMPLATE_LEFT_MARGIN,\n },\n\n text: {\n color: TEMPLATE_STYLE_VALUES.TEXT_COLOR,\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n marginStart: 10,\n marginEnd: 10,\n marginTop: 10,\n marginBottom: 10,\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n },\n\n bottom_btns: {flexDirection: 'row', marginTop: 0},\n btn_view: {\n flexDirection: 'column',\n alignItems: 'center',\n borderRadius: 10,\n padding: 10,\n fontWeight: 'bold',\n },\n\n item_text: {\n fontFamily: TEMPLATE_STYLE_VALUES.FONT_FAMILY,\n alignSelf: 'center',\n color: Color.blue,\n fontSize: TEMPLATE_STYLE_VALUES.TEXT_SIZE,\n fontWeight: 'normal',\n //marginTop: 10,\n },\n main_view_1: {\n padding: 5,\n },\n btn_views_1: {\n flexDirection: 'column',\n },\n});\n","import * as React from 'react';\nimport Icon from 'react-native-vector-icons/FontAwesome';\nimport {normalize} from './helpers';\n\ninterface FileIconProps {\n fileType: string;\n size?: number;\n}\n\ninterface FileIconState {}\n\nconst iconMappings: any = {\n txt: 'file-text-o',\n pdf: 'file-pdf-o',\n doc: 'file-word-o',\n docx: 'file-word-o',\n xls: 'file-excel-o',\n xlsx: 'file-excel-o',\n ppt: 'file-powerpoint-o',\n pptx: 'file-powerpoint-o',\n jpg: 'file-image-o',\n jpeg: 'file-image-o',\n png: 'file-image-o',\n gif: 'file-image-o',\n mp3: 'file-audio-o',\n mp4: 'file-video-o',\n avi: 'file-video-o',\n mov: 'file-video-o',\n zip: 'file-zip-o',\n rar: 'file-zip-o',\n default: 'file-o', // Default icon for unknown file types\n};\n\nexport default class FileIcon extends React.Component<\n FileIconProps,\n FileIconState\n> {\n private getColor = (fileType: string) => {\n switch (fileType) {\n case 'txt':\n return '#00f';\n case 'pdf':\n return '#f00';\n case 'doc':\n case 'docx':\n return '#6495ED';\n case 'xls':\n case 'xlsx':\n return '#008000';\n case 'ppt':\n case 'pptx':\n return '#FF4500';\n case 'jpg':\n case 'jpeg':\n case 'png':\n case 'gif':\n return '#FFA500';\n case 'mp3':\n return '#800080';\n case 'mp4':\n case 'avi':\n case 'mov':\n return '#FFD700';\n case 'zip':\n case 'rar':\n return '#808000';\n default:\n return '#000'; // Default color\n }\n };\n\n private renderIcon = (fileType: string) => {\n fileType = fileType?.toLowerCase?.()?.trim?.();\n let size = this.props.size || 45;\n const iconName = iconMappings[fileType] || iconMappings.default;\n const color = this.getColor(fileType);\n\n console.log('iconName ---->:', iconName);\n\n return <Icon name={iconName} size={normalize(size)} color={color} />;\n };\n\n render() {\n return this.renderIcon(this.props.fileType);\n }\n}\n","import * as React from 'react';\nimport {ThemeContext} from '../theme/ThemeContext';\nimport {IThemeType} from '../theme/IThemeType';\nimport BaseView, {BaseViewProps, BaseViewState} from './BaseView';\n// {\"buttons\": [{\"payload\": \"Test\", \"title\": \"Test\", \"type\": \"postback\"}, {\"payload\": \"Testing\", \"title\": \"Testing\", \"type\": \"postback\"}],\n// \"isLastMessage\": true,\n// \"onListItemClick\": [Function anonymous],\n// \"template_type\": \"button\",\n// \"text\": \"Select an option.\"}\n\nexport interface CustomViewProps extends BaseViewProps {\n payload: any;\n isLastMessage: boolean;\n onListItemClick: any;\n}\n\nexport interface CustomViewState extends BaseViewState {}\n\nclass CustomTemplate<\n T extends CustomViewProps,\n S extends CustomViewState,\n> extends BaseView<T, S> {\n static contextType = ThemeContext;\n static propTypes: {\n payload: {};\n };\n\n constructor(props: T) {\n super(props);\n }\n}\n\nexport default CustomTemplate;\n","import * as React from 'react';\nimport BaseView, {BaseViewProps, BaseViewState} from './BaseView';\nimport {\n ScrollView,\n StyleSheet,\n Text,\n TouchableOpacity,\n View,\n} from 'react-native';\nimport {TEMPLATE_STYLE_VALUES, botStyles} from '../theme/styles';\nimport {normalize} from '../utils/helpers';\n\nimport FastImage from 'react-native-fast-image';\nimport {getButtonTheme} from '../theme/themeHelper';\n\ninterface QuickProps extends BaseViewProps {\n quick_replies: any;\n itemClick?: any;\n isVertical?: boolean;\n quick_container_style?: any;\n quck_text_style?: any;\n quick_image_style?: any;\n}\ninterface QuickState extends BaseViewState {\n isClickedItem?: boolean;\n}\n\nexport default class QuickReplies extends BaseView<QuickProps, QuickState> {\n constructor(props: QuickProps) {\n super(props);\n this.state = {\n isClickedItem: false,\n };\n }\n\n componentDidUpdate(\n prevProps: Readonly<QuickProps>,\n _prevState: Readonly<QuickState>,\n _snapshot?: any,\n ): void {\n if (this.props?.quick_replies !== prevProps?.quick_replies) {\n this.setState({\n isClickedItem: false,\n });\n }\n }\n\n private renderQuickRepliesView = () => {\n if (!this.props?.quick_replies) {\n return <></>;\n }\n\n // const bbtheme = getBubbleTheme(this.props?.theme);\n\n const btheme = getButtonTheme(this.props?.theme);\n\n const views = this.props?.quick_replies.map((item: any, index: number) => {\n return (\n <TouchableOpacity\n key={index + ''}\n onPress={() => {\n this.setState({\n isClickedItem: true,\n });\n this.props?.itemClick?.(item);\n }}>\n <View\n style={\n this.props.quick_container_style\n ? this.props.quick_container_style\n : [\n styles.quick_container,\n\n {\n borderColor: btheme?.ACTIVE_BG_COLOR || '#3F51B5',\n borderWidth: 1,\n },\n ]\n }>\n {item?.image_url && (\n <View style={styles.image_bg}>\n <FastImage\n source={{uri: item?.image_url}}\n style={[\n this.props.quick_image_style\n ? this.props.quick_image_style\n : styles.image,\n {\n borderRadius: normalize(30),\n },\n ]}\n />\n </View>\n )}\n <Text\n style={\n this.props.quck_text_style\n ? this.props.quck_text_style\n : [\n {\n padding: 5,\n },\n {\n color: btheme?.ACTIVE_TXT_COLOR,\n fontFamily:\n this.props?.theme?.v3?.body?.font?.family || 'Inter',\n },\n botStyles[\n this.props?.theme?.v3?.body?.font?.size || 'medium'\n ].size,\n ]\n }>\n {item?.title?.value || item?.title}\n </Text>\n </View>\n </TouchableOpacity>\n );\n });\n return views && views.length > 0 ? (\n <ScrollView\n pointerEvents={this.state.isClickedItem ? 'none' : 'auto'}\n contentContainerStyle={{\n justifyContent: 'flex-start',\n alignItems: 'flex-start',\n }}\n style={{\n backgroundColor:\n this.props?.theme?.v3?.body?.background?.color || '#FFFFFF',\n }}\n showsVerticalScrollIndicator={true}\n showsHorizontalScrollIndicator={true}\n keyboardShouldPersistTaps={'handled'}\n horizontal={!this.props.isVertical}>\n <View\n //keyboardShouldPersistTaps=\"always\"\n style={styles.quick_main_container}>\n {views}\n {/* {views && views.length > 0 && <View style={styles.quick_line}></View>} */}\n </View>\n </ScrollView>\n ) : (\n <></>\n );\n };\n\n render() {\n return this.renderQuickRepliesView();\n }\n}\n\nconst styles = StyleSheet.create({\n image_bg: {\n justifyContent: 'center',\n alignItems: 'center',\n },\n image: {\n height: normalize(30),\n width: normalize(30),\n resizeMode: 'stretch',\n margin: 0,\n },\n quick_container: {\n justifyContent: 'flex-start',\n flexDirection: 'row',\n padding: 8,\n borderRadius: 5,\n marginTop: 5,\n marginBottom: 5,\n marginStart: 15,\n // borderWidth:0.5,\n shadowColor: '#000000',\n shadowOffset: {\n width: 0,\n height: 0.5,\n },\n shadowRadius: 1,\n shadowOpacity: 0.1,\n //background: #0D6EFD;\n borderColor: '#BDC1C6', //'#F8F9FA',\n borderWidth: 1,\n backgroundColor: 'white',\n\n color: TEMPLATE_STYLE_VALUES.TEXT_COLOR,\n //background: #0D6EFD;\n },\n\n quick_main_container: {\n marginStart: 5,\n marginEnd: 5,\n alignItems: 'flex-start',\n elevation: 2,\n flexDirection: 'row',\n //flexWrap: 'wrap',\n // flexDirection: 'row-reverse',\n flexWrap: 'wrap',\n alignSelf: 'flex-start',\n justifyContent: 'flex-start',\n marginBottom: 5,\n backgroundColor: 'transparent',\n //backgroundColor:'yellow',\n },\n});\n"],"mappings":"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","names":["React","Text","React","React","Dimensions","Image","StyleSheet","Text","TouchableOpacity","View","React","Platform","React","Component","Component","width","React","width","Platform","styles","React","View","StyleSheet","FastImage","Platform","styles","StyleSheet","colors","FastImage","View","dayjs","React","React","width","React","React","Svg","Defs","G","Image","Path","Pattern","Rect","Use","WIDTH","HEIGHT","width","width","WIDTH","HEIGHT","Svg","Path","G","React","Svg","G","Image","Path","WIDTH","HEIGHT","width","Error","React","Svg","Path","WIDTH","HEIGHT","width","React","Svg","Path","WIDTH","HEIGHT","width","React","Svg","Defs","Path","WIDTH","HEIGHT","width","React","Svg","Path","Svg","Path","width","Error","React","View","StyleSheet","StyleSheet","StyleSheet","dayjs","Dimensions","StyleSheet","Text","View","styles","TouchableOpacity","item","Image","index","React","View","Text","StyleSheet","TouchableOpacity","Dimensions","windowWidth","Dimensions","width","View","styles","StyleSheet","Text","index","TouchableOpacity","React","Dimensions","Platform","StyleSheet","Text","TouchableOpacity","View","FastImage","windowWidth","Dimensions","index","View","styles","FastImage","Text","TouchableOpacity","width","StyleSheet","Platform","React","StyleSheet","View","React","Component","View","Text","TouchableOpacity","StyleSheet","React","Component","Text","View","TouchableOpacity","Platform","dayjs","PixelRatio","Dimensions","normalize","React","Component","View","Text","dayjs","React","Component","Text","TouchableOpacity","View","dayjs","dayjs","styles","Component","customStyles","React","TouchableOpacity","View","Text","dayjs","styles","Component","customStyles","React","Text","View","advancedFormat","customParseFormat","dayjs","styles","Component","React","View","TouchableOpacity","Text","customStyles","Platform","dayjs","Component","customStyles","React","Text","styles","View","TouchableOpacity","StyleSheet","React","Linking","StyleSheet","View","Communications","React","Alert","StyleSheet","Text","View","WWW_URL_PATTERN","Linking","Communications","View","styles","StyleSheet","dayjs","advancedFormat","customParseFormat","View","styles","StyleSheet","React","View","View","React","Text","View","StyleSheet","FastImage","View","styles","FastImage","Text","StyleSheet","React","Dimensions","StyleSheet","Text","TouchableOpacity","View","FastImage","windowWidth","Dimensions","View","styles","FastImage","TouchableOpacity","Text","StyleSheet","React","Dimensions","Platform","StyleSheet","Text","View","Carousel","windowWidth","Dimensions","View","width","styles","Text","StyleSheet","Platform","React","Dimensions","StyleSheet","Text","TouchableOpacity","View","windowWidth","Dimensions","View","styles","TouchableOpacity","Text","StyleSheet","React","View","StyleSheet","Dimensions","windowWidth","Dimensions","View","styles","StyleSheet","React","View","StyleSheet","processColor","Dimensions","windowWidth","Dimensions","legend","colors","processColor","element","i","View","styles","StyleSheet","React","View","StyleSheet","processColor","Dimensions","windowWidth","Dimensions","legend","colors","processColor","View","styles","StyleSheet","React","View","StyleSheet","processColor","Dimensions","BarChart","HorizontalBarChart","windowWidth","Dimensions","legend","colors","processColor","BarChart","HorizontalBarChart","View","styles","StyleSheet","React","Text","TouchableOpacity","View","StyleSheet","View","styles","TouchableOpacity","Text","StyleSheet","React","Linking","StyleSheet","View","ParsedText","Communications","WWW_URL_PATTERN","styles","StyleSheet","Linking","Communications","View","ParsedText","React","Dimensions","ImageBackground","StyleSheet","Text","TouchableOpacity","View","FastImage","windowWidth","Dimensions","View","styles","Text","TouchableOpacity","ImageBackground","StyleSheet","React","Dimensions","ImageBackground","StyleSheet","Text","TouchableOpacity","View","CheckBox","FastImage","windowWidth","Dimensions","View","TouchableOpacity","styles","Text","CheckBox","ImageBackground","FastImage","StyleSheet","React","Dimensions","StyleSheet","Text","TouchableOpacity","View","CheckBox","windowWidth","Dimensions","View","styles","CheckBox","payload","Text","TouchableOpacity","StyleSheet","React","Dimensions","StyleSheet","Text","TouchableOpacity","View","RadioButton","windowWidth","Dimensions","View","styles","TouchableOpacity","RadioButton","Text","StyleSheet","React","Dimensions","ImageBackground","StyleSheet","Text","TouchableOpacity","View","FastImage","windowWidth","Dimensions","width","View","styles","TouchableOpacity","ImageBackground","FastImage","Text","width","StyleSheet","React","Dimensions","StyleSheet","Text","TouchableOpacity","View","Picker","windowWidth","Dimensions","View","styles","TouchableOpacity","Text","Picker","StyleSheet","React","Dimensions","StyleSheet","Text","TouchableOpacity","View","windowWidth","Dimensions","View","styles","Text","TouchableOpacity","StyleSheet","React","Dimensions","StyleSheet","Text","TouchableOpacity","View","windowWidth","Dimensions","TouchableOpacity","View","Text","styles","StyleSheet","React","View","Text","TouchableOpacity","StyleSheet","View","TouchableOpacity","styles","Text","StyleSheet","React","View","Text","Dimensions","StyleSheet","ImageBackground","TouchableOpacity","FastImage","Popover","React","StyleSheet","Text","TouchableOpacity","View","Popover","React","View","styles","Popover","TouchableOpacity","Text","index","StyleSheet","windowWidth","Dimensions","View","TouchableOpacity","styles","Text","Popover","index","FastImage","ImageBackground","StyleSheet","React","Dimensions","StyleSheet","View","React","Component","View","Text","TouchableOpacity","StyleSheet","Component","React","View","styles","TouchableOpacity","Text","StyleSheet","windowWidth","Dimensions","React","View","styles","StyleSheet","React","createRef","Dimensions","Modal","Platform","StatusBar","StyleSheet","View","React","Component","View","StyleSheet","BackHandler","StatusBar","React","useState","View","Text","TouchableOpacity","Dimensions","Image","FlatList","ImageBackground","Slider","useState","Dimensions","isPaused","timeOutHandler","isViewDisable","React","View","Text","TouchableOpacity","Slider","Image","FlatList","ImageBackground","Component","StatusBar","BackHandler","React","View","styles","StyleSheet","Orientation","WIDTH","Dimensions","createRef","Orientation","StatusBar","View","styles","Modal","StyleSheet","Platform","React","Text","View","StyleSheet","Dimensions","Platform","TouchableOpacity","React","Icon","Icon","windowWidth","Dimensions","TouchableOpacity","Platform","View","styles","Text","StyleSheet","Text","React","ScrollView","StyleSheet","Text","TouchableOpacity","View","FastImage","TouchableOpacity","View","styles","FastImage","Text","ScrollView","StyleSheet"]}