v1.5.0
🍾 🥂 🎆
Breaking Changes
browserfield has been removed frompackage.jsonwhich means commonJS build is used instead ofUMDbuild from Webpack (much smaller)- [firebaseConnect] Uses
prop-typesinstead of importing from React - #122
Core
- [firebaseConnect] Allow usage of different stores in
firebaseConnect- #148, #29 - [firebaseConnect] statics are now hoisted thanks to
hoist-non-react-statics - [firebaseConnect] exposed
createFirebaseConnectfor creatingfirebaseConnectHOCs connected to different stores - [auth]
loginmethod supportscredentialparameter (with matching docs and tests updates) - [auth] deprecation warning added for
tokenandprovidercombo inloginmethod - [auth] Adds
updateProfile,updateAuth, andupdateEmailmethods that dispatch associated start/success/failure actions - [helpers]
deleteFilemethod response no longer includesdbPathif it is undefined (test added to check this case) - [helpers] No more race condition with
uniqueSet- #207 - [typescript] Typescript typings - #142, #214
- [query]
watchEventaccepts options object as third argument - [populate] Lodash path syntax support - #132
- [populate] accept a function for populate for item based populate config - #132
- [populate] Profile population (
profileParamsToPopulate) supports single item and list population - #203 - [storage]
uploadFileanduploadFilesno longer track progress by default (storageRef.putcalled directly) - [config] Usage of
profileFactoryis wrapped in try/catch to handle and reject errors within provided factory function - [config]
distpatchOnUnsetListenerspelling fixed to bedispatchOnUnsetListener(depreciation warning added along with a test confirm it is displayed) - [config]
enableEmptyAuthChangesconfig option added - #137
Build
- Firebase is now an external in Webpack config (shrinks UMD build size)
.npmignoreexpanded to include more files that do not needed to be included in published version (including.babelrcwhich can cause build errors).babelrcsettings are now environment specific (decorators only used in testing)babel-preset-stage-1removed (unnecessary).eslintrcadded to tests folder which contains globals that are only necessary for testing (simplifies top level eslint config).eslintrcfile now using yaml format instead of JSON format (easier to read)async/awaitadded to unit tests- Webpack 2
firebase-serverused in tests instead of connecting to a real Firebase instance
Docs
- Query docs updated with
storeAsandkeyPropquery options redux-persistrecipe added