Q: Is const Component = () => () the same as const Component = () => {return()} in React? I'm guessing they are the same since the output is the same, but is it the official shorthand in Redux or is it a Javascript property? I am following through the Redux documentation and have one component as such:
const App = () => (
  <div>
    <AddTodo />
    <VisibleTodoList />
    <Footer />
  </div>
)

and another component as such:
const AddTodo = ({ dispatch }) => {
  let input

  return (
    <div>
      <form
        onSubmit={e => {
          e.preventDefault()
          if (!input.value.trim()) {
            return
          }
          dispatch(addTodo(input.value))
          input.value = ''
        }}
      >
        <input ref={node => (input = node)} />
        <button type="submit">Add Todo</button>
      </form>
    </div>
  )
}

I'm wondering if this is something to do with Javascript or React.
I understand that in Javascript, the arrow function needs to have a () like
(name, description) => ({name: name, description: description});

to describe that it is an object and not a plain function in case of inline, single-expression syntax, but I'm not sure if that applies here in the Redux example since the JSX portion is not an object. Please help me with my mistake.

A: Short answer, yes, as JSX and React follows the very same syntax the JavaScript uses, since JSX is merely a syntax extension to React. You may read more about JSX over here.
In addition, regarding your point about the redux, your redux should be written purely in JavaScript (or TypeScript), without any JSX syntax, since the main objective of your redux store is to maintain your application's state, rather than to render logic.

A: It's mostly for readability, you can omit the parentheses and it will function the same
const App = () => 
  <div>
    <AddTodo />
    <VisibleTodoList />
    <Footer />
  </div>

But when you have a body inside the component and want to return the JSX on a new line you have to wrap in in parentheses to avoid ASCI(automatic semicolon insertion)
const App = () => {
  const x = 'something'

  return (
    <div>
      <AddTodo />
      <VisibleTodoList />
      <Footer />
    </div>
  )
}

