Skip to content

Commit

Permalink
[DDW-901] Newsfeed (input-output-hk#1570)
Browse files Browse the repository at this point in the history
* [DDW-901] Adds more content fields to component and story, aligns exit btn

* [DDW-901] Fixes ESLint warnings

* [DDW-901] Introduce news feed store observers

* [DDW-901] Flow fixes

* [DDW-901] Fixes file names

* [DDW-901] Passes data from newsfeed store to container to component

* [DDW-901] News feed - creating News feed component - adding News Feed - no news feed items

* [DDW-901] News feed - creating News feed component - adding News Feed container

* [DDW-901] Adjusts rendering of props

* [DDW-901] News feed - creating News feed component - adding News Feed container

* [DDW-901] basic setup for patching news feed api in tests

* [DDW-901] NewsFeed store improvement

* [DDW-901] News feed - creating News feed component - adding toggle action on app store

* [DDW-901] News feed - creating News feed component - adding toggle button on top bar

* [DDW-901] News feed - creating News feed component - adding toggle button on top bar

* [DDW-901] News feed - creating News feed component - small fix

* [DDW-901] Flow improvements

* [DDW-901] News feed - creating News feed component - adding toggle button on loading screen

* [DDW-901] News feed - creating News feed component - small hover fix

* [DDW-901] add read news local storage api

* [DDW-901] remove old comments

* [DDW-901] implement news feed test setup steps

* [DDW-901] News feed - creating News feed component - adding News Feed open/close animation

* [DDW-901] News feed - creating News feed component - adding toggle button on loading screen

* [DDW-901] Alerts and Incidents

* [DDW-901] refactor news feed test steps

* [DDW-901] News feed - creating News feed component - adding toggle button animation

* [DDW-901] News feed - creating News feed component - adding toggle button on loading screen

* [DDW-901] News feed - creating News feed component - fixing storybook

* [DDW-901] News feed - creating News feed component - renaming storybook domain name for news

* [DDW-901] Updates styles for incident and alert overlay

* [DDW-901] Handle Markdown in News Item content

* [DDW-901] Fix syncing tooltip

* [DDW-901] News feed - creating News feed component - adding News Item component

* [DDW-901] News feed - creating News feed component - adding News Item component

* [DDW-901] News feed - creating News feed component - adding News Item component

* [DDW-901] refactor and implement more acceptance tests

* [DDW-901] News feed - creating News feed component - fixing News Item component in storybook

* [DDW-901] News feed - creating News feed component - fixing storybook

* [DDW-901] Introduce WalletsCollection class with helper methods

* [DDW-901] Update markdown content

* [DDW-901] News feed - creating News feed component - News Item expanding/collapsing

* [DDW-901] News Store hotfix

* [DDW-901] Continues adjusting styles of AlertOverlay

* [DDW-901] Update markdown

* [DDW-901] Adds content box scrolling, and scrollbar thumb styles

* [DDW-901] News feed sidebar animation update

* [DDW-901] News feed - creating News feed component - News Item date format

* [DDW-901] Update news fetching state

* [DDW-901] Introduce markAsRead @action

* [DDW-901] Fix environment label

* Adds counter to AlertsOverlay, adds styles to IncidentOverlay

* [DDW-901] News feed - creating News feed component - News Feed scroll

* [DDW-901] Adds onMarkNewsAsRead handler to onClose func

* [DDW-901] Introduce poller interval set/reset on initial fetching error

* [DDW-901] Improve mobX handlers to prevent set issues

* [DDW-901] News feed - creating News feed component - News Item

* [DDW-901] Corrects colors for IncidentOverlay and formats markdown for Alerts and Incidents

* [DDW-901] Removes alert icon from AlertsOverlay and IncidentOverlay

* [DDW-901] Changes import order of assets in overlays

* [DDW-901] Bell icon logic

* [DDW-901] fix some minor issues

* [DDW-901] merging wip stash

* [DDW-901] Use correct news data

* [DDW-901] Fix observable issue

* [DDW-901] News feed - creating News feed component - News Item updates

* [DDW-901] News feed - creating News feed component - News Item updates

* [DDW-901] fix broken news collection

* [DDW-901] show news item badge only for unread items

* [DDW-901] Introduce targetVersion news check

* [DDW-901] Remove unnecessary log

* Updates content 2

Expands dummy data for content 2

* Changes item 9 to an incident

* [DDW-901] add advanced incident content

* [DDW-901] only show news icon dot for unread announcements

* [DDW-901] fix wrong content assignment in news feed store

* [DDW-901] update some tests to new requirements

* [DDW-901] Fixes fixed positioning of overlays, content min-width, and styling of ordered lists in markdown

* [DDW-901] News feed - creating News feed component - News Item updates for content styling

* [DDW-901] News feed - creating News feed component - News Item updates

* [DDW-901] Flow improvements

* [DDW-901] Remwove unnecessary log

* [DDW-901] Update bell highlighted state

* [DDW-901] News feed - creating News feed component - News Item updates

* [DDW-901] Safe length check

* [DDW-901] NewsFeed story data improvement

* [DDW-901] Merge and fix conflicts

* [DDW-901] Adds CHANGELOG entry

* [DDW-901] Fixes styling in overlays

* [DDW-901] Fixes ESLint errors in overlays

* [DDW-901] News feed - creating News feed component - News Item updates

* [DDW-901] Misha DAVAY!

* [DDW-901] News feed - creating News feed component - News Item updates

* [DDW-901] Changes alert counter to --font-medium, and Misha Davay

* [DDW-901] News feed - creating News feed component - News Item updates

* [DDW-901] News feed - creating News feed component - News Item updates

* [DDW-901] News feed - creating News feed component - News Item spinner update

* [DDW-901] News feed - creating News feed component - News Item spinner update

* [DDW-901] Changes news feed to newsfeed throughout app

* [DDW-901] Fixes ESLint error

* [DDW-901] Updates defaultMessages.json

* [DDW-901] implement 80% of tests

* [DDW-901] fix newsfeed state logic when news feed couldnt be fetched

* [DDW-901] Change dummy JSN file location and fetch from daedaluswallet.io

* [DDW-901] fix broken newsfeed fetching state

* [DDW-901] News feed - creating News feed component - News Item height update, expanded/collapsed state update

* [DDW-901] Improve fetching spinner apeareance logic and new storybook story

* [DDW-901] Fix white theme

* [DDW-901] Fix news item spacing

* [DDW-901] News feed - creating News feed component - News Item height update, expanded/collapsed state update

* [DDW-901] News feed - creating News feed component - News Item height update, expanded/collapsed state update

* [DDW-901] News feed - creating News feed component - News Item height update, expanded/collapsed state update

* [DDW-901] News feed - creating News feed component - News Item color update

* Dummy News JSON update

* [DDW-901] Adds action for opening an alert

* Dummy News JSON update

* [DDW-901] News feed - creating News feed component - News Item color update

* [DDW-901] Update animation

* [DDW-901] News feed - creating News feed component - News Item color update

* [DDW-901] Prevent multiple markingAsRead if already marked

* [DDW-901] optimize newsfeed tests for speed

* [DDW-901] News feed - creating News feed component - News Item color update

* [DDW-901] Fix line breaks and scroll issues, Add markdown styling

* [DDW-901] News feed - creating News feed component - News Item color update

* [DDW-901] Introduce news content link click handler

* [DDW-901] News feed - creating News feed component - News Item color update

* [DDW-901] News feed - creating News feed component - News Item color update

* [DDW-901] Click handlers

* [DDW-901] Fixes open and close action logic for AlertsOverlay

* [DDW-901] Scss rules alphabetic order

* [DDW-901] Fixes flow error in NewsFeedStore.js

* [DDW-901] Fixes flow error in AlertOverlay.stories.js

* [DDW-901] add smooth news item expanding animation

* [DDW-901] Introduce internal github request to JSON news files

* [DDW-901] Freeze package.json

* [DDW-901] disallow unused markdown types in newsfeed items

* [DDW-901] Removes min-height from content of AlertsOverlay.scss

* [DDW-901] Inject Japanese translations

* [DDW-901] Adds external link icon to action buttons in overlays

* [DDW-901] Drop shadow when scrolling

* [DDW-901] Introduce incident interval

* [DDW-901] Fetch news from daedalus.io

* [DDW-901] Reposition Alert overlay counter

* [DDW-901] Match multiple target platforms from single item

* [DDW-901] Disable incident/alert overlays in specific cases and overlays opacity improvement

* [DDW-901] Improve getNews api response type

* [DDW-901] Add news item route action handler

* [DDW-901] Alerts overlay counter and internal actions button improvements

* [DDW-901] Introduce news feed title generator and dummy JSON file with no internal route actions

* [DDW-901] Rename newsfeed files

* [DDW-901] Restore failed test scenario screenshots

* [DDW-901] Fix Bell icon position on connecting screen

* [DDW-901] Fetch news over HTTPS

* [DDW-901] Fix E2E tests

* [DDW-901] Remove unnecessary logs

* [DDW-901] Improve eslint config and fix feature/test eslint issue

* [DDW-901] Improve news unread dot margin

* [DDW-901] Center newsfeed header badge counter

* [DDW-901] Collapse all expanded items on newsfeed sidebar close

* [DDW-901] Remove unnecessary @watch flags

* [DDW-901] Fix theming issues on profile screens

* [DDW-901] Small code cleanup

* [DDW-901] Code style improvements

* [DDW-901] Add news bell icon to storybook layouts

* [DDW-901] Verify newsfeed using hashes
  • Loading branch information
nikolaglumac authored Sep 27, 2019
1 parent ab87929 commit adeb1e6
Show file tree
Hide file tree
Showing 87 changed files with 3,455 additions and 191 deletions.
2 changes: 1 addition & 1 deletion .eslintignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ main.js
logs
node_modules
translations
tests
./tests
features/tests/e2e/documents/*
mainnet-genesis-dryrun-with-stakeholders.json
source/renderer/app/i18n/locales
Expand Down
3 changes: 2 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ Changelog

### Features

- Implemented "Newsfeed" feature ([PR 1570](https://github.com/input-output-hk/daedalus/pull/1570))
- Implemented wallet recovery phrase verification ([PR 1565](https://github.com/input-output-hk/daedalus/pull/1565))
- Removed select dropdown arrow ([PR 1550](https://github.com/input-output-hk/daedalus/pull/1550))
- Implemented automated and manual update flows unification ([PR 1491](https://github.com/input-output-hk/daedalus/pull/1491))
Expand Down Expand Up @@ -44,7 +45,7 @@ Changelog

### Specifications

- News feed ([PR 1569](https://github.com/input-output-hk/daedalus/pull/1569))
- Newsfeed ([PR 1569](https://github.com/input-output-hk/daedalus/pull/1569))

## 0.14.0

Expand Down
2 changes: 1 addition & 1 deletion features/data-layer-migration.feature
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,6 @@ Feature: Data Layer Migration
| Wallet | |
Then I should see the Data Layer Migration screen
When I click the migration button
Then I should see the initial screen
Then I should see the main ui
When I refresh the main window
Then I should not see the Data Layer Migration screen
81 changes: 0 additions & 81 deletions features/news-feed.feature

This file was deleted.

87 changes: 87 additions & 0 deletions features/newsfeed.feature
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
@e2e @newsfeed @noReload
Feature: Newsfeed

Newsfeed delivers important information to Daedalus users, like information about network failures, bugs and other
issues, information about upcoming and recent releases and so on. News are categorised in 4 types:
incident, alert, announcement and info. Incidents and alerts cover the whole user interface,
announcements and info are delivered in the newsfeed part of the user interface.

Background:
Given I have completed the basic setup

@reconnectApp
Scenario: Newsfeed icon is visible on the connecting screen
Given im on the connecting screen
Then i should see the newsfeed icon

@reconnectApp
Scenario: Newsfeed icon is visible on the syncing screen
Given im on the syncing screen
Then i should see the newsfeed icon

Scenario: Newsfeed icon is visible in the main ui
Given I should see the main ui
Then i should see the newsfeed icon

Scenario: Newsfeed icon is highlighted when there are unread infos
Given there are unread infos
Then the newsfeed icon is highlighted

Scenario: Newsfeed icon is highlighted when there are unread announcements
Given there are unread announcements
Then the newsfeed icon is highlighted

Scenario: Newsfeed icon is not highlighted when all infos have been read
Given there are read infos
Then the newsfeed icon is not highlighted

Scenario: Open the newsfeed by clicking the newsfeed icon
Given I click on the newsfeed icon
Then the newsfeed is open

Scenario: No news available in the feed
Given there is no news
When I open the newsfeed
Then the newsfeed is empty

Scenario: Only read infos available in the feed
Given there are 2 read infos
When I open the newsfeed
Then the newsfeed contains 2 read infos

Scenario: Displaying an incident
Given there is an incident
Then the incident will cover the screen

Scenario: Dismissing an alert
Given there is 1 unread alert
When I dismiss the alert
Then the alert disappears

Scenario: Opening and dismissing a read alert
Given there is 1 read alert
When I open the newsfeed
When I click on the alert in the newsfeed
Then the alert overlay opens
When I dismiss the alert
Then the alert disappears

Scenario: Reading an announcement
Given there is 1 unread announcement
When I open the newsfeed
And I click on the unread announcement to expand it
Then the announcement content is shown
And the announcement is marked as read

Scenario: Reading an info
Given there is 1 unread info
When I open the newsfeed
And I click on the unread info to expand it
Then the info content is shown
And the info is marked as read
And the newsfeed icon is not highlighted

Scenario: News unavailable
Given the newsfeed server is unreachable
When I open the newsfeed
Then no news are available
Loading

0 comments on commit adeb1e6

Please sign in to comment.