getAction = (newPayload, isRejected) => ({
        // Concatenate the type string property.
        type: [
          TYPE,
          isRejected ? REJECTED : FULFILLED
        ].join(PROMISE_TYPE_DELIMITER),

        // Include the payload property.
        ...((newPayload === null || typeof newPayload === 'undefined') ? {} : {
          payload: newPayload
        }),

        // If the original action includes a meta property, include it.
        ...(META !== undefined ? { meta: META } : {}),

        // If the action is rejected, include an error property.
        ...(isRejected ? {
          error: true
        } : {})
      })
Function: getAction
Description: This function constructs and returns a rejected
or fulfilled action object. The action object is based off the Flux
Standard Action (FSA).

Given an original action with the type FOO:

The rejected object model will be:
{
  error: true,
  type: 'FOO_REJECTED',
  payload: ...,
  meta: ... (optional)
}

The fulfilled object model will be:
{
  type: 'FOO_FULFILLED',
  payload: ...,
  meta: ... (optional)
}