* feat(mobile): use cached asset info if unchanged instead of downloading all assets
This adds an HTTP ETag to the getAllAssets endpoint and client-side support in the app.
If locally cache content is identical to the content on the server, the potentially large list of all assets does not need to be downloaded.
* use ts import instead of require
* Change API to return assets count and change web behavior accordingly
* Refactor assets.length
* Explicitly declare type of assetCount so Dart SDK understand it
* Finished refactoring on mobile