mirror of
https://github.com/ecency/ecency-mobile.git
synced 2024-12-19 11:21:41 +03:00
implemented comment history api
This commit is contained in:
parent
edd1eed898
commit
f7af060ed6
@ -104,8 +104,9 @@ class PostDropdownContainer extends PureComponent {
|
||||
|
||||
// Component Functions
|
||||
_handleOnDropdownSelect = async (index) => {
|
||||
const { content, dispatch, intl, navigation } = this.props;
|
||||
const { content, dispatch, intl, navigation, } = this.props;
|
||||
const { options } = this.state;
|
||||
console.log('content : ', content);
|
||||
|
||||
switch (options[index]) {
|
||||
case 'copy':
|
||||
@ -170,6 +171,10 @@ class PostDropdownContainer extends PureComponent {
|
||||
case 'edit-history':
|
||||
navigation.navigate({
|
||||
routeName: ROUTES.SCREENS.EDIT_HISTORY,
|
||||
params: {
|
||||
author: content?.author || '',
|
||||
permlink: content?.permlink || '',
|
||||
},
|
||||
});
|
||||
break;
|
||||
default:
|
||||
|
@ -26,6 +26,7 @@ api.interceptors.request.use((request) => {
|
||||
|| request.url.startsWith('/private-api/received-vesting/')
|
||||
|| request.url.startsWith('/private-api/referrals/')
|
||||
|| request.url.startsWith('/private-api/market-data')
|
||||
|| request.url.startsWith('/private-api/comment-history')
|
||||
){
|
||||
return request
|
||||
}
|
||||
|
@ -1,6 +1,6 @@
|
||||
import { COIN_IDS } from '../../constants/defaultCoins';
|
||||
import { Referral } from '../../models';
|
||||
import { LatestMarketPrices, LatestQuotes, QuoteItem, ReferralStat } from './ecency.types';
|
||||
import { CommentHistoryItem, LatestMarketPrices, LatestQuotes, QuoteItem, ReferralStat } from './ecency.types';
|
||||
|
||||
export const convertReferral = (rawData: any) => {
|
||||
return {
|
||||
@ -43,3 +43,13 @@ export const convertLatestQuotes = (rawData: any, estmPrice:number, currencyRate
|
||||
|
||||
} as LatestQuotes;
|
||||
};
|
||||
|
||||
export const convertCommentHistory = (rawData: any) => {
|
||||
return {
|
||||
body: rawData.body || '',
|
||||
tags: rawData.tags || '',
|
||||
timestamp: rawData.timestamp || '',
|
||||
title: rawData.title || '',
|
||||
v: rawData.v || 1,
|
||||
} as CommentHistoryItem;
|
||||
};
|
@ -6,8 +6,8 @@ import bugsnagInstance from '../../config/bugsnag';
|
||||
import { SERVER_LIST } from '../../constants/options/api';
|
||||
import { parsePost } from '../../utils/postParser';
|
||||
import { extractMetadata, makeJsonMetadata } from '../../utils/editor';
|
||||
import { LatestMarketPrices, ReceivedVestingShare, Referral, ReferralStat } from './ecency.types';
|
||||
import { convertLatestQuotes, convertReferral, convertReferralStat } from './converters';
|
||||
import { CommentHistoryItem, LatestMarketPrices, ReceivedVestingShare, Referral, ReferralStat } from './ecency.types';
|
||||
import { convertCommentHistory, convertLatestQuotes, convertReferral, convertReferralStat } from './converters';
|
||||
|
||||
|
||||
|
||||
@ -826,3 +826,27 @@ export const getReferralsStats = async (username: string):Promise<ReferralStat>
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* ************************************
|
||||
* REFERRAL API IMPLEMENTATION
|
||||
* ************************************
|
||||
*/
|
||||
|
||||
export const getCommentHistory = async (author: string, permlink: string ):Promise<CommentHistoryItem[]> => {
|
||||
try {
|
||||
const data = {
|
||||
author,
|
||||
permlink
|
||||
}
|
||||
const res = await ecencyApi.post('/private-api/comment-history', data);
|
||||
console.log('comment history', res.data);
|
||||
if (!res.data) {
|
||||
throw new Error('No history data!');
|
||||
}
|
||||
return res?.data?.list.map((item) => convertCommentHistory(item));
|
||||
} catch (error) {
|
||||
bugsnagInstance.notify(error);
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -42,3 +42,11 @@ export interface UserPoint {
|
||||
export interface LatestQuotes {
|
||||
[key:string]:QuoteItem
|
||||
}
|
||||
|
||||
export interface CommentHistoryItem {
|
||||
body: string;
|
||||
tags: [string];
|
||||
title: string;
|
||||
timestamp:string;
|
||||
v: number;
|
||||
}
|
@ -1,7 +1,7 @@
|
||||
import React, { Fragment } from 'react';
|
||||
import { useEffect, useState } from 'react';
|
||||
import { useIntl } from 'react-intl';
|
||||
import { Text, View } from 'react-native';
|
||||
import { Alert, Text, View } from 'react-native';
|
||||
import {
|
||||
BasicHeader,
|
||||
} from '../../components';
|
||||
@ -9,9 +9,29 @@ import {
|
||||
// styles
|
||||
import EStyleSheet from 'react-native-extended-stylesheet';
|
||||
import styles from './editHistoryScreenStyles';
|
||||
import { getCommentHistory } from '../../providers/ecency/ecency';
|
||||
import { CommentHistoryItem } from '../../providers/ecency/ecency.types';
|
||||
|
||||
const EditHistoryScreen = ({ navigation }) => {
|
||||
const {author, permlink} = navigation.state.params;
|
||||
const intl = useIntl();
|
||||
const [editHistory, setEditHistory] = useState<CommentHistoryItem[]>([])
|
||||
|
||||
useEffect(() => {
|
||||
_getCommentHistory();
|
||||
},[])
|
||||
|
||||
const _getCommentHistory = async () => {
|
||||
const responseData = await getCommentHistory(author, permlink);
|
||||
if(!responseData){
|
||||
Alert.alert('No History found!')
|
||||
return;
|
||||
}
|
||||
setEditHistory(responseData);
|
||||
}
|
||||
console.log('author, permlink : ', author, permlink);
|
||||
console.log('editHistory : ', editHistory);
|
||||
|
||||
return (
|
||||
<Fragment>
|
||||
<BasicHeader
|
||||
|
Loading…
Reference in New Issue
Block a user