<a name="3.2.1"></a>
## [3.2.1](https://github.com/biosustain/potion-node/compare/v3.2.0...v3.2.1) (2017-11-04)


### Features

* update deps ([311132a](https://github.com/biosustain/potion-node/commit/311132a))



<a name="3.2.0"></a>
# [3.2.0](https://github.com/biosustain/potion-node/compare/v3.1.1...v3.2.0) (2017-09-30)


### Bug Fixes

* fix bundle name ([3560010](https://github.com/biosustain/potion-node/commit/3560010))


### Features

* upgrade deps ([a7d0d39](https://github.com/biosustain/potion-node/commit/a7d0d39))



<a name="3.1.1"></a>
## [3.1.1](https://github.com/biosustain/potion-node/compare/v3.1.0...v3.1.1) (2017-09-13)



<a name="3.1.0"></a>
# [3.1.0](https://github.com/biosustain/potion-node/compare/v3.0.2...v3.1.0) (2017-09-13)


### Features

* upgrade deps ([b5bf1e5](https://github.com/biosustain/potion-node/commit/b5bf1e5))



<a name="3.0.2"></a>
## [3.0.2](https://github.com/biosustain/potion-node/compare/v3.0.1...v3.0.2) (2017-07-24)


### Bug Fixes

* do not try to find roots and resolve references in schemas ([4ae9c07](https://github.com/biosustain/potion-node/commit/4ae9c07))



<a name="3.0.1"></a>
## [3.0.1](https://github.com/biosustain/potion-node/compare/v3.0.0...v3.0.1) (2017-07-22)


### Bug Fixes

* fix Angular 4 body and params serialization ([b7111fc](https://github.com/biosustain/potion-node/commit/b7111fc))



<a name="3.0.0"></a>
# [3.0.0](https://github.com/biosustain/potion-node/compare/v2.5.0...v3.0.0) (2017-07-18)


### Features

* migrate Angular impl. to new HttpClient ([7f1a7bb](https://github.com/biosustain/potion-node/commit/7f1a7bb))



<a name="2.5.0"></a>
# [2.5.0](https://github.com/biosustain/potion-node/compare/v2.4.0...v2.5.0) (2017-07-17)


### Features

* upgrade deps and fix tslint/TS errors ([579589b](https://github.com/biosustain/potion-node/commit/579589b))



<a name="2.4.0"></a>
# [2.4.0](https://github.com/biosustain/potion-node/compare/v2.3.0...v2.4.0) (2017-07-08)


### Features

* improve item types ([3c46ba4](https://github.com/biosustain/potion-node/commit/3c46ba4))



<a name="2.3.0"></a>
# [2.3.0](https://github.com/biosustain/potion-node/compare/v2.2.1...v2.3.0) (2017-06-14)


### Bug Fixes

* **Potion:** fix types ([cd85feb](https://github.com/biosustain/potion-node/commit/cd85feb))


### Features

* upgrade TS ([375ec30](https://github.com/biosustain/potion-node/commit/375ec30))



<a name="2.2.1"></a>
## [2.2.1](https://github.com/biosustain/potion-node/compare/v2.2.0...v2.2.1) (2017-06-10)



<a name="2.2.0"></a>
# [2.2.0](https://github.com/biosustain/potion-node/compare/v2.1.1...v2.2.0) (2017-06-05)


### Features

* implement support for resolving "#" self references and close [#11](https://github.com/biosustain/potion-node/issues/11) ([311a4b0](https://github.com/biosustain/potion-node/commit/311a4b0))



<a name="2.1.1"></a>
## [2.1.1](https://github.com/biosustain/potion-node/compare/v2.1.0...v2.1.1) (2017-06-05)



<a name="2.1.0"></a>
# [2.1.0](https://github.com/biosustain/potion-node/compare/v2.0.2...v2.1.0) (2017-06-03)


### Features

* use the global object and close [#12](https://github.com/biosustain/potion-node/issues/12) ([4a1c60d](https://github.com/biosustain/potion-node/commit/4a1c60d))



<a name="2.0.2"></a>
## [2.0.2](https://github.com/biosustain/potion-node/compare/v2.0.1...v2.0.2) (2017-06-03)



<a name="2.0.1"></a>
## [2.0.1](https://github.com/biosustain/potion-node/compare/v2.0.0...v2.0.1) (2017-06-02)


### Bug Fixes

* fix module id ([16c0d27](https://github.com/biosustain/potion-node/commit/16c0d27))



<a name="2.0.0"></a>
# [2.0.0](https://github.com/biosustain/potion-node/compare/v1.5.8-1...v2.0.0) (2017-06-02)


### Bug Fixes

* fix typo ([fadc148](https://github.com/biosustain/potion-node/commit/fadc148))
* load angular lib in index ([a5d44b8](https://github.com/biosustain/potion-node/commit/a5d44b8))
* properly generate builds ([f719795](https://github.com/biosustain/potion-node/commit/f719795))



<a name="1.5.8-1"></a>
## [1.5.8-1](https://github.com/biosustain/potion-node/compare/v1.5.8-0...v1.5.8-1) (2017-06-02)


### Bug Fixes

* **CI:** set Chrome bin path ([86aa14f](https://github.com/biosustain/potion-node/commit/86aa14f))
* **release.sh:** fix path to dist dir ([959596c](https://github.com/biosustain/potion-node/commit/959596c))


### Features

* implement bundles ([a50efff](https://github.com/biosustain/potion-node/commit/a50efff))



<a name="1.5.8-0"></a>
## [1.5.8-0](https://github.com/biosustain/potion-node/compare/v1.5.7...v1.5.8-0) (2017-05-31)


### Bug Fixes

* **Pagination:** implement Iterable instead of extending Array (extending Array is not reliable) ([399c188](https://github.com/biosustain/potion-node/commit/399c188))



<a name="1.5.7"></a>
## [1.5.7](https://github.com/biosustain/potion-node/compare/v1.5.6...v1.5.7) (2017-05-31)


### Bug Fixes

* minimize the loop depth when replacing refs. (skip going through refs.) ([43aed21](https://github.com/biosustain/potion-node/commit/43aed21))



<a name="1.5.6"></a>
## [1.5.6](https://github.com/biosustain/potion-node/compare/v1.5.5...v1.5.6) (2017-05-30)


### Bug Fixes

* fix no implicit any TS errors ([ec5018c](https://github.com/biosustain/potion-node/commit/ec5018c))



<a name="1.5.5"></a>
## [1.5.5](https://github.com/biosustain/potion-node/compare/v1.5.4...v1.5.5) (2017-05-30)



<a name="1.5.4"></a>
## [1.5.4](https://github.com/biosustain/potion-node/compare/v1.5.3...v1.5.4) (2017-05-30)



<a name="1.5.3"></a>
## [1.5.3](https://github.com/biosustain/potion-node/compare/v1.5.3-1...v1.5.3) (2017-05-29)



<a name="1.5.3-1"></a>
## [1.5.3-1](https://github.com/biosustain/potion-node/compare/v1.5.3-0...v1.5.3-1) (2017-05-29)



<a name="1.5.3-0"></a>
## [1.5.3-0](https://github.com/biosustain/potion-node/compare/0.14.6...v1.5.3-0) (2017-05-29)


### Bug Fixes

* $id and id() should also could be string ([3034ab2](https://github.com/biosustain/potion-node/commit/3034ab2))
* don't add the provided prefix twice to $ref when serializing request body to Potion JSON ([bdb8d19](https://github.com/biosustain/potion-node/commit/bdb8d19))
* **potion/core:** ignore private props when updating/creating items ([00bb652](https://github.com/biosustain/potion-node/commit/00bb652))
* find all {uri} references before running reference replacement ([a312391](https://github.com/biosustain/potion-node/commit/a312391))
* fix tslint errors ([3b7a157](https://github.com/biosustain/potion-node/commit/3b7a157))
* fix unresolved resources due to race conditions and close [#29](https://github.com/biosustain/potion-node/issues/29) ([26dad33](https://github.com/biosustain/potion-node/commit/26dad33))
* id in Store should also be number|string ([a692a90](https://github.com/biosustain/potion-node/commit/a692a90))
* id param in fetch method should be number|string ([9eca996](https://github.com/biosustain/potion-node/commit/9eca996))
* only serialize {data, search} ([74da957](https://github.com/biosustain/potion-node/commit/74da957))
* publish package as es5 ([6cfa21a](https://github.com/biosustain/potion-node/commit/6cfa21a))
* remove async/await and fix compatibility with AngularJS ([1e75cf5](https://github.com/biosustain/potion-node/commit/1e75cf5))
* update Pagination ([0b02f6d](https://github.com/biosustain/potion-node/commit/0b02f6d))
* **potion/@angular:** remove request method conversion to int ([cd45c52](https://github.com/biosustain/potion-node/commit/cd45c52))
* when deserialize potion response make sure to only create a new instance if it does not exist ([ca8028a](https://github.com/biosustain/potion-node/commit/ca8028a))
* **deepOmap():** do not try to apply transformations to null values ([163426e](https://github.com/biosustain/potion-node/commit/163426e))
* **Item:** exclude {potion} from the JSON repr. ([028848c](https://github.com/biosustain/potion-node/commit/028848c))
* **Item:** remove async from .fetch() (unnecessary) ([68fbc94](https://github.com/biosustain/potion-node/commit/68fbc94))
* **Item:** remove async/await (breaks compatibility with AngularJS) ([be98bd8](https://github.com/biosustain/potion-node/commit/be98bd8))
* **Item:** remove unused import ([c88aaa4](https://github.com/biosustain/potion-node/commit/c88aaa4))
* **omap():** do not run through Potion Item objects, closes [#32](https://github.com/biosustain/potion-node/issues/32) ([d37a9ce](https://github.com/biosustain/potion-node/commit/d37a9ce))
* **Pagination:** make the class iterable ([c4c3aad](https://github.com/biosustain/potion-node/commit/c4c3aad))
* **potion/@angular:** add missing exports ([36b070e](https://github.com/biosustain/potion-node/commit/36b070e))
* **potion/@angular:** add missing exports ([c311f26](https://github.com/biosustain/potion-node/commit/c311f26))
* **potion/@angular:** add Potion providers ([ad4b0e0](https://github.com/biosustain/potion-node/commit/ad4b0e0))
* **potion/@angular:** convert object to JSON string before encoding ([fb782db](https://github.com/biosustain/potion-node/commit/fb782db))
* **potion/@angular:** do not fail when response is null ([6e89e66](https://github.com/biosustain/potion-node/commit/6e89e66))
* **potion/@angular:** do not parse empty body responses to JSON ([ae8c29c](https://github.com/biosustain/potion-node/commit/ae8c29c))
* **potion/@angular:** encode search query param value ([dd26f90](https://github.com/biosustain/potion-node/commit/dd26f90))
* **potion/@angular:** fix TS compiler error ([06698b9](https://github.com/biosustain/potion-node/commit/06698b9))
* **potion/@angular:** fix TS compiler error ([cb57906](https://github.com/biosustain/potion-node/commit/cb57906))
* **potion/@angular:** make sure resources are registered without having to inject Potion provider ([7ddc6a3](https://github.com/biosustain/potion-node/commit/7ddc6a3))
* **potion/@angular:** properly encode the query params ([c5e2df2](https://github.com/biosustain/potion-node/commit/c5e2df2))
* **potion/@angular:** remove pre-encoding as PotionQueryEncoder will encode the search ([6a8975a](https://github.com/biosustain/potion-node/commit/6a8975a))
* **potion/@angular:** set content type for POST requests to application/json ([29f18cb](https://github.com/biosustain/potion-node/commit/29f18cb))
* **potion/@angular:** temp fix until [#10235](https://github.com/biosustain/potion-node/issues/10235) in [@angular](https://github.com/angular) gets fixed ([805e7cd](https://github.com/biosustain/potion-node/commit/805e7cd))
* **potion/angular:** add fix for strict DI and close [#7](https://github.com/biosustain/potion-node/issues/7) ([13f63a6](https://github.com/biosustain/potion-node/commit/13f63a6))
* **potion/base:** fix cross-referencing and close [#10](https://github.com/biosustain/potion-node/issues/10) ([4006f1e](https://github.com/biosustain/potion-node/commit/4006f1e))
* **potion/base:** properly cache pending requests ([0943546](https://github.com/biosustain/potion-node/commit/0943546))
* **potion/core:** catch exceptions from parseURI and reject the promise ([4b59f9b](https://github.com/biosustain/potion-node/commit/4b59f9b))
* **potion/core:** convert snake case to camel case when resolving a schema response ([963bcd9](https://github.com/biosustain/potion-node/commit/963bcd9))
* **potion/core:** do not parse {$schema} references, but return plain object instead ([d277f08](https://github.com/biosustain/potion-node/commit/d277f08))
* **potion/core:** do not run snake case conversion twice ([a86b766](https://github.com/biosustain/potion-node/commit/a86b766))
* **potion/core:** make sure {cache} is always provided ([b817138](https://github.com/biosustain/potion-node/commit/b817138))
* **potion/core:** make sure checking the instance of any class that extended Item works ([5edafb5](https://github.com/biosustain/potion-node/commit/5edafb5))
* **potion/core:** remove Symbol.hasInstance ([e5edf9b](https://github.com/biosustain/potion-node/commit/e5edf9b))
* **potion/core:** skip {$ref: '#'} references ([dcc0d12](https://github.com/biosustain/potion-node/commit/dcc0d12))
* **potion/utils:** separate alphanumeric characters from numbers when toSnakeCase() is applied to a string ([70fd2ad](https://github.com/biosustain/potion-node/commit/70fd2ad))
* **PotionBase:** add missing semicolon ([00d6588](https://github.com/biosustain/potion-node/commit/00d6588))
* **PotionBase:** add partial impl. for circular references ([3e3d162](https://github.com/biosustain/potion-node/commit/3e3d162))


### Features

* **core/item:** use proper return types on methods ([c84c94d](https://github.com/biosustain/potion-node/commit/c84c94d))
* **Item:** add .equals() method for comparing resources ([8454bd3](https://github.com/biosustain/potion-node/commit/8454bd3))
* **Item.save():** if the item already exists, just update it ([7991930](https://github.com/biosustain/potion-node/commit/7991930))
* **Potion:** use map operator instead of the promise to manipulate the response ([0aadbfe](https://github.com/biosustain/potion-node/commit/0aadbfe))
* **potion/@angular:** allow user to change the Http engine ([eae0bd9](https://github.com/biosustain/potion-node/commit/eae0bd9))
* **potion/@angular:** implement support for more reponse types in .request() ([c91f216](https://github.com/biosustain/potion-node/commit/c91f216))
* **potion/@angular:** prevent reimport of PotionModule ([e02fe52](https://github.com/biosustain/potion-node/commit/e02fe52))
* **potion/angular2:** update to angular rc.4 ([55396d4](https://github.com/biosustain/potion-node/commit/55396d4))
* remove necessity of .forRoot() when importing the PotionModule ([ee2a070](https://github.com/biosustain/potion-node/commit/ee2a070))
* **potion/base:** implement Potion().register() return the registered resource class and close [#6](https://github.com/biosustain/potion-node/issues/6) ([271f410](https://github.com/biosustain/potion-node/commit/271f410))
* add support for parsing resources based on {$id, $type} if {$uri} is not provided and close [#15](https://github.com/biosustain/potion-node/issues/15) ([41cf8ed](https://github.com/biosustain/potion-node/commit/41cf8ed))
* allow usage of UUIDs as primary key (Item {id}) ([3b20d9c](https://github.com/biosustain/potion-node/commit/3b20d9c))
* export route() ([7a1699d](https://github.com/biosustain/potion-node/commit/7a1699d))
* export toSnakeCase() and toCamelCase() fns ([f53d665](https://github.com/biosustain/potion-node/commit/f53d665))
* finish up self reference replacement alg. ([7b5cae8](https://github.com/biosustain/potion-node/commit/7b5cae8))
* handle errors better ([330caa1](https://github.com/biosustain/potion-node/commit/330caa1))
* implement a better way to register resources ([beff708](https://github.com/biosustain/potion-node/commit/beff708))
* implement support for AOT ([5d2ad0f](https://github.com/biosustain/potion-node/commit/5d2ad0f))
* improve code readability ([0048fb9](https://github.com/biosustain/potion-node/commit/0048fb9))
* reject with Error object instead of string ([7b83bfc](https://github.com/biosustain/potion-node/commit/7b83bfc))
* resolve self references as SelfReference for any request ([85b9a4c](https://github.com/biosustain/potion-node/commit/85b9a4c))
* upgrade Angular 2 impl. to RC5 ([4045b50](https://github.com/biosustain/potion-node/commit/4045b50))
* upgrade deps ([07df473](https://github.com/biosustain/potion-node/commit/07df473))
* upgrade deps ([a39a244](https://github.com/biosustain/potion-node/commit/a39a244))
* upgrade to Angular 4 ([6cb61c4](https://github.com/biosustain/potion-node/commit/6cb61c4))
* use .ts ext. for karma config ([0e189d3](https://github.com/biosustain/potion-node/commit/0e189d3))
* use async and native Promise ([66f3c8f](https://github.com/biosustain/potion-node/commit/66f3c8f))
* use proper types when possible ([8dc44ca](https://github.com/biosustain/potion-node/commit/8dc44ca))



<a name="0.14.6"></a>
## [0.14.6](https://github.com/biosustain/potion-node/compare/0.14.5...0.14.6) (2016-05-03)


### Features

* **Potion:** add possibility to specify a host ([9b8a749](https://github.com/biosustain/potion-node/commit/9b8a749))



<a name="0.14.5"></a>
## [0.14.5](https://github.com/biosustain/potion-node/compare/0.14.4...0.14.5) (2016-05-02)


### Features

* **Item:** implement .first() and close [#2](https://github.com/biosustain/potion-node/issues/2) ([38716b5](https://github.com/biosustain/potion-node/commit/38716b5))



<a name="0.14.4"></a>
## [0.14.4](https://github.com/biosustain/potion-node/compare/3bb90f0...0.14.4) (2016-04-29)


### Bug Fixes

* various fixes ([ca8f39c](https://github.com/biosustain/potion-node/commit/ca8f39c))
* **fetch:** on POST/PUT set request headers and stringify JSON ([6c7bcf8](https://github.com/biosustain/potion-node/commit/6c7bcf8))
* **fetch:** send cookies with the request ([af190b5](https://github.com/biosustain/potion-node/commit/af190b5))
* **fetch:** use response.text() to get the request response and convert to JSON as response.json() throws errors when response is null ([f80889e](https://github.com/biosustain/potion-node/commit/f80889e))
* MemCache shared between API instances ([48b9deb](https://github.com/biosustain/potion-node/commit/48b9deb))
* **item:** make sure Item.query() returns instances of Item ([080f4ae](https://github.com/biosustain/potion-node/commit/080f4ae))
* **Potion.fromPotionJSON():** always cache the Item ([9a119a5](https://github.com/biosustain/potion-node/commit/9a119a5))
* add missing exports ([0688ae5](https://github.com/biosustain/potion-node/commit/0688ae5))
* **Pagination:** properly update the pagination object ([6a870b3](https://github.com/biosustain/potion-node/commit/6a870b3))
* cache GET requests properly in Potion.fetch() ([dd70c15](https://github.com/biosustain/potion-node/commit/dd70c15))
* **Item.fetch():** make sure to remove pending request on uri if the request fails ([49e3c47](https://github.com/biosustain/potion-node/commit/49e3c47))
* **Item.fetch():** skip fetching from cache when {cache} is false ([78e24b3](https://github.com/biosustain/potion-node/commit/78e24b3))
* set package files [ci skip] ([095c29a](https://github.com/biosustain/potion-node/commit/095c29a))
* **Item.toJSON():** exclude the id property ([4df912a](https://github.com/biosustain/potion-node/commit/4df912a))
* **Pagination:** properly make new request when page is set ([8a3f7f1](https://github.com/biosustain/potion-node/commit/8a3f7f1))
* **Potion.fetch():** implement data/search params serialization ([970380a](https://github.com/biosustain/potion-node/commit/970380a))
* **Potion.registerAs():** add item options param ([70b69be](https://github.com/biosustain/potion-node/commit/70b69be))
* **potion/angular2:** implement a strategy for registering resources ([0909e88](https://github.com/biosustain/potion-node/commit/0909e88))
* **potion/angular2:** make .request() return the appropriate object ([8655987](https://github.com/biosustain/potion-node/commit/8655987))
* **potion/angular2:** properly update request with {body} if {data} option is passed ([1972f4a](https://github.com/biosustain/potion-node/commit/1972f4a))
* set package lib dir [ci skip] ([a1ee137](https://github.com/biosustain/potion-node/commit/a1ee137))
* **route:** avoid uri value mutation ([6524b33](https://github.com/biosustain/potion-node/commit/6524b33))
* **route:** properly set the search/data props based on the method type ([799d9cf](https://github.com/biosustain/potion-node/commit/799d9cf))
* **travis:** add peer deps as dev deps too ([29da305](https://github.com/biosustain/potion-node/commit/29da305))
* **travis:** remove chromium ([fa266e8](https://github.com/biosustain/potion-node/commit/fa266e8))
* **travis:** run proper lint command ([41b299e](https://github.com/biosustain/potion-node/commit/41b299e))


### Features

* automatically resolve references ([fbb0b2b](https://github.com/biosustain/potion-node/commit/fbb0b2b))
* deserialize dates ([5dc88f9](https://github.com/biosustain/potion-node/commit/5dc88f9))
* first try at implementing the Potion client ([3bb90f0](https://github.com/biosustain/potion-node/commit/3bb90f0))
* implement [@readonly](https://github.com/readonly) properties ([2b567fa](https://github.com/biosustain/potion-node/commit/2b567fa))
* **fetch:** handle HTTP cache option ([a294174](https://github.com/biosustain/potion-node/commit/a294174))
* **item:** .toJSON() should transform keys to snake case ([f44f9e5](https://github.com/biosustain/potion-node/commit/f44f9e5))
* **item:** implement .delete() ([5817c42](https://github.com/biosustain/potion-node/commit/5817c42))
* **item:** implement .save() ([00e86ee](https://github.com/biosustain/potion-node/commit/00e86ee))
* **item:** implement .toJSON() method ([c3a7516](https://github.com/biosustain/potion-node/commit/c3a7516))
* **item:** implement .update() instance method ([26e4da0](https://github.com/biosustain/potion-node/commit/26e4da0))
* **Pagination:** add total prop ([439e0f1](https://github.com/biosustain/potion-node/commit/439e0f1))
* implement Angular potion service ([c8df39e](https://github.com/biosustain/potion-node/commit/c8df39e))
* implement Item.query() to retrieve all instances of an Item ([3c63f6c](https://github.com/biosustain/potion-node/commit/3c63f6c))
* implement optional item caching ([953ff3f](https://github.com/biosustain/potion-node/commit/953ff3f))
* **potion/angular2:** use MemCache as default item cache ([8efb479](https://github.com/biosustain/potion-node/commit/8efb479))
* implement set readonly props on Item.create() ([d4dd049](https://github.com/biosustain/potion-node/commit/d4dd049))
* implement setup for Angular 2 ([b0d9cc6](https://github.com/biosustain/potion-node/commit/b0d9cc6))
* partially implement custom potion JSON deserialization ([069a0e7](https://github.com/biosustain/potion-node/commit/069a0e7))
* **Pagination:** implement base Pagination class ([8cd8528](https://github.com/biosustain/potion-node/commit/8cd8528))
* **Pagination:** implement pagination logic ([6f29b87](https://github.com/biosustain/potion-node/commit/6f29b87))
* **potion:** add partial cache and allow only one pending request for the same resource ([3912d5e](https://github.com/biosustain/potion-node/commit/3912d5e))
* **potion:** return uri along the resource and params when parseURI is called ([f152bcc](https://github.com/biosustain/potion-node/commit/f152bcc))
* **potion:** strip API prefix when parsing URI ([aedb28d](https://github.com/biosustain/potion-node/commit/aedb28d))
* **potion/angular:** make provider .config() act as setter and getter ([9a1bf75](https://github.com/biosustain/potion-node/commit/9a1bf75))
* **potion/angular2:** implement .request() method ([cfe2175](https://github.com/biosustain/potion-node/commit/cfe2175))
* **potion/fetch:** use in memory cache by default ([4a18748](https://github.com/biosustain/potion-node/commit/4a18748))
* **Route:** add PATCH and use it for Item.update() ([d6ca4f0](https://github.com/biosustain/potion-node/commit/d6ca4f0))
* **Route, Store:** allow user to set the promise return type ([40458c2](https://github.com/biosustain/potion-node/commit/40458c2))


### Performance Improvements

* **tests:** turn off type checking during unit tests and speed up process ([c90dbe3](https://github.com/biosustain/potion-node/commit/c90dbe3))



