Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Create/onsave Email Report functionality for Dashboard and Chart #15856

Merged
merged 30 commits into from Jul 28, 2021

Conversation

lyndsiWilliams
Copy link
Member

SUMMARY

Implemented the Create/onsave Email Report functionality for Dashboard and Chart.

Bonus: Modal styling now matches more closely to Figma.

SCREENSHOT

Screen Shot 2021-07-23 at 12 27 38 AM

TESTING INSTRUCTIONS

  • Click "Dashboards" in the upper navigation bar
  • Navigate to any Dashboard
  • Click the Calendar icon button
    • Located at the top of the chart between the "Edit dashboard" and the "..." button
  • Observe the email report modal

ADDITIONAL INFORMATION

  • Has associated issue:
  • Changes UI
  • Includes DB Migration (follow approval process in SIP-59)
    • Migration is atomic, supports rollback & is backwards-compatible
    • Confirm DB migration upgrade and downgrade tested
    • Runtime estimates and downtime expectations provided
  • Introduces new feature or API
  • Removes existing feature or API

lyndsiWilliams and others added 4 commits July 19, 2021 11:43
* clears errors when closing out of modal (apache#15623)

* add test + fix types

* fix lint errors

* Building ReportModal component

* Continued ReportModal creation

* Visual details updated

* CronError style

* Very basic testing added

Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>
…5780)

* style: Rough draft of email report modal (apache#15666)

* clears errors when closing out of modal (apache#15623)

* fix: avoid fetching favorite status for anonymous user (apache#15590)

* avoid fetching favorite status for anonymous user

* add test + fix types

* fix lint errors

* Building ReportModal component

* Continued ReportModal creation

* Visual details updated

* CronError style

* Very basic testing added

Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>
Co-authored-by: aspedrosa <aspedrosa@ua.pt>

* first draft

* added testing props

* cleaned up rebase

* changed name and type

Co-authored-by: Lyndsi Kay Williams <55605634+lyndsiWilliams@users.noreply.github.com>
Co-authored-by: aspedrosa <aspedrosa@ua.pt>
* Add email report modal to Charts

* Fix px themes
* style: Rough draft of email report modal (apache#15666)

* clears errors when closing out of modal (apache#15623)

* fix: avoid fetching favorite status for anonymous user (apache#15590)

* avoid fetching favorite status for anonymous user

* add test + fix types

* fix lint errors

* Building ReportModal component

* Continued ReportModal creation

* Visual details updated

* CronError style

* Very basic testing added

Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>
Co-authored-by: aspedrosa <aspedrosa@ua.pt>

* first draft

* created Api call

* added click logic

* made the fetch report into a action/reducer

* abstracted report action

* revision

* added reportState to reducer

* reports conditions

* revisions

* revisions

Co-authored-by: Lyndsi Kay Williams <55605634+lyndsiWilliams@users.noreply.github.com>
Co-authored-by: aspedrosa <aspedrosa@ua.pt>
@lyndsiWilliams lyndsiWilliams marked this pull request as ready for review July 26, 2021 17:10
@lyndsiWilliams lyndsiWilliams requested a review from a team as a code owner July 26, 2021 17:10
@github-actions
Copy link
Contributor

⚠️ @lyndsiWilliams Your base branch selfSubscribeReports has just also updated superset/migrations.

Please consider rebasing your branch to avoid db migration conflicts.

geido and others added 19 commits July 26, 2021 12:25
* Remove unnecessary onChange

* Remove confliciting onChange

* Revert unnecessary change

* Enhance and fix tests
* added logic for creation_method

* revisions

* added index

* Update superset/migrations/versions/3317e9248280_add_creation_method_to_reports_model.py

* filters

* search columns updated
* changed margin right on warning icon to 8px

* fixed to grid units from pixels
* rough draft of benchmark script

* revisions

* revisions

* rough draft of benchmark script

* revisions

* Update requirements/development.in

Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>

* Update superset/utils/mock_data.py

Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>

* more revisions

Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>
…pache#15778)

* fix(dashboard): Add resize handles to right and bottom of component

* Fix test
* chore: add tags to gallery

* fix UT

* fix lint

* redesign tags filter

* chore: change to Highly-used and fix some css

* fix UT

Co-authored-by: stephenLYZ <750188453@qq.com>
* chore: remove retry dep in favor of backoff

* Fix lint
* clears errors when closing out of modal (apache#15623)

* fix: avoid fetching favorite status for anonymous user (apache#15590)

* avoid fetching favorite status for anonymous user

* add test + fix types

* fix lint errors

* Building ReportModal component

* Continued ReportModal creation

* Visual details updated

* CronError style

* Very basic testing added

Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>
Co-authored-by: aspedrosa <aspedrosa@ua.pt>
* clears errors when closing out of modal (apache#15623)

* add test + fix types

* fix lint errors

* Building ReportModal component

* Continued ReportModal creation

* Visual details updated

* CronError style

* Very basic testing added

Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>
…5780)

* style: Rough draft of email report modal (apache#15666)

* clears errors when closing out of modal (apache#15623)

* fix: avoid fetching favorite status for anonymous user (apache#15590)

* avoid fetching favorite status for anonymous user

* add test + fix types

* fix lint errors

* Building ReportModal component

* Continued ReportModal creation

* Visual details updated

* CronError style

* Very basic testing added

Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>
Co-authored-by: aspedrosa <aspedrosa@ua.pt>

* first draft

* added testing props

* cleaned up rebase

* changed name and type

Co-authored-by: Lyndsi Kay Williams <55605634+lyndsiWilliams@users.noreply.github.com>
Co-authored-by: aspedrosa <aspedrosa@ua.pt>
* style: Rough draft of email report modal (apache#15666)

* clears errors when closing out of modal (apache#15623)

* fix: avoid fetching favorite status for anonymous user (apache#15590)

* avoid fetching favorite status for anonymous user

* add test + fix types

* fix lint errors

* Building ReportModal component

* Continued ReportModal creation

* Visual details updated

* CronError style

* Very basic testing added

Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>
Co-authored-by: aspedrosa <aspedrosa@ua.pt>

* first draft

* created Api call

* added click logic

* made the fetch report into a action/reducer

* abstracted report action

* revision

* added reportState to reducer

* reports conditions

* revisions

* revisions

Co-authored-by: Lyndsi Kay Williams <55605634+lyndsiWilliams@users.noreply.github.com>
Co-authored-by: aspedrosa <aspedrosa@ua.pt>
@github-actions
Copy link
Contributor

⚠️ @lyndsiWilliams Your base branch selfSubscribeReports has just also updated superset/migrations.

Please consider rebasing your branch to avoid db migration conflicts.

@github-actions
Copy link
Contributor

⚠️ @lyndsiWilliams Your base branch selfSubscribeReports has just also updated superset/migrations.

Please consider rebasing your branch to avoid db migration conflicts.

@github-actions
Copy link
Contributor

⚠️ @lyndsiWilliams Your base branch selfSubscribeReports has just also updated superset/migrations.

Please consider rebasing your branch to avoid db migration conflicts.

};

setLoading(true);
const currentReportID = await createResource(newReport as ReportObject);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

instead of returning the id here, let it fall into state..

setLoading(true);
const currentReportID = await createResource(newReport as ReportObject);

if (currentReportID) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this then can get moved to useEffect

validator_config_json: {},
validator_type: 'operator',
working_timeout: 3600,
creation_method: 'dashboards',
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

since we're using a reducer it will be easier if we can let the reducer always hold the state with the correct schema for the api instead of having to rewrite it here.

@eschutho
Copy link
Member

@lyndsiWilliams @AAfghahi what are we doing for the required field? Do we disable the save button until it's filled out? @yousoph

@yousoph
Copy link
Member

yousoph commented Jul 28, 2021

@lyndsiWilliams @AAfghahi what are we doing for the required field? Do we disable the save button until it's filled out? @yousoph

yes! that works and aligns with the current Alerts & Reports creation

Copy link
Member

@eschutho eschutho left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good!

@eschutho eschutho merged commit a6687d3 into apache:selfSubscribeReports Jul 28, 2021
@eschutho eschutho deleted the lyndsi/onsave branch July 28, 2021 23:28
eschutho pushed a commit that referenced this pull request Jul 30, 2021
#15856)

* style: Rough draft of email report modal (#15666)

* clears errors when closing out of modal (#15623)

* add test + fix types

* fix lint errors

* Building ReportModal component

* Continued ReportModal creation

* Visual details updated

* CronError style

* Very basic testing added

Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>

* feat: toggle the ReportModal Icon based on user permissions (#15780)

* style: Rough draft of email report modal (#15666)

* clears errors when closing out of modal (#15623)

* fix: avoid fetching favorite status for anonymous user (#15590)

* avoid fetching favorite status for anonymous user

* add test + fix types

* fix lint errors

* Building ReportModal component

* Continued ReportModal creation

* Visual details updated

* CronError style

* Very basic testing added

Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>
Co-authored-by: aspedrosa <aspedrosa@ua.pt>

* first draft

* added testing props

* cleaned up rebase

* changed name and type

Co-authored-by: Lyndsi Kay Williams <55605634+lyndsiWilliams@users.noreply.github.com>
Co-authored-by: aspedrosa <aspedrosa@ua.pt>

* feat: Begin incorporation of email report modal to Charts (#15793)

* Add email report modal to Charts

* Fix px themes

* feat: fetch UI specific reports  (#15785)

* style: Rough draft of email report modal (#15666)

* clears errors when closing out of modal (#15623)

* fix: avoid fetching favorite status for anonymous user (#15590)

* avoid fetching favorite status for anonymous user

* add test + fix types

* fix lint errors

* Building ReportModal component

* Continued ReportModal creation

* Visual details updated

* CronError style

* Very basic testing added

Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>
Co-authored-by: aspedrosa <aspedrosa@ua.pt>

* first draft

* created Api call

* added click logic

* made the fetch report into a action/reducer

* abstracted report action

* revision

* added reportState to reducer

* reports conditions

* revisions

* revisions

Co-authored-by: Lyndsi Kay Williams <55605634+lyndsiWilliams@users.noreply.github.com>
Co-authored-by: aspedrosa <aspedrosa@ua.pt>

* fix: Edit physical dataset from the Edit Dataset modal (#15770)

* Remove unnecessary onChange

* Remove confliciting onChange

* Revert unnecessary change

* Enhance and fix tests

* feat: add show columns to Reports model (#15712)

* added logic for creation_method

* revisions

* added index

* Update superset/migrations/versions/3317e9248280_add_creation_method_to_reports_model.py

* filters

* search columns updated

* fix: margin right on warning icon to 8px (#15715)

* changed margin right on warning icon to 8px

* fixed to grid units from pixels

* feat: adding Progress Bar to Benchmark script (#15719)

* rough draft of benchmark script

* revisions

* revisions

* rough draft of benchmark script

* revisions

* Update requirements/development.in

Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>

* Update superset/utils/mock_data.py

Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>

* more revisions

Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>

* fix: migration downgrade references wrong column (#15791)

* fix(dashboard): Add resize handles to right and bottom of component (#15778)

* fix(dashboard): Add resize handles to right and bottom of component

* Fix test

* chore: Add tags to the new viz gallery (#15734)

* chore: add tags to gallery

* fix UT

* fix lint

* redesign tags filter

* chore: change to Highly-used and fix some css

* fix UT

Co-authored-by: stephenLYZ <750188453@qq.com>

* chore: bump 0.17.70 (#15795)

* docs: Adding Sunbird to users list (#15794)

* chore: Improves the Select component UI/UX - iteration 4 (#15480)

* Add z-index only on maximize (#15800)

* chore: remove `retry` dependency in favor of `backoff` (#15788)

* chore: remove retry dep in favor of backoff

* Fix lint

* fix: create fk model in benchmark script (#15804)

* style: Rough draft of email report modal (#15666)

* clears errors when closing out of modal (#15623)

* fix: avoid fetching favorite status for anonymous user (#15590)

* avoid fetching favorite status for anonymous user

* add test + fix types

* fix lint errors

* Building ReportModal component

* Continued ReportModal creation

* Visual details updated

* CronError style

* Very basic testing added

Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>
Co-authored-by: aspedrosa <aspedrosa@ua.pt>

* Working on onSave functionality

* style: Rough draft of email report modal (#15666)

* clears errors when closing out of modal (#15623)

* add test + fix types

* fix lint errors

* Building ReportModal component

* Continued ReportModal creation

* Visual details updated

* CronError style

* Very basic testing added

Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>

* feat: toggle the ReportModal Icon based on user permissions (#15780)

* style: Rough draft of email report modal (#15666)

* clears errors when closing out of modal (#15623)

* fix: avoid fetching favorite status for anonymous user (#15590)

* avoid fetching favorite status for anonymous user

* add test + fix types

* fix lint errors

* Building ReportModal component

* Continued ReportModal creation

* Visual details updated

* CronError style

* Very basic testing added

Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>
Co-authored-by: aspedrosa <aspedrosa@ua.pt>

* first draft

* added testing props

* cleaned up rebase

* changed name and type

Co-authored-by: Lyndsi Kay Williams <55605634+lyndsiWilliams@users.noreply.github.com>
Co-authored-by: aspedrosa <aspedrosa@ua.pt>

* feat: fetch UI specific reports  (#15785)

* style: Rough draft of email report modal (#15666)

* clears errors when closing out of modal (#15623)

* fix: avoid fetching favorite status for anonymous user (#15590)

* avoid fetching favorite status for anonymous user

* add test + fix types

* fix lint errors

* Building ReportModal component

* Continued ReportModal creation

* Visual details updated

* CronError style

* Very basic testing added

Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>
Co-authored-by: aspedrosa <aspedrosa@ua.pt>

* first draft

* created Api call

* added click logic

* made the fetch report into a action/reducer

* abstracted report action

* revision

* added reportState to reducer

* reports conditions

* revisions

* revisions

Co-authored-by: Lyndsi Kay Williams <55605634+lyndsiWilliams@users.noreply.github.com>
Co-authored-by: aspedrosa <aspedrosa@ua.pt>

* Dashboard onSave progress

* More onSave/create progress

* Dashboard POST working!

* Dashboard POST relocated to redux

* POST now also working in Charts

* making linter happy

* linter again

Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>
Co-authored-by: aspedrosa <aspedrosa@ua.pt>
Co-authored-by: Geido <60598000+geido@users.noreply.github.com>
Co-authored-by: stellalc7 <stellalc7@gmail.com>
Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>
Co-authored-by: Kamil Gabryjelski <kamil.gabryjelski@gmail.com>
Co-authored-by: Yongjie Zhao <yongjie.zhao@gmail.com>
Co-authored-by: stephenLYZ <750188453@qq.com>
Co-authored-by: Kumar <kumarks1122@gmail.com>
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet