Skip to content

Releases: prescottprue/react-redux-firebase

v2.0.0 Alpha 3

27 Jun 08:43
Compare
Choose a tag to compare
v2.0.0 Alpha 3 Pre-release
Pre-release
  • Firebase is now an external in webpack config (shrinks browser bundles)
  • createFirebaseInstance is exposed at top level (for passing the name of the store for which to create the firebaseConnect function)

Pre-release versions of v2.0.0 will be on @canary npm tag moving forward (npm i --save react-redux-firebase@canary)

v2.0.0 Alpha 2

25 Jun 12:05
Compare
Choose a tag to compare
v2.0.0 Alpha 2 Pre-release
Pre-release

Description

  • getFirebase exposed to mirror v1.*.* API - #167
  • Improved initialization - #170
  • README Simplified
  • More unit tests passing (including populate)
  • Migration guide includes redux-persist example

Check List

  • All tests passing
  • Docs updated with any changes or examples
  • Added tests to ensure feature(s) work properly

Relevant Issues

Version v1.4.3

25 Jun 12:37
Compare
Choose a tag to compare
  • onAuthStateChange added to config validation
  • deprecation warning added for distpatchOnUnsetListener config option (it is spelled "dispatch" i.e. dispatchOnUnsetListener)

Version v1.4.2

22 Jun 23:04
Compare
Choose a tag to compare
  • Fixes an issue that when attempting to query in Internet Explorer on Windows would cause error with message "isNan is not a method of Number"

Version v2.0.0 Alpha

21 Jun 05:05
Compare
Choose a tag to compare
Version v2.0.0 Alpha Pre-release
Pre-release
  • 🎉 NO MORE IMMUTABLE.JS! 🎉 which means:
    • no more using pathToJS, dataToJS, or customToJS - see snippets below
    • simplified population (can easily be done manually following common redux patterns)
    • redux-persist is supported out of the box (no longer need dataToJS, pathToJS, or customToJS)
  • New Population syntax (populate instead of populatedDataToJS) - see snippets below
  • Firebase instance can be passed as first argument instead of config vars (see snippets below):
    • removes platform specific code while improving platform support
    • allows any version of Firebase to be used
    • allows react-native-firebase to be passed (for using native modules instead of JS within react-native)
  • Wrapping instance with helpers which internally dispatch redux actions separated into exported function named createFirebaseInstance
  • Material example uses new syntax (no helpers)
  • react-native example passes in an instantiated instance of Firebase

Migration Guide

Syntax Snippets

  • No more helpers:

    import { connect } from 'react-redux'
    import { firebaseConnect } from 'react-redux-firebase';
    
    @firebaseConnect(['todos'])
    @connect(
      ({ firebase: { auth, data: { todos }} }) => ({
        todos, // v1 would require dataToJS
        auth, // v1 would require pathToJS
      })
    )
  • Passing A Firebase Instance:

    import * as firebase from 'firebase/app'
    import 'firebase/auth'
    import 'firebase/database'
    import 'firebase/storage'
    
    const fbConfig = {} // object containing Firebase config
    firebase.initializeApp(fbConfig)
    
    const store = createStore(
      reducer,
      initialState,
      compose(
        reactReduxFirebase(firebase, reduxConfig),
        applyMiddleware(...middleware),
        ...enhancers
      )
    )
  • new populate syntax:

    import { connect } from 'react-redux'
    import { firebaseConnect, populate } from 'react-redux-firebase'
    
    const populates = [
      { child: 'owner', root: 'users' }
    ]
    
    @firebaseConnect([
      { path: 'todos', populates }
      // '/todos#populate=owner:users', // equivalent string notation
     ])
    @connect(
      ({ firebase }) => ({
        todos: populate(firebase, 'todos', populates), // used to be populatedDataToJS
      })
    )

Version v1.4.1

16 Jun 00:23
Compare
Choose a tag to compare
  • Adds transform-object-assign to babel plugins to fix issue with IE - #158
  • Removes npm publish from .travis.yml (handled manually so that flags can be used) -
    #155
  • Removes duplicate API docs from book folder (introduced in #156)

Version v1.5.0 Beta 3

06 Jun 19:50
Compare
Choose a tag to compare
Version v1.5.0 Beta 3 Pre-release
Pre-release
  • Switched to using .npmignore instead of files and filesMap fields in package.json to get typescript typings to be published - #142

Version v1.5.0 Alpha 2

30 May 21:20
Compare
Choose a tag to compare
Pre-release
  • Removed browser field from package.json in attempt to solve - #128

Version v1.5.0 Beta 2

06 Jun 04:29
Compare
Choose a tag to compare
Version v1.5.0 Beta 2 Pre-release
Pre-release
  • Return correct promise from firebase.auth().signOut() - #152
  • Typings will be included in publish - #142

Version v1.5.0 Beta

31 May 07:20
Compare
Choose a tag to compare
Version v1.5.0 Beta Pre-release
Pre-release