Fix(oncallschedule): update oncall schedule's apollo cache methods

What does this MR do?

A small MVC for: #300181 (comment 495302550)

Use apollo cache to update the page on schedule. add/edit/delete same with rotations - create/delete sometimes works as expected - maybe something is wrong with cache policy

When we hooked up the live data, we needed to edit the cache mutations to match the new query schema in order to allow the cache updates to function correctly. We also re-name our new query to match our naming conventions and schema.

We also replace the preset dropdown with a button type select: #300181 (comment 495381487)

How/What to test

🇺🇦 This feature is behind the feature flag oncall_schedules_mvc and the minimal license is GitLab Premium 👀

To check Enable the feature flag:

  • Navigate to Operations => On-call Schedules or direct link is your_project/-/oncall_schedules e.g. http://127.0.0.1:3000/gitlab-org/gitlab-shell/-/oncall_schedules.
  • Click "Add schedule on empty state"
  • Add a base schedule
  • You will see a empty grid with no rotations
  • Click add a rotation
  • Add a rotation with a handful of members that have access to the current project and pick a start date / time
  • A rotation will be added
  • Each rotation will have a selection of assignee's drawn against the schedule/rotation data
  • Each rotation assignee can be hovered over to confirm their start / end time
  • These rotation items will dynamically resize depending on the screen size
  • Verify that adding, editing and deleting a schedule work correctly

This merge is part 1/4:

What Merge
Update oncall Apollo cache methods 🤘
Update oncall assignee colours !52839 (merged)
Add a base loader for grid changing !52917 (merged)
Update mobile CSS and week calculations !54003 (merged)

Screenshots (strongly suggested)

Screenshot_2021-01-28_at_13.44.55

Screenshot_2021-01-28_at_13.44.59

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

Security

If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:

  • [-] Label as security and @ mention @gitlab-com/gl-security/appsec
  • [-] The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
  • [-] Security reports checked/validated by a reviewer from the AppSec team

Related to #262852 (closed)

Edited by David O'Regan

Merge request reports

Loading