jessop's commit - channel edit functionality
This commit is contained in:
parent
9a676ee311
commit
8bfef31386
9 changed files with 119 additions and 0 deletions
56
dist/bundle.es.js
vendored
56
dist/bundle.es.js
vendored
|
@ -103,6 +103,9 @@ const FETCH_CHANNEL_LIST_COMPLETED = 'FETCH_CHANNEL_LIST_COMPLETED';
|
||||||
const CREATE_CHANNEL_STARTED = 'CREATE_CHANNEL_STARTED';
|
const CREATE_CHANNEL_STARTED = 'CREATE_CHANNEL_STARTED';
|
||||||
const CREATE_CHANNEL_COMPLETED = 'CREATE_CHANNEL_COMPLETED';
|
const CREATE_CHANNEL_COMPLETED = 'CREATE_CHANNEL_COMPLETED';
|
||||||
const CREATE_CHANNEL_FAILED = 'CREATE_CHANNEL_FAILED';
|
const CREATE_CHANNEL_FAILED = 'CREATE_CHANNEL_FAILED';
|
||||||
|
const UPDATE_CHANNEL_STARTED = 'UPDATE_CHANNEL_STARTED';
|
||||||
|
const UPDATE_CHANNEL_COMPLETED = 'UPDATE_CHANNEL_COMPLETED';
|
||||||
|
const UPDATE_CHANNEL_FAILED = 'UPDATE_CHANNEL_FAILED';
|
||||||
const PUBLISH_STARTED = 'PUBLISH_STARTED';
|
const PUBLISH_STARTED = 'PUBLISH_STARTED';
|
||||||
const PUBLISH_COMPLETED = 'PUBLISH_COMPLETED';
|
const PUBLISH_COMPLETED = 'PUBLISH_COMPLETED';
|
||||||
const PUBLISH_FAILED = 'PUBLISH_FAILED';
|
const PUBLISH_FAILED = 'PUBLISH_FAILED';
|
||||||
|
@ -328,6 +331,9 @@ var action_types = /*#__PURE__*/Object.freeze({
|
||||||
CREATE_CHANNEL_STARTED: CREATE_CHANNEL_STARTED,
|
CREATE_CHANNEL_STARTED: CREATE_CHANNEL_STARTED,
|
||||||
CREATE_CHANNEL_COMPLETED: CREATE_CHANNEL_COMPLETED,
|
CREATE_CHANNEL_COMPLETED: CREATE_CHANNEL_COMPLETED,
|
||||||
CREATE_CHANNEL_FAILED: CREATE_CHANNEL_FAILED,
|
CREATE_CHANNEL_FAILED: CREATE_CHANNEL_FAILED,
|
||||||
|
UPDATE_CHANNEL_STARTED: UPDATE_CHANNEL_STARTED,
|
||||||
|
UPDATE_CHANNEL_COMPLETED: UPDATE_CHANNEL_COMPLETED,
|
||||||
|
UPDATE_CHANNEL_FAILED: UPDATE_CHANNEL_FAILED,
|
||||||
PUBLISH_STARTED: PUBLISH_STARTED,
|
PUBLISH_STARTED: PUBLISH_STARTED,
|
||||||
PUBLISH_COMPLETED: PUBLISH_COMPLETED,
|
PUBLISH_COMPLETED: PUBLISH_COMPLETED,
|
||||||
PUBLISH_FAILED: PUBLISH_FAILED,
|
PUBLISH_FAILED: PUBLISH_FAILED,
|
||||||
|
@ -707,6 +713,7 @@ const Lbry = {
|
||||||
claim_search: params => daemonCallWithResult('claim_search', params),
|
claim_search: params => daemonCallWithResult('claim_search', params),
|
||||||
claim_list: params => daemonCallWithResult('claim_list', params),
|
claim_list: params => daemonCallWithResult('claim_list', params),
|
||||||
channel_create: params => daemonCallWithResult('channel_create', params),
|
channel_create: params => daemonCallWithResult('channel_create', params),
|
||||||
|
channel_update: params => daemonCallWithResult('channel_update', params),
|
||||||
channel_list: params => daemonCallWithResult('channel_list', params),
|
channel_list: params => daemonCallWithResult('channel_list', params),
|
||||||
stream_abandon: params => daemonCallWithResult('stream_abandon', params),
|
stream_abandon: params => daemonCallWithResult('stream_abandon', params),
|
||||||
channel_abandon: params => daemonCallWithResult('channel_abandon', params),
|
channel_abandon: params => daemonCallWithResult('channel_abandon', params),
|
||||||
|
@ -1334,6 +1341,10 @@ const makeSelectDateForUri = uri => reselect.createSelector(makeSelectClaimForUr
|
||||||
return dateObj;
|
return dateObj;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const makeSelectAmountForUri = uri => reselect.createSelector(makeSelectClaimForUri(uri), claim => {
|
||||||
|
return claim && claim.amount;
|
||||||
|
});
|
||||||
|
|
||||||
const makeSelectContentTypeForUri = uri => reselect.createSelector(makeSelectClaimForUri(uri), claim => {
|
const makeSelectContentTypeForUri = uri => reselect.createSelector(makeSelectClaimForUri(uri), claim => {
|
||||||
const source = claim && claim.value && claim.value.source;
|
const source = claim && claim.value && claim.value.source;
|
||||||
return source ? source.media_type : undefined;
|
return source ? source.media_type : undefined;
|
||||||
|
@ -2229,6 +2240,38 @@ function doCreateChannel(name, amount) {
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function doUpdateChannel(params) {
|
||||||
|
return dispatch => {
|
||||||
|
dispatch({
|
||||||
|
type: UPDATE_CHANNEL_STARTED
|
||||||
|
});
|
||||||
|
const updateParams = {
|
||||||
|
claim_id: params.claim_id,
|
||||||
|
bid: creditsToString(params.amount),
|
||||||
|
title: params.title,
|
||||||
|
cover_url: params.cover,
|
||||||
|
thumbnail_url: params.thumbnail,
|
||||||
|
description: params.description,
|
||||||
|
website_url: params.website,
|
||||||
|
email: params.email,
|
||||||
|
replace: true
|
||||||
|
};
|
||||||
|
|
||||||
|
return lbryProxy.channel_update(updateParams).then(result => {
|
||||||
|
const channelClaim = result.outputs[0];
|
||||||
|
dispatch({
|
||||||
|
type: UPDATE_CHANNEL_COMPLETED,
|
||||||
|
data: { channelClaim }
|
||||||
|
});
|
||||||
|
}).catch(error => {
|
||||||
|
dispatch({
|
||||||
|
type: UPDATE_CHANNEL_FAILED,
|
||||||
|
data: error
|
||||||
|
});
|
||||||
|
});
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
function doFetchChannelListMine() {
|
function doFetchChannelListMine() {
|
||||||
return dispatch => {
|
return dispatch => {
|
||||||
dispatch({
|
dispatch({
|
||||||
|
@ -3476,6 +3519,17 @@ reducers[CREATE_CHANNEL_COMPLETED] = (state, action) => {
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
reducers[UPDATE_CHANNEL_COMPLETED] = (state, action) => {
|
||||||
|
const channelClaim = action.data.channelClaim;
|
||||||
|
const byId = Object.assign({}, state.byId);
|
||||||
|
|
||||||
|
byId[channelClaim.claim_id] = channelClaim;
|
||||||
|
|
||||||
|
return Object.assign({}, state, {
|
||||||
|
byId
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
reducers[RESOLVE_URIS_STARTED] = (state, action) => {
|
reducers[RESOLVE_URIS_STARTED] = (state, action) => {
|
||||||
const { uris } = action.data;
|
const { uris } = action.data;
|
||||||
|
|
||||||
|
@ -4619,6 +4673,7 @@ exports.doToggleTagFollow = doToggleTagFollow;
|
||||||
exports.doTotalBalanceSubscribe = doTotalBalanceSubscribe;
|
exports.doTotalBalanceSubscribe = doTotalBalanceSubscribe;
|
||||||
exports.doUpdateBalance = doUpdateBalance;
|
exports.doUpdateBalance = doUpdateBalance;
|
||||||
exports.doUpdateBlockHeight = doUpdateBlockHeight;
|
exports.doUpdateBlockHeight = doUpdateBlockHeight;
|
||||||
|
exports.doUpdateChannel = doUpdateChannel;
|
||||||
exports.doUpdatePublishForm = doUpdatePublishForm;
|
exports.doUpdatePublishForm = doUpdatePublishForm;
|
||||||
exports.doUpdateSearchOptions = doUpdateSearchOptions;
|
exports.doUpdateSearchOptions = doUpdateSearchOptions;
|
||||||
exports.doUpdateSearchQuery = doUpdateSearchQuery;
|
exports.doUpdateSearchQuery = doUpdateSearchQuery;
|
||||||
|
@ -4636,6 +4691,7 @@ exports.isClaimNsfw = isClaimNsfw;
|
||||||
exports.isNameValid = isNameValid;
|
exports.isNameValid = isNameValid;
|
||||||
exports.isURIClaimable = isURIClaimable;
|
exports.isURIClaimable = isURIClaimable;
|
||||||
exports.isURIValid = isURIValid;
|
exports.isURIValid = isURIValid;
|
||||||
|
exports.makeSelectAmountForUri = makeSelectAmountForUri;
|
||||||
exports.makeSelectChannelForClaimUri = makeSelectChannelForClaimUri;
|
exports.makeSelectChannelForClaimUri = makeSelectChannelForClaimUri;
|
||||||
exports.makeSelectClaimForUri = makeSelectClaimForUri;
|
exports.makeSelectClaimForUri = makeSelectClaimForUri;
|
||||||
exports.makeSelectClaimIsMine = makeSelectClaimIsMine;
|
exports.makeSelectClaimIsMine = makeSelectClaimIsMine;
|
||||||
|
|
2
dist/flow-typed/Lbry.js
vendored
2
dist/flow-typed/Lbry.js
vendored
|
@ -176,6 +176,8 @@ declare type LbryTypes = {
|
||||||
claim_search: (params: {}) => Promise<ClaimSearchResponse>,
|
claim_search: (params: {}) => Promise<ClaimSearchResponse>,
|
||||||
claim_list: (params?: {}) => Promise<ClaimListResponse>,
|
claim_list: (params?: {}) => Promise<ClaimListResponse>,
|
||||||
channel_create: (params: {}) => Promise<ChannelCreateResponse>,
|
channel_create: (params: {}) => Promise<ChannelCreateResponse>,
|
||||||
|
// TODO fix this type:
|
||||||
|
channel_update: (params: {}) => Promise<ChannelCreateResponse>,
|
||||||
channel_list: () => Promise<ChannelListResponse>,
|
channel_list: () => Promise<ChannelListResponse>,
|
||||||
stream_abandon: (params: {}) => Promise<GenericTxResponse>,
|
stream_abandon: (params: {}) => Promise<GenericTxResponse>,
|
||||||
channel_abandon: (params: {}) => Promise<GenericTxResponse>,
|
channel_abandon: (params: {}) => Promise<GenericTxResponse>,
|
||||||
|
|
2
flow-typed/Lbry.js
vendored
2
flow-typed/Lbry.js
vendored
|
@ -176,6 +176,8 @@ declare type LbryTypes = {
|
||||||
claim_search: (params: {}) => Promise<ClaimSearchResponse>,
|
claim_search: (params: {}) => Promise<ClaimSearchResponse>,
|
||||||
claim_list: (params?: {}) => Promise<ClaimListResponse>,
|
claim_list: (params?: {}) => Promise<ClaimListResponse>,
|
||||||
channel_create: (params: {}) => Promise<ChannelCreateResponse>,
|
channel_create: (params: {}) => Promise<ChannelCreateResponse>,
|
||||||
|
// TODO fix this type:
|
||||||
|
channel_update: (params: {}) => Promise<ChannelCreateResponse>,
|
||||||
channel_list: () => Promise<ChannelListResponse>,
|
channel_list: () => Promise<ChannelListResponse>,
|
||||||
stream_abandon: (params: {}) => Promise<GenericTxResponse>,
|
stream_abandon: (params: {}) => Promise<GenericTxResponse>,
|
||||||
channel_abandon: (params: {}) => Promise<GenericTxResponse>,
|
channel_abandon: (params: {}) => Promise<GenericTxResponse>,
|
||||||
|
|
|
@ -80,6 +80,9 @@ export const FETCH_CHANNEL_LIST_COMPLETED = 'FETCH_CHANNEL_LIST_COMPLETED';
|
||||||
export const CREATE_CHANNEL_STARTED = 'CREATE_CHANNEL_STARTED';
|
export const CREATE_CHANNEL_STARTED = 'CREATE_CHANNEL_STARTED';
|
||||||
export const CREATE_CHANNEL_COMPLETED = 'CREATE_CHANNEL_COMPLETED';
|
export const CREATE_CHANNEL_COMPLETED = 'CREATE_CHANNEL_COMPLETED';
|
||||||
export const CREATE_CHANNEL_FAILED = 'CREATE_CHANNEL_FAILED';
|
export const CREATE_CHANNEL_FAILED = 'CREATE_CHANNEL_FAILED';
|
||||||
|
export const UPDATE_CHANNEL_STARTED = 'UPDATE_CHANNEL_STARTED';
|
||||||
|
export const UPDATE_CHANNEL_COMPLETED = 'UPDATE_CHANNEL_COMPLETED';
|
||||||
|
export const UPDATE_CHANNEL_FAILED = 'UPDATE_CHANNEL_FAILED';
|
||||||
export const PUBLISH_STARTED = 'PUBLISH_STARTED';
|
export const PUBLISH_STARTED = 'PUBLISH_STARTED';
|
||||||
export const PUBLISH_COMPLETED = 'PUBLISH_COMPLETED';
|
export const PUBLISH_COMPLETED = 'PUBLISH_COMPLETED';
|
||||||
export const PUBLISH_FAILED = 'PUBLISH_FAILED';
|
export const PUBLISH_FAILED = 'PUBLISH_FAILED';
|
||||||
|
|
|
@ -49,6 +49,7 @@ export {
|
||||||
doResolveUri,
|
doResolveUri,
|
||||||
doFetchChannelListMine,
|
doFetchChannelListMine,
|
||||||
doCreateChannel,
|
doCreateChannel,
|
||||||
|
doUpdateChannel,
|
||||||
doClaimSearch,
|
doClaimSearch,
|
||||||
} from 'redux/actions/claims';
|
} from 'redux/actions/claims';
|
||||||
|
|
||||||
|
@ -149,6 +150,7 @@ export {
|
||||||
makeSelectCoverForUri,
|
makeSelectCoverForUri,
|
||||||
makeSelectTitleForUri,
|
makeSelectTitleForUri,
|
||||||
makeSelectDateForUri,
|
makeSelectDateForUri,
|
||||||
|
makeSelectAmountForUri,
|
||||||
makeSelectTagsForUri,
|
makeSelectTagsForUri,
|
||||||
makeSelectContentTypeForUri,
|
makeSelectContentTypeForUri,
|
||||||
makeSelectIsUriResolving,
|
makeSelectIsUriResolving,
|
||||||
|
|
|
@ -71,6 +71,7 @@ const Lbry: LbryTypes = {
|
||||||
claim_search: params => daemonCallWithResult('claim_search', params),
|
claim_search: params => daemonCallWithResult('claim_search', params),
|
||||||
claim_list: params => daemonCallWithResult('claim_list', params),
|
claim_list: params => daemonCallWithResult('claim_list', params),
|
||||||
channel_create: params => daemonCallWithResult('channel_create', params),
|
channel_create: params => daemonCallWithResult('channel_create', params),
|
||||||
|
channel_update: params => daemonCallWithResult('channel_update', params),
|
||||||
channel_list: params => daemonCallWithResult('channel_list', params),
|
channel_list: params => daemonCallWithResult('channel_list', params),
|
||||||
stream_abandon: params => daemonCallWithResult('stream_abandon', params),
|
stream_abandon: params => daemonCallWithResult('stream_abandon', params),
|
||||||
channel_abandon: params => daemonCallWithResult('channel_abandon', params),
|
channel_abandon: params => daemonCallWithResult('channel_abandon', params),
|
||||||
|
|
|
@ -248,6 +248,40 @@ export function doCreateChannel(name: string, amount: number) {
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function doUpdateChannel(params: any) {
|
||||||
|
return (dispatch: Dispatch) => {
|
||||||
|
dispatch({
|
||||||
|
type: ACTIONS.UPDATE_CHANNEL_STARTED,
|
||||||
|
});
|
||||||
|
const updateParams = {
|
||||||
|
claim_id: params.claim_id,
|
||||||
|
bid: creditsToString(params.amount),
|
||||||
|
title: params.title,
|
||||||
|
cover_url: params.cover,
|
||||||
|
thumbnail_url: params.thumbnail,
|
||||||
|
description: params.description,
|
||||||
|
website_url: params.website,
|
||||||
|
email: params.email,
|
||||||
|
replace: true,
|
||||||
|
};
|
||||||
|
|
||||||
|
return Lbry.channel_update(updateParams)
|
||||||
|
.then((result: ChannelCreateResponse) => {
|
||||||
|
const channelClaim = result.outputs[0];
|
||||||
|
dispatch({
|
||||||
|
type: ACTIONS.UPDATE_CHANNEL_COMPLETED,
|
||||||
|
data: { channelClaim },
|
||||||
|
});
|
||||||
|
})
|
||||||
|
.catch(error => {
|
||||||
|
dispatch({
|
||||||
|
type: ACTIONS.UPDATE_CHANNEL_FAILED,
|
||||||
|
data: error,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
export function doFetchChannelListMine() {
|
export function doFetchChannelListMine() {
|
||||||
return (dispatch: Dispatch) => {
|
return (dispatch: Dispatch) => {
|
||||||
dispatch({
|
dispatch({
|
||||||
|
|
|
@ -257,6 +257,17 @@ reducers[ACTIONS.CREATE_CHANNEL_COMPLETED] = (state: State, action: any): State
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
reducers[ACTIONS.UPDATE_CHANNEL_COMPLETED] = (state: State, action: any): State => {
|
||||||
|
const channelClaim: ChannelClaim = action.data.channelClaim;
|
||||||
|
const byId = Object.assign({}, state.byId);
|
||||||
|
|
||||||
|
byId[channelClaim.claim_id] = channelClaim;
|
||||||
|
|
||||||
|
return Object.assign({}, state, {
|
||||||
|
byId,
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
reducers[ACTIONS.RESOLVE_URIS_STARTED] = (state: State, action: any): State => {
|
reducers[ACTIONS.RESOLVE_URIS_STARTED] = (state: State, action: any): State => {
|
||||||
const { uris }: { uris: Array<string> } = action.data;
|
const { uris }: { uris: Array<string> } = action.data;
|
||||||
|
|
||||||
|
|
|
@ -204,6 +204,14 @@ export const makeSelectDateForUri = (uri: string) =>
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
export const makeSelectAmountForUri = (uri: string) =>
|
||||||
|
createSelector(
|
||||||
|
makeSelectClaimForUri(uri),
|
||||||
|
claim => {
|
||||||
|
return claim && claim.amount;
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
export const makeSelectContentTypeForUri = (uri: string) =>
|
export const makeSelectContentTypeForUri = (uri: string) =>
|
||||||
createSelector(
|
createSelector(
|
||||||
makeSelectClaimForUri(uri),
|
makeSelectClaimForUri(uri),
|
||||||
|
|
Loading…
Reference in a new issue