@plusscommunities/pluss-core-app 4.0.4-auth.0 → 6.0.0-auth.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/module/actions/FollowerActions.js +34 -0
- package/dist/module/actions/FollowerActions.js.map +1 -0
- package/dist/module/actions/MediaActions.js +29 -0
- package/dist/module/actions/MediaActions.js.map +1 -0
- package/dist/module/actions/ResidentActions.js +26 -0
- package/dist/module/actions/ResidentActions.js.map +1 -0
- package/dist/module/actions/UserActions.js +223 -0
- package/dist/module/actions/UserActions.js.map +1 -0
- package/dist/module/actions/UserSettingsActions.js +14 -0
- package/dist/module/actions/UserSettingsActions.js.map +1 -0
- package/dist/module/actions/index.js +6 -0
- package/dist/module/actions/index.js.map +1 -0
- package/dist/module/actions/types.js +17 -0
- package/dist/module/actions/types.js.map +1 -0
- package/dist/module/apis/analyticsActions.js +20 -0
- package/dist/module/apis/analyticsActions.js.map +1 -0
- package/dist/module/apis/contactActions.js +27 -0
- package/dist/module/apis/contactActions.js.map +1 -0
- package/dist/module/apis/eventActions.js +161 -0
- package/dist/module/apis/eventActions.js.map +1 -0
- package/dist/module/apis/fileActions.js +86 -0
- package/dist/module/apis/fileActions.js.map +1 -0
- package/dist/module/apis/followerActions.js +38 -0
- package/dist/module/apis/followerActions.js.map +1 -0
- package/dist/module/apis/index.js +12 -0
- package/dist/module/apis/index.js.map +1 -0
- package/dist/module/apis/notificationActions.js +60 -0
- package/dist/module/apis/notificationActions.js.map +1 -0
- package/dist/module/apis/profileActions.js +14 -0
- package/dist/module/apis/profileActions.js.map +1 -0
- package/dist/module/apis/reactionActions.js +76 -0
- package/dist/module/apis/reactionActions.js.map +1 -0
- package/dist/module/apis/stringActions.js +30 -0
- package/dist/module/apis/stringActions.js.map +1 -0
- package/dist/module/apis/typeActions.js +15 -0
- package/dist/module/apis/typeActions.js.map +1 -0
- package/dist/module/apis/userActions.js +104 -0
- package/dist/module/apis/userActions.js.map +1 -0
- package/dist/module/assets/icons/reactions/heart.png +0 -0
- package/dist/module/assets/icons/reactions/party.png +0 -0
- package/dist/module/assets/icons/reactions/sad.png +0 -0
- package/dist/module/assets/icons/reactions/smile.png +0 -0
- package/dist/module/colours.js +168 -0
- package/dist/module/colours.js.map +1 -0
- package/dist/module/components/AddButton.js +43 -0
- package/dist/module/components/AddButton.js.map +1 -0
- package/dist/module/components/AddToCalendarButton.js +225 -0
- package/dist/module/components/AddToCalendarButton.js.map +1 -0
- package/dist/module/components/Attachment.js +54 -0
- package/dist/module/components/Attachment.js.map +1 -0
- package/dist/module/components/AudienceSelectorLauncher.js +64 -0
- package/dist/module/components/AudienceSelectorLauncher.js.map +1 -0
- package/dist/module/components/AudienceSelectorPage.js +350 -0
- package/dist/module/components/AudienceSelectorPage.js.map +1 -0
- package/dist/module/components/AutoOffsetImage.js +186 -0
- package/dist/module/components/AutoOffsetImage.js.map +1 -0
- package/dist/module/components/BackButton.js +58 -0
- package/dist/module/components/BackButton.js.map +1 -0
- package/dist/module/components/CategoryTabs.js +154 -0
- package/dist/module/components/CategoryTabs.js.map +1 -0
- package/dist/module/components/CommentReply.js +328 -0
- package/dist/module/components/CommentReply.js.map +1 -0
- package/dist/module/components/CommentSection.js +822 -0
- package/dist/module/components/CommentSection.js.map +1 -0
- package/dist/module/components/ConfirmPopup.js +108 -0
- package/dist/module/components/ConfirmPopup.js.map +1 -0
- package/dist/module/components/ConfirmationPopup.js +72 -0
- package/dist/module/components/ConfirmationPopup.js.map +1 -0
- package/dist/module/components/DropDownItem.js +74 -0
- package/dist/module/components/DropDownItem.js.map +1 -0
- package/dist/module/components/DropDownMenu.js +41 -0
- package/dist/module/components/DropDownMenu.js.map +1 -0
- package/dist/module/components/EmptyStateMain.js +50 -0
- package/dist/module/components/EmptyStateMain.js.map +1 -0
- package/dist/module/components/EmptyStateWidget.js +47 -0
- package/dist/module/components/EmptyStateWidget.js.map +1 -0
- package/dist/module/components/FontScaleButton.js +36 -0
- package/dist/module/components/FontScaleButton.js.map +1 -0
- package/dist/module/components/FontScalePopup.js +75 -0
- package/dist/module/components/FontScalePopup.js.map +1 -0
- package/dist/module/components/FormCard.js +25 -0
- package/dist/module/components/FormCard.js.map +1 -0
- package/dist/module/components/FormCardSection.js +212 -0
- package/dist/module/components/FormCardSection.js.map +1 -0
- package/dist/module/components/FormCardSectionOptionLauncher.js +72 -0
- package/dist/module/components/FormCardSectionOptionLauncher.js.map +1 -0
- package/dist/module/components/FormattedText.js +131 -0
- package/dist/module/components/FormattedText.js.map +1 -0
- package/dist/module/components/GenericInput.js +148 -0
- package/dist/module/components/GenericInput.js.map +1 -0
- package/dist/module/components/GenericInputSection.js +158 -0
- package/dist/module/components/GenericInputSection.js.map +1 -0
- package/dist/module/components/Header.js +458 -0
- package/dist/module/components/Header.js.map +1 -0
- package/dist/module/components/ImagePopup.js +240 -0
- package/dist/module/components/ImagePopup.js.map +1 -0
- package/dist/module/components/ImageUploadProgress.js +68 -0
- package/dist/module/components/ImageUploadProgress.js.map +1 -0
- package/dist/module/components/ImageUploader.js +795 -0
- package/dist/module/components/ImageUploader.js.map +1 -0
- package/dist/module/components/InlineButton.js +65 -0
- package/dist/module/components/InlineButton.js.map +1 -0
- package/dist/module/components/Input.js +154 -0
- package/dist/module/components/Input.js.map +1 -0
- package/dist/module/components/LoadingCircles.js +220 -0
- package/dist/module/components/LoadingCircles.js.map +1 -0
- package/dist/module/components/LoadingIndicator.js +86 -0
- package/dist/module/components/LoadingIndicator.js.map +1 -0
- package/dist/module/components/LoadingStateWidget.js +46 -0
- package/dist/module/components/LoadingStateWidget.js.map +1 -0
- package/dist/module/components/MediaPlayer.js +418 -0
- package/dist/module/components/MediaPlayer.js.map +1 -0
- package/dist/module/components/MiddlePopup.js +43 -0
- package/dist/module/components/MiddlePopup.js.map +1 -0
- package/dist/module/components/PDFPopup.js +191 -0
- package/dist/module/components/PDFPopup.js.map +1 -0
- package/dist/module/components/PlussChat.js +986 -0
- package/dist/module/components/PlussChat.js.map +1 -0
- package/dist/module/components/PlussChatMessage.js +262 -0
- package/dist/module/components/PlussChatMessage.js.map +1 -0
- package/dist/module/components/PlussChatTime.js +58 -0
- package/dist/module/components/PlussChatTime.js.map +1 -0
- package/dist/module/components/Popup.js +125 -0
- package/dist/module/components/Popup.js.map +1 -0
- package/dist/module/components/PopupMenu.js +119 -0
- package/dist/module/components/PopupMenu.js.map +1 -0
- package/dist/module/components/PositionedImage.js +313 -0
- package/dist/module/components/PositionedImage.js.map +1 -0
- package/dist/module/components/ProfilePic.js +106 -0
- package/dist/module/components/ProfilePic.js.map +1 -0
- package/dist/module/components/RadioButton.js +77 -0
- package/dist/module/components/RadioButton.js.map +1 -0
- package/dist/module/components/Reaction.js +116 -0
- package/dist/module/components/Reaction.js.map +1 -0
- package/dist/module/components/Reactions.js +71 -0
- package/dist/module/components/Reactions.js.map +1 -0
- package/dist/module/components/SharingTools.js +154 -0
- package/dist/module/components/SharingTools.js.map +1 -0
- package/dist/module/components/Spinner.js +22 -0
- package/dist/module/components/Spinner.js.map +1 -0
- package/dist/module/components/StickyFooter.js +34 -0
- package/dist/module/components/StickyFooter.js.map +1 -0
- package/dist/module/components/TextStyle.js +45 -0
- package/dist/module/components/TextStyle.js.map +1 -0
- package/dist/module/components/Toggle.js +65 -0
- package/dist/module/components/Toggle.js.map +1 -0
- package/dist/module/components/TouchableSearchBar.js +67 -0
- package/dist/module/components/TouchableSearchBar.js.map +1 -0
- package/dist/module/components/UserListPopup.js +135 -0
- package/dist/module/components/UserListPopup.js.map +1 -0
- package/dist/module/components/UserListing.js +267 -0
- package/dist/module/components/UserListing.js.map +1 -0
- package/dist/module/components/VideoPopup.js +113 -0
- package/dist/module/components/VideoPopup.js.map +1 -0
- package/dist/module/components/WarningPopup.js +82 -0
- package/dist/module/components/WarningPopup.js.map +1 -0
- package/dist/module/components/expo-image-picker-multiple/ImageBrowser.js +289 -0
- package/dist/module/components/expo-image-picker-multiple/ImageBrowser.js.map +1 -0
- package/dist/module/components/expo-image-picker-multiple/ImageTile.js +116 -0
- package/dist/module/components/expo-image-picker-multiple/ImageTile.js.map +1 -0
- package/dist/module/components/index.js +55 -0
- package/dist/module/components/index.js.map +1 -0
- package/dist/module/components/react-native-expo-image-cropper/ExpoImageManipulator.js +385 -0
- package/dist/module/components/react-native-expo-image-cropper/ExpoImageManipulator.js.map +1 -0
- package/dist/module/components/react-native-expo-image-cropper/ImageCropOverlay.js +387 -0
- package/dist/module/components/react-native-expo-image-cropper/ImageCropOverlay.js.map +1 -0
- package/dist/module/config.js +32 -0
- package/dist/module/config.js.map +1 -0
- package/dist/module/constants.js +19 -0
- package/dist/module/constants.js.map +1 -0
- package/dist/module/fonts/index.js +2 -0
- package/dist/module/fonts/index.js.map +1 -0
- package/dist/module/fonts/pluss60-icons.js +5 -0
- package/dist/module/fonts/pluss60-icons.js.map +1 -0
- package/dist/module/fonts/pluss60-icons.json +1097 -0
- package/dist/module/helper.js +397 -0
- package/dist/module/helper.js.map +1 -0
- package/dist/module/index.js +13 -0
- package/dist/module/index.js.map +1 -0
- package/dist/module/js/images/detectFaces.js +30 -0
- package/dist/module/js/images/detectFaces.js.map +1 -0
- package/dist/module/js/images/findLandmarkRange.js +93 -0
- package/dist/module/js/images/findLandmarkRange.js.map +1 -0
- package/dist/module/js/images/getScaledOffset.js +81 -0
- package/dist/module/js/images/getScaledOffset.js.map +1 -0
- package/dist/module/js/site/getSiteLevelFromState.js +29 -0
- package/dist/module/js/site/getSiteLevelFromState.js.map +1 -0
- package/dist/module/js/site/isTVEnabled.js +10 -0
- package/dist/module/js/site/isTVEnabled.js.map +1 -0
- package/dist/module/session.js +58 -0
- package/dist/module/session.js.map +1 -0
- package/dist/module/styles.js +67 -0
- package/dist/module/styles.js.map +1 -0
- package/package.json +20 -24
- package/src/js/images/detectFaces.js +8 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","Component","View","Text","TouchableOpacity","Image","StyleSheet","_","moment","connect","Icon","getPluralS","getThumb300","get1400","getSiteSettingFromState","getFirstName","getPluralOptions","getMainBrandingColourFromState","TEXT_DARKEST","BG_GREY","TEXT_LIGHT","LINEGREY","reactionActions","notificationActions","blockUser","unblockUser","ConfirmPopup","ProfilePic","ImagePopup","InlineButton","Spinner","Services","CommentSection","constructor","props","_defineProperty","c","setState","commentToDelete","removeComment","state","Id","then","res","console","log","newComments","filter","comments","commentToReport","commentToBlock","userId","UserId","commentToUnblock","commentId","reportLoading","reportComment","commentReportedStatus","catch","error","comment","navigation","navigate","threadId","entityType","entityId","processing","data","muteEntity","muteExpiry","Expiry","unmuteEntity","actual","duration","diff","asHours","Math","abs","ceil","notificationsForComments","getEntityNotificationSetting","muteLoaded","commentsLoading","includes","blockedUsers","user","uid","isUserBlocked","hideReplyButton","threadComments","innerC","ParentId","content","isEmpty","createElement","style","styles","commentRepliesText","color","colourBrandingMain","User","displayName","profilePics","take","uniqBy","multiReplyContainer","map","i","marginRight","Diameter","profilePic","marginLeft","length","commentReplies","onPress","onOpenThread","addingComment","componentDidMount","getNotificationSate","hidden","getComments","componentWillUnmount","loadTimer","clearTimeout","onPressCommentImage","image","imagePopupSource","imagePopupOpen","onGoToAdd","_this$props$commentRe","commentReply","current","focusInput","getAdjustedSize","size","scaleFont","fontScale","commentsLoadStarted","_this$props$commentRe2","loadingStarted","loadComments","minTime","maxBy","Timestamp","_this$props$commentRe3","sortBy","concat","onCommentsLoaded","loadingCompleted","live","setTimeout","refreshFrequency","startedAddingComment","commentAdded","push","onCommentAdded","canRemoveComment","permissions","adminPermission","closeCommentGallery","renderCommentDeleteConfirm","visible","onConfirm","onPressConfirmDelete","onCancel","onPressCancelDelete","onClose","text","renderCommentReportConfirm","onPressConfirmReport","onPressCancelReport","extraContent","commentReportText","renderCommentBlockConfirm","onPressConfirmBlock","onPressCancelBlock","renderCommentUnblockConfirm","onPressConfirmUnblock","onPressCancelUnblock","renderCommentReportStatus","isSuccess","onPressConfirmReportStatus","hideNo","yesText","renderCommentImage","commentImageContainer","bind","commentImage","source","uri","renderComment","key","commentFlex","commentProfilePic","commentBlock","commentTitleRow","onPressDeleteComment","commentButtonContainer","backgroundColor","name","type","iconStyle","commentButtonIcon","disableFlag","onPressReportComment","canBlockComment","onPressUnblockUser","onPressBlockUser","commentName","fontSize","Comment","commentText","commentBottom","commentTime","utc","local","format","renderReplyText","renderMute","muteSpinnerContainer","isMuted","hours","getMuteRemaining","mutedFor","muteContainer","mutedForText","onUnmute","onMute","borderColor","muteButton","disabled","disabledOpacity","noText","muteButtonInner","muteButtonIcon","muteButtonText","renderComments","commentSection","isNil","placeHolder","commentsEmpty","reverseOrder","reverse","showReplies","commentSectionTitleRow","alignItems","hideAddComment","goToText","commentCount","renderCommentImagePopup","images","ref","renderReportLoading","reportLoadingContainer","render","commentSectionOuter","create","flex","paddingHorizontal","paddingVertical","borderTopColor","borderTopWidth","fontFamily","marginTop","flexDirection","borderRadius","padding","width","height","justifyContent","textAlign","paddingLeft","marginBottom","borderWidth","mapStateToProps","userSettings","forwardRef"],"sources":["CommentSection.js"],"sourcesContent":["import React, { Component } from 'react';\nimport { View, Text, TouchableOpacity, Image, StyleSheet } from 'react-native';\nimport _ from 'lodash';\nimport moment from 'moment';\nimport { connect } from 'react-redux';\nimport { Icon } from 'react-native-elements';\nimport { getPluralS, getThumb300, get1400, getSiteSettingFromState, getFirstName, getPluralOptions } from '../helper';\nimport { getMainBrandingColourFromState, TEXT_DARKEST, BG_GREY, TEXT_LIGHT, LINEGREY } from '../colours';\nimport { reactionActions, notificationActions } from '../apis';\nimport { blockUser, unblockUser } from '../actions';\nimport { ConfirmPopup } from './ConfirmPopup';\nimport { ProfilePic } from './ProfilePic';\nimport { ImagePopup } from './ImagePopup';\nimport { InlineButton } from './InlineButton';\nimport { Spinner } from './Spinner';\nimport { Services } from '../config';\n\nclass CommentSection extends Component {\n constructor(props) {\n super(props);\n this.state = {\n commentsLoading: false,\n comments: [],\n addingComment: false,\n commentToDelete: null,\n commentToReport: null,\n commentReportedStatus: null,\n reportLoading: false,\n processing: false,\n muteExpiry: null,\n muteLoaded: false,\n };\n }\n\n componentDidMount() {\n this.getNotificationSate();\n\n if (!_.includes(this.props.user.hidden, 'viewComment')) {\n this.getComments();\n }\n }\n\n componentWillUnmount() {\n if (this.loadTimer) {\n clearTimeout(this.loadTimer);\n }\n }\n\n onPressDeleteComment = c => {\n this.setState({ commentToDelete: c });\n };\n\n onPressConfirmDelete = () => {\n reactionActions.removeComment(this.state.commentToDelete.Id).then(res => {\n console.log('deleted');\n });\n const newComments = _.filter(this.state.comments, c => {\n return c.Id !== this.state.commentToDelete.Id;\n });\n this.setState({\n comments: newComments,\n commentToDelete: null,\n });\n };\n\n onPressCancelDelete = () => {\n this.setState({ commentToDelete: null });\n };\n\n onPressReportComment = c => {\n this.setState({ commentToReport: c });\n };\n\n onPressBlockUser = c => {\n this.setState({ commentToBlock: c });\n };\n\n onPressConfirmBlock = () => {\n const userId = this.state.commentToBlock.UserId;\n this.props.blockUser(userId);\n this.setState({ commentToBlock: null });\n };\n\n onPressCancelBlock = () => {\n this.setState({ commentToBlock: null });\n };\n\n onPressUnblockUser = c => {\n this.setState({ commentToUnblock: c });\n };\n\n onPressConfirmUnblock = () => {\n const userId = this.state.commentToUnblock.UserId;\n this.props.unblockUser(userId);\n this.setState({ commentToUnblock: null });\n };\n\n onPressCancelUnblock = () => {\n this.setState({ commentToUnblock: null });\n };\n\n onPressConfirmReport = () => {\n const commentId = this.state.commentToReport.Id;\n this.setState({ reportLoading: true, commentToReport: null }, () => {\n reactionActions\n .reportComment(commentId)\n .then(res => {\n this.setState({ commentReportedStatus: 'success', reportLoading: false });\n })\n .catch(error => {\n console.log('reportComment', error);\n this.setState({ commentReportedStatus: 'fail', reportLoading: false });\n });\n });\n };\n\n onPressCancelReport = () => {\n this.setState({ commentToReport: null });\n };\n\n onPressConfirmReportStatus = () => {\n this.setState({ commentReportedStatus: null });\n };\n\n onPressCommentImage(image) {\n this.setState({\n imagePopupSource: [image],\n imagePopupOpen: true,\n });\n }\n\n onGoToAdd() {\n this.props.commentReply?.current?.focusInput();\n }\n\n onOpenThread = comment => {\n Services.navigation.navigate('thread', { ...this.props, threadId: comment.Id });\n };\n\n onMute = () => {\n const { entityType, entityId } = this.props;\n this.setState({ processing: true }, async () => {\n try {\n const { data } = await notificationActions.muteEntity(entityType, entityId);\n // console.log('onMute', data);\n const muteExpiry = moment(data.Expiry);\n this.setState({ muteExpiry, processing: false });\n } catch (error) {\n console.error('onMute', error);\n this.setState({ processing: false });\n }\n });\n };\n\n onUnmute = () => {\n const { entityType, entityId } = this.props;\n this.setState({ processing: true }, async () => {\n try {\n const { data } = await notificationActions.unmuteEntity(entityType, entityId);\n // console.log('onUnmute', data);\n this.setState({ muteExpiry: null, processing: false });\n } catch (error) {\n console.error('onUnmute', error);\n this.setState({ processing: false });\n }\n });\n };\n\n isMuted = () => {\n const { muteExpiry } = this.state;\n return muteExpiry && moment() <= muteExpiry;\n };\n\n getMuteRemaining = () => {\n const { muteExpiry } = this.state;\n const actual = muteExpiry ? moment.duration(muteExpiry.diff(moment())).asHours() : 0;\n return Math.abs(Math.ceil(actual));\n };\n\n getNotificationSate = () => {\n const { processing } = this.state;\n const { entityType, entityId, notificationsForComments } = this.props;\n if (processing || !notificationsForComments) return;\n\n this.setState({ processing: true }, async () => {\n try {\n const { data } = await notificationActions.getEntityNotificationSetting(entityType, entityId);\n // console.log('getNotificationSate', data);\n const muteExpiry = data ? moment(data.Expiry) : null;\n this.setState({ muteExpiry, muteLoaded: true, processing: false });\n } catch (error) {\n console.error('getNotificationSate', error);\n this.setState({ processing: false });\n }\n });\n };\n\n getAdjustedSize(size) {\n if (this.props.scaleFont) {\n return size + this.props.user.fontScale;\n }\n return size;\n }\n\n getComments() {\n if (!this.state.commentsLoadStarted) {\n this.setState({\n commentsLoadStarted: true,\n commentsLoading: true,\n });\n this.props.commentReply?.current?.loadingStarted();\n\n this.loadComments();\n }\n }\n\n isEmpty() {\n return _.isEmpty(this.state.comments);\n }\n\n loadComments() {\n const minTime = this.isEmpty()\n ? 0\n : _.maxBy(this.state.comments, c => {\n return c.Timestamp;\n }).Timestamp;\n reactionActions.getComments(this.props.entityId, this.props.entityType, minTime).then(res => {\n this.setState(\n {\n comments: _.sortBy(\n _.uniqBy(\n _.filter(_.concat(this.state.comments, res.data), c => {\n if (!this.props.threadId) {\n return true;\n }\n return c.Id === this.props.threadId || c.ParentId === this.props.threadId;\n }),\n c => {\n return c.Id;\n },\n ),\n 'Timestamp',\n ),\n commentsLoading: false,\n },\n () => {\n if (this.props.onCommentsLoaded) {\n this.props.onCommentsLoaded(this.state.comments.length);\n }\n },\n );\n //if (this.props.commentReply) {\n this.props.commentReply?.current?.loadingCompleted();\n //}\n if (this.props.live) {\n this.loadTimer = setTimeout(() => {\n this.loadComments();\n }, this.props.refreshFrequency || 2000);\n }\n });\n }\n\n isLoading = () => {\n return this.state.commentsLoading;\n };\n\n startedAddingComment() {\n this.setState({\n addingComment: true,\n });\n }\n\n commentAdded(comment) {\n const newComments = this.state.comments;\n newComments.push(comment);\n this.setState(\n {\n addingComment: false,\n comments: newComments,\n },\n () => {\n if (this.props.onCommentAdded) {\n this.props.onCommentAdded();\n }\n },\n );\n }\n\n isUserBlocked = c => {\n return _.includes(this.props.blockedUsers, c.UserId);\n };\n\n canBlockComment = c => {\n return this.props.user.uid !== c.UserId;\n };\n\n canRemoveComment(c) {\n if (this.props.user.uid === c.UserId) {\n return true;\n }\n return _.includes(this.props.user.permissions, this.props.adminPermission);\n }\n\n closeCommentGallery() {\n this.setState({\n imagePopupSource: [],\n imagePopupOpen: false,\n });\n }\n\n renderCommentDeleteConfirm() {\n return (\n <ConfirmPopup\n visible={!!this.state.commentToDelete}\n onConfirm={this.onPressConfirmDelete}\n onCancel={this.onPressCancelDelete}\n onClose={this.onPressCancelDelete}\n text=\"Are you sure you want to delete this comment?\"\n />\n );\n }\n\n renderCommentReportConfirm() {\n return (\n <ConfirmPopup\n visible={!!this.state.commentToReport}\n onConfirm={this.onPressConfirmReport}\n onCancel={this.onPressCancelReport}\n onClose={this.onPressCancelReport}\n text=\"Are you sure you want to report this comment?\"\n extraContent={<Text style={styles.commentReportText}>This comment will be reported to our team and considered for deletion</Text>}\n />\n );\n }\n\n renderCommentBlockConfirm() {\n return (\n <ConfirmPopup\n visible={!!this.state.commentToBlock}\n onConfirm={this.onPressConfirmBlock}\n onCancel={this.onPressCancelBlock}\n onClose={this.onPressCancelBlock}\n text=\"Are you sure you want to block this user?\"\n extraContent={<Text style={styles.commentReportText}>You will no longer see comments made by this user</Text>}\n />\n );\n }\n\n renderCommentUnblockConfirm() {\n return (\n <ConfirmPopup\n visible={!!this.state.commentToUnblock}\n onConfirm={this.onPressConfirmUnblock}\n onCancel={this.onPressCancelUnblock}\n onClose={this.onPressCancelUnblock}\n text=\"Are you sure you want to unblock this user?\"\n extraContent={<Text style={styles.commentReportText}>You will once again see comments made by this user</Text>}\n />\n );\n }\n\n renderCommentReportStatus() {\n const { commentReportedStatus } = this.state;\n const isSuccess = commentReportedStatus === 'success';\n return (\n <ConfirmPopup\n visible={!!commentReportedStatus}\n onConfirm={this.onPressConfirmReportStatus}\n text={isSuccess ? 'Thank you for reporting' : 'Unable to report'}\n extraContent={\n <Text style={styles.commentReportText}>\n {isSuccess ? 'We will review the comment within 24 hours' : 'There was a problem reporting the comment please try again later'}\n </Text>\n }\n hideNo\n yesText={'Done'}\n />\n );\n }\n\n renderCommentImage(c) {\n if (_.isEmpty(c.Image)) {\n return null;\n }\n return (\n <TouchableOpacity style={styles.commentImageContainer} onPress={this.onPressCommentImage.bind(this, get1400(c.Image))}>\n <Image style={styles.commentImage} source={{ uri: getThumb300(c.Image) }} />\n </TouchableOpacity>\n );\n }\n\n renderReplyText = (c, isUserBlocked) => {\n if (this.props.threadId || this.props.hideReplyButton) {\n return null;\n }\n\n const threadComments = _.filter(this.state.comments, innerC => {\n return innerC.ParentId === c.Id;\n });\n\n let content = null;\n\n if (_.isEmpty(threadComments)) {\n // no replies\n content = (\n <Text style={[styles.commentRepliesText, { color: this.props.colourBrandingMain }]}>{`Reply to ${getFirstName(\n !isUserBlocked && c.User ? c.User.displayName : 'comment',\n )}`}</Text>\n );\n } else {\n // existing replies\n const profilePics = _.take(\n _.uniqBy(threadComments, c => c.UserId),\n 3,\n );\n content = (\n <View style={styles.multiReplyContainer}>\n {profilePics.map((c, i) => {\n return <ProfilePic style={{ marginRight: -10 }} Diameter={20} ProfilePic={c.User.profilePic} />;\n })}\n <Text style={[styles.commentRepliesText, { marginLeft: 20, color: this.props.colourBrandingMain }]}>{`${\n threadComments.length\n } repl${getPluralOptions(threadComments.length, 'y', 'ies')}`}</Text>\n </View>\n );\n }\n\n return (\n <View style={styles.commentReplies}>\n <TouchableOpacity\n onPress={() => {\n this.onOpenThread(c);\n }}\n >\n {content}\n </TouchableOpacity>\n </View>\n );\n };\n\n renderComment(c) {\n const isUserBlocked = this.isUserBlocked(c);\n return (\n <View style={styles.comment} key={c.Id}>\n <View style={styles.commentFlex}>\n <ProfilePic ProfilePic={isUserBlocked ? null : c.User.profilePic} Diameter={40} style={styles.commentProfilePic} />\n <View style={styles.commentBlock}>\n <View style={styles.commentTitleRow}>\n {this.canRemoveComment(c) ? (\n <TouchableOpacity onPress={this.onPressDeleteComment.bind(this, c)}>\n <View style={[styles.commentButtonContainer, { backgroundColor: this.props.colourBrandingMain }]}>\n <Icon name=\"trash\" type=\"font-awesome\" iconStyle={styles.commentButtonIcon} />\n </View>\n </TouchableOpacity>\n ) : (\n !this.props.disableFlag && (\n <TouchableOpacity onPress={this.onPressReportComment.bind(this, c)}>\n <View style={[styles.commentButtonContainer, { backgroundColor: this.props.colourBrandingMain }]}>\n <Icon name=\"flag\" type=\"font-awesome\" iconStyle={styles.commentButtonIcon} />\n </View>\n </TouchableOpacity>\n )\n )}\n {!this.props.disableFlag &&\n this.canBlockComment(c) &&\n (isUserBlocked ? (\n <TouchableOpacity style={{ marginRight: 8 }} onPress={this.onPressUnblockUser.bind(this, c)}>\n <View style={[styles.commentButtonContainer, { backgroundColor: this.props.colourBrandingMain }]}>\n <Icon name=\"user-plus\" type=\"font-awesome\" iconStyle={styles.commentButtonIcon} />\n </View>\n </TouchableOpacity>\n ) : (\n <TouchableOpacity style={{ marginRight: 8 }} onPress={this.onPressBlockUser.bind(this, c)}>\n <View style={[styles.commentButtonContainer, { backgroundColor: this.props.colourBrandingMain }]}>\n <Icon name=\"user-times\" type=\"font-awesome\" iconStyle={styles.commentButtonIcon} />\n </View>\n </TouchableOpacity>\n ))}\n <Text style={[styles.commentName, { fontSize: this.getAdjustedSize(13) }]}>\n {isUserBlocked ? '[blocked user]' : c.User.displayName}\n </Text>\n </View>\n {!_.isEmpty(c.Comment) && (\n <Text style={[styles.commentText, { fontSize: this.getAdjustedSize(13) }]}>{isUserBlocked ? '[hidden]' : c.Comment}</Text>\n )}\n {!isUserBlocked && this.renderCommentImage(c)}\n </View>\n </View>\n <View style={styles.commentBottom}>\n <Text style={[styles.commentTime, { fontSize: this.getAdjustedSize(13) }]}>\n {moment\n .utc(c.Timestamp)\n .local()\n .format('D MMM • h:mma')}\n </Text>\n {this.renderReplyText(c, isUserBlocked)}\n </View>\n </View>\n );\n }\n\n renderMute() {\n const { notificationsForComments } = this.props;\n const { muteLoaded, muteExpiry, processing } = this.state;\n if (!notificationsForComments || !muteLoaded) return null;\n\n if (processing)\n return (\n <View style={styles.muteSpinnerContainer}>\n <Spinner size={'small'} color={this.props.colourBrandingMain} />\n </View>\n );\n\n const isMuted = this.isMuted();\n const hours = this.getMuteRemaining();\n const mutedFor = `Muted for ${hours} hour${getPluralS(hours)}`;\n // console.log(muteExpiry.format('DD MMM YYYY hh:mm a'));\n\n return (\n <View style={styles.muteContainer}>\n {isMuted && muteExpiry ? <Text style={[{ color: this.props.colourBrandingMain }, styles.mutedForText]}>{mutedFor}</Text> : null}\n <InlineButton\n onPress={isMuted ? this.onUnmute : this.onMute}\n color=\"#fff\"\n style={[{ borderColor: this.props.colourBrandingMain }, styles.muteButton]}\n disabled={processing}\n disabledOpacity\n noText\n >\n <View style={styles.muteButtonInner}>\n <Icon\n name={isMuted ? 'bell-o' : 'bell-slash-o'}\n type={'font-awesome'}\n iconStyle={[{ color: this.props.colourBrandingMain }, styles.muteButtonIcon]}\n />\n <Text style={[{ color: this.props.colourBrandingMain }, styles.muteButtonText]}>{isMuted ? 'Unmute' : 'Mute'}</Text>\n </View>\n </InlineButton>\n </View>\n );\n }\n\n renderComments() {\n if (this.state.commentsLoading) {\n return (\n <View style={styles.commentSection}>\n <Spinner color={this.props.colourBrandingMain} />\n </View>\n );\n }\n if (this.isEmpty() && !this.state.addingComment) {\n if (_.includes(this.props.user.hidden, 'addComment')) {\n return null;\n }\n if (!_.isNil(this.props.placeHolder) && _.isEmpty(this.props.placeHolder)) return null;\n return (\n <View style={styles.commentSection}>\n <Text style={[styles.commentsEmpty, { fontSize: this.getAdjustedSize(15) }]}>\n {_.isNil(this.props.placeHolder) ? 'Be the first to add a comment!' : this.props.placeHolder}\n </Text>\n </View>\n );\n }\n let source = [...this.state.comments];\n if (this.props.reverseOrder) {\n source = source.reverse();\n }\n if (!this.props.showReplies && !this.props.threadId) {\n source = _.filter(source, c => {\n return !c.ParentId;\n });\n }\n return (\n <View style={styles.commentSection}>\n {!this.isEmpty() && (\n <View style={styles.commentSectionTitleRow}>\n <View style={{ alignItems: 'flex-end' }}>\n {this.renderMute()}\n {!this.props.hideAddComment && this.state.comments.length > 2 && (\n <TouchableOpacity onPress={this.onGoToAdd.bind(this)}>\n <Text style={[styles.goToText, { color: this.props.colourBrandingMain }]}>Add a comment</Text>\n </TouchableOpacity>\n )}\n </View>\n <Text style={[styles.commentCount, { fontSize: this.getAdjustedSize(15) }]}>\n {this.state.comments.length}\n {` comment${getPluralS(this.state.comments.length)}`}\n </Text>\n </View>\n )}\n {this.props.reverseOrder && this.state.addingComment && <Spinner color={this.props.colourBrandingMain} />}\n {source.map(c => {\n return this.renderComment(c);\n })}\n {!this.props.reverseOrder && this.state.addingComment && <Spinner color={this.props.colourBrandingMain} />}\n </View>\n );\n }\n\n renderCommentImagePopup() {\n return (\n <ImagePopup\n visible={this.state.imagePopupOpen}\n images={this.state.imagePopupSource}\n onClose={this.closeCommentGallery.bind(this)}\n ref=\"commentImagePopup\"\n />\n );\n }\n\n renderReportLoading() {\n if (!this.state.reportLoading) return null;\n return (\n <View style={styles.reportLoadingContainer}>\n <Spinner color={this.props.colourBrandingMain} />\n </View>\n );\n }\n\n render() {\n if (_.includes(this.props.user.hidden, 'viewComment')) {\n return null;\n }\n return (\n <View style={[styles.commentSectionOuter, this.props.style]}>\n {this.renderComments()}\n {this.renderReportLoading()}\n {this.renderCommentDeleteConfirm()}\n {this.renderCommentReportConfirm()}\n {this.renderCommentBlockConfirm()}\n {this.renderCommentUnblockConfirm()}\n {this.renderCommentReportStatus()}\n {this.renderCommentImagePopup()}\n </View>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n commentSectionOuter: {\n flex: 1,\n paddingHorizontal: 16,\n },\n commentSection: {\n flex: 1,\n paddingVertical: 12,\n borderTopColor: LINEGREY,\n borderTopWidth: 1,\n },\n commentCount: {\n fontFamily: 'sf-semibold',\n color: TEXT_DARKEST,\n flex: 1,\n marginTop: 4,\n },\n comment: {\n marginTop: 16,\n },\n commentFlex: {\n flexDirection: 'row',\n },\n commentProfilePic: {\n marginRight: 8,\n },\n commentBlock: {\n flex: 1,\n backgroundColor: BG_GREY,\n borderRadius: 5,\n padding: 8,\n },\n commentTitleRow: {\n flexDirection: 'row-reverse',\n alignItems: 'center',\n },\n commentButtonContainer: {\n width: 24,\n height: 24,\n borderRadius: 12,\n alignItems: 'center',\n justifyContent: 'center',\n },\n commentButtonIcon: {\n fontSize: 13,\n color: '#fff',\n },\n commentName: {\n fontFamily: 'sf-semibold',\n color: TEXT_DARKEST,\n flex: 1,\n },\n commentText: {\n marginTop: 8,\n fontFamily: 'sf-regular',\n color: TEXT_DARKEST,\n },\n commentBottom: {\n flexDirection: 'row-reverse',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n commentTime: {\n fontFamily: 'sf-regular',\n marginTop: 4,\n color: TEXT_LIGHT,\n textAlign: 'right',\n },\n commentReplies: {\n flex: 1,\n paddingLeft: 48,\n },\n commentRepliesText: {\n fontFamily: 'sf-semibold',\n fontSize: 15,\n },\n multiReplyContainer: {\n flexDirection: 'row',\n alignItems: 'center',\n paddingVertical: 4,\n },\n commentImageContainer: {\n marginTop: 8,\n width: 60,\n height: 60,\n },\n commentImage: {\n width: 60,\n height: 60,\n borderRadius: 2,\n },\n commentsEmpty: {\n fontFamily: 'sf-semibold',\n color: TEXT_DARKEST,\n },\n commentSectionTitleRow: {\n flexDirection: 'row-reverse',\n },\n commentReportText: {\n fontFamily: 'sf-regular',\n fontSize: 14,\n paddingHorizontal: 22,\n textAlign: 'center',\n },\n reportLoadingContainer: {\n paddingVertical: 10,\n },\n goToText: {\n marginTop: 4,\n },\n muteSpinnerContainer: {\n width: 100,\n marginBottom: 6,\n },\n muteContainer: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'flex-end',\n marginBottom: 6,\n },\n mutedForText: {\n fontFamily: 'sf-semibold',\n fontSize: 13,\n marginRight: 8,\n },\n muteButton: {\n borderWidth: 1,\n paddingHorizontal: 8,\n },\n muteButtonInner: {\n flexDirection: 'row',\n alignItems: 'center',\n },\n muteButtonIcon: {\n fontSize: 14,\n },\n muteButtonText: {\n fontFamily: 'sf-semibold',\n fontSize: 14,\n marginLeft: 6,\n },\n});\n\nconst mapStateToProps = state => {\n return {\n colourBrandingMain: getMainBrandingColourFromState(state),\n user: state.user,\n notificationsForComments: getSiteSettingFromState(state, 'NotificationsForComments', false),\n blockedUsers: state.userSettings.blockedUsers || [],\n };\n};\n\nconst commentSection = connect(mapStateToProps, { blockUser, unblockUser }, null, { forwardRef: true })(CommentSection);\nexport { commentSection as CommentSection };\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AACxC,SAASC,IAAI,EAAEC,IAAI,EAAEC,gBAAgB,EAAEC,KAAK,EAAEC,UAAU,QAAQ,cAAc;AAC9E,OAAOC,CAAC,MAAM,QAAQ;AACtB,OAAOC,MAAM,MAAM,QAAQ;AAC3B,SAASC,OAAO,QAAQ,aAAa;AACrC,SAASC,IAAI,QAAQ,uBAAuB;AAC5C,SAASC,UAAU,EAAEC,WAAW,EAAEC,OAAO,EAAEC,uBAAuB,EAAEC,YAAY,EAAEC,gBAAgB,QAAQ,WAAW;AACrH,SAASC,8BAA8B,EAAEC,YAAY,EAAEC,OAAO,EAAEC,UAAU,EAAEC,QAAQ,QAAQ,YAAY;AACxG,SAASC,eAAe,EAAEC,mBAAmB,QAAQ,SAAS;AAC9D,SAASC,SAAS,EAAEC,WAAW,QAAQ,YAAY;AACnD,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,OAAO,QAAQ,WAAW;AACnC,SAASC,QAAQ,QAAQ,WAAW;AAEpC,MAAMC,cAAc,SAAS/B,SAAS,CAAC;EACrCgC,WAAWA,CAACC,KAAK,EAAE;IACjB,KAAK,CAACA,KAAK,CAAC;IAACC,eAAA,+BA6BQC,CAAC,IAAI;MAC1B,IAAI,CAACC,QAAQ,CAAC;QAAEC,eAAe,EAAEF;MAAE,CAAC,CAAC;IACvC,CAAC;IAAAD,eAAA,+BAEsB,MAAM;MAC3Bb,eAAe,CAACiB,aAAa,CAAC,IAAI,CAACC,KAAK,CAACF,eAAe,CAACG,EAAE,CAAC,CAACC,IAAI,CAACC,GAAG,IAAI;QACvEC,OAAO,CAACC,GAAG,CAAC,SAAS,CAAC;MACxB,CAAC,CAAC;MACF,MAAMC,WAAW,GAAGvC,CAAC,CAACwC,MAAM,CAAC,IAAI,CAACP,KAAK,CAACQ,QAAQ,EAAEZ,CAAC,IAAI;QACrD,OAAOA,CAAC,CAACK,EAAE,KAAK,IAAI,CAACD,KAAK,CAACF,eAAe,CAACG,EAAE;MAC/C,CAAC,CAAC;MACF,IAAI,CAACJ,QAAQ,CAAC;QACZW,QAAQ,EAAEF,WAAW;QACrBR,eAAe,EAAE;MACnB,CAAC,CAAC;IACJ,CAAC;IAAAH,eAAA,8BAEqB,MAAM;MAC1B,IAAI,CAACE,QAAQ,CAAC;QAAEC,eAAe,EAAE;MAAK,CAAC,CAAC;IAC1C,CAAC;IAAAH,eAAA,+BAEsBC,CAAC,IAAI;MAC1B,IAAI,CAACC,QAAQ,CAAC;QAAEY,eAAe,EAAEb;MAAE,CAAC,CAAC;IACvC,CAAC;IAAAD,eAAA,2BAEkBC,CAAC,IAAI;MACtB,IAAI,CAACC,QAAQ,CAAC;QAAEa,cAAc,EAAEd;MAAE,CAAC,CAAC;IACtC,CAAC;IAAAD,eAAA,8BAEqB,MAAM;MAC1B,MAAMgB,MAAM,GAAG,IAAI,CAACX,KAAK,CAACU,cAAc,CAACE,MAAM;MAC/C,IAAI,CAAClB,KAAK,CAACV,SAAS,CAAC2B,MAAM,CAAC;MAC5B,IAAI,CAACd,QAAQ,CAAC;QAAEa,cAAc,EAAE;MAAK,CAAC,CAAC;IACzC,CAAC;IAAAf,eAAA,6BAEoB,MAAM;MACzB,IAAI,CAACE,QAAQ,CAAC;QAAEa,cAAc,EAAE;MAAK,CAAC,CAAC;IACzC,CAAC;IAAAf,eAAA,6BAEoBC,CAAC,IAAI;MACxB,IAAI,CAACC,QAAQ,CAAC;QAAEgB,gBAAgB,EAAEjB;MAAE,CAAC,CAAC;IACxC,CAAC;IAAAD,eAAA,gCAEuB,MAAM;MAC5B,MAAMgB,MAAM,GAAG,IAAI,CAACX,KAAK,CAACa,gBAAgB,CAACD,MAAM;MACjD,IAAI,CAAClB,KAAK,CAACT,WAAW,CAAC0B,MAAM,CAAC;MAC9B,IAAI,CAACd,QAAQ,CAAC;QAAEgB,gBAAgB,EAAE;MAAK,CAAC,CAAC;IAC3C,CAAC;IAAAlB,eAAA,+BAEsB,MAAM;MAC3B,IAAI,CAACE,QAAQ,CAAC;QAAEgB,gBAAgB,EAAE;MAAK,CAAC,CAAC;IAC3C,CAAC;IAAAlB,eAAA,+BAEsB,MAAM;MAC3B,MAAMmB,SAAS,GAAG,IAAI,CAACd,KAAK,CAACS,eAAe,CAACR,EAAE;MAC/C,IAAI,CAACJ,QAAQ,CAAC;QAAEkB,aAAa,EAAE,IAAI;QAAEN,eAAe,EAAE;MAAK,CAAC,EAAE,MAAM;QAClE3B,eAAe,CACZkC,aAAa,CAACF,SAAS,CAAC,CACxBZ,IAAI,CAACC,GAAG,IAAI;UACX,IAAI,CAACN,QAAQ,CAAC;YAAEoB,qBAAqB,EAAE,SAAS;YAAEF,aAAa,EAAE;UAAM,CAAC,CAAC;QAC3E,CAAC,CAAC,CACDG,KAAK,CAACC,KAAK,IAAI;UACdf,OAAO,CAACC,GAAG,CAAC,eAAe,EAAEc,KAAK,CAAC;UACnC,IAAI,CAACtB,QAAQ,CAAC;YAAEoB,qBAAqB,EAAE,MAAM;YAAEF,aAAa,EAAE;UAAM,CAAC,CAAC;QACxE,CAAC,CAAC;MACN,CAAC,CAAC;IACJ,CAAC;IAAApB,eAAA,8BAEqB,MAAM;MAC1B,IAAI,CAACE,QAAQ,CAAC;QAAEY,eAAe,EAAE;MAAK,CAAC,CAAC;IAC1C,CAAC;IAAAd,eAAA,qCAE4B,MAAM;MACjC,IAAI,CAACE,QAAQ,CAAC;QAAEoB,qBAAqB,EAAE;MAAK,CAAC,CAAC;IAChD,CAAC;IAAAtB,eAAA,uBAacyB,OAAO,IAAI;MACxB7B,QAAQ,CAAC8B,UAAU,CAACC,QAAQ,CAAC,QAAQ,EAAE;QAAE,GAAG,IAAI,CAAC5B,KAAK;QAAE6B,QAAQ,EAAEH,OAAO,CAACnB;MAAG,CAAC,CAAC;IACjF,CAAC;IAAAN,eAAA,iBAEQ,MAAM;MACb,MAAM;QAAE6B,UAAU;QAAEC;MAAS,CAAC,GAAG,IAAI,CAAC/B,KAAK;MAC3C,IAAI,CAACG,QAAQ,CAAC;QAAE6B,UAAU,EAAE;MAAK,CAAC,EAAE,YAAY;QAC9C,IAAI;UACF,MAAM;YAAEC;UAAK,CAAC,GAAG,MAAM5C,mBAAmB,CAAC6C,UAAU,CAACJ,UAAU,EAAEC,QAAQ,CAAC;UAC3E;UACA,MAAMI,UAAU,GAAG7D,MAAM,CAAC2D,IAAI,CAACG,MAAM,CAAC;UACtC,IAAI,CAACjC,QAAQ,CAAC;YAAEgC,UAAU;YAAEH,UAAU,EAAE;UAAM,CAAC,CAAC;QAClD,CAAC,CAAC,OAAOP,KAAK,EAAE;UACdf,OAAO,CAACe,KAAK,CAAC,QAAQ,EAAEA,KAAK,CAAC;UAC9B,IAAI,CAACtB,QAAQ,CAAC;YAAE6B,UAAU,EAAE;UAAM,CAAC,CAAC;QACtC;MACF,CAAC,CAAC;IACJ,CAAC;IAAA/B,eAAA,mBAEU,MAAM;MACf,MAAM;QAAE6B,UAAU;QAAEC;MAAS,CAAC,GAAG,IAAI,CAAC/B,KAAK;MAC3C,IAAI,CAACG,QAAQ,CAAC;QAAE6B,UAAU,EAAE;MAAK,CAAC,EAAE,YAAY;QAC9C,IAAI;UACF,MAAM;YAAEC;UAAK,CAAC,GAAG,MAAM5C,mBAAmB,CAACgD,YAAY,CAACP,UAAU,EAAEC,QAAQ,CAAC;UAC7E;UACA,IAAI,CAAC5B,QAAQ,CAAC;YAAEgC,UAAU,EAAE,IAAI;YAAEH,UAAU,EAAE;UAAM,CAAC,CAAC;QACxD,CAAC,CAAC,OAAOP,KAAK,EAAE;UACdf,OAAO,CAACe,KAAK,CAAC,UAAU,EAAEA,KAAK,CAAC;UAChC,IAAI,CAACtB,QAAQ,CAAC;YAAE6B,UAAU,EAAE;UAAM,CAAC,CAAC;QACtC;MACF,CAAC,CAAC;IACJ,CAAC;IAAA/B,eAAA,kBAES,MAAM;MACd,MAAM;QAAEkC;MAAW,CAAC,GAAG,IAAI,CAAC7B,KAAK;MACjC,OAAO6B,UAAU,IAAI7D,MAAM,CAAC,CAAC,IAAI6D,UAAU;IAC7C,CAAC;IAAAlC,eAAA,2BAEkB,MAAM;MACvB,MAAM;QAAEkC;MAAW,CAAC,GAAG,IAAI,CAAC7B,KAAK;MACjC,MAAMgC,MAAM,GAAGH,UAAU,GAAG7D,MAAM,CAACiE,QAAQ,CAACJ,UAAU,CAACK,IAAI,CAAClE,MAAM,CAAC,CAAC,CAAC,CAAC,CAACmE,OAAO,CAAC,CAAC,GAAG,CAAC;MACpF,OAAOC,IAAI,CAACC,GAAG,CAACD,IAAI,CAACE,IAAI,CAACN,MAAM,CAAC,CAAC;IACpC,CAAC;IAAArC,eAAA,8BAEqB,MAAM;MAC1B,MAAM;QAAE+B;MAAW,CAAC,GAAG,IAAI,CAAC1B,KAAK;MACjC,MAAM;QAAEwB,UAAU;QAAEC,QAAQ;QAAEc;MAAyB,CAAC,GAAG,IAAI,CAAC7C,KAAK;MACrE,IAAIgC,UAAU,IAAI,CAACa,wBAAwB,EAAE;MAE7C,IAAI,CAAC1C,QAAQ,CAAC;QAAE6B,UAAU,EAAE;MAAK,CAAC,EAAE,YAAY;QAC9C,IAAI;UACF,MAAM;YAAEC;UAAK,CAAC,GAAG,MAAM5C,mBAAmB,CAACyD,4BAA4B,CAAChB,UAAU,EAAEC,QAAQ,CAAC;UAC7F;UACA,MAAMI,UAAU,GAAGF,IAAI,GAAG3D,MAAM,CAAC2D,IAAI,CAACG,MAAM,CAAC,GAAG,IAAI;UACpD,IAAI,CAACjC,QAAQ,CAAC;YAAEgC,UAAU;YAAEY,UAAU,EAAE,IAAI;YAAEf,UAAU,EAAE;UAAM,CAAC,CAAC;QACpE,CAAC,CAAC,OAAOP,KAAK,EAAE;UACdf,OAAO,CAACe,KAAK,CAAC,qBAAqB,EAAEA,KAAK,CAAC;UAC3C,IAAI,CAACtB,QAAQ,CAAC;YAAE6B,UAAU,EAAE;UAAM,CAAC,CAAC;QACtC;MACF,CAAC,CAAC;IACJ,CAAC;IAAA/B,eAAA,oBAmEW,MAAM;MAChB,OAAO,IAAI,CAACK,KAAK,CAAC0C,eAAe;IACnC,CAAC;IAAA/C,eAAA,wBAwBeC,CAAC,IAAI;MACnB,OAAO7B,CAAC,CAAC4E,QAAQ,CAAC,IAAI,CAACjD,KAAK,CAACkD,YAAY,EAAEhD,CAAC,CAACgB,MAAM,CAAC;IACtD,CAAC;IAAAjB,eAAA,0BAEiBC,CAAC,IAAI;MACrB,OAAO,IAAI,CAACF,KAAK,CAACmD,IAAI,CAACC,GAAG,KAAKlD,CAAC,CAACgB,MAAM;IACzC,CAAC;IAAAjB,eAAA,0BAiGiB,CAACC,CAAC,EAAEmD,aAAa,KAAK;MACtC,IAAI,IAAI,CAACrD,KAAK,CAAC6B,QAAQ,IAAI,IAAI,CAAC7B,KAAK,CAACsD,eAAe,EAAE;QACrD,OAAO,IAAI;MACb;MAEA,MAAMC,cAAc,GAAGlF,CAAC,CAACwC,MAAM,CAAC,IAAI,CAACP,KAAK,CAACQ,QAAQ,EAAE0C,MAAM,IAAI;QAC7D,OAAOA,MAAM,CAACC,QAAQ,KAAKvD,CAAC,CAACK,EAAE;MACjC,CAAC,CAAC;MAEF,IAAImD,OAAO,GAAG,IAAI;MAElB,IAAIrF,CAAC,CAACsF,OAAO,CAACJ,cAAc,CAAC,EAAE;QAC7B;QACAG,OAAO,gBACL5F,KAAA,CAAA8F,aAAA,CAAC3F,IAAI;UAAC4F,KAAK,EAAE,CAACC,MAAM,CAACC,kBAAkB,EAAE;YAAEC,KAAK,EAAE,IAAI,CAAChE,KAAK,CAACiE;UAAmB,CAAC;QAAE,GAAG,YAAWpF,YAAY,CAC3G,CAACwE,aAAa,IAAInD,CAAC,CAACgE,IAAI,GAAGhE,CAAC,CAACgE,IAAI,CAACC,WAAW,GAAG,SAClD,CAAE,EAAQ,CACX;MACH,CAAC,MAAM;QACL;QACA,MAAMC,WAAW,GAAG/F,CAAC,CAACgG,IAAI,CACxBhG,CAAC,CAACiG,MAAM,CAACf,cAAc,EAAErD,CAAC,IAAIA,CAAC,CAACgB,MAAM,CAAC,EACvC,CACF,CAAC;QACDwC,OAAO,gBACL5F,KAAA,CAAA8F,aAAA,CAAC5F,IAAI;UAAC6F,KAAK,EAAEC,MAAM,CAACS;QAAoB,GACrCH,WAAW,CAACI,GAAG,CAAC,CAACtE,CAAC,EAAEuE,CAAC,KAAK;UACzB,oBAAO3G,KAAA,CAAA8F,aAAA,CAACnE,UAAU;YAACoE,KAAK,EAAE;cAAEa,WAAW,EAAE,CAAC;YAAG,CAAE;YAACC,QAAQ,EAAE,EAAG;YAAClF,UAAU,EAAES,CAAC,CAACgE,IAAI,CAACU;UAAW,CAAE,CAAC;QACjG,CAAC,CAAC,eACF9G,KAAA,CAAA8F,aAAA,CAAC3F,IAAI;UAAC4F,KAAK,EAAE,CAACC,MAAM,CAACC,kBAAkB,EAAE;YAAEc,UAAU,EAAE,EAAE;YAAEb,KAAK,EAAE,IAAI,CAAChE,KAAK,CAACiE;UAAmB,CAAC;QAAE,GAAG,GACpGV,cAAc,CAACuB,MAChB,QAAOhG,gBAAgB,CAACyE,cAAc,CAACuB,MAAM,EAAE,GAAG,EAAE,KAAK,CAAE,EAAQ,CAChE,CACP;MACH;MAEA,oBACEhH,KAAA,CAAA8F,aAAA,CAAC5F,IAAI;QAAC6F,KAAK,EAAEC,MAAM,CAACiB;MAAe,gBACjCjH,KAAA,CAAA8F,aAAA,CAAC1F,gBAAgB;QACf8G,OAAO,EAAEA,CAAA,KAAM;UACb,IAAI,CAACC,YAAY,CAAC/E,CAAC,CAAC;QACtB;MAAE,GAEDwD,OACe,CACd,CAAC;IAEX,CAAC;IAlaC,IAAI,CAACpD,KAAK,GAAG;MACX0C,eAAe,EAAE,KAAK;MACtBlC,QAAQ,EAAE,EAAE;MACZoE,aAAa,EAAE,KAAK;MACpB9E,eAAe,EAAE,IAAI;MACrBW,eAAe,EAAE,IAAI;MACrBQ,qBAAqB,EAAE,IAAI;MAC3BF,aAAa,EAAE,KAAK;MACpBW,UAAU,EAAE,KAAK;MACjBG,UAAU,EAAE,IAAI;MAChBY,UAAU,EAAE;IACd,CAAC;EACH;EAEAoC,iBAAiBA,CAAA,EAAG;IAClB,IAAI,CAACC,mBAAmB,CAAC,CAAC;IAE1B,IAAI,CAAC/G,CAAC,CAAC4E,QAAQ,CAAC,IAAI,CAACjD,KAAK,CAACmD,IAAI,CAACkC,MAAM,EAAE,aAAa,CAAC,EAAE;MACtD,IAAI,CAACC,WAAW,CAAC,CAAC;IACpB;EACF;EAEAC,oBAAoBA,CAAA,EAAG;IACrB,IAAI,IAAI,CAACC,SAAS,EAAE;MAClBC,YAAY,CAAC,IAAI,CAACD,SAAS,CAAC;IAC9B;EACF;EA8EAE,mBAAmBA,CAACC,KAAK,EAAE;IACzB,IAAI,CAACxF,QAAQ,CAAC;MACZyF,gBAAgB,EAAE,CAACD,KAAK,CAAC;MACzBE,cAAc,EAAE;IAClB,CAAC,CAAC;EACJ;EAEAC,SAASA,CAAA,EAAG;IAAA,IAAAC,qBAAA;IACV,CAAAA,qBAAA,OAAI,CAAC/F,KAAK,CAACgG,YAAY,cAAAD,qBAAA,gBAAAA,qBAAA,GAAvBA,qBAAA,CAAyBE,OAAO,cAAAF,qBAAA,eAAhCA,qBAAA,CAAkCG,UAAU,CAAC,CAAC;EAChD;EAgEAC,eAAeA,CAACC,IAAI,EAAE;IACpB,IAAI,IAAI,CAACpG,KAAK,CAACqG,SAAS,EAAE;MACxB,OAAOD,IAAI,GAAG,IAAI,CAACpG,KAAK,CAACmD,IAAI,CAACmD,SAAS;IACzC;IACA,OAAOF,IAAI;EACb;EAEAd,WAAWA,CAAA,EAAG;IACZ,IAAI,CAAC,IAAI,CAAChF,KAAK,CAACiG,mBAAmB,EAAE;MAAA,IAAAC,sBAAA;MACnC,IAAI,CAACrG,QAAQ,CAAC;QACZoG,mBAAmB,EAAE,IAAI;QACzBvD,eAAe,EAAE;MACnB,CAAC,CAAC;MACF,CAAAwD,sBAAA,OAAI,CAACxG,KAAK,CAACgG,YAAY,cAAAQ,sBAAA,gBAAAA,sBAAA,GAAvBA,sBAAA,CAAyBP,OAAO,cAAAO,sBAAA,eAAhCA,sBAAA,CAAkCC,cAAc,CAAC,CAAC;MAElD,IAAI,CAACC,YAAY,CAAC,CAAC;IACrB;EACF;EAEA/C,OAAOA,CAAA,EAAG;IACR,OAAOtF,CAAC,CAACsF,OAAO,CAAC,IAAI,CAACrD,KAAK,CAACQ,QAAQ,CAAC;EACvC;EAEA4F,YAAYA,CAAA,EAAG;IACb,MAAMC,OAAO,GAAG,IAAI,CAAChD,OAAO,CAAC,CAAC,GAC1B,CAAC,GACDtF,CAAC,CAACuI,KAAK,CAAC,IAAI,CAACtG,KAAK,CAACQ,QAAQ,EAAEZ,CAAC,IAAI;MAChC,OAAOA,CAAC,CAAC2G,SAAS;IACpB,CAAC,CAAC,CAACA,SAAS;IAChBzH,eAAe,CAACkG,WAAW,CAAC,IAAI,CAACtF,KAAK,CAAC+B,QAAQ,EAAE,IAAI,CAAC/B,KAAK,CAAC8B,UAAU,EAAE6E,OAAO,CAAC,CAACnG,IAAI,CAACC,GAAG,IAAI;MAAA,IAAAqG,sBAAA;MAC3F,IAAI,CAAC3G,QAAQ,CACX;QACEW,QAAQ,EAAEzC,CAAC,CAAC0I,MAAM,CAChB1I,CAAC,CAACiG,MAAM,CACNjG,CAAC,CAACwC,MAAM,CAACxC,CAAC,CAAC2I,MAAM,CAAC,IAAI,CAAC1G,KAAK,CAACQ,QAAQ,EAAEL,GAAG,CAACwB,IAAI,CAAC,EAAE/B,CAAC,IAAI;UACrD,IAAI,CAAC,IAAI,CAACF,KAAK,CAAC6B,QAAQ,EAAE;YACxB,OAAO,IAAI;UACb;UACA,OAAO3B,CAAC,CAACK,EAAE,KAAK,IAAI,CAACP,KAAK,CAAC6B,QAAQ,IAAI3B,CAAC,CAACuD,QAAQ,KAAK,IAAI,CAACzD,KAAK,CAAC6B,QAAQ;QAC3E,CAAC,CAAC,EACF3B,CAAC,IAAI;UACH,OAAOA,CAAC,CAACK,EAAE;QACb,CACF,CAAC,EACD,WACF,CAAC;QACDyC,eAAe,EAAE;MACnB,CAAC,EACD,MAAM;QACJ,IAAI,IAAI,CAAChD,KAAK,CAACiH,gBAAgB,EAAE;UAC/B,IAAI,CAACjH,KAAK,CAACiH,gBAAgB,CAAC,IAAI,CAAC3G,KAAK,CAACQ,QAAQ,CAACgE,MAAM,CAAC;QACzD;MACF,CACF,CAAC;MACD;MACA,CAAAgC,sBAAA,OAAI,CAAC9G,KAAK,CAACgG,YAAY,cAAAc,sBAAA,gBAAAA,sBAAA,GAAvBA,sBAAA,CAAyBb,OAAO,cAAAa,sBAAA,eAAhCA,sBAAA,CAAkCI,gBAAgB,CAAC,CAAC;MACpD;MACA,IAAI,IAAI,CAAClH,KAAK,CAACmH,IAAI,EAAE;QACnB,IAAI,CAAC3B,SAAS,GAAG4B,UAAU,CAAC,MAAM;UAChC,IAAI,CAACV,YAAY,CAAC,CAAC;QACrB,CAAC,EAAE,IAAI,CAAC1G,KAAK,CAACqH,gBAAgB,IAAI,IAAI,CAAC;MACzC;IACF,CAAC,CAAC;EACJ;EAMAC,oBAAoBA,CAAA,EAAG;IACrB,IAAI,CAACnH,QAAQ,CAAC;MACZ+E,aAAa,EAAE;IACjB,CAAC,CAAC;EACJ;EAEAqC,YAAYA,CAAC7F,OAAO,EAAE;IACpB,MAAMd,WAAW,GAAG,IAAI,CAACN,KAAK,CAACQ,QAAQ;IACvCF,WAAW,CAAC4G,IAAI,CAAC9F,OAAO,CAAC;IACzB,IAAI,CAACvB,QAAQ,CACX;MACE+E,aAAa,EAAE,KAAK;MACpBpE,QAAQ,EAAEF;IACZ,CAAC,EACD,MAAM;MACJ,IAAI,IAAI,CAACZ,KAAK,CAACyH,cAAc,EAAE;QAC7B,IAAI,CAACzH,KAAK,CAACyH,cAAc,CAAC,CAAC;MAC7B;IACF,CACF,CAAC;EACH;EAUAC,gBAAgBA,CAACxH,CAAC,EAAE;IAClB,IAAI,IAAI,CAACF,KAAK,CAACmD,IAAI,CAACC,GAAG,KAAKlD,CAAC,CAACgB,MAAM,EAAE;MACpC,OAAO,IAAI;IACb;IACA,OAAO7C,CAAC,CAAC4E,QAAQ,CAAC,IAAI,CAACjD,KAAK,CAACmD,IAAI,CAACwE,WAAW,EAAE,IAAI,CAAC3H,KAAK,CAAC4H,eAAe,CAAC;EAC5E;EAEAC,mBAAmBA,CAAA,EAAG;IACpB,IAAI,CAAC1H,QAAQ,CAAC;MACZyF,gBAAgB,EAAE,EAAE;MACpBC,cAAc,EAAE;IAClB,CAAC,CAAC;EACJ;EAEAiC,0BAA0BA,CAAA,EAAG;IAC3B,oBACEhK,KAAA,CAAA8F,aAAA,CAACpE,YAAY;MACXuI,OAAO,EAAE,CAAC,CAAC,IAAI,CAACzH,KAAK,CAACF,eAAgB;MACtC4H,SAAS,EAAE,IAAI,CAACC,oBAAqB;MACrCC,QAAQ,EAAE,IAAI,CAACC,mBAAoB;MACnCC,OAAO,EAAE,IAAI,CAACD,mBAAoB;MAClCE,IAAI,EAAC;IAA+C,CACrD,CAAC;EAEN;EAEAC,0BAA0BA,CAAA,EAAG;IAC3B,oBACExK,KAAA,CAAA8F,aAAA,CAACpE,YAAY;MACXuI,OAAO,EAAE,CAAC,CAAC,IAAI,CAACzH,KAAK,CAACS,eAAgB;MACtCiH,SAAS,EAAE,IAAI,CAACO,oBAAqB;MACrCL,QAAQ,EAAE,IAAI,CAACM,mBAAoB;MACnCJ,OAAO,EAAE,IAAI,CAACI,mBAAoB;MAClCH,IAAI,EAAC,+CAA+C;MACpDI,YAAY,eAAE3K,KAAA,CAAA8F,aAAA,CAAC3F,IAAI;QAAC4F,KAAK,EAAEC,MAAM,CAAC4E;MAAkB,GAAC,uEAA2E;IAAE,CACnI,CAAC;EAEN;EAEAC,yBAAyBA,CAAA,EAAG;IAC1B,oBACE7K,KAAA,CAAA8F,aAAA,CAACpE,YAAY;MACXuI,OAAO,EAAE,CAAC,CAAC,IAAI,CAACzH,KAAK,CAACU,cAAe;MACrCgH,SAAS,EAAE,IAAI,CAACY,mBAAoB;MACpCV,QAAQ,EAAE,IAAI,CAACW,kBAAmB;MAClCT,OAAO,EAAE,IAAI,CAACS,kBAAmB;MACjCR,IAAI,EAAC,2CAA2C;MAChDI,YAAY,eAAE3K,KAAA,CAAA8F,aAAA,CAAC3F,IAAI;QAAC4F,KAAK,EAAEC,MAAM,CAAC4E;MAAkB,GAAC,mDAAuD;IAAE,CAC/G,CAAC;EAEN;EAEAI,2BAA2BA,CAAA,EAAG;IAC5B,oBACEhL,KAAA,CAAA8F,aAAA,CAACpE,YAAY;MACXuI,OAAO,EAAE,CAAC,CAAC,IAAI,CAACzH,KAAK,CAACa,gBAAiB;MACvC6G,SAAS,EAAE,IAAI,CAACe,qBAAsB;MACtCb,QAAQ,EAAE,IAAI,CAACc,oBAAqB;MACpCZ,OAAO,EAAE,IAAI,CAACY,oBAAqB;MACnCX,IAAI,EAAC,6CAA6C;MAClDI,YAAY,eAAE3K,KAAA,CAAA8F,aAAA,CAAC3F,IAAI;QAAC4F,KAAK,EAAEC,MAAM,CAAC4E;MAAkB,GAAC,oDAAwD;IAAE,CAChH,CAAC;EAEN;EAEAO,yBAAyBA,CAAA,EAAG;IAC1B,MAAM;MAAE1H;IAAsB,CAAC,GAAG,IAAI,CAACjB,KAAK;IAC5C,MAAM4I,SAAS,GAAG3H,qBAAqB,KAAK,SAAS;IACrD,oBACEzD,KAAA,CAAA8F,aAAA,CAACpE,YAAY;MACXuI,OAAO,EAAE,CAAC,CAACxG,qBAAsB;MACjCyG,SAAS,EAAE,IAAI,CAACmB,0BAA2B;MAC3Cd,IAAI,EAAEa,SAAS,GAAG,yBAAyB,GAAG,kBAAmB;MACjET,YAAY,eACV3K,KAAA,CAAA8F,aAAA,CAAC3F,IAAI;QAAC4F,KAAK,EAAEC,MAAM,CAAC4E;MAAkB,GACnCQ,SAAS,GAAG,4CAA4C,GAAG,kEACxD,CACP;MACDE,MAAM;MACNC,OAAO,EAAE;IAAO,CACjB,CAAC;EAEN;EAEAC,kBAAkBA,CAACpJ,CAAC,EAAE;IACpB,IAAI7B,CAAC,CAACsF,OAAO,CAACzD,CAAC,CAAC/B,KAAK,CAAC,EAAE;MACtB,OAAO,IAAI;IACb;IACA,oBACEL,KAAA,CAAA8F,aAAA,CAAC1F,gBAAgB;MAAC2F,KAAK,EAAEC,MAAM,CAACyF,qBAAsB;MAACvE,OAAO,EAAE,IAAI,CAACU,mBAAmB,CAAC8D,IAAI,CAAC,IAAI,EAAE7K,OAAO,CAACuB,CAAC,CAAC/B,KAAK,CAAC;IAAE,gBACpHL,KAAA,CAAA8F,aAAA,CAACzF,KAAK;MAAC0F,KAAK,EAAEC,MAAM,CAAC2F,YAAa;MAACC,MAAM,EAAE;QAAEC,GAAG,EAAEjL,WAAW,CAACwB,CAAC,CAAC/B,KAAK;MAAE;IAAE,CAAE,CAC3D,CAAC;EAEvB;EAmDAyL,aAAaA,CAAC1J,CAAC,EAAE;IACf,MAAMmD,aAAa,GAAG,IAAI,CAACA,aAAa,CAACnD,CAAC,CAAC;IAC3C,oBACEpC,KAAA,CAAA8F,aAAA,CAAC5F,IAAI;MAAC6F,KAAK,EAAEC,MAAM,CAACpC,OAAQ;MAACmI,GAAG,EAAE3J,CAAC,CAACK;IAAG,gBACrCzC,KAAA,CAAA8F,aAAA,CAAC5F,IAAI;MAAC6F,KAAK,EAAEC,MAAM,CAACgG;IAAY,gBAC9BhM,KAAA,CAAA8F,aAAA,CAACnE,UAAU;MAACA,UAAU,EAAE4D,aAAa,GAAG,IAAI,GAAGnD,CAAC,CAACgE,IAAI,CAACU,UAAW;MAACD,QAAQ,EAAE,EAAG;MAACd,KAAK,EAAEC,MAAM,CAACiG;IAAkB,CAAE,CAAC,eACnHjM,KAAA,CAAA8F,aAAA,CAAC5F,IAAI;MAAC6F,KAAK,EAAEC,MAAM,CAACkG;IAAa,gBAC/BlM,KAAA,CAAA8F,aAAA,CAAC5F,IAAI;MAAC6F,KAAK,EAAEC,MAAM,CAACmG;IAAgB,GACjC,IAAI,CAACvC,gBAAgB,CAACxH,CAAC,CAAC,gBACvBpC,KAAA,CAAA8F,aAAA,CAAC1F,gBAAgB;MAAC8G,OAAO,EAAE,IAAI,CAACkF,oBAAoB,CAACV,IAAI,CAAC,IAAI,EAAEtJ,CAAC;IAAE,gBACjEpC,KAAA,CAAA8F,aAAA,CAAC5F,IAAI;MAAC6F,KAAK,EAAE,CAACC,MAAM,CAACqG,sBAAsB,EAAE;QAAEC,eAAe,EAAE,IAAI,CAACpK,KAAK,CAACiE;MAAmB,CAAC;IAAE,gBAC/FnG,KAAA,CAAA8F,aAAA,CAACpF,IAAI;MAAC6L,IAAI,EAAC,OAAO;MAACC,IAAI,EAAC,cAAc;MAACC,SAAS,EAAEzG,MAAM,CAAC0G;IAAkB,CAAE,CACzE,CACU,CAAC,GAEnB,CAAC,IAAI,CAACxK,KAAK,CAACyK,WAAW,iBACrB3M,KAAA,CAAA8F,aAAA,CAAC1F,gBAAgB;MAAC8G,OAAO,EAAE,IAAI,CAAC0F,oBAAoB,CAAClB,IAAI,CAAC,IAAI,EAAEtJ,CAAC;IAAE,gBACjEpC,KAAA,CAAA8F,aAAA,CAAC5F,IAAI;MAAC6F,KAAK,EAAE,CAACC,MAAM,CAACqG,sBAAsB,EAAE;QAAEC,eAAe,EAAE,IAAI,CAACpK,KAAK,CAACiE;MAAmB,CAAC;IAAE,gBAC/FnG,KAAA,CAAA8F,aAAA,CAACpF,IAAI;MAAC6L,IAAI,EAAC,MAAM;MAACC,IAAI,EAAC,cAAc;MAACC,SAAS,EAAEzG,MAAM,CAAC0G;IAAkB,CAAE,CACxE,CACU,CAErB,EACA,CAAC,IAAI,CAACxK,KAAK,CAACyK,WAAW,IACtB,IAAI,CAACE,eAAe,CAACzK,CAAC,CAAC,KACtBmD,aAAa,gBACZvF,KAAA,CAAA8F,aAAA,CAAC1F,gBAAgB;MAAC2F,KAAK,EAAE;QAAEa,WAAW,EAAE;MAAE,CAAE;MAACM,OAAO,EAAE,IAAI,CAAC4F,kBAAkB,CAACpB,IAAI,CAAC,IAAI,EAAEtJ,CAAC;IAAE,gBAC1FpC,KAAA,CAAA8F,aAAA,CAAC5F,IAAI;MAAC6F,KAAK,EAAE,CAACC,MAAM,CAACqG,sBAAsB,EAAE;QAAEC,eAAe,EAAE,IAAI,CAACpK,KAAK,CAACiE;MAAmB,CAAC;IAAE,gBAC/FnG,KAAA,CAAA8F,aAAA,CAACpF,IAAI;MAAC6L,IAAI,EAAC,WAAW;MAACC,IAAI,EAAC,cAAc;MAACC,SAAS,EAAEzG,MAAM,CAAC0G;IAAkB,CAAE,CAC7E,CACU,CAAC,gBAEnB1M,KAAA,CAAA8F,aAAA,CAAC1F,gBAAgB;MAAC2F,KAAK,EAAE;QAAEa,WAAW,EAAE;MAAE,CAAE;MAACM,OAAO,EAAE,IAAI,CAAC6F,gBAAgB,CAACrB,IAAI,CAAC,IAAI,EAAEtJ,CAAC;IAAE,gBACxFpC,KAAA,CAAA8F,aAAA,CAAC5F,IAAI;MAAC6F,KAAK,EAAE,CAACC,MAAM,CAACqG,sBAAsB,EAAE;QAAEC,eAAe,EAAE,IAAI,CAACpK,KAAK,CAACiE;MAAmB,CAAC;IAAE,gBAC/FnG,KAAA,CAAA8F,aAAA,CAACpF,IAAI;MAAC6L,IAAI,EAAC,YAAY;MAACC,IAAI,EAAC,cAAc;MAACC,SAAS,EAAEzG,MAAM,CAAC0G;IAAkB,CAAE,CAC9E,CACU,CACnB,CAAC,eACJ1M,KAAA,CAAA8F,aAAA,CAAC3F,IAAI;MAAC4F,KAAK,EAAE,CAACC,MAAM,CAACgH,WAAW,EAAE;QAAEC,QAAQ,EAAE,IAAI,CAAC5E,eAAe,CAAC,EAAE;MAAE,CAAC;IAAE,GACvE9C,aAAa,GAAG,gBAAgB,GAAGnD,CAAC,CAACgE,IAAI,CAACC,WACvC,CACF,CAAC,EACN,CAAC9F,CAAC,CAACsF,OAAO,CAACzD,CAAC,CAAC8K,OAAO,CAAC,iBACpBlN,KAAA,CAAA8F,aAAA,CAAC3F,IAAI;MAAC4F,KAAK,EAAE,CAACC,MAAM,CAACmH,WAAW,EAAE;QAAEF,QAAQ,EAAE,IAAI,CAAC5E,eAAe,CAAC,EAAE;MAAE,CAAC;IAAE,GAAE9C,aAAa,GAAG,UAAU,GAAGnD,CAAC,CAAC8K,OAAc,CAC1H,EACA,CAAC3H,aAAa,IAAI,IAAI,CAACiG,kBAAkB,CAACpJ,CAAC,CACxC,CACF,CAAC,eACPpC,KAAA,CAAA8F,aAAA,CAAC5F,IAAI;MAAC6F,KAAK,EAAEC,MAAM,CAACoH;IAAc,gBAChCpN,KAAA,CAAA8F,aAAA,CAAC3F,IAAI;MAAC4F,KAAK,EAAE,CAACC,MAAM,CAACqH,WAAW,EAAE;QAAEJ,QAAQ,EAAE,IAAI,CAAC5E,eAAe,CAAC,EAAE;MAAE,CAAC;IAAE,GACvE7H,MAAM,CACJ8M,GAAG,CAAClL,CAAC,CAAC2G,SAAS,CAAC,CAChBwE,KAAK,CAAC,CAAC,CACPC,MAAM,CAAC,eAAe,CACrB,CAAC,EACN,IAAI,CAACC,eAAe,CAACrL,CAAC,EAAEmD,aAAa,CAClC,CACF,CAAC;EAEX;EAEAmI,UAAUA,CAAA,EAAG;IACX,MAAM;MAAE3I;IAAyB,CAAC,GAAG,IAAI,CAAC7C,KAAK;IAC/C,MAAM;MAAE+C,UAAU;MAAEZ,UAAU;MAAEH;IAAW,CAAC,GAAG,IAAI,CAAC1B,KAAK;IACzD,IAAI,CAACuC,wBAAwB,IAAI,CAACE,UAAU,EAAE,OAAO,IAAI;IAEzD,IAAIf,UAAU,EACZ,oBACElE,KAAA,CAAA8F,aAAA,CAAC5F,IAAI;MAAC6F,KAAK,EAAEC,MAAM,CAAC2H;IAAqB,gBACvC3N,KAAA,CAAA8F,aAAA,CAAChE,OAAO;MAACwG,IAAI,EAAE,OAAQ;MAACpC,KAAK,EAAE,IAAI,CAAChE,KAAK,CAACiE;IAAmB,CAAE,CAC3D,CAAC;IAGX,MAAMyH,OAAO,GAAG,IAAI,CAACA,OAAO,CAAC,CAAC;IAC9B,MAAMC,KAAK,GAAG,IAAI,CAACC,gBAAgB,CAAC,CAAC;IACrC,MAAMC,QAAQ,GAAI,aAAYF,KAAM,QAAOlN,UAAU,CAACkN,KAAK,CAAE,EAAC;IAC9D;;IAEA,oBACE7N,KAAA,CAAA8F,aAAA,CAAC5F,IAAI;MAAC6F,KAAK,EAAEC,MAAM,CAACgI;IAAc,GAC/BJ,OAAO,IAAIvJ,UAAU,gBAAGrE,KAAA,CAAA8F,aAAA,CAAC3F,IAAI;MAAC4F,KAAK,EAAE,CAAC;QAAEG,KAAK,EAAE,IAAI,CAAChE,KAAK,CAACiE;MAAmB,CAAC,EAAEH,MAAM,CAACiI,YAAY;IAAE,GAAEF,QAAe,CAAC,GAAG,IAAI,eAC/H/N,KAAA,CAAA8F,aAAA,CAACjE,YAAY;MACXqF,OAAO,EAAE0G,OAAO,GAAG,IAAI,CAACM,QAAQ,GAAG,IAAI,CAACC,MAAO;MAC/CjI,KAAK,EAAC,MAAM;MACZH,KAAK,EAAE,CAAC;QAAEqI,WAAW,EAAE,IAAI,CAAClM,KAAK,CAACiE;MAAmB,CAAC,EAAEH,MAAM,CAACqI,UAAU,CAAE;MAC3EC,QAAQ,EAAEpK,UAAW;MACrBqK,eAAe;MACfC,MAAM;IAAA,gBAENxO,KAAA,CAAA8F,aAAA,CAAC5F,IAAI;MAAC6F,KAAK,EAAEC,MAAM,CAACyI;IAAgB,gBAClCzO,KAAA,CAAA8F,aAAA,CAACpF,IAAI;MACH6L,IAAI,EAAEqB,OAAO,GAAG,QAAQ,GAAG,cAAe;MAC1CpB,IAAI,EAAE,cAAe;MACrBC,SAAS,EAAE,CAAC;QAAEvG,KAAK,EAAE,IAAI,CAAChE,KAAK,CAACiE;MAAmB,CAAC,EAAEH,MAAM,CAAC0I,cAAc;IAAE,CAC9E,CAAC,eACF1O,KAAA,CAAA8F,aAAA,CAAC3F,IAAI;MAAC4F,KAAK,EAAE,CAAC;QAAEG,KAAK,EAAE,IAAI,CAAChE,KAAK,CAACiE;MAAmB,CAAC,EAAEH,MAAM,CAAC2I,cAAc;IAAE,GAAEf,OAAO,GAAG,QAAQ,GAAG,MAAa,CAC/G,CACM,CACV,CAAC;EAEX;EAEAgB,cAAcA,CAAA,EAAG;IACf,IAAI,IAAI,CAACpM,KAAK,CAAC0C,eAAe,EAAE;MAC9B,oBACElF,KAAA,CAAA8F,aAAA,CAAC5F,IAAI;QAAC6F,KAAK,EAAEC,MAAM,CAAC6I;MAAe,gBACjC7O,KAAA,CAAA8F,aAAA,CAAChE,OAAO;QAACoE,KAAK,EAAE,IAAI,CAAChE,KAAK,CAACiE;MAAmB,CAAE,CAC5C,CAAC;IAEX;IACA,IAAI,IAAI,CAACN,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAACrD,KAAK,CAAC4E,aAAa,EAAE;MAC/C,IAAI7G,CAAC,CAAC4E,QAAQ,CAAC,IAAI,CAACjD,KAAK,CAACmD,IAAI,CAACkC,MAAM,EAAE,YAAY,CAAC,EAAE;QACpD,OAAO,IAAI;MACb;MACA,IAAI,CAAChH,CAAC,CAACuO,KAAK,CAAC,IAAI,CAAC5M,KAAK,CAAC6M,WAAW,CAAC,IAAIxO,CAAC,CAACsF,OAAO,CAAC,IAAI,CAAC3D,KAAK,CAAC6M,WAAW,CAAC,EAAE,OAAO,IAAI;MACtF,oBACE/O,KAAA,CAAA8F,aAAA,CAAC5F,IAAI;QAAC6F,KAAK,EAAEC,MAAM,CAAC6I;MAAe,gBACjC7O,KAAA,CAAA8F,aAAA,CAAC3F,IAAI;QAAC4F,KAAK,EAAE,CAACC,MAAM,CAACgJ,aAAa,EAAE;UAAE/B,QAAQ,EAAE,IAAI,CAAC5E,eAAe,CAAC,EAAE;QAAE,CAAC;MAAE,GACzE9H,CAAC,CAACuO,KAAK,CAAC,IAAI,CAAC5M,KAAK,CAAC6M,WAAW,CAAC,GAAG,gCAAgC,GAAG,IAAI,CAAC7M,KAAK,CAAC6M,WAC7E,CACF,CAAC;IAEX;IACA,IAAInD,MAAM,GAAG,CAAC,GAAG,IAAI,CAACpJ,KAAK,CAACQ,QAAQ,CAAC;IACrC,IAAI,IAAI,CAACd,KAAK,CAAC+M,YAAY,EAAE;MAC3BrD,MAAM,GAAGA,MAAM,CAACsD,OAAO,CAAC,CAAC;IAC3B;IACA,IAAI,CAAC,IAAI,CAAChN,KAAK,CAACiN,WAAW,IAAI,CAAC,IAAI,CAACjN,KAAK,CAAC6B,QAAQ,EAAE;MACnD6H,MAAM,GAAGrL,CAAC,CAACwC,MAAM,CAAC6I,MAAM,EAAExJ,CAAC,IAAI;QAC7B,OAAO,CAACA,CAAC,CAACuD,QAAQ;MACpB,CAAC,CAAC;IACJ;IACA,oBACE3F,KAAA,CAAA8F,aAAA,CAAC5F,IAAI;MAAC6F,KAAK,EAAEC,MAAM,CAAC6I;IAAe,GAChC,CAAC,IAAI,CAAChJ,OAAO,CAAC,CAAC,iBACd7F,KAAA,CAAA8F,aAAA,CAAC5F,IAAI;MAAC6F,KAAK,EAAEC,MAAM,CAACoJ;IAAuB,gBACzCpP,KAAA,CAAA8F,aAAA,CAAC5F,IAAI;MAAC6F,KAAK,EAAE;QAAEsJ,UAAU,EAAE;MAAW;IAAE,GACrC,IAAI,CAAC3B,UAAU,CAAC,CAAC,EACjB,CAAC,IAAI,CAACxL,KAAK,CAACoN,cAAc,IAAI,IAAI,CAAC9M,KAAK,CAACQ,QAAQ,CAACgE,MAAM,GAAG,CAAC,iBAC3DhH,KAAA,CAAA8F,aAAA,CAAC1F,gBAAgB;MAAC8G,OAAO,EAAE,IAAI,CAACc,SAAS,CAAC0D,IAAI,CAAC,IAAI;IAAE,gBACnD1L,KAAA,CAAA8F,aAAA,CAAC3F,IAAI;MAAC4F,KAAK,EAAE,CAACC,MAAM,CAACuJ,QAAQ,EAAE;QAAErJ,KAAK,EAAE,IAAI,CAAChE,KAAK,CAACiE;MAAmB,CAAC;IAAE,GAAC,eAAmB,CAC7E,CAEhB,CAAC,eACPnG,KAAA,CAAA8F,aAAA,CAAC3F,IAAI;MAAC4F,KAAK,EAAE,CAACC,MAAM,CAACwJ,YAAY,EAAE;QAAEvC,QAAQ,EAAE,IAAI,CAAC5E,eAAe,CAAC,EAAE;MAAE,CAAC;IAAE,GACxE,IAAI,CAAC7F,KAAK,CAACQ,QAAQ,CAACgE,MAAM,EACzB,WAAUrG,UAAU,CAAC,IAAI,CAAC6B,KAAK,CAACQ,QAAQ,CAACgE,MAAM,CAAE,EAC/C,CACF,CACP,EACA,IAAI,CAAC9E,KAAK,CAAC+M,YAAY,IAAI,IAAI,CAACzM,KAAK,CAAC4E,aAAa,iBAAIpH,KAAA,CAAA8F,aAAA,CAAChE,OAAO;MAACoE,KAAK,EAAE,IAAI,CAAChE,KAAK,CAACiE;IAAmB,CAAE,CAAC,EACxGyF,MAAM,CAAClF,GAAG,CAACtE,CAAC,IAAI;MACf,OAAO,IAAI,CAAC0J,aAAa,CAAC1J,CAAC,CAAC;IAC9B,CAAC,CAAC,EACD,CAAC,IAAI,CAACF,KAAK,CAAC+M,YAAY,IAAI,IAAI,CAACzM,KAAK,CAAC4E,aAAa,iBAAIpH,KAAA,CAAA8F,aAAA,CAAChE,OAAO;MAACoE,KAAK,EAAE,IAAI,CAAChE,KAAK,CAACiE;IAAmB,CAAE,CACrG,CAAC;EAEX;EAEAsJ,uBAAuBA,CAAA,EAAG;IACxB,oBACEzP,KAAA,CAAA8F,aAAA,CAAClE,UAAU;MACTqI,OAAO,EAAE,IAAI,CAACzH,KAAK,CAACuF,cAAe;MACnC2H,MAAM,EAAE,IAAI,CAAClN,KAAK,CAACsF,gBAAiB;MACpCwC,OAAO,EAAE,IAAI,CAACP,mBAAmB,CAAC2B,IAAI,CAAC,IAAI,CAAE;MAC7CiE,GAAG,EAAC;IAAmB,CACxB,CAAC;EAEN;EAEAC,mBAAmBA,CAAA,EAAG;IACpB,IAAI,CAAC,IAAI,CAACpN,KAAK,CAACe,aAAa,EAAE,OAAO,IAAI;IAC1C,oBACEvD,KAAA,CAAA8F,aAAA,CAAC5F,IAAI;MAAC6F,KAAK,EAAEC,MAAM,CAAC6J;IAAuB,gBACzC7P,KAAA,CAAA8F,aAAA,CAAChE,OAAO;MAACoE,KAAK,EAAE,IAAI,CAAChE,KAAK,CAACiE;IAAmB,CAAE,CAC5C,CAAC;EAEX;EAEA2J,MAAMA,CAAA,EAAG;IACP,IAAIvP,CAAC,CAAC4E,QAAQ,CAAC,IAAI,CAACjD,KAAK,CAACmD,IAAI,CAACkC,MAAM,EAAE,aAAa,CAAC,EAAE;MACrD,OAAO,IAAI;IACb;IACA,oBACEvH,KAAA,CAAA8F,aAAA,CAAC5F,IAAI;MAAC6F,KAAK,EAAE,CAACC,MAAM,CAAC+J,mBAAmB,EAAE,IAAI,CAAC7N,KAAK,CAAC6D,KAAK;IAAE,GACzD,IAAI,CAAC6I,cAAc,CAAC,CAAC,EACrB,IAAI,CAACgB,mBAAmB,CAAC,CAAC,EAC1B,IAAI,CAAC5F,0BAA0B,CAAC,CAAC,EACjC,IAAI,CAACQ,0BAA0B,CAAC,CAAC,EACjC,IAAI,CAACK,yBAAyB,CAAC,CAAC,EAChC,IAAI,CAACG,2BAA2B,CAAC,CAAC,EAClC,IAAI,CAACG,yBAAyB,CAAC,CAAC,EAChC,IAAI,CAACsE,uBAAuB,CAAC,CAC1B,CAAC;EAEX;AACF;AAEA,MAAMzJ,MAAM,GAAG1F,UAAU,CAAC0P,MAAM,CAAC;EAC/BD,mBAAmB,EAAE;IACnBE,IAAI,EAAE,CAAC;IACPC,iBAAiB,EAAE;EACrB,CAAC;EACDrB,cAAc,EAAE;IACdoB,IAAI,EAAE,CAAC;IACPE,eAAe,EAAE,EAAE;IACnBC,cAAc,EAAE/O,QAAQ;IACxBgP,cAAc,EAAE;EAClB,CAAC;EACDb,YAAY,EAAE;IACZc,UAAU,EAAE,aAAa;IACzBpK,KAAK,EAAEhF,YAAY;IACnB+O,IAAI,EAAE,CAAC;IACPM,SAAS,EAAE;EACb,CAAC;EACD3M,OAAO,EAAE;IACP2M,SAAS,EAAE;EACb,CAAC;EACDvE,WAAW,EAAE;IACXwE,aAAa,EAAE;EACjB,CAAC;EACDvE,iBAAiB,EAAE;IACjBrF,WAAW,EAAE;EACf,CAAC;EACDsF,YAAY,EAAE;IACZ+D,IAAI,EAAE,CAAC;IACP3D,eAAe,EAAEnL,OAAO;IACxBsP,YAAY,EAAE,CAAC;IACfC,OAAO,EAAE;EACX,CAAC;EACDvE,eAAe,EAAE;IACfqE,aAAa,EAAE,aAAa;IAC5BnB,UAAU,EAAE;EACd,CAAC;EACDhD,sBAAsB,EAAE;IACtBsE,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE,EAAE;IACVH,YAAY,EAAE,EAAE;IAChBpB,UAAU,EAAE,QAAQ;IACpBwB,cAAc,EAAE;EAClB,CAAC;EACDnE,iBAAiB,EAAE;IACjBO,QAAQ,EAAE,EAAE;IACZ/G,KAAK,EAAE;EACT,CAAC;EACD8G,WAAW,EAAE;IACXsD,UAAU,EAAE,aAAa;IACzBpK,KAAK,EAAEhF,YAAY;IACnB+O,IAAI,EAAE;EACR,CAAC;EACD9C,WAAW,EAAE;IACXoD,SAAS,EAAE,CAAC;IACZD,UAAU,EAAE,YAAY;IACxBpK,KAAK,EAAEhF;EACT,CAAC;EACDkM,aAAa,EAAE;IACboD,aAAa,EAAE,aAAa;IAC5BK,cAAc,EAAE,eAAe;IAC/BxB,UAAU,EAAE;EACd,CAAC;EACDhC,WAAW,EAAE;IACXiD,UAAU,EAAE,YAAY;IACxBC,SAAS,EAAE,CAAC;IACZrK,KAAK,EAAE9E,UAAU;IACjB0P,SAAS,EAAE;EACb,CAAC;EACD7J,cAAc,EAAE;IACdgJ,IAAI,EAAE,CAAC;IACPc,WAAW,EAAE;EACf,CAAC;EACD9K,kBAAkB,EAAE;IAClBqK,UAAU,EAAE,aAAa;IACzBrD,QAAQ,EAAE;EACZ,CAAC;EACDxG,mBAAmB,EAAE;IACnB+J,aAAa,EAAE,KAAK;IACpBnB,UAAU,EAAE,QAAQ;IACpBc,eAAe,EAAE;EACnB,CAAC;EACD1E,qBAAqB,EAAE;IACrB8E,SAAS,EAAE,CAAC;IACZI,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE;EACV,CAAC;EACDjF,YAAY,EAAE;IACZgF,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE,EAAE;IACVH,YAAY,EAAE;EAChB,CAAC;EACDzB,aAAa,EAAE;IACbsB,UAAU,EAAE,aAAa;IACzBpK,KAAK,EAAEhF;EACT,CAAC;EACDkO,sBAAsB,EAAE;IACtBoB,aAAa,EAAE;EACjB,CAAC;EACD5F,iBAAiB,EAAE;IACjB0F,UAAU,EAAE,YAAY;IACxBrD,QAAQ,EAAE,EAAE;IACZiD,iBAAiB,EAAE,EAAE;IACrBY,SAAS,EAAE;EACb,CAAC;EACDjB,sBAAsB,EAAE;IACtBM,eAAe,EAAE;EACnB,CAAC;EACDZ,QAAQ,EAAE;IACRgB,SAAS,EAAE;EACb,CAAC;EACD5C,oBAAoB,EAAE;IACpBgD,KAAK,EAAE,GAAG;IACVK,YAAY,EAAE;EAChB,CAAC;EACDhD,aAAa,EAAE;IACbwC,aAAa,EAAE,KAAK;IACpBnB,UAAU,EAAE,QAAQ;IACpBwB,cAAc,EAAE,UAAU;IAC1BG,YAAY,EAAE;EAChB,CAAC;EACD/C,YAAY,EAAE;IACZqC,UAAU,EAAE,aAAa;IACzBrD,QAAQ,EAAE,EAAE;IACZrG,WAAW,EAAE;EACf,CAAC;EACDyH,UAAU,EAAE;IACV4C,WAAW,EAAE,CAAC;IACdf,iBAAiB,EAAE;EACrB,CAAC;EACDzB,eAAe,EAAE;IACf+B,aAAa,EAAE,KAAK;IACpBnB,UAAU,EAAE;EACd,CAAC;EACDX,cAAc,EAAE;IACdzB,QAAQ,EAAE;EACZ,CAAC;EACD0B,cAAc,EAAE;IACd2B,UAAU,EAAE,aAAa;IACzBrD,QAAQ,EAAE,EAAE;IACZlG,UAAU,EAAE;EACd;AACF,CAAC,CAAC;AAEF,MAAMmK,eAAe,GAAG1O,KAAK,IAAI;EAC/B,OAAO;IACL2D,kBAAkB,EAAElF,8BAA8B,CAACuB,KAAK,CAAC;IACzD6C,IAAI,EAAE7C,KAAK,CAAC6C,IAAI;IAChBN,wBAAwB,EAAEjE,uBAAuB,CAAC0B,KAAK,EAAE,0BAA0B,EAAE,KAAK,CAAC;IAC3F4C,YAAY,EAAE5C,KAAK,CAAC2O,YAAY,CAAC/L,YAAY,IAAI;EACnD,CAAC;AACH,CAAC;AAED,MAAMyJ,cAAc,GAAGpO,OAAO,CAACyQ,eAAe,EAAE;EAAE1P,SAAS;EAAEC;AAAY,CAAC,EAAE,IAAI,EAAE;EAAE2P,UAAU,EAAE;AAAK,CAAC,CAAC,CAACpP,cAAc,CAAC;AACvH,SAAS6M,cAAc,IAAI7M,cAAc"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import React, { PureComponent } from 'react';
|
|
2
|
+
import { Text, View } from 'react-native';
|
|
3
|
+
import _ from 'lodash';
|
|
4
|
+
import { connect } from 'react-redux';
|
|
5
|
+
import { getMainBrandingColourFromState, TEXT_DARK } from '../colours';
|
|
6
|
+
import { Spinner } from './Spinner';
|
|
7
|
+
import { InlineButton } from './InlineButton';
|
|
8
|
+
import { MiddlePopup } from './MiddlePopup';
|
|
9
|
+
class ConfirmPopup extends PureComponent {
|
|
10
|
+
render() {
|
|
11
|
+
return /*#__PURE__*/React.createElement(MiddlePopup, {
|
|
12
|
+
visible: this.props.visible,
|
|
13
|
+
onClose: this.props.onClose,
|
|
14
|
+
style: [styles.popup, this.props.headerContent && {
|
|
15
|
+
paddingTop: 16
|
|
16
|
+
}]
|
|
17
|
+
}, this.props.headerContent && /*#__PURE__*/React.createElement(View, {
|
|
18
|
+
style: {
|
|
19
|
+
width: 350,
|
|
20
|
+
marginBottom: 16
|
|
21
|
+
}
|
|
22
|
+
}, this.props.headerContent), !_.isEmpty(this.props.text) && /*#__PURE__*/React.createElement(Text, {
|
|
23
|
+
style: [styles.text, this.props.textAlignLeft && styles.textAlignLeft]
|
|
24
|
+
}, this.props.text), !_.isEmpty(this.props.subtext) && /*#__PURE__*/React.createElement(Text, {
|
|
25
|
+
style: [styles.subtext, this.props.textAlignLeft && styles.textAlignLeft]
|
|
26
|
+
}, this.props.subtext), this.props.extraContent && /*#__PURE__*/React.createElement(View, {
|
|
27
|
+
style: {
|
|
28
|
+
width: 350,
|
|
29
|
+
marginTop: 16
|
|
30
|
+
}
|
|
31
|
+
}, this.props.extraContent), this.props.children, /*#__PURE__*/React.createElement(View, {
|
|
32
|
+
style: [styles.buttonsContainer, this.props.verticalButtons && styles.verticalButtons]
|
|
33
|
+
}, this.props.buttonsLoading && /*#__PURE__*/React.createElement(View, {
|
|
34
|
+
style: styles.loadingContainer
|
|
35
|
+
}, /*#__PURE__*/React.createElement(Spinner, null)), !this.props.hideNo && !this.props.buttonsLoading && /*#__PURE__*/React.createElement(InlineButton, {
|
|
36
|
+
onPress: this.props.onCancel,
|
|
37
|
+
color: "#fff",
|
|
38
|
+
style: [styles.button, styles.noButton, this.props.verticalButtons && styles.buttonVertical, {
|
|
39
|
+
borderColor: this.props.colourBrandingMain
|
|
40
|
+
}],
|
|
41
|
+
textStyle: {
|
|
42
|
+
color: this.props.colourBrandingMain
|
|
43
|
+
},
|
|
44
|
+
large: true
|
|
45
|
+
}, this.props.noText || 'No'), !this.props.hideYes && !this.props.buttonsLoading && /*#__PURE__*/React.createElement(InlineButton, {
|
|
46
|
+
onPress: this.props.onConfirm,
|
|
47
|
+
color: this.props.colourBrandingMain,
|
|
48
|
+
style: [styles.button, this.props.verticalButtons && styles.buttonVertical],
|
|
49
|
+
large: true
|
|
50
|
+
}, this.props.yesText || 'Yes')));
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
const styles = {
|
|
54
|
+
popup: {
|
|
55
|
+
padding: 24,
|
|
56
|
+
margin: 16,
|
|
57
|
+
maxWidth: 350
|
|
58
|
+
},
|
|
59
|
+
text: {
|
|
60
|
+
fontFamily: 'sf-bold',
|
|
61
|
+
fontSize: 20,
|
|
62
|
+
color: TEXT_DARK,
|
|
63
|
+
textAlign: 'center'
|
|
64
|
+
},
|
|
65
|
+
subtext: {
|
|
66
|
+
fontFamily: 'sf-regular',
|
|
67
|
+
fontSize: 17,
|
|
68
|
+
color: TEXT_DARK,
|
|
69
|
+
textAlign: 'center'
|
|
70
|
+
},
|
|
71
|
+
textAlignLeft: {
|
|
72
|
+
textAlign: 'left'
|
|
73
|
+
},
|
|
74
|
+
buttonsContainer: {
|
|
75
|
+
flexDirection: 'row',
|
|
76
|
+
marginTop: 24
|
|
77
|
+
},
|
|
78
|
+
loadingContainer: {
|
|
79
|
+
height: 40,
|
|
80
|
+
justifyContent: 'center',
|
|
81
|
+
alignItems: 'center'
|
|
82
|
+
},
|
|
83
|
+
button: {
|
|
84
|
+
width: 120,
|
|
85
|
+
paddingHorizontal: 2
|
|
86
|
+
},
|
|
87
|
+
noButton: {
|
|
88
|
+
borderWidth: 1,
|
|
89
|
+
marginRight: 16
|
|
90
|
+
},
|
|
91
|
+
buttonVertical: {
|
|
92
|
+
width: '100%',
|
|
93
|
+
marginTop: 16,
|
|
94
|
+
marginRight: 0,
|
|
95
|
+
paddingHorizontal: 8
|
|
96
|
+
},
|
|
97
|
+
verticalButtons: {
|
|
98
|
+
flexDirection: 'column-reverse'
|
|
99
|
+
}
|
|
100
|
+
};
|
|
101
|
+
const mapStateToProps = state => {
|
|
102
|
+
return {
|
|
103
|
+
colourBrandingMain: getMainBrandingColourFromState(state)
|
|
104
|
+
};
|
|
105
|
+
};
|
|
106
|
+
const confirmPopup = connect(mapStateToProps, {})(ConfirmPopup);
|
|
107
|
+
export { confirmPopup as ConfirmPopup };
|
|
108
|
+
//# sourceMappingURL=ConfirmPopup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","PureComponent","Text","View","_","connect","getMainBrandingColourFromState","TEXT_DARK","Spinner","InlineButton","MiddlePopup","ConfirmPopup","render","createElement","visible","props","onClose","style","styles","popup","headerContent","paddingTop","width","marginBottom","isEmpty","text","textAlignLeft","subtext","extraContent","marginTop","children","buttonsContainer","verticalButtons","buttonsLoading","loadingContainer","hideNo","onPress","onCancel","color","button","noButton","buttonVertical","borderColor","colourBrandingMain","textStyle","large","noText","hideYes","onConfirm","yesText","padding","margin","maxWidth","fontFamily","fontSize","textAlign","flexDirection","height","justifyContent","alignItems","paddingHorizontal","borderWidth","marginRight","mapStateToProps","state","confirmPopup"],"sources":["ConfirmPopup.js"],"sourcesContent":["import React, { PureComponent } from 'react';\nimport { Text, View } from 'react-native';\nimport _ from 'lodash';\nimport { connect } from 'react-redux';\nimport { getMainBrandingColourFromState, TEXT_DARK } from '../colours';\nimport { Spinner } from './Spinner';\nimport { InlineButton } from './InlineButton';\nimport { MiddlePopup } from './MiddlePopup';\n\nclass ConfirmPopup extends PureComponent {\n render() {\n return (\n <MiddlePopup\n visible={this.props.visible}\n onClose={this.props.onClose}\n style={[styles.popup, this.props.headerContent && { paddingTop: 16 }]}\n >\n {this.props.headerContent && <View style={{ width: 350, marginBottom: 16 }}>{this.props.headerContent}</View>}\n {!_.isEmpty(this.props.text) && (\n <Text style={[styles.text, this.props.textAlignLeft && styles.textAlignLeft]}>{this.props.text}</Text>\n )}\n {!_.isEmpty(this.props.subtext) && (\n <Text style={[styles.subtext, this.props.textAlignLeft && styles.textAlignLeft]}>{this.props.subtext}</Text>\n )}\n {this.props.extraContent && <View style={{ width: 350, marginTop: 16 }}>{this.props.extraContent}</View>}\n {this.props.children}\n <View style={[styles.buttonsContainer, this.props.verticalButtons && styles.verticalButtons]}>\n {this.props.buttonsLoading && (\n <View style={styles.loadingContainer}>\n <Spinner />\n </View>\n )}\n {!this.props.hideNo && !this.props.buttonsLoading && (\n <InlineButton\n onPress={this.props.onCancel}\n color=\"#fff\"\n style={[\n styles.button,\n styles.noButton,\n this.props.verticalButtons && styles.buttonVertical,\n { borderColor: this.props.colourBrandingMain },\n ]}\n textStyle={{ color: this.props.colourBrandingMain }}\n large\n >\n {this.props.noText || 'No'}\n </InlineButton>\n )}\n {!this.props.hideYes && !this.props.buttonsLoading && (\n <InlineButton\n onPress={this.props.onConfirm}\n color={this.props.colourBrandingMain}\n style={[styles.button, this.props.verticalButtons && styles.buttonVertical]}\n large\n >\n {this.props.yesText || 'Yes'}\n </InlineButton>\n )}\n </View>\n </MiddlePopup>\n );\n }\n}\n\nconst styles = {\n popup: {\n padding: 24,\n margin: 16,\n maxWidth: 350,\n },\n text: {\n fontFamily: 'sf-bold',\n fontSize: 20,\n color: TEXT_DARK,\n textAlign: 'center',\n },\n subtext: {\n fontFamily: 'sf-regular',\n fontSize: 17,\n color: TEXT_DARK,\n textAlign: 'center',\n },\n textAlignLeft: {\n textAlign: 'left',\n },\n buttonsContainer: {\n flexDirection: 'row',\n marginTop: 24,\n },\n loadingContainer: {\n height: 40,\n justifyContent: 'center',\n alignItems: 'center',\n },\n button: {\n width: 120,\n paddingHorizontal: 2,\n },\n noButton: {\n borderWidth: 1,\n marginRight: 16,\n },\n buttonVertical: {\n width: '100%',\n marginTop: 16,\n marginRight: 0,\n paddingHorizontal: 8,\n },\n verticalButtons: {\n flexDirection: 'column-reverse',\n },\n};\n\nconst mapStateToProps = state => {\n return {\n colourBrandingMain: getMainBrandingColourFromState(state),\n };\n};\n\nconst confirmPopup = connect(mapStateToProps, {})(ConfirmPopup);\nexport { confirmPopup as ConfirmPopup };\n"],"mappings":"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"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import React, { PureComponent } from 'react';
|
|
2
|
+
import { Text } from 'react-native';
|
|
3
|
+
import { connect } from 'react-redux';
|
|
4
|
+
import { Pl60Icon } from '../fonts';
|
|
5
|
+
import { COLOUR_GREEN, TEXT_DARK, getMainBrandingColourFromState } from '../colours';
|
|
6
|
+
import { MiddlePopup } from './MiddlePopup';
|
|
7
|
+
import { InlineButton } from './InlineButton';
|
|
8
|
+
class ConfirmationPopup extends PureComponent {
|
|
9
|
+
render() {
|
|
10
|
+
return /*#__PURE__*/React.createElement(MiddlePopup, {
|
|
11
|
+
visible: this.props.visible,
|
|
12
|
+
onClose: this.props.onClose,
|
|
13
|
+
style: [styles.popup, this.props.style]
|
|
14
|
+
}, /*#__PURE__*/React.createElement(Pl60Icon, {
|
|
15
|
+
style: styles.icon,
|
|
16
|
+
name: "circleoutlined"
|
|
17
|
+
}), /*#__PURE__*/React.createElement(Text, {
|
|
18
|
+
style: styles.text
|
|
19
|
+
}, this.props.confirmText), this.props.onPressAction && /*#__PURE__*/React.createElement(InlineButton, {
|
|
20
|
+
onPress: this.props.onPressAction,
|
|
21
|
+
color: this.props.colourBrandingMain,
|
|
22
|
+
style: [styles.button, this.props.largeButtons && styles.largeButton],
|
|
23
|
+
large: this.props.largeButtons
|
|
24
|
+
}, this.props.repeatText), /*#__PURE__*/React.createElement(InlineButton, {
|
|
25
|
+
onPress: this.props.onClose,
|
|
26
|
+
color: "#fff",
|
|
27
|
+
style: [styles.button, styles.closeButton, this.props.largeButtons && styles.largeButton, {
|
|
28
|
+
borderColor: this.props.colourBrandingMain
|
|
29
|
+
}],
|
|
30
|
+
textStyle: {
|
|
31
|
+
color: this.props.colourBrandingMain
|
|
32
|
+
},
|
|
33
|
+
large: this.props.largeButtons
|
|
34
|
+
}, "Close"));
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
const styles = {
|
|
38
|
+
popup: {
|
|
39
|
+
width: 280,
|
|
40
|
+
paddingVertical: 40
|
|
41
|
+
},
|
|
42
|
+
icon: {
|
|
43
|
+
fontSize: 52,
|
|
44
|
+
color: COLOUR_GREEN
|
|
45
|
+
},
|
|
46
|
+
text: {
|
|
47
|
+
fontFamily: 'sf-bold',
|
|
48
|
+
fontSize: 24,
|
|
49
|
+
lineHeight: 24,
|
|
50
|
+
color: TEXT_DARK,
|
|
51
|
+
textAlign: 'center',
|
|
52
|
+
marginTop: 8
|
|
53
|
+
},
|
|
54
|
+
button: {
|
|
55
|
+
width: 150,
|
|
56
|
+
marginTop: 20
|
|
57
|
+
},
|
|
58
|
+
closeButton: {
|
|
59
|
+
borderWidth: 1
|
|
60
|
+
},
|
|
61
|
+
largeButton: {
|
|
62
|
+
width: 250
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
const mapStateToProps = state => {
|
|
66
|
+
return {
|
|
67
|
+
colourBrandingMain: getMainBrandingColourFromState(state)
|
|
68
|
+
};
|
|
69
|
+
};
|
|
70
|
+
const confirmationPopup = connect(mapStateToProps, {})(ConfirmationPopup);
|
|
71
|
+
export { confirmationPopup as ConfirmationPopup };
|
|
72
|
+
//# sourceMappingURL=ConfirmationPopup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","PureComponent","Text","connect","Pl60Icon","COLOUR_GREEN","TEXT_DARK","getMainBrandingColourFromState","MiddlePopup","InlineButton","ConfirmationPopup","render","createElement","visible","props","onClose","style","styles","popup","icon","name","text","confirmText","onPressAction","onPress","color","colourBrandingMain","button","largeButtons","largeButton","large","repeatText","closeButton","borderColor","textStyle","width","paddingVertical","fontSize","fontFamily","lineHeight","textAlign","marginTop","borderWidth","mapStateToProps","state","confirmationPopup"],"sources":["ConfirmationPopup.js"],"sourcesContent":["import React, { PureComponent } from 'react';\nimport { Text } from 'react-native';\nimport { connect } from 'react-redux';\nimport { Pl60Icon } from '../fonts';\nimport { COLOUR_GREEN, TEXT_DARK, getMainBrandingColourFromState } from '../colours';\nimport { MiddlePopup } from './MiddlePopup';\nimport { InlineButton } from './InlineButton';\n\nclass ConfirmationPopup extends PureComponent {\n render() {\n return (\n <MiddlePopup visible={this.props.visible} onClose={this.props.onClose} style={[styles.popup, this.props.style]}>\n <Pl60Icon style={styles.icon} name=\"circleoutlined\" />\n <Text style={styles.text}>{this.props.confirmText}</Text>\n {this.props.onPressAction && (\n <InlineButton\n onPress={this.props.onPressAction}\n color={this.props.colourBrandingMain}\n style={[styles.button, this.props.largeButtons && styles.largeButton]}\n large={this.props.largeButtons}\n >\n {this.props.repeatText}\n </InlineButton>\n )}\n <InlineButton\n onPress={this.props.onClose}\n color=\"#fff\"\n style={[\n styles.button,\n styles.closeButton,\n this.props.largeButtons && styles.largeButton,\n { borderColor: this.props.colourBrandingMain },\n ]}\n textStyle={{ color: this.props.colourBrandingMain }}\n large={this.props.largeButtons}\n >\n Close\n </InlineButton>\n </MiddlePopup>\n );\n }\n}\n\nconst styles = {\n popup: {\n width: 280,\n paddingVertical: 40,\n },\n icon: {\n fontSize: 52,\n color: COLOUR_GREEN,\n },\n text: {\n fontFamily: 'sf-bold',\n fontSize: 24,\n lineHeight: 24,\n color: TEXT_DARK,\n textAlign: 'center',\n marginTop: 8,\n },\n button: {\n width: 150,\n marginTop: 20,\n },\n closeButton: {\n borderWidth: 1,\n },\n largeButton: {\n width: 250,\n },\n};\n\nconst mapStateToProps = state => {\n return {\n colourBrandingMain: getMainBrandingColourFromState(state),\n };\n};\n\nconst confirmationPopup = connect(mapStateToProps, {})(ConfirmationPopup);\nexport { confirmationPopup as ConfirmationPopup };\n"],"mappings":"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"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
2
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
3
|
+
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
4
|
+
import React, { Component } from 'react';
|
|
5
|
+
import _ from 'lodash';
|
|
6
|
+
import { Text, TouchableOpacity } from 'react-native';
|
|
7
|
+
import { Icon } from 'react-native-elements';
|
|
8
|
+
import { connect } from 'react-redux';
|
|
9
|
+
import { TEXT_DARK, getMainBrandingColourFromState } from '../colours';
|
|
10
|
+
class DropDownItem extends Component {
|
|
11
|
+
constructor(...args) {
|
|
12
|
+
super(...args);
|
|
13
|
+
_defineProperty(this, "state", {});
|
|
14
|
+
}
|
|
15
|
+
renderIcon() {
|
|
16
|
+
if (!_.isUndefined(this.props.icon)) {
|
|
17
|
+
return /*#__PURE__*/React.createElement(Icon, {
|
|
18
|
+
name: this.props.icon,
|
|
19
|
+
type: "font-awesome",
|
|
20
|
+
style: styles.dropDownItem_Icon,
|
|
21
|
+
iconStyle: [styles.dropDownItem_IconStyle, {
|
|
22
|
+
fontSize: 16,
|
|
23
|
+
color: this.props.colourBrandingMain
|
|
24
|
+
}]
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
return null;
|
|
28
|
+
}
|
|
29
|
+
render() {
|
|
30
|
+
return /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
31
|
+
style: [styles.container, this.props.last && {
|
|
32
|
+
marginBottom: 0
|
|
33
|
+
}, this.props.style],
|
|
34
|
+
onPress: this.props.onPress,
|
|
35
|
+
activeOpacity: 0.6
|
|
36
|
+
}, this.renderIcon(), /*#__PURE__*/React.createElement(Text, {
|
|
37
|
+
style: [styles.text, this.props.textStyle]
|
|
38
|
+
}, this.props.text));
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
const styles = {
|
|
42
|
+
container: {
|
|
43
|
+
flexDirection: 'row',
|
|
44
|
+
marginBottom: 12,
|
|
45
|
+
minHeight: 18,
|
|
46
|
+
width: '100%',
|
|
47
|
+
position: 'relative'
|
|
48
|
+
},
|
|
49
|
+
text: {
|
|
50
|
+
fontFamily: 'sf-medium',
|
|
51
|
+
fontSize: 16,
|
|
52
|
+
lineHeight: 18,
|
|
53
|
+
color: TEXT_DARK,
|
|
54
|
+
backgroundColor: 'transparent'
|
|
55
|
+
},
|
|
56
|
+
dropDownItem_Icon: {
|
|
57
|
+
marginRight: 8,
|
|
58
|
+
width: 18,
|
|
59
|
+
alignSelf: 'center'
|
|
60
|
+
},
|
|
61
|
+
dropDownItem_IconStyle: {
|
|
62
|
+
fontSize: 16,
|
|
63
|
+
lineHeight: 18,
|
|
64
|
+
textAlign: 'center'
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
const mapStateToProps = state => {
|
|
68
|
+
return {
|
|
69
|
+
colourBrandingMain: getMainBrandingColourFromState(state)
|
|
70
|
+
};
|
|
71
|
+
};
|
|
72
|
+
const dropDownItem = connect(mapStateToProps, {})(DropDownItem);
|
|
73
|
+
export { dropDownItem as DropDownItem };
|
|
74
|
+
//# sourceMappingURL=DropDownItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","Component","_","Text","TouchableOpacity","Icon","connect","TEXT_DARK","getMainBrandingColourFromState","DropDownItem","constructor","args","_defineProperty","renderIcon","isUndefined","props","icon","createElement","name","type","style","styles","dropDownItem_Icon","iconStyle","dropDownItem_IconStyle","fontSize","color","colourBrandingMain","render","container","last","marginBottom","onPress","activeOpacity","text","textStyle","flexDirection","minHeight","width","position","fontFamily","lineHeight","backgroundColor","marginRight","alignSelf","textAlign","mapStateToProps","state","dropDownItem"],"sources":["DropDownItem.js"],"sourcesContent":["import React, { Component } from 'react';\nimport _ from 'lodash';\nimport { Text, TouchableOpacity } from 'react-native';\nimport { Icon } from 'react-native-elements';\nimport { connect } from 'react-redux';\nimport { TEXT_DARK, getMainBrandingColourFromState } from '../colours';\n\nclass DropDownItem extends Component {\n state = {};\n\n renderIcon() {\n if (!_.isUndefined(this.props.icon)) {\n return (\n <Icon\n name={this.props.icon}\n type=\"font-awesome\"\n style={styles.dropDownItem_Icon}\n iconStyle={[styles.dropDownItem_IconStyle, { fontSize: 16, color: this.props.colourBrandingMain }]}\n />\n );\n }\n return null;\n }\n\n render() {\n return (\n <TouchableOpacity\n style={[styles.container, this.props.last && { marginBottom: 0 }, this.props.style]}\n onPress={this.props.onPress}\n activeOpacity={0.6}\n >\n {this.renderIcon()}\n <Text style={[styles.text, this.props.textStyle]}>{this.props.text}</Text>\n </TouchableOpacity>\n );\n }\n}\n\nconst styles = {\n container: {\n flexDirection: 'row',\n marginBottom: 12,\n minHeight: 18,\n width: '100%',\n position: 'relative',\n },\n text: {\n fontFamily: 'sf-medium',\n fontSize: 16,\n lineHeight: 18,\n color: TEXT_DARK,\n backgroundColor: 'transparent',\n },\n dropDownItem_Icon: {\n marginRight: 8,\n width: 18,\n alignSelf: 'center',\n },\n dropDownItem_IconStyle: {\n fontSize: 16,\n lineHeight: 18,\n textAlign: 'center',\n },\n};\n\nconst mapStateToProps = state => {\n return {\n colourBrandingMain: getMainBrandingColourFromState(state),\n };\n};\n\nconst dropDownItem = connect(mapStateToProps, {})(DropDownItem);\nexport { dropDownItem as DropDownItem };\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AACxC,OAAOC,CAAC,MAAM,QAAQ;AACtB,SAASC,IAAI,EAAEC,gBAAgB,QAAQ,cAAc;AACrD,SAASC,IAAI,QAAQ,uBAAuB;AAC5C,SAASC,OAAO,QAAQ,aAAa;AACrC,SAASC,SAAS,EAAEC,8BAA8B,QAAQ,YAAY;AAEtE,MAAMC,YAAY,SAASR,SAAS,CAAC;EAAAS,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,gBAC3B,CAAC,CAAC;EAAA;EAEVC,UAAUA,CAAA,EAAG;IACX,IAAI,CAACX,CAAC,CAACY,WAAW,CAAC,IAAI,CAACC,KAAK,CAACC,IAAI,CAAC,EAAE;MACnC,oBACEhB,KAAA,CAAAiB,aAAA,CAACZ,IAAI;QACHa,IAAI,EAAE,IAAI,CAACH,KAAK,CAACC,IAAK;QACtBG,IAAI,EAAC,cAAc;QACnBC,KAAK,EAAEC,MAAM,CAACC,iBAAkB;QAChCC,SAAS,EAAE,CAACF,MAAM,CAACG,sBAAsB,EAAE;UAAEC,QAAQ,EAAE,EAAE;UAAEC,KAAK,EAAE,IAAI,CAACX,KAAK,CAACY;QAAmB,CAAC;MAAE,CACpG,CAAC;IAEN;IACA,OAAO,IAAI;EACb;EAEAC,MAAMA,CAAA,EAAG;IACP,oBACE5B,KAAA,CAAAiB,aAAA,CAACb,gBAAgB;MACfgB,KAAK,EAAE,CAACC,MAAM,CAACQ,SAAS,EAAE,IAAI,CAACd,KAAK,CAACe,IAAI,IAAI;QAAEC,YAAY,EAAE;MAAE,CAAC,EAAE,IAAI,CAAChB,KAAK,CAACK,KAAK,CAAE;MACpFY,OAAO,EAAE,IAAI,CAACjB,KAAK,CAACiB,OAAQ;MAC5BC,aAAa,EAAE;IAAI,GAElB,IAAI,CAACpB,UAAU,CAAC,CAAC,eAClBb,KAAA,CAAAiB,aAAA,CAACd,IAAI;MAACiB,KAAK,EAAE,CAACC,MAAM,CAACa,IAAI,EAAE,IAAI,CAACnB,KAAK,CAACoB,SAAS;IAAE,GAAE,IAAI,CAACpB,KAAK,CAACmB,IAAW,CACzD,CAAC;EAEvB;AACF;AAEA,MAAMb,MAAM,GAAG;EACbQ,SAAS,EAAE;IACTO,aAAa,EAAE,KAAK;IACpBL,YAAY,EAAE,EAAE;IAChBM,SAAS,EAAE,EAAE;IACbC,KAAK,EAAE,MAAM;IACbC,QAAQ,EAAE;EACZ,CAAC;EACDL,IAAI,EAAE;IACJM,UAAU,EAAE,WAAW;IACvBf,QAAQ,EAAE,EAAE;IACZgB,UAAU,EAAE,EAAE;IACdf,KAAK,EAAEnB,SAAS;IAChBmC,eAAe,EAAE;EACnB,CAAC;EACDpB,iBAAiB,EAAE;IACjBqB,WAAW,EAAE,CAAC;IACdL,KAAK,EAAE,EAAE;IACTM,SAAS,EAAE;EACb,CAAC;EACDpB,sBAAsB,EAAE;IACtBC,QAAQ,EAAE,EAAE;IACZgB,UAAU,EAAE,EAAE;IACdI,SAAS,EAAE;EACb;AACF,CAAC;AAED,MAAMC,eAAe,GAAGC,KAAK,IAAI;EAC/B,OAAO;IACLpB,kBAAkB,EAAEnB,8BAA8B,CAACuC,KAAK;EAC1D,CAAC;AACH,CAAC;AAED,MAAMC,YAAY,GAAG1C,OAAO,CAACwC,eAAe,EAAE,CAAC,CAAC,CAAC,CAACrC,YAAY,CAAC;AAC/D,SAASuC,YAAY,IAAIvC,YAAY"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
2
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
3
|
+
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
4
|
+
import React, { Component } from 'react';
|
|
5
|
+
import { View } from 'react-native';
|
|
6
|
+
class DropDownMenu extends Component {
|
|
7
|
+
constructor(...args) {
|
|
8
|
+
super(...args);
|
|
9
|
+
_defineProperty(this, "state", {});
|
|
10
|
+
}
|
|
11
|
+
render() {
|
|
12
|
+
if (!this.props.visible) {
|
|
13
|
+
return null;
|
|
14
|
+
}
|
|
15
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
16
|
+
style: [styles.container, this.props.style]
|
|
17
|
+
}, this.props.children);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
const styles = {
|
|
21
|
+
container: {
|
|
22
|
+
borderRadius: 2,
|
|
23
|
+
shadowColor: '#000',
|
|
24
|
+
shadowOffset: {
|
|
25
|
+
width: 0,
|
|
26
|
+
height: 2
|
|
27
|
+
},
|
|
28
|
+
shadowOpacity: 0.2,
|
|
29
|
+
shadowRadius: 4,
|
|
30
|
+
elevation: 4,
|
|
31
|
+
zIndex: 10,
|
|
32
|
+
backgroundColor: '#fff',
|
|
33
|
+
padding: 16,
|
|
34
|
+
paddingVertical: 14,
|
|
35
|
+
position: 'absolute',
|
|
36
|
+
right: 0,
|
|
37
|
+
top: 0
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
export { DropDownMenu };
|
|
41
|
+
//# sourceMappingURL=DropDownMenu.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","Component","View","DropDownMenu","constructor","args","_defineProperty","render","props","visible","createElement","style","styles","container","children","borderRadius","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","elevation","zIndex","backgroundColor","padding","paddingVertical","position","right","top"],"sources":["DropDownMenu.js"],"sourcesContent":["import React, { Component } from 'react';\nimport { View } from 'react-native';\n\nclass DropDownMenu extends Component {\n state = {};\n\n render() {\n if (!this.props.visible) {\n return null;\n }\n return <View style={[styles.container, this.props.style]}>{this.props.children}</View>;\n }\n}\n\nconst styles = {\n container: {\n borderRadius: 2,\n shadowColor: '#000',\n shadowOffset: {\n width: 0,\n height: 2,\n },\n shadowOpacity: 0.2,\n shadowRadius: 4,\n elevation: 4,\n zIndex: 10,\n backgroundColor: '#fff',\n padding: 16,\n paddingVertical: 14,\n\n position: 'absolute',\n right: 0,\n top: 0,\n },\n};\n\nexport { DropDownMenu };\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AACxC,SAASC,IAAI,QAAQ,cAAc;AAEnC,MAAMC,YAAY,SAASF,SAAS,CAAC;EAAAG,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,gBAC3B,CAAC,CAAC;EAAA;EAEVC,MAAMA,CAAA,EAAG;IACP,IAAI,CAAC,IAAI,CAACC,KAAK,CAACC,OAAO,EAAE;MACvB,OAAO,IAAI;IACb;IACA,oBAAOT,KAAA,CAAAU,aAAA,CAACR,IAAI;MAACS,KAAK,EAAE,CAACC,MAAM,CAACC,SAAS,EAAE,IAAI,CAACL,KAAK,CAACG,KAAK;IAAE,GAAE,IAAI,CAACH,KAAK,CAACM,QAAe,CAAC;EACxF;AACF;AAEA,MAAMF,MAAM,GAAG;EACbC,SAAS,EAAE;IACTE,YAAY,EAAE,CAAC;IACfC,WAAW,EAAE,MAAM;IACnBC,YAAY,EAAE;MACZC,KAAK,EAAE,CAAC;MACRC,MAAM,EAAE;IACV,CAAC;IACDC,aAAa,EAAE,GAAG;IAClBC,YAAY,EAAE,CAAC;IACfC,SAAS,EAAE,CAAC;IACZC,MAAM,EAAE,EAAE;IACVC,eAAe,EAAE,MAAM;IACvBC,OAAO,EAAE,EAAE;IACXC,eAAe,EAAE,EAAE;IAEnBC,QAAQ,EAAE,UAAU;IACpBC,KAAK,EAAE,CAAC;IACRC,GAAG,EAAE;EACP;AACF,CAAC;AAED,SAAS1B,YAAY"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import React, { PureComponent } from 'react';
|
|
2
|
+
import { Text, View, ScrollView, StyleSheet } from 'react-native';
|
|
3
|
+
import _ from 'lodash';
|
|
4
|
+
import { TEXT_BLUEGREY } from '../colours';
|
|
5
|
+
class EmptyStateMain extends PureComponent {
|
|
6
|
+
renderPlaceHolder(index, opacity = 1) {
|
|
7
|
+
const barCount = _.isUndefined(this.props.barCount) ? 3 : this.props.barCount;
|
|
8
|
+
if (barCount <= index) {
|
|
9
|
+
return null;
|
|
10
|
+
}
|
|
11
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
12
|
+
style: [styles.item, {
|
|
13
|
+
opacity
|
|
14
|
+
}]
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
render() {
|
|
18
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
19
|
+
style: [styles.container, this.props.style]
|
|
20
|
+
}, !this.props.hideTitle && /*#__PURE__*/React.createElement(Text, {
|
|
21
|
+
style: styles.titleText
|
|
22
|
+
}, this.props.title || 'Nothing to see here'), this.props.content, /*#__PURE__*/React.createElement(ScrollView, {
|
|
23
|
+
style: styles.itemContainer
|
|
24
|
+
}, this.renderPlaceHolder(0, 0.8), this.renderPlaceHolder(1, 0.6), this.renderPlaceHolder(2, 0.4)));
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
const styles = StyleSheet.create({
|
|
28
|
+
container: {
|
|
29
|
+
borderRadius: 5,
|
|
30
|
+
paddingVertical: 5
|
|
31
|
+
},
|
|
32
|
+
titleText: {
|
|
33
|
+
fontFamily: 'qs-bold',
|
|
34
|
+
fontSize: 16,
|
|
35
|
+
color: TEXT_BLUEGREY
|
|
36
|
+
},
|
|
37
|
+
itemContainer: {
|
|
38
|
+
marginTop: 20,
|
|
39
|
+
flexDirection: 'column'
|
|
40
|
+
},
|
|
41
|
+
item: {
|
|
42
|
+
borderRadius: 4,
|
|
43
|
+
width: '100%',
|
|
44
|
+
height: 32,
|
|
45
|
+
backgroundColor: '#e6ebef',
|
|
46
|
+
marginBottom: 17
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
export default EmptyStateMain;
|
|
50
|
+
//# sourceMappingURL=EmptyStateMain.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","PureComponent","Text","View","ScrollView","StyleSheet","_","TEXT_BLUEGREY","EmptyStateMain","renderPlaceHolder","index","opacity","barCount","isUndefined","props","createElement","style","styles","item","render","container","hideTitle","titleText","title","content","itemContainer","create","borderRadius","paddingVertical","fontFamily","fontSize","color","marginTop","flexDirection","width","height","backgroundColor","marginBottom"],"sources":["EmptyStateMain.js"],"sourcesContent":["import React, { PureComponent } from 'react';\nimport { Text, View, ScrollView, StyleSheet } from 'react-native';\nimport _ from 'lodash';\nimport { TEXT_BLUEGREY } from '../colours';\n\nclass EmptyStateMain extends PureComponent {\n renderPlaceHolder(index, opacity = 1) {\n const barCount = _.isUndefined(this.props.barCount) ? 3 : this.props.barCount;\n if (barCount <= index) {\n return null;\n }\n return <View style={[styles.item, { opacity }]} />;\n }\n\n render() {\n return (\n <View style={[styles.container, this.props.style]}>\n {!this.props.hideTitle && <Text style={styles.titleText}>{this.props.title || 'Nothing to see here'}</Text>}\n {this.props.content}\n <ScrollView style={styles.itemContainer}>\n {this.renderPlaceHolder(0, 0.8)}\n {this.renderPlaceHolder(1, 0.6)}\n {this.renderPlaceHolder(2, 0.4)}\n </ScrollView>\n </View>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n container: {\n borderRadius: 5,\n paddingVertical: 5,\n },\n titleText: {\n fontFamily: 'qs-bold',\n fontSize: 16,\n color: TEXT_BLUEGREY,\n },\n itemContainer: {\n marginTop: 20,\n flexDirection: 'column',\n },\n item: {\n borderRadius: 4,\n width: '100%',\n height: 32,\n backgroundColor: '#e6ebef',\n marginBottom: 17,\n },\n});\n\nexport default EmptyStateMain;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,aAAa,QAAQ,OAAO;AAC5C,SAASC,IAAI,EAAEC,IAAI,EAAEC,UAAU,EAAEC,UAAU,QAAQ,cAAc;AACjE,OAAOC,CAAC,MAAM,QAAQ;AACtB,SAASC,aAAa,QAAQ,YAAY;AAE1C,MAAMC,cAAc,SAASP,aAAa,CAAC;EACzCQ,iBAAiBA,CAACC,KAAK,EAAEC,OAAO,GAAG,CAAC,EAAE;IACpC,MAAMC,QAAQ,GAAGN,CAAC,CAACO,WAAW,CAAC,IAAI,CAACC,KAAK,CAACF,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,CAACE,KAAK,CAACF,QAAQ;IAC7E,IAAIA,QAAQ,IAAIF,KAAK,EAAE;MACrB,OAAO,IAAI;IACb;IACA,oBAAOV,KAAA,CAAAe,aAAA,CAACZ,IAAI;MAACa,KAAK,EAAE,CAACC,MAAM,CAACC,IAAI,EAAE;QAAEP;MAAQ,CAAC;IAAE,CAAE,CAAC;EACpD;EAEAQ,MAAMA,CAAA,EAAG;IACP,oBACEnB,KAAA,CAAAe,aAAA,CAACZ,IAAI;MAACa,KAAK,EAAE,CAACC,MAAM,CAACG,SAAS,EAAE,IAAI,CAACN,KAAK,CAACE,KAAK;IAAE,GAC/C,CAAC,IAAI,CAACF,KAAK,CAACO,SAAS,iBAAIrB,KAAA,CAAAe,aAAA,CAACb,IAAI;MAACc,KAAK,EAAEC,MAAM,CAACK;IAAU,GAAE,IAAI,CAACR,KAAK,CAACS,KAAK,IAAI,qBAA4B,CAAC,EAC1G,IAAI,CAACT,KAAK,CAACU,OAAO,eACnBxB,KAAA,CAAAe,aAAA,CAACX,UAAU;MAACY,KAAK,EAAEC,MAAM,CAACQ;IAAc,GACrC,IAAI,CAAChB,iBAAiB,CAAC,CAAC,EAAE,GAAG,CAAC,EAC9B,IAAI,CAACA,iBAAiB,CAAC,CAAC,EAAE,GAAG,CAAC,EAC9B,IAAI,CAACA,iBAAiB,CAAC,CAAC,EAAE,GAAG,CACpB,CACR,CAAC;EAEX;AACF;AAEA,MAAMQ,MAAM,GAAGZ,UAAU,CAACqB,MAAM,CAAC;EAC/BN,SAAS,EAAE;IACTO,YAAY,EAAE,CAAC;IACfC,eAAe,EAAE;EACnB,CAAC;EACDN,SAAS,EAAE;IACTO,UAAU,EAAE,SAAS;IACrBC,QAAQ,EAAE,EAAE;IACZC,KAAK,EAAExB;EACT,CAAC;EACDkB,aAAa,EAAE;IACbO,SAAS,EAAE,EAAE;IACbC,aAAa,EAAE;EACjB,CAAC;EACDf,IAAI,EAAE;IACJS,YAAY,EAAE,CAAC;IACfO,KAAK,EAAE,MAAM;IACbC,MAAM,EAAE,EAAE;IACVC,eAAe,EAAE,SAAS;IAC1BC,YAAY,EAAE;EAChB;AACF,CAAC,CAAC;AAEF,eAAe7B,cAAc"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import React, { PureComponent } from 'react';
|
|
2
|
+
import { Text, View, ScrollView, StyleSheet } from 'react-native';
|
|
3
|
+
import { TEXT_BLUEGREY } from '../colours';
|
|
4
|
+
class EmptyStateWidget extends PureComponent {
|
|
5
|
+
renderPlaceHolder(opacity = 1) {
|
|
6
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
7
|
+
style: [styles.item, {
|
|
8
|
+
opacity
|
|
9
|
+
}]
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
render() {
|
|
13
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
14
|
+
style: [styles.container, this.props.height && {
|
|
15
|
+
height: this.props.height
|
|
16
|
+
}, this.props.style]
|
|
17
|
+
}, /*#__PURE__*/React.createElement(Text, {
|
|
18
|
+
style: styles.titleText
|
|
19
|
+
}, this.props.title || 'Nothing to see here'), /*#__PURE__*/React.createElement(ScrollView, {
|
|
20
|
+
horizontal: true,
|
|
21
|
+
style: styles.itemContainer
|
|
22
|
+
}, this.renderPlaceHolder(0.8), this.renderPlaceHolder(0.6), this.renderPlaceHolder(0.4), this.renderPlaceHolder(0.2)));
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
const styles = StyleSheet.create({
|
|
26
|
+
container: {
|
|
27
|
+
borderRadius: 5,
|
|
28
|
+
paddingVertical: 5
|
|
29
|
+
},
|
|
30
|
+
titleText: {
|
|
31
|
+
fontFamily: 'qs-bold',
|
|
32
|
+
fontSize: 16,
|
|
33
|
+
color: TEXT_BLUEGREY
|
|
34
|
+
},
|
|
35
|
+
itemContainer: {
|
|
36
|
+
marginTop: 20
|
|
37
|
+
},
|
|
38
|
+
item: {
|
|
39
|
+
borderRadius: 4,
|
|
40
|
+
width: 97,
|
|
41
|
+
height: 98,
|
|
42
|
+
backgroundColor: '#e6ebef',
|
|
43
|
+
marginRight: 17
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
export default EmptyStateWidget;
|
|
47
|
+
//# sourceMappingURL=EmptyStateWidget.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","PureComponent","Text","View","ScrollView","StyleSheet","TEXT_BLUEGREY","EmptyStateWidget","renderPlaceHolder","opacity","createElement","style","styles","item","render","container","props","height","titleText","title","horizontal","itemContainer","create","borderRadius","paddingVertical","fontFamily","fontSize","color","marginTop","width","backgroundColor","marginRight"],"sources":["EmptyStateWidget.js"],"sourcesContent":["import React, { PureComponent } from 'react';\nimport { Text, View, ScrollView, StyleSheet } from 'react-native';\nimport { TEXT_BLUEGREY } from '../colours';\n\nclass EmptyStateWidget extends PureComponent {\n renderPlaceHolder(opacity = 1) {\n return <View style={[styles.item, { opacity }]} />;\n }\n\n render() {\n return (\n <View style={[styles.container, this.props.height && { height: this.props.height }, this.props.style]}>\n <Text style={styles.titleText}>{this.props.title || 'Nothing to see here'}</Text>\n <ScrollView horizontal style={styles.itemContainer}>\n {this.renderPlaceHolder(0.8)}\n {this.renderPlaceHolder(0.6)}\n {this.renderPlaceHolder(0.4)}\n {this.renderPlaceHolder(0.2)}\n </ScrollView>\n </View>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n container: {\n borderRadius: 5,\n paddingVertical: 5,\n },\n titleText: {\n fontFamily: 'qs-bold',\n fontSize: 16,\n color: TEXT_BLUEGREY,\n },\n itemContainer: {\n marginTop: 20,\n },\n item: {\n borderRadius: 4,\n width: 97,\n height: 98,\n backgroundColor: '#e6ebef',\n marginRight: 17,\n },\n});\n\nexport default EmptyStateWidget;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,aAAa,QAAQ,OAAO;AAC5C,SAASC,IAAI,EAAEC,IAAI,EAAEC,UAAU,EAAEC,UAAU,QAAQ,cAAc;AACjE,SAASC,aAAa,QAAQ,YAAY;AAE1C,MAAMC,gBAAgB,SAASN,aAAa,CAAC;EAC3CO,iBAAiBA,CAACC,OAAO,GAAG,CAAC,EAAE;IAC7B,oBAAOT,KAAA,CAAAU,aAAA,CAACP,IAAI;MAACQ,KAAK,EAAE,CAACC,MAAM,CAACC,IAAI,EAAE;QAAEJ;MAAQ,CAAC;IAAE,CAAE,CAAC;EACpD;EAEAK,MAAMA,CAAA,EAAG;IACP,oBACEd,KAAA,CAAAU,aAAA,CAACP,IAAI;MAACQ,KAAK,EAAE,CAACC,MAAM,CAACG,SAAS,EAAE,IAAI,CAACC,KAAK,CAACC,MAAM,IAAI;QAAEA,MAAM,EAAE,IAAI,CAACD,KAAK,CAACC;MAAO,CAAC,EAAE,IAAI,CAACD,KAAK,CAACL,KAAK;IAAE,gBACpGX,KAAA,CAAAU,aAAA,CAACR,IAAI;MAACS,KAAK,EAAEC,MAAM,CAACM;IAAU,GAAE,IAAI,CAACF,KAAK,CAACG,KAAK,IAAI,qBAA4B,CAAC,eACjFnB,KAAA,CAAAU,aAAA,CAACN,UAAU;MAACgB,UAAU;MAACT,KAAK,EAAEC,MAAM,CAACS;IAAc,GAChD,IAAI,CAACb,iBAAiB,CAAC,GAAG,CAAC,EAC3B,IAAI,CAACA,iBAAiB,CAAC,GAAG,CAAC,EAC3B,IAAI,CAACA,iBAAiB,CAAC,GAAG,CAAC,EAC3B,IAAI,CAACA,iBAAiB,CAAC,GAAG,CACjB,CACR,CAAC;EAEX;AACF;AAEA,MAAMI,MAAM,GAAGP,UAAU,CAACiB,MAAM,CAAC;EAC/BP,SAAS,EAAE;IACTQ,YAAY,EAAE,CAAC;IACfC,eAAe,EAAE;EACnB,CAAC;EACDN,SAAS,EAAE;IACTO,UAAU,EAAE,SAAS;IACrBC,QAAQ,EAAE,EAAE;IACZC,KAAK,EAAErB;EACT,CAAC;EACDe,aAAa,EAAE;IACbO,SAAS,EAAE;EACb,CAAC;EACDf,IAAI,EAAE;IACJU,YAAY,EAAE,CAAC;IACfM,KAAK,EAAE,EAAE;IACTZ,MAAM,EAAE,EAAE;IACVa,eAAe,EAAE,SAAS;IAC1BC,WAAW,EAAE;EACf;AACF,CAAC,CAAC;AAEF,eAAexB,gBAAgB"}
|