client/state/data-layer/wpcom-http/utils.js
function createRequestAction( options, action ) {
	const {
		fetch = noop,
		onSuccess = noop,
		onError = noop,
		onProgress = noop,
		fromApi = identity,
	} = options;

	const error = getError( action );
	if ( error ) {
		return onError( action, error );
	}

	const data = getData( action );
	if ( data ) {
		try {
			return onSuccess( action, fromApi( data ) );
		} catch ( err ) {
			return onError( action, err );
		}
	}

	const progress = getProgress( action );
	if ( progress ) {
		return onProgress( action, progress );
	}

	return fetch( action );
}
function createRequestAction( options, action ) {
	const {
		fetch = noop,
		onSuccess = noop,
		onError = noop,
		onProgress = noop,
		fromApi = identity,
	} = options;

	const error = getError( action );
	if ( error ) {
		return onError( action, error );
	}

	const data = getData( action );
	if ( data ) {
		try {
			return onSuccess( action, fromApi( data ) );
		} catch ( err ) {
			return onError( action, err );
		}
	}

	const progress = getProgress( action );
	if ( progress ) {
		return onProgress( action, progress );
	}

	return fetch( action );
}
function createRequestAction ( options , action ) { const { fetch = noop , onSuccess = noop , onError = noop , onProgress = noop , fromApi = identity , } = options ; const error = getError ( action ) ; if ( error ) { return onError ( action , error ) ; } const data = getData ( action ) ; if ( data ) { try { return onSuccess ( action , fromApi ( data ) ) ; } catch ( err ) { return onError ( action , err ) ; } } const progress = getProgress ( action ) ; if ( progress ) { return onProgress ( action , progress ) ; } return fetch ( action ) ; }
/*
Converts an application-level Calypso action that's handled by the data-layer middleware
into a low-level action. For example, HTTP request that's being initiated, or a response
action with a `meta.dataLayer` property.
/ * Converts an application - level Calypso action that s handled by the data - layer middleware into a low - level action . For example HTTP request that s being initiated or a response action with a meta . dataLayer property .