@plusscommunities/pluss-core-app 8.0.26-beta.0 → 8.0.26
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/components/CommentReply.js.map +1 -1
- package/dist/module/components/PDFPopup.js +4 -0
- package/dist/module/components/PDFPopup.js.map +1 -1
- package/dist/module/components/Text.js +1 -1
- package/dist/module/components/Text.js.map +1 -1
- package/dist/module/components/react-native-expo-image-cropper/ExpoImageManipulator.js.map +1 -1
- package/package.json +8 -3
- package/src/components/CommentReply.js +8 -1
- package/src/components/PDFPopup.js +4 -0
- package/src/components/Text.js +1 -1
- package/src/components/react-native-expo-image-cropper/ExpoImageManipulator.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Component","connect","Keyboard","TextInput","View","ImageBackground","TouchableOpacity","Dimensions","Icon","withSafeAreaInsets","_","getApiError","getShadowStyle","TEXT_BLUEGREY","TEXT_DARKEST","BG_GREY","Spinner","ImageUploader","reactionActions","SCREEN_HEIGHT","get","height","CommentReply","constructor","props","_defineProperty","setState","uploadingCommentImage","setTimeout","noScroll","_this$props$scrollVie","scrollView","current","scrollToEnd","animated","uri","commentImageInput","replace","state","commentInput","commentsLoading","addingComment","replyInputRef","createRef","componentDidMount","commentSection","isLoading","focusInput","focus","loadingStarted","loadingCompleted","shouldShowImageInput","isEmpty","addComment","_this$props$scrollVie2","text","image","dismiss","_this$props$commentSe","startedAddingComment","entityId","entityType","entityName","site","threadId","then","res","_this$props$commentSe2","commentAdded","data","_this$props$scrollVie3","catch","err","console","log","removeImage","showUploadMenu","commentImageUploader","renderImageAttachment","createElement","style","styles","accessoryImage","accessoryImageBorder","borderWidth","borderColor","imageStyle","source","accessoryImageClose","onPress","bind","hitSlop","top","right","bottom","left","name","type","iconStyle","accessoryImageCloseIcon","accessoryImageCloseIconContainer","renderImageUploader","ref","onUploadStarted","onUploadSuccess","onUploadFailed","onLibrarySelected","quality","allowsEditing","fileName","popupTitle","userId","user","uid","hideLibrary","render","_this$props$insets","includes","hidden","inputContainer","paddingBottom","insets","input","marginRight","maxFontSizeMultiplier","placeholder","value","onFocus","_this$props$scrollVie4","onChangeText","_this$props$scrollVie5","inputText","autoCapitalize","multiline","autoCorrect","autoGrow","sendContainer","padding","width","send","marginTop","borderRadius","position","backgroundColor","alignItems","justifyContent","fontSize","color","textAlign","paddingVertical","paddingHorizontal","flexGrow","fontFamily","margin","maxHeight","mapStateToProps","commentReply","forwardRef"],"sources":["CommentReply.js"],"sourcesContent":["import React, { Component } from \"react\";\nimport { connect } from \"react-redux\";\nimport {\n\tKeyboard,\n\tTextInput,\n\tView,\n\tImageBackground,\n\tTouchableOpacity,\n\tDimensions,\n} from \"react-native\";\nimport { Icon } from \"@rneui/themed\";\nimport { withSafeAreaInsets } from \"react-native-safe-area-context\";\nimport _ from \"lodash\";\nimport { getApiError } from \"../session\";\nimport { getShadowStyle } from \"../helper\";\nimport { TEXT_BLUEGREY, TEXT_DARKEST, BG_GREY } from \"../colours\";\nimport { Spinner } from \"./Spinner\";\nimport ImageUploader from \"./ImageUploader\";\nimport { reactionActions } from \"../apis\";\n\nconst SCREEN_HEIGHT = Dimensions.get(\"window\").height;\n\nclass CommentReply extends Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\n\t\tthis.state = {\n\t\t\tcommentImageInput: \"\",\n\t\t\tcommentInput: \"\",\n\t\t\tuploadingCommentImage: false,\n\t\t\tcommentsLoading: true,\n\t\t\taddingComment: false,\n\t\t};\n\t\tthis.replyInputRef = React.createRef();\n\t}\n\n\tcomponentDidMount() {\n\t\tif (this.props.commentSection && this.props.commentSection.current) {\n\t\t\tthis.setState({\n\t\t\t\tcommentsLoading: this.props.commentSection.current.isLoading(),\n\t\t\t});\n\t\t}\n\t}\n\n\tonUploadStarted = () => {\n\t\tthis.setState({\n\t\t\tuploadingCommentImage: true,\n\t\t});\n\t\tsetTimeout(() => {\n\t\t\tif (!this.props.noScroll) {\n\t\t\t\tthis.props.scrollView?.current?.scrollToEnd({ animated: true });\n\t\t\t}\n\t\t}, 500);\n\t};\n\n\tonUploadSuccess = (uri) => {\n\t\tthis.setState({\n\t\t\tuploadingCommentImage: false,\n\t\t\tcommentImageInput: uri.replace(\"/general/\", \"/general1400/\"),\n\t\t});\n\t};\n\n\tonUploadFailed = () => {\n\t\tthis.setState({\n\t\t\tuploadingCommentImage: false,\n\t\t\tcommentImageInput: null,\n\t\t});\n\t};\n\n\tfocusInput() {\n\t\tthis.replyInputRef.current.focus();\n\t}\n\n\tloadingStarted() {\n\t\tthis.setState({\n\t\t\tcommentsLoading: true,\n\t\t});\n\t}\n\n\tloadingCompleted() {\n\t\tthis.setState({\n\t\t\tcommentsLoading: false,\n\t\t});\n\t}\n\n\tshouldShowImageInput() {\n\t\treturn (\n\t\t\tthis.state.uploadingCommentImage ||\n\t\t\t!_.isEmpty(this.state.commentImageInput)\n\t\t);\n\t}\n\n\taddComment() {\n\t\tsetTimeout(() => {\n\t\t\tif (!this.props.noScroll) {\n\t\t\t\tthis.props.scrollView?.current?.scrollToEnd({ animated: true });\n\t\t\t}\n\t\t}, 500);\n\t\tconst text = this.state.commentInput;\n\t\tconst image = this.state.commentImageInput;\n\t\tthis.setState({\n\t\t\taddingComment: true,\n\t\t\tcommentInput: \"\",\n\t\t\tcommentImageInput: \"\",\n\t\t});\n\t\tKeyboard.dismiss();\n\t\tif (this.props.commentSection) {\n\t\t\tthis.props.commentSection?.current?.startedAddingComment();\n\t\t}\n\t\treactionActions\n\t\t\t.addComment(\n\t\t\t\tthis.props.entityId,\n\t\t\t\tthis.props.entityType,\n\t\t\t\tthis.props.entityName,\n\t\t\t\tthis.props.site,\n\t\t\t\ttext,\n\t\t\t\timage,\n\t\t\t\tthis.props.threadId,\n\t\t\t)\n\t\t\t.then((res) => {\n\t\t\t\tif (this.props.commentSection) {\n\t\t\t\t\tthis.props.commentSection?.current?.commentAdded(res.data);\n\t\t\t\t}\n\t\t\t\tthis.setState({\n\t\t\t\t\taddingComment: false,\n\t\t\t\t});\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tif (!this.props.noScroll) {\n\t\t\t\t\t\tthis.props.scrollView?.current?.scrollToEnd({ animated: true });\n\t\t\t\t\t}\n\t\t\t\t}, 500);\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tconsole.log(getApiError(err));\n\t\t\t});\n\t}\n\n\tremoveImage() {\n\t\tthis.setState({\n\t\t\tcommentImageInput: null,\n\t\t});\n\t}\n\n\tshowUploadMenu() {\n\t\tif (\n\t\t\tthis.state.uploadingCommentImage ||\n\t\t\t!_.isEmpty(this.state.commentImageInput)\n\t\t) {\n\t\t\treturn;\n\t\t}\n\t\tthis.commentImageUploader.showUploadMenu();\n\t}\n\n\trenderImageAttachment() {\n\t\tif (\n\t\t\t_.isEmpty(this.state.commentImageInput) &&\n\t\t\t!this.state.uploadingCommentImage\n\t\t) {\n\t\t\treturn null;\n\t\t}\n\t\tif (this.state.uploadingCommentImage) {\n\t\t\treturn (\n\t\t\t\t<View\n\t\t\t\t\tstyle={[\n\t\t\t\t\t\tstyles.accessoryImage,\n\t\t\t\t\t\tstyles.accessoryImageBorder,\n\t\t\t\t\t\t{ borderWidth: 1, borderColor: BG_GREY },\n\t\t\t\t\t]}\n\t\t\t\t>\n\t\t\t\t\t<Spinner />\n\t\t\t\t</View>\n\t\t\t);\n\t\t}\n\t\treturn (\n\t\t\t<ImageBackground\n\t\t\t\tstyle={styles.accessoryImage}\n\t\t\t\timageStyle={styles.accessoryImageBorder}\n\t\t\t\tsource={{ uri: this.state.commentImageInput }}\n\t\t\t>\n\t\t\t\t<TouchableOpacity\n\t\t\t\t\tstyle={styles.accessoryImageClose}\n\t\t\t\t\tonPress={this.removeImage.bind(this)}\n\t\t\t\t\thitSlop={{ top: 8, right: 8, bottom: 8, left: 8 }}\n\t\t\t\t>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tname=\"remove\"\n\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\ticonStyle={styles.accessoryImageCloseIcon}\n\t\t\t\t\t\tstyle={styles.accessoryImageCloseIconContainer}\n\t\t\t\t\t/>\n\t\t\t\t</TouchableOpacity>\n\t\t\t</ImageBackground>\n\t\t);\n\t}\n\n\trenderImageUploader() {\n\t\treturn (\n\t\t\t<ImageUploader\n\t\t\t\tref={(ref) => (this.commentImageUploader = ref)}\n\t\t\t\tonUploadStarted={this.onUploadStarted}\n\t\t\t\tonUploadSuccess={this.onUploadSuccess}\n\t\t\t\tonUploadFailed={this.onUploadFailed}\n\t\t\t\tonLibrarySelected={this.onUploadSuccess}\n\t\t\t\tquality={0.8}\n\t\t\t\tallowsEditing={false}\n\t\t\t\tfileName=\"commentImage\"\n\t\t\t\tpopupTitle=\"Add Image\"\n\t\t\t\tuserId={this.props.user.uid}\n\t\t\t\thideLibrary\n\t\t\t/>\n\t\t);\n\t}\n\n\trender() {\n\t\tif (_.includes(this.props.user.hidden, \"addComment\")) {\n\t\t\treturn null;\n\t\t}\n\t\tif (this.state.commentsLoading) {\n\t\t\treturn null;\n\t\t}\n\t\treturn (\n\t\t\t<View style={[styles.inputContainer, getShadowStyle(), { paddingBottom: 8 + (this.props.insets?.bottom ?? 0) }, this.props.style]}>\n\t\t\t\t<View\n\t\t\t\t\tstyle={[\n\t\t\t\t\t\tstyles.input,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tmarginRight:\n\t\t\t\t\t\t\t\t_.isEmpty(this.state.commentInput) &&\n\t\t\t\t\t\t\t\t_.isEmpty(this.state.commentImageInput)\n\t\t\t\t\t\t\t\t\t? 40\n\t\t\t\t\t\t\t\t\t: 80,\n\t\t\t\t\t\t},\n\t\t\t\t\t]}\n\t\t\t\t>\n\t\t\t\t\t<TextInput\n\t\t\t\t\t\tmaxFontSizeMultiplier={1.2}\n\t\t\t\t\t\tref={this.replyInputRef}\n\t\t\t\t\t\tplaceholder=\"Enter your comment here\"\n\t\t\t\t\t\tvalue={this.state.commentInput}\n\t\t\t\t\t\tonFocus={() => {\n\t\t\t\t\t\t\tif (!this.props.noScroll) {\n\t\t\t\t\t\t\t\tthis.props.scrollView?.current?.scrollToEnd({ animated: true });\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tonChangeText={(value) => {\n\t\t\t\t\t\t\tif (!this.props.noScroll) {\n\t\t\t\t\t\t\t\tthis.props.scrollView?.current?.scrollToEnd({\n\t\t\t\t\t\t\t\t\tanimated: false,\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tthis.setState({\n\t\t\t\t\t\t\t\tcommentInput: value,\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tstyle={styles.inputText}\n\t\t\t\t\t\tautoCapitalize=\"sentences\"\n\t\t\t\t\t\tmultiline\n\t\t\t\t\t\tautoCorrect\n\t\t\t\t\t\tautoGrow\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t\t{(!_.isEmpty(this.state.commentInput) ||\n\t\t\t\t\t!_.isEmpty(this.state.commentImageInput)) &&\n\t\t\t\t\t!this.state.addingComment && (\n\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\tonPress={this.addComment.bind(this)}\n\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\tstyles.sendContainer,\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tright: 4,\n\t\t\t\t\t\t\t\t\tpadding: 4,\n\t\t\t\t\t\t\t\t\twidth: 40,\n\t\t\t\t\t\t\t\t\theight: 40,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tname=\"paper-plane\"\n\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\ticonStyle={[styles.send, { width: 40 }]}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t)}\n\t\t\t\t<TouchableOpacity\n\t\t\t\t\tonPress={this.showUploadMenu.bind(this)}\n\t\t\t\t\tstyle={[\n\t\t\t\t\t\tstyles.sendContainer,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tright:\n\t\t\t\t\t\t\t\t_.isEmpty(this.state.commentInput) &&\n\t\t\t\t\t\t\t\t_.isEmpty(this.state.commentImageInput)\n\t\t\t\t\t\t\t\t\t? 4\n\t\t\t\t\t\t\t\t\t: 44,\n\t\t\t\t\t\t\tpadding: 4,\n\t\t\t\t\t\t\twidth: 40,\n\t\t\t\t\t\t\theight: 40,\n\t\t\t\t\t\t},\n\t\t\t\t\t]}\n\t\t\t\t>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tname=\"picture-o\"\n\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\ticonStyle={[styles.send, { width: 40 }]}\n\t\t\t\t\t/>\n\t\t\t\t</TouchableOpacity>\n\t\t\t\t{this.renderImageAttachment()}\n\t\t\t\t{this.renderImageUploader()}\n\t\t\t</View>\n\t\t);\n\t}\n}\n\nconst styles = {\n\taccessoryImage: {\n\t\tmarginTop: 8,\n\t\twidth: 60,\n\t\theight: 60,\n\t},\n\taccessoryImageBorder: {\n\t\tborderRadius: 2,\n\t},\n\taccessoryImageClose: {\n\t\twidth: 14,\n\t\theight: 14,\n\t\tborderRadius: 7,\n\t\tposition: \"absolute\",\n\t\ttop: -7,\n\t\tright: -7,\n\t\tbackgroundColor: TEXT_BLUEGREY,\n\t},\n\taccessoryImageCloseIconContainer: {\n\t\twidth: 14,\n\t\theight: 14,\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t},\n\taccessoryImageCloseIcon: {\n\t\tfontSize: 10,\n\t\tcolor: \"#fff\",\n\t\ttextAlign: \"center\",\n\t},\n\tinputContainer: {\n\t\tbackgroundColor: \"#fff\",\n\t\tpaddingVertical: 8,\n\t\tpaddingHorizontal: 8,\n\t\tpaddingBottom: 8, // bottom inset added dynamically via props\n\t\tflexGrow: 1,\n\t},\n\tinputText: {\n\t\tcolor: TEXT_DARKEST,\n\t\tfontSize: 14,\n\t\tfontFamily: \"sf-medium\",\n\t},\n\tinput: {\n\t\tfontSize: 14,\n\t\tcolor: TEXT_DARKEST,\n\t\tfontFamily: \"sf-medium\",\n\t\tmargin: 0,\n\t\tbackgroundColor: BG_GREY,\n\t\tborderRadius: 5,\n\t\tpadding: 8,\n\t\tmaxHeight: SCREEN_HEIGHT / 3,\n\t},\n\tsendContainer: {\n\t\tposition: \"absolute\",\n\t\ttop: 8,\n\t\tright: 8,\n\t\theight: 30,\n\t\twidth: 30,\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t\tbackgroundColor: \"#fff\",\n\t},\n\tsend: {\n\t\tcolor: TEXT_BLUEGREY,\n\t\tfontSize: 24,\n\t\ttextAlign: \"center\",\n\t},\n};\n\nconst mapStateToProps = (state) => {\n\tconst { user } = state;\n\treturn { user };\n};\n\nconst commentReply = connect(mapStateToProps, {}, null, { forwardRef: true })(\n\twithSafeAreaInsets(CommentReply),\n);\nexport { commentReply as CommentReply };\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","Component","connect","Keyboard","TextInput","View","ImageBackground","TouchableOpacity","Dimensions","Icon","withSafeAreaInsets","_","getApiError","getShadowStyle","TEXT_BLUEGREY","TEXT_DARKEST","BG_GREY","Spinner","ImageUploader","reactionActions","SCREEN_HEIGHT","get","height","CommentReply","constructor","props","_defineProperty","setState","uploadingCommentImage","setTimeout","noScroll","_this$props$scrollVie","scrollView","current","scrollToEnd","animated","uri","commentImageInput","replace","state","commentInput","commentsLoading","addingComment","replyInputRef","createRef","componentDidMount","commentSection","isLoading","focusInput","focus","loadingStarted","loadingCompleted","shouldShowImageInput","isEmpty","addComment","_this$props$scrollVie2","text","image","dismiss","_this$props$commentSe","startedAddingComment","entityId","entityType","entityName","site","threadId","then","res","_this$props$commentSe2","commentAdded","data","_this$props$scrollVie3","catch","err","console","log","removeImage","showUploadMenu","commentImageUploader","renderImageAttachment","createElement","style","styles","accessoryImage","accessoryImageBorder","borderWidth","borderColor","imageStyle","source","accessoryImageClose","onPress","bind","hitSlop","top","right","bottom","left","name","type","iconStyle","accessoryImageCloseIcon","accessoryImageCloseIconContainer","renderImageUploader","ref","onUploadStarted","onUploadSuccess","onUploadFailed","onLibrarySelected","quality","allowsEditing","fileName","popupTitle","userId","user","uid","hideLibrary","render","_this$props$insets","includes","hidden","inputContainer","paddingBottom","insets","input","marginRight","maxFontSizeMultiplier","placeholder","value","onFocus","_this$props$scrollVie4","onChangeText","_this$props$scrollVie5","inputText","autoCapitalize","multiline","autoCorrect","autoGrow","sendContainer","padding","width","send","marginTop","borderRadius","position","backgroundColor","alignItems","justifyContent","fontSize","color","textAlign","paddingVertical","paddingHorizontal","flexGrow","fontFamily","margin","maxHeight","mapStateToProps","commentReply","forwardRef"],"sources":["CommentReply.js"],"sourcesContent":["import React, { Component } from \"react\";\nimport { connect } from \"react-redux\";\nimport {\n\tKeyboard,\n\tTextInput,\n\tView,\n\tImageBackground,\n\tTouchableOpacity,\n\tDimensions,\n} from \"react-native\";\nimport { Icon } from \"@rneui/themed\";\nimport { withSafeAreaInsets } from \"react-native-safe-area-context\";\nimport _ from \"lodash\";\nimport { getApiError } from \"../session\";\nimport { getShadowStyle } from \"../helper\";\nimport { TEXT_BLUEGREY, TEXT_DARKEST, BG_GREY } from \"../colours\";\nimport { Spinner } from \"./Spinner\";\nimport ImageUploader from \"./ImageUploader\";\nimport { reactionActions } from \"../apis\";\n\nconst SCREEN_HEIGHT = Dimensions.get(\"window\").height;\n\nclass CommentReply extends Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\n\t\tthis.state = {\n\t\t\tcommentImageInput: \"\",\n\t\t\tcommentInput: \"\",\n\t\t\tuploadingCommentImage: false,\n\t\t\tcommentsLoading: true,\n\t\t\taddingComment: false,\n\t\t};\n\t\tthis.replyInputRef = React.createRef();\n\t}\n\n\tcomponentDidMount() {\n\t\tif (this.props.commentSection && this.props.commentSection.current) {\n\t\t\tthis.setState({\n\t\t\t\tcommentsLoading: this.props.commentSection.current.isLoading(),\n\t\t\t});\n\t\t}\n\t}\n\n\tonUploadStarted = () => {\n\t\tthis.setState({\n\t\t\tuploadingCommentImage: true,\n\t\t});\n\t\tsetTimeout(() => {\n\t\t\tif (!this.props.noScroll) {\n\t\t\t\tthis.props.scrollView?.current?.scrollToEnd({ animated: true });\n\t\t\t}\n\t\t}, 500);\n\t};\n\n\tonUploadSuccess = (uri) => {\n\t\tthis.setState({\n\t\t\tuploadingCommentImage: false,\n\t\t\tcommentImageInput: uri.replace(\"/general/\", \"/general1400/\"),\n\t\t});\n\t};\n\n\tonUploadFailed = () => {\n\t\tthis.setState({\n\t\t\tuploadingCommentImage: false,\n\t\t\tcommentImageInput: null,\n\t\t});\n\t};\n\n\tfocusInput() {\n\t\tthis.replyInputRef.current.focus();\n\t}\n\n\tloadingStarted() {\n\t\tthis.setState({\n\t\t\tcommentsLoading: true,\n\t\t});\n\t}\n\n\tloadingCompleted() {\n\t\tthis.setState({\n\t\t\tcommentsLoading: false,\n\t\t});\n\t}\n\n\tshouldShowImageInput() {\n\t\treturn (\n\t\t\tthis.state.uploadingCommentImage ||\n\t\t\t!_.isEmpty(this.state.commentImageInput)\n\t\t);\n\t}\n\n\taddComment() {\n\t\tsetTimeout(() => {\n\t\t\tif (!this.props.noScroll) {\n\t\t\t\tthis.props.scrollView?.current?.scrollToEnd({ animated: true });\n\t\t\t}\n\t\t}, 500);\n\t\tconst text = this.state.commentInput;\n\t\tconst image = this.state.commentImageInput;\n\t\tthis.setState({\n\t\t\taddingComment: true,\n\t\t\tcommentInput: \"\",\n\t\t\tcommentImageInput: \"\",\n\t\t});\n\t\tKeyboard.dismiss();\n\t\tif (this.props.commentSection) {\n\t\t\tthis.props.commentSection?.current?.startedAddingComment();\n\t\t}\n\t\treactionActions\n\t\t\t.addComment(\n\t\t\t\tthis.props.entityId,\n\t\t\t\tthis.props.entityType,\n\t\t\t\tthis.props.entityName,\n\t\t\t\tthis.props.site,\n\t\t\t\ttext,\n\t\t\t\timage,\n\t\t\t\tthis.props.threadId,\n\t\t\t)\n\t\t\t.then((res) => {\n\t\t\t\tif (this.props.commentSection) {\n\t\t\t\t\tthis.props.commentSection?.current?.commentAdded(res.data);\n\t\t\t\t}\n\t\t\t\tthis.setState({\n\t\t\t\t\taddingComment: false,\n\t\t\t\t});\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tif (!this.props.noScroll) {\n\t\t\t\t\t\tthis.props.scrollView?.current?.scrollToEnd({ animated: true });\n\t\t\t\t\t}\n\t\t\t\t}, 500);\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tconsole.log(getApiError(err));\n\t\t\t});\n\t}\n\n\tremoveImage() {\n\t\tthis.setState({\n\t\t\tcommentImageInput: null,\n\t\t});\n\t}\n\n\tshowUploadMenu() {\n\t\tif (\n\t\t\tthis.state.uploadingCommentImage ||\n\t\t\t!_.isEmpty(this.state.commentImageInput)\n\t\t) {\n\t\t\treturn;\n\t\t}\n\t\tthis.commentImageUploader.showUploadMenu();\n\t}\n\n\trenderImageAttachment() {\n\t\tif (\n\t\t\t_.isEmpty(this.state.commentImageInput) &&\n\t\t\t!this.state.uploadingCommentImage\n\t\t) {\n\t\t\treturn null;\n\t\t}\n\t\tif (this.state.uploadingCommentImage) {\n\t\t\treturn (\n\t\t\t\t<View\n\t\t\t\t\tstyle={[\n\t\t\t\t\t\tstyles.accessoryImage,\n\t\t\t\t\t\tstyles.accessoryImageBorder,\n\t\t\t\t\t\t{ borderWidth: 1, borderColor: BG_GREY },\n\t\t\t\t\t]}\n\t\t\t\t>\n\t\t\t\t\t<Spinner />\n\t\t\t\t</View>\n\t\t\t);\n\t\t}\n\t\treturn (\n\t\t\t<ImageBackground\n\t\t\t\tstyle={styles.accessoryImage}\n\t\t\t\timageStyle={styles.accessoryImageBorder}\n\t\t\t\tsource={{ uri: this.state.commentImageInput }}\n\t\t\t>\n\t\t\t\t<TouchableOpacity\n\t\t\t\t\tstyle={styles.accessoryImageClose}\n\t\t\t\t\tonPress={this.removeImage.bind(this)}\n\t\t\t\t\thitSlop={{ top: 8, right: 8, bottom: 8, left: 8 }}\n\t\t\t\t>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tname=\"remove\"\n\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\ticonStyle={styles.accessoryImageCloseIcon}\n\t\t\t\t\t\tstyle={styles.accessoryImageCloseIconContainer}\n\t\t\t\t\t/>\n\t\t\t\t</TouchableOpacity>\n\t\t\t</ImageBackground>\n\t\t);\n\t}\n\n\trenderImageUploader() {\n\t\treturn (\n\t\t\t<ImageUploader\n\t\t\t\tref={(ref) => (this.commentImageUploader = ref)}\n\t\t\t\tonUploadStarted={this.onUploadStarted}\n\t\t\t\tonUploadSuccess={this.onUploadSuccess}\n\t\t\t\tonUploadFailed={this.onUploadFailed}\n\t\t\t\tonLibrarySelected={this.onUploadSuccess}\n\t\t\t\tquality={0.8}\n\t\t\t\tallowsEditing={false}\n\t\t\t\tfileName=\"commentImage\"\n\t\t\t\tpopupTitle=\"Add Image\"\n\t\t\t\tuserId={this.props.user.uid}\n\t\t\t\thideLibrary\n\t\t\t/>\n\t\t);\n\t}\n\n\trender() {\n\t\tif (_.includes(this.props.user.hidden, \"addComment\")) {\n\t\t\treturn null;\n\t\t}\n\t\tif (this.state.commentsLoading) {\n\t\t\treturn null;\n\t\t}\n\t\treturn (\n\t\t\t<View\n\t\t\t\tstyle={[\n\t\t\t\t\tstyles.inputContainer,\n\t\t\t\t\tgetShadowStyle(),\n\t\t\t\t\t{ paddingBottom: 8 + (this.props.insets?.bottom ?? 0) },\n\t\t\t\t\tthis.props.style,\n\t\t\t\t]}\n\t\t\t>\n\t\t\t\t<View\n\t\t\t\t\tstyle={[\n\t\t\t\t\t\tstyles.input,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tmarginRight:\n\t\t\t\t\t\t\t\t_.isEmpty(this.state.commentInput) &&\n\t\t\t\t\t\t\t\t_.isEmpty(this.state.commentImageInput)\n\t\t\t\t\t\t\t\t\t? 40\n\t\t\t\t\t\t\t\t\t: 80,\n\t\t\t\t\t\t},\n\t\t\t\t\t]}\n\t\t\t\t>\n\t\t\t\t\t<TextInput\n\t\t\t\t\t\tmaxFontSizeMultiplier={1.2}\n\t\t\t\t\t\tref={this.replyInputRef}\n\t\t\t\t\t\tplaceholder=\"Enter your comment here\"\n\t\t\t\t\t\tvalue={this.state.commentInput}\n\t\t\t\t\t\tonFocus={() => {\n\t\t\t\t\t\t\tif (!this.props.noScroll) {\n\t\t\t\t\t\t\t\tthis.props.scrollView?.current?.scrollToEnd({ animated: true });\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tonChangeText={(value) => {\n\t\t\t\t\t\t\tif (!this.props.noScroll) {\n\t\t\t\t\t\t\t\tthis.props.scrollView?.current?.scrollToEnd({\n\t\t\t\t\t\t\t\t\tanimated: false,\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tthis.setState({\n\t\t\t\t\t\t\t\tcommentInput: value,\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tstyle={styles.inputText}\n\t\t\t\t\t\tautoCapitalize=\"sentences\"\n\t\t\t\t\t\tmultiline\n\t\t\t\t\t\tautoCorrect\n\t\t\t\t\t\tautoGrow\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t\t{(!_.isEmpty(this.state.commentInput) ||\n\t\t\t\t\t!_.isEmpty(this.state.commentImageInput)) &&\n\t\t\t\t\t!this.state.addingComment && (\n\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\tonPress={this.addComment.bind(this)}\n\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\tstyles.sendContainer,\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tright: 4,\n\t\t\t\t\t\t\t\t\tpadding: 4,\n\t\t\t\t\t\t\t\t\twidth: 40,\n\t\t\t\t\t\t\t\t\theight: 40,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tname=\"paper-plane\"\n\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\ticonStyle={[styles.send, { width: 40 }]}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t)}\n\t\t\t\t<TouchableOpacity\n\t\t\t\t\tonPress={this.showUploadMenu.bind(this)}\n\t\t\t\t\tstyle={[\n\t\t\t\t\t\tstyles.sendContainer,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tright:\n\t\t\t\t\t\t\t\t_.isEmpty(this.state.commentInput) &&\n\t\t\t\t\t\t\t\t_.isEmpty(this.state.commentImageInput)\n\t\t\t\t\t\t\t\t\t? 4\n\t\t\t\t\t\t\t\t\t: 44,\n\t\t\t\t\t\t\tpadding: 4,\n\t\t\t\t\t\t\twidth: 40,\n\t\t\t\t\t\t\theight: 40,\n\t\t\t\t\t\t},\n\t\t\t\t\t]}\n\t\t\t\t>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tname=\"picture-o\"\n\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\ticonStyle={[styles.send, { width: 40 }]}\n\t\t\t\t\t/>\n\t\t\t\t</TouchableOpacity>\n\t\t\t\t{this.renderImageAttachment()}\n\t\t\t\t{this.renderImageUploader()}\n\t\t\t</View>\n\t\t);\n\t}\n}\n\nconst styles = {\n\taccessoryImage: {\n\t\tmarginTop: 8,\n\t\twidth: 60,\n\t\theight: 60,\n\t},\n\taccessoryImageBorder: {\n\t\tborderRadius: 2,\n\t},\n\taccessoryImageClose: {\n\t\twidth: 14,\n\t\theight: 14,\n\t\tborderRadius: 7,\n\t\tposition: \"absolute\",\n\t\ttop: -7,\n\t\tright: -7,\n\t\tbackgroundColor: TEXT_BLUEGREY,\n\t},\n\taccessoryImageCloseIconContainer: {\n\t\twidth: 14,\n\t\theight: 14,\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t},\n\taccessoryImageCloseIcon: {\n\t\tfontSize: 10,\n\t\tcolor: \"#fff\",\n\t\ttextAlign: \"center\",\n\t},\n\tinputContainer: {\n\t\tbackgroundColor: \"#fff\",\n\t\tpaddingVertical: 8,\n\t\tpaddingHorizontal: 8,\n\t\tpaddingBottom: 8, // bottom inset added dynamically via props\n\t\tflexGrow: 1,\n\t},\n\tinputText: {\n\t\tcolor: TEXT_DARKEST,\n\t\tfontSize: 14,\n\t\tfontFamily: \"sf-medium\",\n\t},\n\tinput: {\n\t\tfontSize: 14,\n\t\tcolor: TEXT_DARKEST,\n\t\tfontFamily: \"sf-medium\",\n\t\tmargin: 0,\n\t\tbackgroundColor: BG_GREY,\n\t\tborderRadius: 5,\n\t\tpadding: 8,\n\t\tmaxHeight: SCREEN_HEIGHT / 3,\n\t},\n\tsendContainer: {\n\t\tposition: \"absolute\",\n\t\ttop: 8,\n\t\tright: 8,\n\t\theight: 30,\n\t\twidth: 30,\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t\tbackgroundColor: \"#fff\",\n\t},\n\tsend: {\n\t\tcolor: TEXT_BLUEGREY,\n\t\tfontSize: 24,\n\t\ttextAlign: \"center\",\n\t},\n};\n\nconst mapStateToProps = (state) => {\n\tconst { user } = state;\n\treturn { user };\n};\n\nconst commentReply = connect(mapStateToProps, {}, null, { forwardRef: true })(\n\twithSafeAreaInsets(CommentReply),\n);\nexport { commentReply as CommentReply };\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -126,6 +126,10 @@ class PDFPopup extends Component {
|
|
|
126
126
|
source: {
|
|
127
127
|
uri: this.getUrl()
|
|
128
128
|
},
|
|
129
|
+
javaScriptEnabled: true,
|
|
130
|
+
domStorageEnabled: true,
|
|
131
|
+
originWhitelist: ["*"],
|
|
132
|
+
mixedContentMode: "always",
|
|
129
133
|
renderError: e => {
|
|
130
134
|
console.log("errored");
|
|
131
135
|
console.log(e);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Component","View","TouchableOpacity","Modal","Dimensions","Alert","Text","Icon","WebView","File","Paths","Sharing","FontAwesome","Spinner","StatusBarHeight","getFileName","SCREEN_HEIGHT","get","height","PDFPopup","constructor","args","_defineProperty","loaded","file","downloadFileAsync","props","source","document","idempotent","shareAsync","uri","UTI","error","console","log","alert","text","onLoadStarted","setState","onLoadEnded","onChangeIndex","index","getUrl","linkPrefix","closePopup","onClose","renderFooter","pdfCount","createElement","style","styles","footerContent","onPress","bind","activeOpacity","type","name","iconStyle","chevron","footerText","selectedIndex","render","visible","transparent","animationType","onRequestClose","flex","backgroundColor","paddingTop","headerContent","menuIcon","titleContainer","title","download","state","renderError","e","onLoadStart","onLoadEnd","container","position","innerContainer","paddingLeft","paddingRight","fontSize","padding","width","textAlign","color","zIndex","flexDirection","alignItems","fontFamily","justifyContent"],"sources":["PDFPopup.js"],"sourcesContent":["import React, { Component } from \"react\";\nimport { View, TouchableOpacity, Modal, Dimensions, Alert } from \"react-native\";\nimport { Text } from \"./Text\";\nimport { Icon } from \"@rneui/themed\";\nimport { WebView } from \"react-native-webview\";\nimport { File, Paths } from \"expo-file-system\";\nimport * as Sharing from \"expo-sharing\";\nimport { FontAwesome } from \"./Icon\";\nimport { Spinner } from \"./Spinner\";\nimport { StatusBarHeight, getFileName } from \"../helper\";\n\nconst SCREEN_HEIGHT = Dimensions.get(\"window\").height;\n\nclass PDFPopup extends Component {\n\tstate = {\n\t\tloaded: false,\n\t};\n\n\tonLoadStarted() {\n\t\tthis.setState({\n\t\t\tloaded: false,\n\t\t});\n\t}\n\n\tonLoadEnded() {\n\t\tthis.setState({\n\t\t\tloaded: true,\n\t\t});\n\t}\n\n\tonChangeIndex(index) {\n\t\tthis.props.onChangeIndex(index);\n\t}\n\n\tgetUrl() {\n\t\tconst linkPrefix =\n\t\t\t\"http://drive.google.com/viewerng/viewer?embedded=true&url=\";\n\t\treturn `${linkPrefix}${this.props.source}`;\n\t}\n\n\tdownload = async () => {\n\t\ttry {\n\t\t\tconst file = await File.downloadFileAsync(\n\t\t\t\tthis.props.source,\n\t\t\t\tnew File(Paths.document, getFileName(this.props.source)),\n\t\t\t\t{ idempotent: true },\n\t\t\t);\n\t\t\tawait Sharing.shareAsync(file.uri, {\n\t\t\t\tUTI: \"public.item\",\n\t\t\t});\n\t\t} catch (error) {\n\t\t\tconsole.log(\"PDFPopup download error:\", error);\n\t\t\tAlert.alert(\n\t\t\t\t\"Download Failed\",\n\t\t\t\t\"Unable to download PDF. Please try again.\",\n\t\t\t\t[{ text: \"OK\" }],\n\t\t\t);\n\t\t}\n\t};\n\n\tclosePopup() {\n\t\tthis.props.onClose();\n\t}\n\n\trenderFooter() {\n\t\tif (this.props.pdfCount && this.props.pdfCount === 1) {\n\t\t\treturn null;\n\t\t}\n\t\treturn (\n\t\t\t<View style={styles.footerContent}>\n\t\t\t\t<TouchableOpacity\n\t\t\t\t\tonPress={this.onChangeIndex.bind(this, -1)}\n\t\t\t\t\tactiveOpacity={0.6}\n\t\t\t\t>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\tname=\"angle-left\"\n\t\t\t\t\t\ticonStyle={[styles.chevron]}\n\t\t\t\t\t/>\n\t\t\t\t</TouchableOpacity>\n\t\t\t\t<Text style={styles.footerText}>\n\t\t\t\t\t{this.props.selectedIndex + 1} / {this.props.pdfCount}\n\t\t\t\t</Text>\n\t\t\t\t<TouchableOpacity\n\t\t\t\t\tonPress={this.onChangeIndex.bind(this, 1)}\n\t\t\t\t\tactiveOpacity={0.6}\n\t\t\t\t>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\tname=\"angle-right\"\n\t\t\t\t\t\ticonStyle={[styles.chevron]}\n\t\t\t\t\t/>\n\t\t\t\t</TouchableOpacity>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trender() {\n\t\tif (!this.props.source) {\n\t\t\treturn null;\n\t\t}\n\t\treturn (\n\t\t\t<Modal\n\t\t\t\tvisible={this.props.visible}\n\t\t\t\ttransparent\n\t\t\t\tanimationType=\"slide\"\n\t\t\t\tonRequestClose={this.closePopup.bind(this)}\n\t\t\t>\n\t\t\t\t<View\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tflex: 1,\n\t\t\t\t\t\tbackgroundColor: \"#000\",\n\t\t\t\t\t\tpaddingTop: StatusBarHeight(0),\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<View style={styles.headerContent}>\n\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\tonPress={this.closePopup.bind(this)}\n\t\t\t\t\t\t\tactiveOpacity={0.6}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<FontAwesome name=\"x\" style={[styles.menuIcon]} />\n\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t<View style={styles.titleContainer}>\n\t\t\t\t\t\t\t<Text style={styles.title}>{this.props.title}</Text>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t\t<TouchableOpacity onPress={this.download} activeOpacity={0.6}>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\tname=\"cloud-download\"\n\t\t\t\t\t\t\t\ticonStyle={[styles.menuIcon]}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t</View>\n\t\t\t\t\t<View style={{ flex: 1, backgroundColor: \"#fff\" }}>\n\t\t\t\t\t\t{this.state.loaded ? null : (\n\t\t\t\t\t\t\t<Spinner\n\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\theight: SCREEN_HEIGHT - StatusBarHeight(145),\n\t\t\t\t\t\t\t\t\tflex: 0,\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<WebView\n\t\t\t\t\t\t\tsource={{\n\t\t\t\t\t\t\t\turi: this.getUrl(),\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\trenderError={(e) => {\n\t\t\t\t\t\t\t\tconsole.log(\"errored\");\n\t\t\t\t\t\t\t\tconsole.log(e);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tflex: 1,\n\t\t\t\t\t\t\t\t\tbackgroundColor: \"#fff\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\tonLoadStart={this.onLoadStarted.bind(this)}\n\t\t\t\t\t\t\tonLoadEnd={this.onLoadEnded.bind(this)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</View>\n\t\t\t\t\t{this.renderFooter()}\n\t\t\t\t</View>\n\t\t\t</Modal>\n\t\t);\n\t}\n}\n\nconst styles = {\n\tcontainer: {\n\t\tflex: 1,\n\t\tposition: \"relative\",\n\t\tbackgroundColor: \"#000\",\n\t},\n\tinnerContainer: {\n\t\tflex: 1,\n\t\tpaddingLeft: 15,\n\t\tpaddingRight: 15,\n\t},\n\tmenuIcon: {\n\t\tfontSize: 25,\n\t\tpadding: 15,\n\t\twidth: 55,\n\t\ttextAlign: \"center\",\n\t\tcolor: \"#fff\",\n\t\tzIndex: 3,\n\t},\n\theaderContent: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t\theight: 70,\n\t},\n\ttitleContainer: {\n\t\tflex: 1,\n\t},\n\ttitle: {\n\t\tcolor: \"#fff\",\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 16,\n\t\ttextAlign: \"center\",\n\t},\n\tfooterContent: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t\theight: 70,\n\t\t//alignSelf: 'flex-end'\n\t},\n\tchevron: {\n\t\tfontSize: 25,\n\t\tpadding: 15,\n\t\twidth: 55,\n\t\ttextAlign: \"center\",\n\t\tcolor: \"#fff\",\n\t\tzIndex: 3,\n\t},\n\tfooterText: {\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 14,\n\t\tcolor: \"#fff\",\n\t\twidth: 150,\n\t\ttextAlign: \"center\",\n\t},\n};\n\nexport { PDFPopup };\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","Component","View","TouchableOpacity","Modal","Dimensions","Alert","Text","Icon","WebView","File","Paths","Sharing","FontAwesome","Spinner","StatusBarHeight","getFileName","SCREEN_HEIGHT","get","height","PDFPopup","constructor","args","_defineProperty","loaded","file","downloadFileAsync","props","source","document","idempotent","shareAsync","uri","UTI","error","console","log","alert","text","onLoadStarted","setState","onLoadEnded","onChangeIndex","index","getUrl","linkPrefix","closePopup","onClose","renderFooter","pdfCount","createElement","style","styles","footerContent","onPress","bind","activeOpacity","type","name","iconStyle","chevron","footerText","selectedIndex","render","visible","transparent","animationType","onRequestClose","flex","backgroundColor","paddingTop","headerContent","menuIcon","titleContainer","title","download","state","javaScriptEnabled","domStorageEnabled","originWhitelist","mixedContentMode","renderError","e","onLoadStart","onLoadEnd","container","position","innerContainer","paddingLeft","paddingRight","fontSize","padding","width","textAlign","color","zIndex","flexDirection","alignItems","fontFamily","justifyContent"],"sources":["PDFPopup.js"],"sourcesContent":["import React, { Component } from \"react\";\nimport { View, TouchableOpacity, Modal, Dimensions, Alert } from \"react-native\";\nimport { Text } from \"./Text\";\nimport { Icon } from \"@rneui/themed\";\nimport { WebView } from \"react-native-webview\";\nimport { File, Paths } from \"expo-file-system\";\nimport * as Sharing from \"expo-sharing\";\nimport { FontAwesome } from \"./Icon\";\nimport { Spinner } from \"./Spinner\";\nimport { StatusBarHeight, getFileName } from \"../helper\";\n\nconst SCREEN_HEIGHT = Dimensions.get(\"window\").height;\n\nclass PDFPopup extends Component {\n\tstate = {\n\t\tloaded: false,\n\t};\n\n\tonLoadStarted() {\n\t\tthis.setState({\n\t\t\tloaded: false,\n\t\t});\n\t}\n\n\tonLoadEnded() {\n\t\tthis.setState({\n\t\t\tloaded: true,\n\t\t});\n\t}\n\n\tonChangeIndex(index) {\n\t\tthis.props.onChangeIndex(index);\n\t}\n\n\tgetUrl() {\n\t\tconst linkPrefix =\n\t\t\t\"http://drive.google.com/viewerng/viewer?embedded=true&url=\";\n\t\treturn `${linkPrefix}${this.props.source}`;\n\t}\n\n\tdownload = async () => {\n\t\ttry {\n\t\t\tconst file = await File.downloadFileAsync(\n\t\t\t\tthis.props.source,\n\t\t\t\tnew File(Paths.document, getFileName(this.props.source)),\n\t\t\t\t{ idempotent: true },\n\t\t\t);\n\t\t\tawait Sharing.shareAsync(file.uri, {\n\t\t\t\tUTI: \"public.item\",\n\t\t\t});\n\t\t} catch (error) {\n\t\t\tconsole.log(\"PDFPopup download error:\", error);\n\t\t\tAlert.alert(\n\t\t\t\t\"Download Failed\",\n\t\t\t\t\"Unable to download PDF. Please try again.\",\n\t\t\t\t[{ text: \"OK\" }],\n\t\t\t);\n\t\t}\n\t};\n\n\tclosePopup() {\n\t\tthis.props.onClose();\n\t}\n\n\trenderFooter() {\n\t\tif (this.props.pdfCount && this.props.pdfCount === 1) {\n\t\t\treturn null;\n\t\t}\n\t\treturn (\n\t\t\t<View style={styles.footerContent}>\n\t\t\t\t<TouchableOpacity\n\t\t\t\t\tonPress={this.onChangeIndex.bind(this, -1)}\n\t\t\t\t\tactiveOpacity={0.6}\n\t\t\t\t>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\tname=\"angle-left\"\n\t\t\t\t\t\ticonStyle={[styles.chevron]}\n\t\t\t\t\t/>\n\t\t\t\t</TouchableOpacity>\n\t\t\t\t<Text style={styles.footerText}>\n\t\t\t\t\t{this.props.selectedIndex + 1} / {this.props.pdfCount}\n\t\t\t\t</Text>\n\t\t\t\t<TouchableOpacity\n\t\t\t\t\tonPress={this.onChangeIndex.bind(this, 1)}\n\t\t\t\t\tactiveOpacity={0.6}\n\t\t\t\t>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\tname=\"angle-right\"\n\t\t\t\t\t\ticonStyle={[styles.chevron]}\n\t\t\t\t\t/>\n\t\t\t\t</TouchableOpacity>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trender() {\n\t\tif (!this.props.source) {\n\t\t\treturn null;\n\t\t}\n\t\treturn (\n\t\t\t<Modal\n\t\t\t\tvisible={this.props.visible}\n\t\t\t\ttransparent\n\t\t\t\tanimationType=\"slide\"\n\t\t\t\tonRequestClose={this.closePopup.bind(this)}\n\t\t\t>\n\t\t\t\t<View\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tflex: 1,\n\t\t\t\t\t\tbackgroundColor: \"#000\",\n\t\t\t\t\t\tpaddingTop: StatusBarHeight(0),\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<View style={styles.headerContent}>\n\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\tonPress={this.closePopup.bind(this)}\n\t\t\t\t\t\t\tactiveOpacity={0.6}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<FontAwesome name=\"x\" style={[styles.menuIcon]} />\n\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t<View style={styles.titleContainer}>\n\t\t\t\t\t\t\t<Text style={styles.title}>{this.props.title}</Text>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t\t<TouchableOpacity onPress={this.download} activeOpacity={0.6}>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\tname=\"cloud-download\"\n\t\t\t\t\t\t\t\ticonStyle={[styles.menuIcon]}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t</View>\n\t\t\t\t\t<View style={{ flex: 1, backgroundColor: \"#fff\" }}>\n\t\t\t\t\t\t{this.state.loaded ? null : (\n\t\t\t\t\t\t\t<Spinner\n\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\theight: SCREEN_HEIGHT - StatusBarHeight(145),\n\t\t\t\t\t\t\t\t\tflex: 0,\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<WebView\n\t\t\t\t\t\t\tsource={{\n\t\t\t\t\t\t\t\turi: this.getUrl(),\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tjavaScriptEnabled\n\t\t\t\t\t\t\tdomStorageEnabled\n\t\t\t\t\t\t\toriginWhitelist={[\"*\"]}\n\t\t\t\t\t\t\tmixedContentMode=\"always\"\n\t\t\t\t\t\t\trenderError={(e) => {\n\t\t\t\t\t\t\t\tconsole.log(\"errored\");\n\t\t\t\t\t\t\t\tconsole.log(e);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tflex: 1,\n\t\t\t\t\t\t\t\t\tbackgroundColor: \"#fff\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\tonLoadStart={this.onLoadStarted.bind(this)}\n\t\t\t\t\t\t\tonLoadEnd={this.onLoadEnded.bind(this)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</View>\n\t\t\t\t\t{this.renderFooter()}\n\t\t\t\t</View>\n\t\t\t</Modal>\n\t\t);\n\t}\n}\n\nconst styles = {\n\tcontainer: {\n\t\tflex: 1,\n\t\tposition: \"relative\",\n\t\tbackgroundColor: \"#000\",\n\t},\n\tinnerContainer: {\n\t\tflex: 1,\n\t\tpaddingLeft: 15,\n\t\tpaddingRight: 15,\n\t},\n\tmenuIcon: {\n\t\tfontSize: 25,\n\t\tpadding: 15,\n\t\twidth: 55,\n\t\ttextAlign: \"center\",\n\t\tcolor: \"#fff\",\n\t\tzIndex: 3,\n\t},\n\theaderContent: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t\theight: 70,\n\t},\n\ttitleContainer: {\n\t\tflex: 1,\n\t},\n\ttitle: {\n\t\tcolor: \"#fff\",\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 16,\n\t\ttextAlign: \"center\",\n\t},\n\tfooterContent: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t\theight: 70,\n\t\t//alignSelf: 'flex-end'\n\t},\n\tchevron: {\n\t\tfontSize: 25,\n\t\tpadding: 15,\n\t\twidth: 55,\n\t\ttextAlign: \"center\",\n\t\tcolor: \"#fff\",\n\t\tzIndex: 3,\n\t},\n\tfooterText: {\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 14,\n\t\tcolor: \"#fff\",\n\t\twidth: 150,\n\t\ttextAlign: \"center\",\n\t},\n};\n\nexport { PDFPopup };\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -17,7 +17,7 @@ class Text extends PureComponent {
|
|
|
17
17
|
render() {
|
|
18
18
|
return /*#__PURE__*/React.createElement(TextNative, _extends({}, this.props, {
|
|
19
19
|
style: [styles[this.props.type], this.props.style],
|
|
20
|
-
maxFontSizeMultiplier: 1.2
|
|
20
|
+
maxFontSizeMultiplier: this.props.maxFontSizeMultiplier || 1.2
|
|
21
21
|
}), this.props.children);
|
|
22
22
|
}
|
|
23
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","PureComponent","StyleSheet","Text","TextNative","TEXT_DARKEST","COLOUR_RED","render","createElement","_extends","props","style","styles","type","maxFontSizeMultiplier","children","create","pageHeading","fontFamily","fontSize","color","body","label","detailLabel","input","error"],"sources":["Text.js"],"sourcesContent":["import React, { PureComponent } from \"react\";\nimport { StyleSheet, Text as TextNative } from \"react-native\";\nimport { TEXT_DARKEST, COLOUR_RED } from \"../colours\";\n\n/**\n * A wrapper around the react-native Text component that applies a\n * maximum font size multiplier (1.2) to prevent layout breaking.\n *\n * * @typedef {Object} TextProps\n * @property {'pageHeading' | 'heading' | 'label' | 'detailLabel' | 'input' | 'error'} [type] - The style preset to apply.\n * * @example\n * <Text type=\"pageHeading\" className=\"myClass\">Welcome</Text>\n */\n\nclass Text extends PureComponent {\n\trender() {\n\t\treturn (\n\t\t\t<TextNative\n\t\t\t\t{...this.props}\n\t\t\t\tstyle={[styles[this.props.type], this.props.style]}\n\t\t\t\tmaxFontSizeMultiplier={1.2}\n\t\t\t>\n\t\t\t\t{this.props.children}\n\t\t\t</TextNative>\n\t\t);\n\t}\n}\n\nconst styles = StyleSheet.create({\n\tpageHeading: {\n\t\tfontFamily: \"sf-bold\",\n\t\tfontSize: 24,\n\t\tcolor: TEXT_DARKEST,\n\t},\n\tbody: {\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 14,\n\t\tcolor: TEXT_DARKEST,\n\t},\n\tlabel: {\n\t\tfontFamily: \"sf-semibold\",\n\t\tcolor: TEXT_DARKEST,\n\t\tfontSize: 16,\n\t},\n\tdetailLabel: {\n\t\tfontFamily: \"sf-bold\",\n\t\tcolor: TEXT_DARKEST,\n\t\tfontSize: 16,\n\t},\n\tinput: {\n\t\tcolor: TEXT_DARKEST,\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 16,\n\t},\n\terror: {\n\t\tfontFamily: \"sf-bold\",\n\t\tcolor: COLOUR_RED,\n\t\tfontSize: 16,\n\t},\n});\n\nexport { Text };\n"],"mappings":";AAAA,OAAOA,KAAK,IAAIC,aAAa,QAAQ,OAAO;AAC5C,SAASC,UAAU,EAAEC,IAAI,IAAIC,UAAU,QAAQ,cAAc;AAC7D,SAASC,YAAY,EAAEC,UAAU,QAAQ,YAAY;;AAErD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAMH,IAAI,SAASF,aAAa,CAAC;EAChCM,MAAMA,CAAA,EAAG;IACR,oBACCP,KAAA,CAAAQ,aAAA,CAACJ,UAAU,EAAAK,QAAA,KACN,IAAI,CAACC,KAAK;MACdC,KAAK,EAAE,CAACC,MAAM,CAAC,IAAI,CAACF,KAAK,CAACG,IAAI,CAAC,EAAE,IAAI,CAACH,KAAK,CAACC,KAAK,CAAE;MACnDG,qBAAqB,EAAE;IAAI,
|
|
1
|
+
{"version":3,"names":["React","PureComponent","StyleSheet","Text","TextNative","TEXT_DARKEST","COLOUR_RED","render","createElement","_extends","props","style","styles","type","maxFontSizeMultiplier","children","create","pageHeading","fontFamily","fontSize","color","body","label","detailLabel","input","error"],"sources":["Text.js"],"sourcesContent":["import React, { PureComponent } from \"react\";\nimport { StyleSheet, Text as TextNative } from \"react-native\";\nimport { TEXT_DARKEST, COLOUR_RED } from \"../colours\";\n\n/**\n * A wrapper around the react-native Text component that applies a\n * maximum font size multiplier (1.2) to prevent layout breaking.\n *\n * * @typedef {Object} TextProps\n * @property {'pageHeading' | 'heading' | 'label' | 'detailLabel' | 'input' | 'error'} [type] - The style preset to apply.\n * * @example\n * <Text type=\"pageHeading\" className=\"myClass\">Welcome</Text>\n */\n\nclass Text extends PureComponent {\n\trender() {\n\t\treturn (\n\t\t\t<TextNative\n\t\t\t\t{...this.props}\n\t\t\t\tstyle={[styles[this.props.type], this.props.style]}\n\t\t\t\tmaxFontSizeMultiplier={this.props.maxFontSizeMultiplier || 1.2}\n\t\t\t>\n\t\t\t\t{this.props.children}\n\t\t\t</TextNative>\n\t\t);\n\t}\n}\n\nconst styles = StyleSheet.create({\n\tpageHeading: {\n\t\tfontFamily: \"sf-bold\",\n\t\tfontSize: 24,\n\t\tcolor: TEXT_DARKEST,\n\t},\n\tbody: {\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 14,\n\t\tcolor: TEXT_DARKEST,\n\t},\n\tlabel: {\n\t\tfontFamily: \"sf-semibold\",\n\t\tcolor: TEXT_DARKEST,\n\t\tfontSize: 16,\n\t},\n\tdetailLabel: {\n\t\tfontFamily: \"sf-bold\",\n\t\tcolor: TEXT_DARKEST,\n\t\tfontSize: 16,\n\t},\n\tinput: {\n\t\tcolor: TEXT_DARKEST,\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 16,\n\t},\n\terror: {\n\t\tfontFamily: \"sf-bold\",\n\t\tcolor: COLOUR_RED,\n\t\tfontSize: 16,\n\t},\n});\n\nexport { Text };\n"],"mappings":";AAAA,OAAOA,KAAK,IAAIC,aAAa,QAAQ,OAAO;AAC5C,SAASC,UAAU,EAAEC,IAAI,IAAIC,UAAU,QAAQ,cAAc;AAC7D,SAASC,YAAY,EAAEC,UAAU,QAAQ,YAAY;;AAErD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAMH,IAAI,SAASF,aAAa,CAAC;EAChCM,MAAMA,CAAA,EAAG;IACR,oBACCP,KAAA,CAAAQ,aAAA,CAACJ,UAAU,EAAAK,QAAA,KACN,IAAI,CAACC,KAAK;MACdC,KAAK,EAAE,CAACC,MAAM,CAAC,IAAI,CAACF,KAAK,CAACG,IAAI,CAAC,EAAE,IAAI,CAACH,KAAK,CAACC,KAAK,CAAE;MACnDG,qBAAqB,EAAE,IAAI,CAACJ,KAAK,CAACI,qBAAqB,IAAI;IAAI,IAE9D,IAAI,CAACJ,KAAK,CAACK,QACD,CAAC;EAEf;AACD;AAEA,MAAMH,MAAM,GAAGV,UAAU,CAACc,MAAM,CAAC;EAChCC,WAAW,EAAE;IACZC,UAAU,EAAE,SAAS;IACrBC,QAAQ,EAAE,EAAE;IACZC,KAAK,EAAEf;EACR,CAAC;EACDgB,IAAI,EAAE;IACLH,UAAU,EAAE,YAAY;IACxBC,QAAQ,EAAE,EAAE;IACZC,KAAK,EAAEf;EACR,CAAC;EACDiB,KAAK,EAAE;IACNJ,UAAU,EAAE,aAAa;IACzBE,KAAK,EAAEf,YAAY;IACnBc,QAAQ,EAAE;EACX,CAAC;EACDI,WAAW,EAAE;IACZL,UAAU,EAAE,SAAS;IACrBE,KAAK,EAAEf,YAAY;IACnBc,QAAQ,EAAE;EACX,CAAC;EACDK,KAAK,EAAE;IACNJ,KAAK,EAAEf,YAAY;IACnBa,UAAU,EAAE,YAAY;IACxBC,QAAQ,EAAE;EACX,CAAC;EACDM,KAAK,EAAE;IACNP,UAAU,EAAE,SAAS;IACrBE,KAAK,EAAEd,UAAU;IACjBa,QAAQ,EAAE;EACX;AACD,CAAC,CAAC;AAEF,SAAShB,IAAI","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Component","Text","Dimensions","Image","ScrollView","Modal","View","TouchableOpacity","StyleSheet","Platform","LogBox","Alert","ImageManipulator","MediaLibrary","File","Paths","PropTypes","AutoHeightImage","withSafeAreaInsets","SafeAreaView","ImageCropOverlay","width","get","ignoreLogs","ExpoImageManipulator","constructor","props","_defineProperty","onToggleModal","setState","cropMode","callback","processing","uri","state","getSize","actualWidth","actualHeight","cropObj","getCropBounds","height","uriToCrop","uriCroped","base64","croppedWidth","croppedHeight","crop","actualSize","event","scrollOffset","nativeEvent","contentOffset","y","_this$props$insets","_this$props$insets2","imageRatio","topInset","insets","top","bottomInset","bottom","originalHeight","renderedImageWidth","renderedImageHeight","renderedImageY","renderedImageX","renderImageObj","left","cropOverlayObj","currentPos","currentSize","intersectAreaObj","x","Math","max","num1","min","num2","originX","originY","saveOptions","manipResult","manipulateAsync","w1","layout","h1","squareAspect","maxSizes","componentDidMount","onConvertImageToEditableSize","photo","rawUri","resolvedUri","startsWith","assetId","replace","assetInfo","getAssetInfoAsync","shouldDownloadFromNetwork","localUri","_rawUri$split$pop","ext","split","pop","file","downloadFileAsync","cache","Date","now","idempotent","manipulatePromise","resize","timeoutPromise","Promise","_","reject","setTimeout","Error","race","e","console","log","alert","UNSAFE_componentWillReceiveProps","render","_this$props$insets3","_this$props$insets4","isVisible","onPictureChoosed","topMargin","OS","cropRatio","cropWidth","cropHeight","cropInitialTop","cropInitialLeft","createElement","animationType","transparent","visible","hardwareAccelerated","onRequestClose","undefined","style","styles","container","headerContainer","headerButtonContainer","justifyContent","onPress","headerButton","headerButtonText","onCropImage","contentContainer","position","flex","contentContainerStyle","backgroundColor","maximumZoomScale","minimumZoomScale","onScroll","onHandleScroll","bounces","showsHorizontalScrollIndicator","showsVerticalScrollIndicator","ref","c","scrollView","scrollEventThrottle","scrollEnabled","pinchGestureEnabled","source","resizeMode","onLayout","calculateMaxSizes","onLayoutChanged","initialWidth","initialHeight","initialTop","initialLeft","minHeight","minWidth","prepareMessageText","create","flexDirection","marginHorizontal","alignItems","fontWeight","color","fontSize","fontFamily","defaultProps","dragVelocity","resizeVelocity","compress","format","SaveFormat","PNG","propTypes","bool","isRequired","func","object","number"],"sources":["ExpoImageManipulator.js"],"sourcesContent":["import React, { Component } from \"react\";\nimport { Text } from \"@plusscommunities/pluss-core-app/components\";\nimport {\n\tDimensions,\n\tImage,\n\tScrollView,\n\tModal,\n\tView,\n\tTouchableOpacity,\n\tStyleSheet,\n\tPlatform,\n\tLogBox,\n\tAlert,\n} from \"react-native\";\nimport * as ImageManipulator from \"expo-image-manipulator\";\nimport * as MediaLibrary from \"expo-media-library\";\nimport { File, Paths } from \"expo-file-system\";\nimport PropTypes from \"prop-types\";\nimport AutoHeightImage from \"react-native-auto-height-image\";\nimport {\n\twithSafeAreaInsets,\n\tSafeAreaView,\n} from \"react-native-safe-area-context\";\nimport ImageCropOverlay from \"./ImageCropOverlay\";\n\nconst { width } = Dimensions.get(\"window\");\n\nLogBox.ignoreLogs([\n\t\"componentWillReceiveProps\",\n\t\"componentWillUpdate\",\n\t\"componentWillMount\",\n]);\nLogBox.ignoreLogs([\n\t\"Warning: componentWillMount is deprecated\",\n\t\"Warning: componentWillReceiveProps is deprecated\",\n\t\"Module RCTImageLoader requires\",\n]);\n\nclass ExpoImageManipulator extends Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tconst { squareAspect } = this.props;\n\t\tthis.state = {\n\t\t\tcropMode: false,\n\t\t\tprocessing: false,\n\t\t\tsquareAspect,\n\t\t};\n\n\t\tthis.scrollOffset = 0;\n\t\tthis.currentPos = { left: 0, top: 0 };\n\t\tthis.currentSize = { width: 0, height: 0 };\n\t\tthis.maxSizes = { width: 0, height: 0 };\n\t\tthis.actualSize = { width: 0, height: 0 };\n\t}\n\n\tasync componentDidMount() {\n\t\tawait this.onConvertImageToEditableSize();\n\n\t\t// Set cropping by default\n\t\tthis.setState({ cropMode: true });\n\t}\n\n\tasync onConvertImageToEditableSize() {\n\t\ttry {\n\t\t\tconst {\n\t\t\t\tphoto: { uri: rawUri },\n\t\t\t} = this.props;\n\n\t\t\t// expo-image-manipulator only works with file:// URIs.\n\t\t\t// Resolve ph:// (iOS Photo Library) and https:// (remote/stock images) first.\n\t\t\tlet resolvedUri = rawUri;\n\t\t\tif (rawUri?.startsWith(\"ph://\")) {\n\t\t\t\tconst assetId = rawUri.replace(\"ph://\", \"\");\n\t\t\t\tconst assetInfo = await MediaLibrary.getAssetInfoAsync(assetId, {\n\t\t\t\t\tshouldDownloadFromNetwork: true,\n\t\t\t\t});\n\t\t\t\tresolvedUri = assetInfo.localUri || rawUri;\n\t\t\t} else if (rawUri?.startsWith(\"http\")) {\n\t\t\t\tconst ext = rawUri.split(\".\").pop()?.split(\"?\")[0] || \"jpg\";\n\t\t\t\tconst file = await File.downloadFileAsync(\n\t\t\t\t\trawUri,\n\t\t\t\t\tnew File(Paths.cache, `crop_${Date.now()}.${ext}`),\n\t\t\t\t\t{ idempotent: true },\n\t\t\t\t);\n\t\t\t\tresolvedUri = file.uri;\n\t\t\t}\n\n\t\t\tconst manipulatePromise = ImageManipulator.manipulateAsync(resolvedUri, [\n\t\t\t\t{ resize: { width: 1080 } },\n\t\t\t]);\n\t\t\t// manipulateAsync can hang forever on non-file:// URIs (promise never settles).\n\t\t\t// Promise.race with a timeout ensures the catch block fires.\n\t\t\tconst timeoutPromise = new Promise((_, reject) =>\n\t\t\t\tsetTimeout(\n\t\t\t\t\t() => reject(new Error(\"Image processing timed out\")),\n\t\t\t\t\t15000,\n\t\t\t\t),\n\t\t\t);\n\t\t\tconst { uri, width, height } = await Promise.race([\n\t\t\t\tmanipulatePromise,\n\t\t\t\ttimeoutPromise,\n\t\t\t]);\n\t\t\tthis.setState({ uri });\n\t\t\tthis.actualSize.width = width;\n\t\t\tthis.actualSize.height = height;\n\t\t} catch (e) {\n\t\t\tconsole.log(\"onConvertImageToEditableSize error\", e);\n\t\t\tthis.onToggleModal();\n\t\t\tAlert.alert(\n\t\t\t\t\"Error\",\n\t\t\t\t\"Unable to prepare this image for editing. Please try a different image.\",\n\t\t\t);\n\t\t}\n\t}\n\n\tonToggleModal = () => {\n\t\tthis.props.onToggleModal();\n\t\tthis.setState({ cropMode: false });\n\t};\n\n\tonCropImage = (callback = null) => {\n\t\tthis.setState({ processing: true });\n\t\tconst { uri } = this.state;\n\t\tImage.getSize(uri, async (actualWidth, actualHeight) => {\n\t\t\tlet cropObj = this.getCropBounds(actualWidth, actualHeight);\n\t\t\tif (cropObj.height > 0 && cropObj.width > 0) {\n\t\t\t\tlet uriToCrop = uri;\n\t\t\t\tconst {\n\t\t\t\t\turi: uriCroped,\n\t\t\t\t\tbase64,\n\t\t\t\t\twidth: croppedWidth,\n\t\t\t\t\theight: croppedHeight,\n\t\t\t\t} = await this.crop(cropObj, uriToCrop);\n\n\t\t\t\tthis.actualSize.width = croppedWidth;\n\t\t\t\tthis.actualSize.height = croppedHeight;\n\n\t\t\t\tthis.setState(\n\t\t\t\t\t{\n\t\t\t\t\t\turi: uriCroped,\n\t\t\t\t\t\tbase64,\n\t\t\t\t\t\tcropMode: false,\n\t\t\t\t\t\tprocessing: false,\n\t\t\t\t\t},\n\t\t\t\t\t() => {\n\t\t\t\t\t\tif (callback) callback();\n\t\t\t\t\t},\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tthis.setState({ cropMode: false, processing: false }, () => {\n\t\t\t\t\tif (callback) callback();\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t};\n\n\tonHandleScroll = (event) => {\n\t\tthis.scrollOffset = event.nativeEvent.contentOffset.y;\n\t};\n\n\tgetCropBounds = (actualWidth, actualHeight) => {\n\t\tlet imageRatio = actualHeight / actualWidth;\n\t\tconst topInset = this.props.insets?.top ?? 0;\n\t\tconst bottomInset = this.props.insets?.bottom ?? 0;\n\t\tvar originalHeight =\n\t\t\tDimensions.get(\"window\").height - topInset - bottomInset - 44\n\t\tlet renderedImageWidth =\n\t\t\timageRatio < originalHeight / width ? width : originalHeight / imageRatio;\n\t\tlet renderedImageHeight =\n\t\t\timageRatio < originalHeight / width ? width * imageRatio : originalHeight;\n\n\t\tlet renderedImageY = (originalHeight - renderedImageHeight) / 2.0;\n\t\tlet renderedImageX = (width - renderedImageWidth) / 2.0;\n\n\t\tconst renderImageObj = {\n\t\t\tleft: renderedImageX,\n\t\t\ttop: renderedImageY,\n\t\t\twidth: renderedImageWidth,\n\t\t\theight: renderedImageHeight,\n\t\t};\n\t\tconst cropOverlayObj = {\n\t\t\tleft: this.currentPos.left,\n\t\t\ttop: this.currentPos.top,\n\t\t\twidth: this.currentSize.width,\n\t\t\theight: this.currentSize.height,\n\t\t};\n\n\t\tvar intersectAreaObj = {};\n\n\t\tlet x = Math.max(renderImageObj.left, cropOverlayObj.left);\n\t\tlet num1 = Math.min(\n\t\t\trenderImageObj.left + renderImageObj.width,\n\t\t\tcropOverlayObj.left + cropOverlayObj.width,\n\t\t);\n\t\tlet y = Math.max(renderImageObj.top, cropOverlayObj.top);\n\t\tlet num2 = Math.min(\n\t\t\trenderImageObj.top + renderImageObj.height,\n\t\t\tcropOverlayObj.top + cropOverlayObj.height,\n\t\t);\n\t\tif (num1 >= x && num2 >= y)\n\t\t\tintersectAreaObj = {\n\t\t\t\toriginX: (x - renderedImageX) * (actualWidth / renderedImageWidth),\n\t\t\t\toriginY: (y - renderedImageY) * (actualWidth / renderedImageWidth),\n\t\t\t\twidth: (num1 - x) * (actualWidth / renderedImageWidth),\n\t\t\t\theight: (num2 - y) * (actualWidth / renderedImageWidth),\n\t\t\t};\n\t\telse {\n\t\t\tintersectAreaObj = {\n\t\t\t\toriginX: x - renderedImageX,\n\t\t\t\toriginY: y - renderedImageY,\n\t\t\t\twidth: 0,\n\t\t\t\theight: 0,\n\t\t\t};\n\t\t}\n\t\treturn intersectAreaObj;\n\t};\n\n\tcrop = async (cropObj, uri) => {\n\t\tconst { saveOptions } = this.props;\n\t\tif (cropObj.height > 0 && cropObj.width > 0) {\n\t\t\tconst manipResult = await ImageManipulator.manipulateAsync(\n\t\t\t\turi,\n\t\t\t\t[\n\t\t\t\t\t{\n\t\t\t\t\t\tcrop: cropObj,\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tsaveOptions,\n\t\t\t);\n\t\t\treturn manipResult;\n\t\t}\n\t\treturn {\n\t\t\turi: null,\n\t\t\tbase64: null,\n\t\t};\n\t};\n\n\tcalculateMaxSizes = (event) => {\n\t\tlet w1 = event.nativeEvent.layout.width || 100;\n\t\tlet h1 = event.nativeEvent.layout.height || 100;\n\t\tif (this.state.squareAspect) {\n\t\t\tif (w1 < h1) h1 = w1;\n\t\t\telse w1 = h1;\n\t\t}\n\t\tthis.maxSizes.width = w1;\n\t\tthis.maxSizes.height = h1;\n\t};\n\n\t// eslint-disable-next-line camelcase\n\tasync UNSAFE_componentWillReceiveProps() {\n\t\tawait this.onConvertImageToEditableSize();\n\t}\n\n\trender() {\n\t\tconst { isVisible, onPictureChoosed } = this.props;\n\t\tconst { uri, base64, cropMode, processing } = this.state;\n\n\t\tlet imageRatio = this.actualSize.height / this.actualSize.width;\n\t\tconst topInset = this.props.insets?.top ?? 0;\n\t\tconst bottomInset = this.props.insets?.bottom ?? 0;\n\t\tvar originalHeight =\n\t\t\tDimensions.get(\"window\").height - topInset - bottomInset - 44;\n\t\tconst topMargin = topInset + (Platform.OS === \"ios\" ? 50 : 20);\n\n\t\tlet cropRatio = originalHeight / width;\n\n\t\tlet cropWidth =\n\t\t\timageRatio < cropRatio ? width : originalHeight / imageRatio;\n\t\tlet cropHeight =\n\t\t\timageRatio < cropRatio ? width * imageRatio : originalHeight;\n\n\t\tlet cropInitialTop = (originalHeight - cropHeight) / 2.0;\n\t\tlet cropInitialLeft = (width - cropWidth) / 2.0;\n\n\t\tif (this.currentSize.width == 0 && cropMode) {\n\t\t\tthis.currentSize.width = cropWidth;\n\t\t\tthis.currentSize.height = cropHeight;\n\n\t\t\tthis.currentPos.top = cropInitialTop;\n\t\t\tthis.currentPos.left = cropInitialLeft;\n\t\t}\n\n\t\treturn (\n\t\t\t<Modal\n\t\t\t\tanimationType=\"slide\"\n\t\t\t\ttransparent={true}\n\t\t\t\tvisible={isVisible}\n\t\t\t\thardwareAccelerated\n\t\t\t\tonRequestClose={() => {\n\t\t\t\t\tthis.onToggleModal();\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t{uri !== undefined ? (\n\t\t\t\t\t<View style={styles.container}>\n\t\t\t\t\t\t<SafeAreaView style={[{ width }, styles.headerContainer]}>\n\t\t\t\t\t\t\t{!cropMode ? (\n\t\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\t\tstyles.headerButtonContainer,\n\t\t\t\t\t\t\t\t\t\t{ justifyContent: \"flex-end\" },\n\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\t\t\t\tonPress={() => {\n\t\t\t\t\t\t\t\t\t\t\tonPictureChoosed({ uri, base64 });\n\t\t\t\t\t\t\t\t\t\t\tthis.onToggleModal();\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tstyle={styles.headerButton}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Text style={styles.headerButtonText}>{\"Done\"}</Text>\n\t\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<View style={styles.headerButtonContainer}>\n\t\t\t\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\t\t\t\tonPress={this.onToggleModal}\n\t\t\t\t\t\t\t\t\t\tstyle={styles.headerButton}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Text style={styles.headerButtonText}>{\"Cancel\"}</Text>\n\t\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\t\t\t\tonPress={() => {\n\t\t\t\t\t\t\t\t\t\t\tthis.onCropImage(() => {\n\t\t\t\t\t\t\t\t\t\t\t\tonPictureChoosed({\n\t\t\t\t\t\t\t\t\t\t\t\t\turi: this.state.uri,\n\t\t\t\t\t\t\t\t\t\t\t\t\tbase64: this.state.base64,\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t\tthis.onToggleModal();\n\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tstyle={styles.headerButton}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Text style={styles.headerButtonText}>\n\t\t\t\t\t\t\t\t\t\t\t{processing ? \"Processing\" : \"Done\"}\n\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</SafeAreaView>\n\t\t\t\t\t\t<View\n\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\tstyles.contentContainer,\n\t\t\t\t\t\t\t\t{ width: Dimensions.get(\"window\").width },\n\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ScrollView\n\t\t\t\t\t\t\t\tstyle={{ position: \"relative\", flex: 1 }}\n\t\t\t\t\t\t\t\tcontentContainerStyle={{ backgroundColor: \"black\" }}\n\t\t\t\t\t\t\t\tmaximumZoomScale={5}\n\t\t\t\t\t\t\t\tminimumZoomScale={0.5}\n\t\t\t\t\t\t\t\tonScroll={this.onHandleScroll}\n\t\t\t\t\t\t\t\tbounces={false}\n\t\t\t\t\t\t\t\tshowsHorizontalScrollIndicator={false}\n\t\t\t\t\t\t\t\tshowsVerticalScrollIndicator={false}\n\t\t\t\t\t\t\t\tref={(c) => (this.scrollView = c)}\n\t\t\t\t\t\t\t\tscrollEventThrottle={16}\n\t\t\t\t\t\t\t\tscrollEnabled={false}\n\t\t\t\t\t\t\t\tpinchGestureEnabled={false}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<AutoHeightImage\n\t\t\t\t\t\t\t\t\tstyle={{ backgroundColor: \"black\" }}\n\t\t\t\t\t\t\t\t\tsource={{ uri }}\n\t\t\t\t\t\t\t\t\tresizeMode={imageRatio >= 1 ? \"contain\" : \"contain\"}\n\t\t\t\t\t\t\t\t\twidth={width}\n\t\t\t\t\t\t\t\t\theight={originalHeight}\n\t\t\t\t\t\t\t\t\tonLayout={this.calculateMaxSizes}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{!!cropMode && (\n\t\t\t\t\t\t\t\t\t<ImageCropOverlay\n\t\t\t\t\t\t\t\t\t\tonLayoutChanged={(top, left, width, height) => {\n\t\t\t\t\t\t\t\t\t\t\tthis.currentSize.width = width;\n\t\t\t\t\t\t\t\t\t\t\tthis.currentSize.height = height;\n\t\t\t\t\t\t\t\t\t\t\tthis.currentPos.top = top;\n\t\t\t\t\t\t\t\t\t\t\tthis.currentPos.left = left;\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tinitialWidth={cropWidth}\n\t\t\t\t\t\t\t\t\t\tinitialHeight={cropHeight}\n\t\t\t\t\t\t\t\t\t\tinitialTop={cropInitialTop}\n\t\t\t\t\t\t\t\t\t\tinitialLeft={cropInitialLeft}\n\t\t\t\t\t\t\t\t\t\tminHeight={100}\n\t\t\t\t\t\t\t\t\t\tminWidth={100}\n\t\t\t\t\t\t\t\t\t\ttopMargin={topMargin}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</ScrollView>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</View>\n\t\t\t\t) : (\n\t\t\t\t\t<View style={styles.container}>\n\t\t\t\t\t\t<Text style={styles.prepareMessageText}>Preparing...</Text>\n\t\t\t\t\t</View>\n\t\t\t\t)}\n\t\t\t</Modal>\n\t\t);\n\t\t// }\n\t}\n}\n\nconst styles = StyleSheet.create({\n\theaderContainer: {\n\t\tflexDirection: \"row\",\n\t\tbackgroundColor: \"black\",\n\t\tjustifyContent: \"space-between\",\n\t},\n\theaderButtonContainer: {\n\t\tflex: 1,\n\t\tflexDirection: \"row\",\n\t\tjustifyContent: \"space-between\",\n\t},\n\theaderButton: {\n\t\tmarginHorizontal: 10,\n\t\twidth: 60,\n\t\theight: 40,\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t},\n\theaderButtonText: {\n\t\tfontWeight: \"500\",\n\t\tcolor: \"white\",\n\t\tfontSize: 18,\n\t},\n\tcontentContainer: {\n\t\tflex: 1,\n\t\tbackgroundColor: \"black\",\n\t},\n\tcontainer: {\n\t\tflex: 1,\n\t\tbackgroundColor: \"#000d\",\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t},\n\tprepareMessageText: {\n\t\tfontFamily: \"sf-bold\",\n\t\tfontSize: 20,\n\t\tcolor: \"#fff\",\n\t},\n});\n\nexport default withSafeAreaInsets(ExpoImageManipulator);\n\nExpoImageManipulator.defaultProps = {\n\tonPictureChoosed: ({ uri, base64 }) => console.log(\"URI:\", uri, base64),\n\tdragVelocity: 100,\n\tresizeVelocity: 50,\n\tsaveOptions: {\n\t\tcompress: 1,\n\t\tformat: ImageManipulator.SaveFormat.PNG,\n\t\tbase64: false,\n\t},\n};\n\nExpoImageManipulator.propTypes = {\n\tisVisible: PropTypes.bool.isRequired,\n\tonPictureChoosed: PropTypes.func,\n\tsaveOptions: PropTypes.object,\n\tphoto: PropTypes.object.isRequired,\n\tonToggleModal: PropTypes.func.isRequired,\n\tdragVelocity: PropTypes.number,\n\tresizeVelocity: PropTypes.number,\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","Component","Text","Dimensions","Image","ScrollView","Modal","View","TouchableOpacity","StyleSheet","Platform","LogBox","Alert","ImageManipulator","MediaLibrary","File","Paths","PropTypes","AutoHeightImage","withSafeAreaInsets","SafeAreaView","ImageCropOverlay","width","get","ignoreLogs","ExpoImageManipulator","constructor","props","_defineProperty","onToggleModal","setState","cropMode","callback","processing","uri","state","getSize","actualWidth","actualHeight","cropObj","getCropBounds","height","uriToCrop","uriCroped","base64","croppedWidth","croppedHeight","crop","actualSize","event","scrollOffset","nativeEvent","contentOffset","y","_this$props$insets","_this$props$insets2","imageRatio","topInset","insets","top","bottomInset","bottom","originalHeight","renderedImageWidth","renderedImageHeight","renderedImageY","renderedImageX","renderImageObj","left","cropOverlayObj","currentPos","currentSize","intersectAreaObj","x","Math","max","num1","min","num2","originX","originY","saveOptions","manipResult","manipulateAsync","w1","layout","h1","squareAspect","maxSizes","componentDidMount","onConvertImageToEditableSize","photo","rawUri","resolvedUri","startsWith","assetId","replace","assetInfo","getAssetInfoAsync","shouldDownloadFromNetwork","localUri","_rawUri$split$pop","ext","split","pop","file","downloadFileAsync","cache","Date","now","idempotent","manipulatePromise","resize","timeoutPromise","Promise","_","reject","setTimeout","Error","race","e","console","log","alert","UNSAFE_componentWillReceiveProps","render","_this$props$insets3","_this$props$insets4","isVisible","onPictureChoosed","topMargin","OS","cropRatio","cropWidth","cropHeight","cropInitialTop","cropInitialLeft","createElement","animationType","transparent","visible","hardwareAccelerated","onRequestClose","undefined","style","styles","container","headerContainer","headerButtonContainer","justifyContent","onPress","headerButton","headerButtonText","onCropImage","contentContainer","position","flex","contentContainerStyle","backgroundColor","maximumZoomScale","minimumZoomScale","onScroll","onHandleScroll","bounces","showsHorizontalScrollIndicator","showsVerticalScrollIndicator","ref","c","scrollView","scrollEventThrottle","scrollEnabled","pinchGestureEnabled","source","resizeMode","onLayout","calculateMaxSizes","onLayoutChanged","initialWidth","initialHeight","initialTop","initialLeft","minHeight","minWidth","prepareMessageText","create","flexDirection","marginHorizontal","alignItems","fontWeight","color","fontSize","fontFamily","defaultProps","dragVelocity","resizeVelocity","compress","format","SaveFormat","PNG","propTypes","bool","isRequired","func","object","number"],"sources":["ExpoImageManipulator.js"],"sourcesContent":["import React, { Component } from \"react\";\nimport { Text } from \"@plusscommunities/pluss-core-app/components\";\nimport {\n\tDimensions,\n\tImage,\n\tScrollView,\n\tModal,\n\tView,\n\tTouchableOpacity,\n\tStyleSheet,\n\tPlatform,\n\tLogBox,\n\tAlert,\n} from \"react-native\";\nimport * as ImageManipulator from \"expo-image-manipulator\";\nimport * as MediaLibrary from \"expo-media-library\";\nimport { File, Paths } from \"expo-file-system\";\nimport PropTypes from \"prop-types\";\nimport AutoHeightImage from \"react-native-auto-height-image\";\nimport {\n\twithSafeAreaInsets,\n\tSafeAreaView,\n} from \"react-native-safe-area-context\";\nimport ImageCropOverlay from \"./ImageCropOverlay\";\n\nconst { width } = Dimensions.get(\"window\");\n\nLogBox.ignoreLogs([\n\t\"componentWillReceiveProps\",\n\t\"componentWillUpdate\",\n\t\"componentWillMount\",\n]);\nLogBox.ignoreLogs([\n\t\"Warning: componentWillMount is deprecated\",\n\t\"Warning: componentWillReceiveProps is deprecated\",\n\t\"Module RCTImageLoader requires\",\n]);\n\nclass ExpoImageManipulator extends Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tconst { squareAspect } = this.props;\n\t\tthis.state = {\n\t\t\tcropMode: false,\n\t\t\tprocessing: false,\n\t\t\tsquareAspect,\n\t\t};\n\n\t\tthis.scrollOffset = 0;\n\t\tthis.currentPos = { left: 0, top: 0 };\n\t\tthis.currentSize = { width: 0, height: 0 };\n\t\tthis.maxSizes = { width: 0, height: 0 };\n\t\tthis.actualSize = { width: 0, height: 0 };\n\t}\n\n\tasync componentDidMount() {\n\t\tawait this.onConvertImageToEditableSize();\n\n\t\t// Set cropping by default\n\t\tthis.setState({ cropMode: true });\n\t}\n\n\tasync onConvertImageToEditableSize() {\n\t\ttry {\n\t\t\tconst {\n\t\t\t\tphoto: { uri: rawUri },\n\t\t\t} = this.props;\n\n\t\t\t// expo-image-manipulator only works with file:// URIs.\n\t\t\t// Resolve ph:// (iOS Photo Library) and https:// (remote/stock images) first.\n\t\t\tlet resolvedUri = rawUri;\n\t\t\tif (rawUri?.startsWith(\"ph://\")) {\n\t\t\t\tconst assetId = rawUri.replace(\"ph://\", \"\");\n\t\t\t\tconst assetInfo = await MediaLibrary.getAssetInfoAsync(assetId, {\n\t\t\t\t\tshouldDownloadFromNetwork: true,\n\t\t\t\t});\n\t\t\t\tresolvedUri = assetInfo.localUri || rawUri;\n\t\t\t} else if (rawUri?.startsWith(\"http\")) {\n\t\t\t\tconst ext = rawUri.split(\".\").pop()?.split(\"?\")[0] || \"jpg\";\n\t\t\t\tconst file = await File.downloadFileAsync(\n\t\t\t\t\trawUri,\n\t\t\t\t\tnew File(Paths.cache, `crop_${Date.now()}.${ext}`),\n\t\t\t\t\t{ idempotent: true },\n\t\t\t\t);\n\t\t\t\tresolvedUri = file.uri;\n\t\t\t}\n\n\t\t\tconst manipulatePromise = ImageManipulator.manipulateAsync(resolvedUri, [\n\t\t\t\t{ resize: { width: 1080 } },\n\t\t\t]);\n\t\t\t// manipulateAsync can hang forever on non-file:// URIs (promise never settles).\n\t\t\t// Promise.race with a timeout ensures the catch block fires.\n\t\t\tconst timeoutPromise = new Promise((_, reject) =>\n\t\t\t\tsetTimeout(\n\t\t\t\t\t() => reject(new Error(\"Image processing timed out\")),\n\t\t\t\t\t15000,\n\t\t\t\t),\n\t\t\t);\n\t\t\tconst { uri, width, height } = await Promise.race([\n\t\t\t\tmanipulatePromise,\n\t\t\t\ttimeoutPromise,\n\t\t\t]);\n\t\t\tthis.setState({ uri });\n\t\t\tthis.actualSize.width = width;\n\t\t\tthis.actualSize.height = height;\n\t\t} catch (e) {\n\t\t\tconsole.log(\"onConvertImageToEditableSize error\", e);\n\t\t\tthis.onToggleModal();\n\t\t\tAlert.alert(\n\t\t\t\t\"Error\",\n\t\t\t\t\"Unable to prepare this image for editing. Please try a different image.\",\n\t\t\t);\n\t\t}\n\t}\n\n\tonToggleModal = () => {\n\t\tthis.props.onToggleModal();\n\t\tthis.setState({ cropMode: false });\n\t};\n\n\tonCropImage = (callback = null) => {\n\t\tthis.setState({ processing: true });\n\t\tconst { uri } = this.state;\n\t\tImage.getSize(uri, async (actualWidth, actualHeight) => {\n\t\t\tlet cropObj = this.getCropBounds(actualWidth, actualHeight);\n\t\t\tif (cropObj.height > 0 && cropObj.width > 0) {\n\t\t\t\tlet uriToCrop = uri;\n\t\t\t\tconst {\n\t\t\t\t\turi: uriCroped,\n\t\t\t\t\tbase64,\n\t\t\t\t\twidth: croppedWidth,\n\t\t\t\t\theight: croppedHeight,\n\t\t\t\t} = await this.crop(cropObj, uriToCrop);\n\n\t\t\t\tthis.actualSize.width = croppedWidth;\n\t\t\t\tthis.actualSize.height = croppedHeight;\n\n\t\t\t\tthis.setState(\n\t\t\t\t\t{\n\t\t\t\t\t\turi: uriCroped,\n\t\t\t\t\t\tbase64,\n\t\t\t\t\t\tcropMode: false,\n\t\t\t\t\t\tprocessing: false,\n\t\t\t\t\t},\n\t\t\t\t\t() => {\n\t\t\t\t\t\tif (callback) callback();\n\t\t\t\t\t},\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tthis.setState({ cropMode: false, processing: false }, () => {\n\t\t\t\t\tif (callback) callback();\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t};\n\n\tonHandleScroll = (event) => {\n\t\tthis.scrollOffset = event.nativeEvent.contentOffset.y;\n\t};\n\n\tgetCropBounds = (actualWidth, actualHeight) => {\n\t\tlet imageRatio = actualHeight / actualWidth;\n\t\tconst topInset = this.props.insets?.top ?? 0;\n\t\tconst bottomInset = this.props.insets?.bottom ?? 0;\n\t\tvar originalHeight =\n\t\t\tDimensions.get(\"window\").height - topInset - bottomInset - 44;\n\t\tlet renderedImageWidth =\n\t\t\timageRatio < originalHeight / width ? width : originalHeight / imageRatio;\n\t\tlet renderedImageHeight =\n\t\t\timageRatio < originalHeight / width ? width * imageRatio : originalHeight;\n\n\t\tlet renderedImageY = (originalHeight - renderedImageHeight) / 2.0;\n\t\tlet renderedImageX = (width - renderedImageWidth) / 2.0;\n\n\t\tconst renderImageObj = {\n\t\t\tleft: renderedImageX,\n\t\t\ttop: renderedImageY,\n\t\t\twidth: renderedImageWidth,\n\t\t\theight: renderedImageHeight,\n\t\t};\n\t\tconst cropOverlayObj = {\n\t\t\tleft: this.currentPos.left,\n\t\t\ttop: this.currentPos.top,\n\t\t\twidth: this.currentSize.width,\n\t\t\theight: this.currentSize.height,\n\t\t};\n\n\t\tvar intersectAreaObj = {};\n\n\t\tlet x = Math.max(renderImageObj.left, cropOverlayObj.left);\n\t\tlet num1 = Math.min(\n\t\t\trenderImageObj.left + renderImageObj.width,\n\t\t\tcropOverlayObj.left + cropOverlayObj.width,\n\t\t);\n\t\tlet y = Math.max(renderImageObj.top, cropOverlayObj.top);\n\t\tlet num2 = Math.min(\n\t\t\trenderImageObj.top + renderImageObj.height,\n\t\t\tcropOverlayObj.top + cropOverlayObj.height,\n\t\t);\n\t\tif (num1 >= x && num2 >= y)\n\t\t\tintersectAreaObj = {\n\t\t\t\toriginX: (x - renderedImageX) * (actualWidth / renderedImageWidth),\n\t\t\t\toriginY: (y - renderedImageY) * (actualWidth / renderedImageWidth),\n\t\t\t\twidth: (num1 - x) * (actualWidth / renderedImageWidth),\n\t\t\t\theight: (num2 - y) * (actualWidth / renderedImageWidth),\n\t\t\t};\n\t\telse {\n\t\t\tintersectAreaObj = {\n\t\t\t\toriginX: x - renderedImageX,\n\t\t\t\toriginY: y - renderedImageY,\n\t\t\t\twidth: 0,\n\t\t\t\theight: 0,\n\t\t\t};\n\t\t}\n\t\treturn intersectAreaObj;\n\t};\n\n\tcrop = async (cropObj, uri) => {\n\t\tconst { saveOptions } = this.props;\n\t\tif (cropObj.height > 0 && cropObj.width > 0) {\n\t\t\tconst manipResult = await ImageManipulator.manipulateAsync(\n\t\t\t\turi,\n\t\t\t\t[\n\t\t\t\t\t{\n\t\t\t\t\t\tcrop: cropObj,\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tsaveOptions,\n\t\t\t);\n\t\t\treturn manipResult;\n\t\t}\n\t\treturn {\n\t\t\turi: null,\n\t\t\tbase64: null,\n\t\t};\n\t};\n\n\tcalculateMaxSizes = (event) => {\n\t\tlet w1 = event.nativeEvent.layout.width || 100;\n\t\tlet h1 = event.nativeEvent.layout.height || 100;\n\t\tif (this.state.squareAspect) {\n\t\t\tif (w1 < h1) h1 = w1;\n\t\t\telse w1 = h1;\n\t\t}\n\t\tthis.maxSizes.width = w1;\n\t\tthis.maxSizes.height = h1;\n\t};\n\n\t// eslint-disable-next-line camelcase\n\tasync UNSAFE_componentWillReceiveProps() {\n\t\tawait this.onConvertImageToEditableSize();\n\t}\n\n\trender() {\n\t\tconst { isVisible, onPictureChoosed } = this.props;\n\t\tconst { uri, base64, cropMode, processing } = this.state;\n\n\t\tlet imageRatio = this.actualSize.height / this.actualSize.width;\n\t\tconst topInset = this.props.insets?.top ?? 0;\n\t\tconst bottomInset = this.props.insets?.bottom ?? 0;\n\t\tvar originalHeight =\n\t\t\tDimensions.get(\"window\").height - topInset - bottomInset - 44;\n\t\tconst topMargin = topInset + (Platform.OS === \"ios\" ? 50 : 20);\n\n\t\tlet cropRatio = originalHeight / width;\n\n\t\tlet cropWidth =\n\t\t\timageRatio < cropRatio ? width : originalHeight / imageRatio;\n\t\tlet cropHeight =\n\t\t\timageRatio < cropRatio ? width * imageRatio : originalHeight;\n\n\t\tlet cropInitialTop = (originalHeight - cropHeight) / 2.0;\n\t\tlet cropInitialLeft = (width - cropWidth) / 2.0;\n\n\t\tif (this.currentSize.width == 0 && cropMode) {\n\t\t\tthis.currentSize.width = cropWidth;\n\t\t\tthis.currentSize.height = cropHeight;\n\n\t\t\tthis.currentPos.top = cropInitialTop;\n\t\t\tthis.currentPos.left = cropInitialLeft;\n\t\t}\n\n\t\treturn (\n\t\t\t<Modal\n\t\t\t\tanimationType=\"slide\"\n\t\t\t\ttransparent={true}\n\t\t\t\tvisible={isVisible}\n\t\t\t\thardwareAccelerated\n\t\t\t\tonRequestClose={() => {\n\t\t\t\t\tthis.onToggleModal();\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t{uri !== undefined ? (\n\t\t\t\t\t<View style={styles.container}>\n\t\t\t\t\t\t<SafeAreaView style={[{ width }, styles.headerContainer]}>\n\t\t\t\t\t\t\t{!cropMode ? (\n\t\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\t\tstyles.headerButtonContainer,\n\t\t\t\t\t\t\t\t\t\t{ justifyContent: \"flex-end\" },\n\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\t\t\t\tonPress={() => {\n\t\t\t\t\t\t\t\t\t\t\tonPictureChoosed({ uri, base64 });\n\t\t\t\t\t\t\t\t\t\t\tthis.onToggleModal();\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tstyle={styles.headerButton}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Text style={styles.headerButtonText}>{\"Done\"}</Text>\n\t\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<View style={styles.headerButtonContainer}>\n\t\t\t\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\t\t\t\tonPress={this.onToggleModal}\n\t\t\t\t\t\t\t\t\t\tstyle={styles.headerButton}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Text style={styles.headerButtonText}>{\"Cancel\"}</Text>\n\t\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\t\t\t\tonPress={() => {\n\t\t\t\t\t\t\t\t\t\t\tthis.onCropImage(() => {\n\t\t\t\t\t\t\t\t\t\t\t\tonPictureChoosed({\n\t\t\t\t\t\t\t\t\t\t\t\t\turi: this.state.uri,\n\t\t\t\t\t\t\t\t\t\t\t\t\tbase64: this.state.base64,\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t\tthis.onToggleModal();\n\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tstyle={styles.headerButton}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Text style={styles.headerButtonText}>\n\t\t\t\t\t\t\t\t\t\t\t{processing ? \"Processing\" : \"Done\"}\n\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</SafeAreaView>\n\t\t\t\t\t\t<View\n\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\tstyles.contentContainer,\n\t\t\t\t\t\t\t\t{ width: Dimensions.get(\"window\").width },\n\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ScrollView\n\t\t\t\t\t\t\t\tstyle={{ position: \"relative\", flex: 1 }}\n\t\t\t\t\t\t\t\tcontentContainerStyle={{ backgroundColor: \"black\" }}\n\t\t\t\t\t\t\t\tmaximumZoomScale={5}\n\t\t\t\t\t\t\t\tminimumZoomScale={0.5}\n\t\t\t\t\t\t\t\tonScroll={this.onHandleScroll}\n\t\t\t\t\t\t\t\tbounces={false}\n\t\t\t\t\t\t\t\tshowsHorizontalScrollIndicator={false}\n\t\t\t\t\t\t\t\tshowsVerticalScrollIndicator={false}\n\t\t\t\t\t\t\t\tref={(c) => (this.scrollView = c)}\n\t\t\t\t\t\t\t\tscrollEventThrottle={16}\n\t\t\t\t\t\t\t\tscrollEnabled={false}\n\t\t\t\t\t\t\t\tpinchGestureEnabled={false}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<AutoHeightImage\n\t\t\t\t\t\t\t\t\tstyle={{ backgroundColor: \"black\" }}\n\t\t\t\t\t\t\t\t\tsource={{ uri }}\n\t\t\t\t\t\t\t\t\tresizeMode={imageRatio >= 1 ? \"contain\" : \"contain\"}\n\t\t\t\t\t\t\t\t\twidth={width}\n\t\t\t\t\t\t\t\t\theight={originalHeight}\n\t\t\t\t\t\t\t\t\tonLayout={this.calculateMaxSizes}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{!!cropMode && (\n\t\t\t\t\t\t\t\t\t<ImageCropOverlay\n\t\t\t\t\t\t\t\t\t\tonLayoutChanged={(top, left, width, height) => {\n\t\t\t\t\t\t\t\t\t\t\tthis.currentSize.width = width;\n\t\t\t\t\t\t\t\t\t\t\tthis.currentSize.height = height;\n\t\t\t\t\t\t\t\t\t\t\tthis.currentPos.top = top;\n\t\t\t\t\t\t\t\t\t\t\tthis.currentPos.left = left;\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tinitialWidth={cropWidth}\n\t\t\t\t\t\t\t\t\t\tinitialHeight={cropHeight}\n\t\t\t\t\t\t\t\t\t\tinitialTop={cropInitialTop}\n\t\t\t\t\t\t\t\t\t\tinitialLeft={cropInitialLeft}\n\t\t\t\t\t\t\t\t\t\tminHeight={100}\n\t\t\t\t\t\t\t\t\t\tminWidth={100}\n\t\t\t\t\t\t\t\t\t\ttopMargin={topMargin}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</ScrollView>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</View>\n\t\t\t\t) : (\n\t\t\t\t\t<View style={styles.container}>\n\t\t\t\t\t\t<Text style={styles.prepareMessageText}>Preparing...</Text>\n\t\t\t\t\t</View>\n\t\t\t\t)}\n\t\t\t</Modal>\n\t\t);\n\t\t// }\n\t}\n}\n\nconst styles = StyleSheet.create({\n\theaderContainer: {\n\t\tflexDirection: \"row\",\n\t\tbackgroundColor: \"black\",\n\t\tjustifyContent: \"space-between\",\n\t},\n\theaderButtonContainer: {\n\t\tflex: 1,\n\t\tflexDirection: \"row\",\n\t\tjustifyContent: \"space-between\",\n\t},\n\theaderButton: {\n\t\tmarginHorizontal: 10,\n\t\twidth: 60,\n\t\theight: 40,\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t},\n\theaderButtonText: {\n\t\tfontWeight: \"500\",\n\t\tcolor: \"white\",\n\t\tfontSize: 18,\n\t},\n\tcontentContainer: {\n\t\tflex: 1,\n\t\tbackgroundColor: \"black\",\n\t},\n\tcontainer: {\n\t\tflex: 1,\n\t\tbackgroundColor: \"#000d\",\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t},\n\tprepareMessageText: {\n\t\tfontFamily: \"sf-bold\",\n\t\tfontSize: 20,\n\t\tcolor: \"#fff\",\n\t},\n});\n\nexport default withSafeAreaInsets(ExpoImageManipulator);\n\nExpoImageManipulator.defaultProps = {\n\tonPictureChoosed: ({ uri, base64 }) => console.log(\"URI:\", uri, base64),\n\tdragVelocity: 100,\n\tresizeVelocity: 50,\n\tsaveOptions: {\n\t\tcompress: 1,\n\t\tformat: ImageManipulator.SaveFormat.PNG,\n\t\tbase64: false,\n\t},\n};\n\nExpoImageManipulator.propTypes = {\n\tisVisible: PropTypes.bool.isRequired,\n\tonPictureChoosed: PropTypes.func,\n\tsaveOptions: PropTypes.object,\n\tphoto: PropTypes.object.isRequired,\n\tonToggleModal: PropTypes.func.isRequired,\n\tdragVelocity: PropTypes.number,\n\tresizeVelocity: PropTypes.number,\n};\n"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@plusscommunities/pluss-core-app",
|
|
3
|
-
"version": "8.0.26
|
|
3
|
+
"version": "8.0.26",
|
|
4
4
|
"description": "Core extension package for Pluss Communities platform",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": {
|
|
@@ -12,7 +12,10 @@
|
|
|
12
12
|
"default": "./dist/module/components/index.js"
|
|
13
13
|
}
|
|
14
14
|
},
|
|
15
|
-
"files": [
|
|
15
|
+
"files": [
|
|
16
|
+
"dist/",
|
|
17
|
+
"src/"
|
|
18
|
+
],
|
|
16
19
|
"scripts": {
|
|
17
20
|
"build": "npm i && bob build",
|
|
18
21
|
"betapatch": "npm version prepatch --preid=beta",
|
|
@@ -67,6 +70,8 @@
|
|
|
67
70
|
"react-native-builder-bob": {
|
|
68
71
|
"source": "src",
|
|
69
72
|
"output": "dist",
|
|
70
|
-
"targets": [
|
|
73
|
+
"targets": [
|
|
74
|
+
"module"
|
|
75
|
+
]
|
|
71
76
|
}
|
|
72
77
|
}
|
|
@@ -219,7 +219,14 @@ class CommentReply extends Component {
|
|
|
219
219
|
return null;
|
|
220
220
|
}
|
|
221
221
|
return (
|
|
222
|
-
<View
|
|
222
|
+
<View
|
|
223
|
+
style={[
|
|
224
|
+
styles.inputContainer,
|
|
225
|
+
getShadowStyle(),
|
|
226
|
+
{ paddingBottom: 8 + (this.props.insets?.bottom ?? 0) },
|
|
227
|
+
this.props.style,
|
|
228
|
+
]}
|
|
229
|
+
>
|
|
223
230
|
<View
|
|
224
231
|
style={[
|
|
225
232
|
styles.input,
|
|
@@ -144,6 +144,10 @@ class PDFPopup extends Component {
|
|
|
144
144
|
source={{
|
|
145
145
|
uri: this.getUrl(),
|
|
146
146
|
}}
|
|
147
|
+
javaScriptEnabled
|
|
148
|
+
domStorageEnabled
|
|
149
|
+
originWhitelist={["*"]}
|
|
150
|
+
mixedContentMode="always"
|
|
147
151
|
renderError={(e) => {
|
|
148
152
|
console.log("errored");
|
|
149
153
|
console.log(e);
|
package/src/components/Text.js
CHANGED
|
@@ -18,7 +18,7 @@ class Text extends PureComponent {
|
|
|
18
18
|
<TextNative
|
|
19
19
|
{...this.props}
|
|
20
20
|
style={[styles[this.props.type], this.props.style]}
|
|
21
|
-
maxFontSizeMultiplier={1.2}
|
|
21
|
+
maxFontSizeMultiplier={this.props.maxFontSizeMultiplier || 1.2}
|
|
22
22
|
>
|
|
23
23
|
{this.props.children}
|
|
24
24
|
</TextNative>
|
|
@@ -163,7 +163,7 @@ class ExpoImageManipulator extends Component {
|
|
|
163
163
|
const topInset = this.props.insets?.top ?? 0;
|
|
164
164
|
const bottomInset = this.props.insets?.bottom ?? 0;
|
|
165
165
|
var originalHeight =
|
|
166
|
-
Dimensions.get("window").height - topInset - bottomInset - 44
|
|
166
|
+
Dimensions.get("window").height - topInset - bottomInset - 44;
|
|
167
167
|
let renderedImageWidth =
|
|
168
168
|
imageRatio < originalHeight / width ? width : originalHeight / imageRatio;
|
|
169
169
|
let renderedImageHeight =
|