From 053aead0d92b02fdd192ab5288104ad6688d549f Mon Sep 17 00:00:00 2001 From: Akinwale Ariwodola Date: Fri, 30 Aug 2019 19:59:03 +0100 Subject: [PATCH 1/5] add optionalParams to doCreateChannel. Update myClaims after fetching channels. --- dist/bundle.es.js | 33 +++++++++++++++++++++++++++++---- src/redux/actions/claims.js | 36 ++++++++++++++++++++++++++++++------ src/redux/reducers/claims.js | 1 + 3 files changed, 60 insertions(+), 10 deletions(-) diff --git a/dist/bundle.es.js b/dist/bundle.es.js index 5b509f0..2e82937 100644 --- a/dist/bundle.es.js +++ b/dist/bundle.es.js @@ -2394,16 +2394,40 @@ function doFetchClaimsByChannel(uri, page = 1) { }; } -function doCreateChannel(name, amount) { +function doCreateChannel(name, amount, optionalParams) { return dispatch => { dispatch({ type: CREATE_CHANNEL_STARTED }); - return lbryProxy.channel_create({ + const createParams = { name, bid: creditsToString(amount) - }) + }; + + if (optionalParams.title) { + createParams.title = optionalParams.title; + } + if (optionalParams.cover) { + createParams.cover_url = optionalParams.cover; + } + if (optionalParams.thumbnail) { + createParams.thumbnail_url = optionalParams.thumbnail; + } + if (optionalParams.description) { + createParams.description = optionalParams.description; + } + if (optionalParams.website) { + createParams.website_url = optionalParams.website_url; + } + if (optionalParams.email) { + createParams.email = optionalParams.email; + } + if (optionalParams.tags) { + createParams.tags = optionalParams.tags; + } + + return lbryProxy.channel_create(createParams) // outputs[0] is the certificate // outputs[1] is the change from the tx, not in the app currently .then(result => { @@ -3633,7 +3657,8 @@ reducers[FETCH_CHANNEL_LIST_COMPLETED] = (state, action) => { return Object.assign({}, state, { byId, fetchingMyChannels: false, - myChannelClaims + myChannelClaims, + myClaims: claims }); }; diff --git a/src/redux/actions/claims.js b/src/redux/actions/claims.js index ab03679..1997a18 100644 --- a/src/redux/actions/claims.js +++ b/src/redux/actions/claims.js @@ -226,17 +226,41 @@ export function doFetchClaimsByChannel(uri: string, page: number = 1) { }; } -export function doCreateChannel(name: string, amount: number) { +export function doCreateChannel(name: string, amount: number, optionalParams: any) { return (dispatch: Dispatch) => { dispatch({ type: ACTIONS.CREATE_CHANNEL_STARTED, }); - + + const createParams = { + name, + bid: creditsToString(amount), + }; + + if (optionalParams.title) { + createParams.title = optionalParams.title; + } + if (optionalParams.cover) { + createParams.cover_url = optionalParams.cover; + } + if (optionalParams.thumbnail) { + createParams.thumbnail_url = optionalParams.thumbnail; + } + if (optionalParams.description) { + createParams.description = optionalParams.description; + } + if (optionalParams.website) { + createParams.website_url = optionalParams.website_url; + } + if (optionalParams.email) { + createParams.email = optionalParams.email; + } + if (optionalParams.tags) { + createParams.tags = optionalParams.tags; + } + return ( - Lbry.channel_create({ - name, - bid: creditsToString(amount), - }) + Lbry.channel_create(createParams) // outputs[0] is the certificate // outputs[1] is the change from the tx, not in the app currently .then((result: ChannelCreateResponse) => { diff --git a/src/redux/reducers/claims.js b/src/redux/reducers/claims.js index adeabca..db8050f 100644 --- a/src/redux/reducers/claims.js +++ b/src/redux/reducers/claims.js @@ -161,6 +161,7 @@ reducers[ACTIONS.FETCH_CHANNEL_LIST_COMPLETED] = (state: State, action: any): St byId, fetchingMyChannels: false, myChannelClaims, + myClaims: claims, }); }; -- 2.45.3 From f9645db0413c99f5db723e1ffab5382009c04660 Mon Sep 17 00:00:00 2001 From: Akinwale Ariwodola Date: Mon, 2 Sep 2019 10:38:41 +0100 Subject: [PATCH 2/5] fix website param --- dist/bundle.es.js | 2 +- src/redux/actions/claims.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/dist/bundle.es.js b/dist/bundle.es.js index 2e82937..c58436c 100644 --- a/dist/bundle.es.js +++ b/dist/bundle.es.js @@ -2418,7 +2418,7 @@ function doCreateChannel(name, amount, optionalParams) { createParams.description = optionalParams.description; } if (optionalParams.website) { - createParams.website_url = optionalParams.website_url; + createParams.website_url = optionalParams.website; } if (optionalParams.email) { createParams.email = optionalParams.email; diff --git a/src/redux/actions/claims.js b/src/redux/actions/claims.js index 1997a18..baa7556 100644 --- a/src/redux/actions/claims.js +++ b/src/redux/actions/claims.js @@ -250,7 +250,7 @@ export function doCreateChannel(name: string, amount: number, optionalParams: an createParams.description = optionalParams.description; } if (optionalParams.website) { - createParams.website_url = optionalParams.website_url; + createParams.website_url = optionalParams.website; } if (optionalParams.email) { createParams.email = optionalParams.email; -- 2.45.3 From 40bbf6afbdc66806d2f1a810d125bb290999c18b Mon Sep 17 00:00:00 2001 From: Akinwale Ariwodola Date: Mon, 2 Sep 2019 11:37:16 +0100 Subject: [PATCH 3/5] update channel error selector. tweak tags param. --- dist/bundle.es.js | 30 +++++++++++++++++++++++++++--- src/index.js | 2 ++ src/redux/actions/claims.js | 2 +- src/redux/reducers/claims.js | 20 ++++++++++++++++++++ src/redux/selectors/claims.js | 10 ++++++++++ 5 files changed, 60 insertions(+), 4 deletions(-) diff --git a/dist/bundle.es.js b/dist/bundle.es.js index c58436c..137e6ab 100644 --- a/dist/bundle.es.js +++ b/dist/bundle.es.js @@ -1789,6 +1789,10 @@ const makeSelectSupportsForUri = uri => reselect.createSelector(selectSupportsBy return total; }); +const selectUpdatingChannel = reselect.createSelector(selectState$2, state => state.updatingChannel); + +const selectUpdateChannelError = reselect.createSelector(selectState$2, state => state.updateChannelError); + function formatCredits(amount, precision, shortFormat = false) { let actualAmount = parseFloat(amount), suffix = ''; @@ -2424,7 +2428,7 @@ function doCreateChannel(name, amount, optionalParams) { createParams.email = optionalParams.email; } if (optionalParams.tags) { - createParams.tags = optionalParams.tags; + createParams.tags = optionalParams.tags.map(tag => tag.name); } return lbryProxy.channel_create(createParams) @@ -3557,7 +3561,9 @@ const defaultState = { claimSearchError: false, claimSearchByQuery: {}, claimSearchByQueryLastPageReached: {}, - fetchingClaimSearchByQuery: {} + fetchingClaimSearchByQuery: {}, + updateChannelError: '', + updatingChannel: false }; function handleClaimAction(state, action) { @@ -3756,6 +3762,13 @@ reducers[CREATE_CHANNEL_COMPLETED] = (state, action) => { }); }; +reducers[UPDATE_CHANNEL_STARTED] = (state, action) => { + return Object.assign({}, state, { + updateChannelError: '', + updatingChannel: true + }); +}; + reducers[UPDATE_CHANNEL_COMPLETED] = (state, action) => { const channelClaim = action.data.channelClaim; const byId = Object.assign({}, state.byId); @@ -3763,7 +3776,16 @@ reducers[UPDATE_CHANNEL_COMPLETED] = (state, action) => { byId[channelClaim.claim_id] = channelClaim; return Object.assign({}, state, { - byId + byId, + updateChannelError: '', + updatingChannel: false + }); +}; + +reducers[UPDATE_CHANNEL_FAILED] = (state, action) => { + return Object.assign({}, state, { + updateChannelError: action.data.message, + updatingChannel: false }); }; @@ -5023,6 +5045,8 @@ exports.selectTransactionItems = selectTransactionItems; exports.selectTransactionListFilter = selectTransactionListFilter; exports.selectTransactionsById = selectTransactionsById; exports.selectUnfollowedTags = selectUnfollowedTags; +exports.selectUpdateChannelError = selectUpdateChannelError; +exports.selectUpdatingChannel = selectUpdatingChannel; exports.selectUrisLoading = selectUrisLoading; exports.selectWalletDecryptPending = selectWalletDecryptPending; exports.selectWalletDecryptResult = selectWalletDecryptResult; diff --git a/src/index.js b/src/index.js index 754aa87..f707cf5 100644 --- a/src/index.js +++ b/src/index.js @@ -199,6 +199,8 @@ export { selectFetchingClaimSearchByQuery, selectClaimSearchByQuery, selectClaimSearchByQueryLastPageReached, + selectUpdatingChannel, + selectUpdateChannelError, } from 'redux/selectors/claims'; export { makeSelectCommentsForUri } from 'redux/selectors/comments'; diff --git a/src/redux/actions/claims.js b/src/redux/actions/claims.js index baa7556..ba2110a 100644 --- a/src/redux/actions/claims.js +++ b/src/redux/actions/claims.js @@ -256,7 +256,7 @@ export function doCreateChannel(name: string, amount: number, optionalParams: an createParams.email = optionalParams.email; } if (optionalParams.tags) { - createParams.tags = optionalParams.tags; + createParams.tags = optionalParams.tags.map(tag => tag.name); } return ( diff --git a/src/redux/reducers/claims.js b/src/redux/reducers/claims.js index db8050f..f08427c 100644 --- a/src/redux/reducers/claims.js +++ b/src/redux/reducers/claims.js @@ -30,6 +30,8 @@ type State = { [number]: Array, }, }, + updateChannelError: string, + updatingChannel: boolean, }; const reducers = {}; @@ -50,6 +52,8 @@ const defaultState = { claimSearchByQuery: {}, claimSearchByQueryLastPageReached: {}, fetchingClaimSearchByQuery: {}, + updateChannelError: '', + updatingChannel: false, }; function handleClaimAction(state: State, action: any): State { @@ -259,6 +263,13 @@ reducers[ACTIONS.CREATE_CHANNEL_COMPLETED] = (state: State, action: any): State }); }; +reducers[ACTIONS.UPDATE_CHANNEL_STARTED] = (state: State, action: any): State => { + return Object.assign({}, state, { + updateChannelError: '', + updatingChannel: true, + }); +}; + reducers[ACTIONS.UPDATE_CHANNEL_COMPLETED] = (state: State, action: any): State => { const channelClaim: ChannelClaim = action.data.channelClaim; const byId = Object.assign({}, state.byId); @@ -267,6 +278,15 @@ reducers[ACTIONS.UPDATE_CHANNEL_COMPLETED] = (state: State, action: any): State return Object.assign({}, state, { byId, + updateChannelError: '', + updatingChannel: false, + }); +}; + +reducers[ACTIONS.UPDATE_CHANNEL_FAILED] = (state: State, action: any): State => { + return Object.assign({}, state, { + updateChannelError: action.data.message, + updatingChannel: false, }); }; diff --git a/src/redux/selectors/claims.js b/src/redux/selectors/claims.js index 9fbea4d..406c4f3 100644 --- a/src/redux/selectors/claims.js +++ b/src/redux/selectors/claims.js @@ -560,3 +560,13 @@ export const makeSelectSupportsForUri = (uri: string) => return total; } ); + +export const selectUpdatingChannel = createSelector( + selectState, + state => state.updatingChannel +); + +export const selectUpdateChannelError = createSelector( + selectState, + state => state.updateChannelError +); -- 2.45.3 From 3133ea60b0302c162f7b6f67cc858997f1d2ab52 Mon Sep 17 00:00:00 2001 From: Akinwale Ariwodola Date: Mon, 9 Sep 2019 10:07:05 +0100 Subject: [PATCH 4/5] merge with master. change coverUrl and thumbnailUrl. --- dist/bundle.es.js | 12 ++++++------ src/redux/actions/claims.js | 12 ++++++------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/dist/bundle.es.js b/dist/bundle.es.js index 0069b56..8cb07e4 100644 --- a/dist/bundle.es.js +++ b/dist/bundle.es.js @@ -2411,11 +2411,11 @@ function doCreateChannel(name, amount, optionalParams) { if (optionalParams.title) { createParams.title = optionalParams.title; } - if (optionalParams.cover) { - createParams.cover_url = optionalParams.cover; + if (optionalParams.coverUrl) { + createParams.cover_url = optionalParams.coverUrl; } - if (optionalParams.thumbnail) { - createParams.thumbnail_url = optionalParams.thumbnail; + if (optionalParams.thumbnailUrl) { + createParams.thumbnail_url = optionalParams.thumbnailUrl; } if (optionalParams.description) { createParams.description = optionalParams.description; @@ -2457,8 +2457,8 @@ function doUpdateChannel(params) { claim_id: params.claim_id, bid: creditsToString(params.amount), title: params.title, - cover_url: params.cover, - thumbnail_url: params.thumbnail, + cover_url: params.coverUrl, + thumbnail_url: params.thumbnailUrl, description: params.description, website_url: params.website, email: params.email, diff --git a/src/redux/actions/claims.js b/src/redux/actions/claims.js index ba2110a..52497e9 100644 --- a/src/redux/actions/claims.js +++ b/src/redux/actions/claims.js @@ -240,11 +240,11 @@ export function doCreateChannel(name: string, amount: number, optionalParams: an if (optionalParams.title) { createParams.title = optionalParams.title; } - if (optionalParams.cover) { - createParams.cover_url = optionalParams.cover; + if (optionalParams.coverUrl) { + createParams.cover_url = optionalParams.coverUrl; } - if (optionalParams.thumbnail) { - createParams.thumbnail_url = optionalParams.thumbnail; + if (optionalParams.thumbnailUrl) { + createParams.thumbnail_url = optionalParams.thumbnailUrl; } if (optionalParams.description) { createParams.description = optionalParams.description; @@ -289,8 +289,8 @@ export function doUpdateChannel(params: any) { claim_id: params.claim_id, bid: creditsToString(params.amount), title: params.title, - cover_url: params.cover, - thumbnail_url: params.thumbnail, + cover_url: params.coverUrl, + thumbnail_url: params.thumbnailUrl, description: params.description, website_url: params.website, email: params.email, -- 2.45.3 From 8337653fd1b75f95e8ff1d88d735a2c72c8d88e5 Mon Sep 17 00:00:00 2001 From: Akinwale Ariwodola Date: Sun, 15 Sep 2019 11:59:00 +0100 Subject: [PATCH 5/5] make optionalParams truly optional --- dist/bundle.es.js | 42 +++++++++++++++++++------------------ src/redux/actions/claims.js | 42 +++++++++++++++++++------------------ 2 files changed, 44 insertions(+), 40 deletions(-) diff --git a/dist/bundle.es.js b/dist/bundle.es.js index 8cb07e4..0eb8aac 100644 --- a/dist/bundle.es.js +++ b/dist/bundle.es.js @@ -2408,26 +2408,28 @@ function doCreateChannel(name, amount, optionalParams) { bid: creditsToString(amount) }; - if (optionalParams.title) { - createParams.title = optionalParams.title; - } - if (optionalParams.coverUrl) { - createParams.cover_url = optionalParams.coverUrl; - } - if (optionalParams.thumbnailUrl) { - createParams.thumbnail_url = optionalParams.thumbnailUrl; - } - if (optionalParams.description) { - createParams.description = optionalParams.description; - } - if (optionalParams.website) { - createParams.website_url = optionalParams.website; - } - if (optionalParams.email) { - createParams.email = optionalParams.email; - } - if (optionalParams.tags) { - createParams.tags = optionalParams.tags.map(tag => tag.name); + if (optionalParams) { + if (optionalParams.title) { + createParams.title = optionalParams.title; + } + if (optionalParams.coverUrl) { + createParams.cover_url = optionalParams.coverUrl; + } + if (optionalParams.thumbnailUrl) { + createParams.thumbnail_url = optionalParams.thumbnailUrl; + } + if (optionalParams.description) { + createParams.description = optionalParams.description; + } + if (optionalParams.website) { + createParams.website_url = optionalParams.website; + } + if (optionalParams.email) { + createParams.email = optionalParams.email; + } + if (optionalParams.tags) { + createParams.tags = optionalParams.tags.map(tag => tag.name); + } } return lbryProxy.channel_create(createParams) diff --git a/src/redux/actions/claims.js b/src/redux/actions/claims.js index 52497e9..c285e02 100644 --- a/src/redux/actions/claims.js +++ b/src/redux/actions/claims.js @@ -237,26 +237,28 @@ export function doCreateChannel(name: string, amount: number, optionalParams: an bid: creditsToString(amount), }; - if (optionalParams.title) { - createParams.title = optionalParams.title; - } - if (optionalParams.coverUrl) { - createParams.cover_url = optionalParams.coverUrl; - } - if (optionalParams.thumbnailUrl) { - createParams.thumbnail_url = optionalParams.thumbnailUrl; - } - if (optionalParams.description) { - createParams.description = optionalParams.description; - } - if (optionalParams.website) { - createParams.website_url = optionalParams.website; - } - if (optionalParams.email) { - createParams.email = optionalParams.email; - } - if (optionalParams.tags) { - createParams.tags = optionalParams.tags.map(tag => tag.name); + if (optionalParams) { + if (optionalParams.title) { + createParams.title = optionalParams.title; + } + if (optionalParams.coverUrl) { + createParams.cover_url = optionalParams.coverUrl; + } + if (optionalParams.thumbnailUrl) { + createParams.thumbnail_url = optionalParams.thumbnailUrl; + } + if (optionalParams.description) { + createParams.description = optionalParams.description; + } + if (optionalParams.website) { + createParams.website_url = optionalParams.website; + } + if (optionalParams.email) { + createParams.email = optionalParams.email; + } + if (optionalParams.tags) { + createParams.tags = optionalParams.tags.map(tag => tag.name); + } } return ( -- 2.45.3