Commit Graph

926 Commits

Author SHA1 Message Date
Jon Willesen 7ab67bfc43 put new activity after kabob menu in tab order
This requires some rearranging so the new activity button appears after
the kabob menu in the DOM. Used a Portal to implement that so we didn't
have to have yet another separate top-level render, and so the logic
of whether to show the new activity button can stay in the header.

fixes ADMIN-1104

test plan:
- new activity button should still behave as before.
- it should come after the kabob menu in the tab order.
- it should be shown and hidden when changing dashboards in the kabob
  menu.

Change-Id: Icd50dc09d7f769f04911218c0f026c7a1278185b
Reviewed-on: https://gerrit.instructure.com/152742
Tested-by: Jenkins
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
QA-Review: Ed Schiebel <eschiebel@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2018-06-13 19:41:17 +00:00
Ed Schiebel 092e54f13a update PlannerHeader icon buttons so JAWS reads the label
closes ADMIN-1138

test plan:
  - using FF and JAWS, load planner
  - TAB through the header
  > expect JAWS to tell you the + and grades button labels

Change-Id: I2eba1c37e2ee183e3eaddbd49b9bdae0573ef1db
Reviewed-on: https://gerrit.instructure.com/153449
Reviewed-by: Carl Kibler <ckibler@instructure.com>
QA-Review: Dan Sasaki <dsasaki@instructure.com>
Tested-by: Jenkins
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2018-06-13 18:40:15 +00:00
Ryan Shaw b83d31b7ef Rm packages/canvas-rce/package-lock.json
We don’t use this anymore

Change-Id: I4e80deb9a286b0b409bef84a17559455071370da
Reviewed-on: https://gerrit.instructure.com/153595
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-06-13 16:32:33 +00:00
Ed Schiebel 00475751cb Add error alert when dismissOpportunity fails
closes ADMIN-1135

test plan:
  - do something to cause planner_overrides_controller.create to fail
    (I added a debugger statement then ran the render error call,
     then continued)
  - dismiss an opportunity in the UI
  > expect the error alert to pop up.

Change-Id: I1744cbdaa647edd621ac66ef4c286b18447b0b6b
Reviewed-on: https://gerrit.instructure.com/153364
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Luke Kingsley <lkingsley@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2018-06-13 12:44:11 +00:00
Dan Minkevitch f4b1d83d00 Add debugging information to canvas-planner README
Change-Id: I21beef0d153e269f81594f0fdb70bb2f01391fae
Reviewed-on: https://gerrit.instructure.com/153600
Reviewed-by: Carl Kibler <ckibler@instructure.com>
Tested-by: Jenkins
Product-Review: Carl Kibler <ckibler@instructure.com>
QA-Review: Carl Kibler <ckibler@instructure.com>
2018-06-13 00:45:32 +00:00
Dan Minkevitch d4b333d0e6 Add redux-devtools-extension for easier debugging of planner
Adds compatibility to use
https://github.com/zalmoxisus/redux-devtools-extension
in development (but not in production).

Change-Id: I4f72645161ca8165f7c81b3b45afcaeba6a2148c
Reviewed-on: https://gerrit.instructure.com/153565
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
QA-Review: Ed Schiebel <eschiebel@instructure.com>
Tested-by: Jenkins
Product-Review: Dan Minkevitch <dan@instructure.com>
2018-06-12 22:50:39 +00:00
Ed Schiebel 5dd4ece8ca Fix layout issue with planner item feedback on ie11
closes ADMIN-1128

test plan:
  - have a student with an submitted assigment that a teacher
    has added a comment to.
  > expect the item to look correct in a couple browsers, esp. ie11
    (the feedback and the other item details don't overlap)

Change-Id: Icea005894a5cbaa0995525ea6eecef40ad359487
Reviewed-on: https://gerrit.instructure.com/153275
Tested-by: Jenkins
Reviewed-by: Carl Kibler <ckibler@instructure.com>
QA-Review: Luke Kingsley <lkingsley@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2018-06-12 18:57:33 +00:00
Ryan Shaw 0f1fdfebcf Instui5 upgrade: more trivial import path renaming
This will just pull these things in from the new broken-out smaller
Packages.

Test plan:
* go to the permissions page, all of these components should work as
  they did before

Change-Id: I873f35c3dff46536117e07d3dc2e6827fe8c2604
Reviewed-on: https://gerrit.instructure.com/153026
Tested-by: Jenkins
Reviewed-by: Steven Burnett <sburnett@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-06-11 15:43:34 +00:00
Ryan Shaw 53467da087 canvas-rce: fix “unhandled promise rejection” in tests
Test plan:
* run yarn test or look at the console output of linters and js build
* you should not see any:
| (node:6453) UnhandledPromiseRejectionWarning: Error: only absolute
urls are supported
 at node_modules/node-fetch/index.js:54:10
 at new Promise (<anonymous>)
 at new Fetch packages/canvas-rce/(/node-fetch/index.js:49:9)
 at Fetch packages/canvas-rce/(node-fetch/index.js:37:10)
 at module.exports (isomorphic-fetch/fetch-npm-node.js:8:19)
 at RceApiSource.apiFetch (canvas-rce/src/sidebar/sources/api.js:236:12)
 …

* the cavas-rce tests should pass

Change-Id: Id2ab92752f316dacc34290994645e47018fd0742
Reviewed-on: https://gerrit.instructure.com/153120
Tested-by: Jenkins
Reviewed-by: Simon Williams <simon@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-06-08 19:18:32 +00:00
Ubuntu 0525bbd43b [i18n] update locales with new translations
Change-Id: I1a5e471aa7636252d6a0fa3c0f0bb7ed603168c0
Reviewed-on: https://gerrit.instructure.com/152911
Tested-by: Jenkins
Reviewed-by: Mysti Sadler <mysti@instructure.com>
Product-Review: Mysti Sadler <mysti@instructure.com>
QA-Review: Mysti Sadler <mysti@instructure.com>
2018-06-07 19:22:15 +00:00
Ubuntu 8edff78320 [i18n] update locales with new translations
Change-Id: Ia3f0f91adf0dd39b8f738b9d18940adffe2426cb
Reviewed-on: https://gerrit.instructure.com/152828
Tested-by: Jenkins
Reviewed-by: Mysti Sadler <mysti@instructure.com>
Product-Review: Mysti Sadler <mysti@instructure.com>
QA-Review: Mysti Sadler <mysti@instructure.com>
2018-06-06 23:37:30 +00:00
Jon Willesen c9fb8feef2 fix dashboard list view edit tray while scrolling
In the dashboard list view, if the edit tray was open and you scrolled
the main view such that the new activity button would disappear or
reappear, it would wipe out the changes you'd made in the edit tray.

This also removes the scrolling key handlers because according to the
a11y peeps, this shouldn't have been a thing anyway, and we don't want
the arrow keys conflicting with the arrow key handling of the instui
components in the tray.

fixes ADMIN-1094

test plan:
- load the planner
- click the + button and add a title
- scroll around and make the "new activity" button disappear and
  reappear
  > The title should remain the same and not be cleared
- clicking on a to do item in the main view should still change the data
  in the edit tray to reflect the clicked item.

Change-Id: I613f6ad853a68cc67d3e18abdac3af5f698a326d
Reviewed-on: https://gerrit.instructure.com/152036
Tested-by: Jenkins
Reviewed-by: Mysti Sadler <mysti@instructure.com>
QA-Review: Luke Kingsley <lkingsley@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-06-06 20:45:46 +00:00
Ryan Shaw aaab29c91f canvas-planner: upgrade to instUI 5
closes: ADMIN-1073

test plan:
* make sure the themeing stuff still works
* generally click around on all the components, they have been upgraded
  to use instUI 5 (from instUI 4)
* look at this changelog for things that might be interesting here:
  https://instructure.design/#CHANGELOG
* especially make sure that any of the <Select> elements still work,
  they changed from using a native <select> to some custom stuff.
* make sure that changing them works and what they send to the server
  is correct (as-in if you refresh it has what you changed it to)

Change-Id: I4afbeb03beda42106815de28983a418627d271e9
Reviewed-on: https://gerrit.instructure.com/150263
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
Reviewed-by: Ryan Shaw <ryan@instructure.com>
QA-Review: Luke Kingsley <lkingsley@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-06-06 20:35:11 +00:00
Mysti Sadler 5259afeb73 Revert "[i18n] update locales with new translations"
This reverts commit 68c20e153a.

Change-Id: I6c081d9b0f3ce020b4e0656603163e5586e27971
Reviewed-on: https://gerrit.instructure.com/152792
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
Product-Review: Mysti Sadler <mysti@instructure.com>
QA-Review: Mysti Sadler <mysti@instructure.com>
2018-06-06 20:15:15 +00:00
Ubuntu 68c20e153a [i18n] update locales with new translations
Change-Id: Id51dbef776e4825e19dacd2ce614d62b0f0fc27a
Reviewed-on: https://gerrit.instructure.com/152788
Tested-by: Jenkins
2018-06-06 19:16:26 +00:00
Mysti Sadler ca5402722e Make docker build work without yarn.lock file
Test plan
- dc build or docker build . work in the
  packages/canvas-planner directory

Change-Id: Id66b9b7e608f0dff4e416a94e3d839211d190620
Reviewed-on: https://gerrit.instructure.com/152583
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
Product-Review: Mysti Sadler <mysti@instructure.com>
QA-Review: Mysti Sadler <mysti@instructure.com>
2018-06-06 19:08:21 +00:00
Dan Minkevitch 1ad902e780 Only show submittable opportunities for planner
Closes ADMIN-1095

Test Plan:
1) Create a course with a student and teacher.
   Publish the course
2) Create an assignment with a lock date
   in the past and make sure that it is
   no longer available.
3) Login as the student and go to the student planner
4) You should not see a notification in the
   opportunities tab

Change-Id: Ie7b0cb8efeeaf4642fbad85ce3558c8aa271db31
Reviewed-on: https://gerrit.instructure.com/152503
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Luke Kingsley <lkingsley@instructure.com>
Product-Review: Dan Minkevitch <dan@instructure.com>
2018-06-06 15:23:24 +00:00
Ed Schiebel 76a9033f17 Only show Delete button when editing existing todo
also fix the <h2> in the UpdateItemTray when editing v. creating new
item

fixes ADMIN-1084

test plan:
  - click + to create a to do
  > expect a Save, but no other button at the bottom of the tray
  > expect a screenreader to say "Add To Do" as you start reading the
    tray
  - create the to do, or click on an existing to do in the planner
  > expect the try to open with the to do's data
  > expect there to be delete and save buttons
  > expect a screen reader to read an h2 that says
    "Edit <title of your to do here>"
    as you start reading the tray

Change-Id: I21dc1a698bfedd91e697a28cf562bfaafeb926ba
Reviewed-on: https://gerrit.instructure.com/151906
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Luke Kingsley <lkingsley@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-06-05 17:12:42 +00:00
Ed Schiebel 2729cabecd Include feedback in planner items
- skinnied down the feedback in the api to just the comment we want
- updated planner to show the feedback if it exists

closes ADMIN-1022

test plan
  - create an assignment, have the student submit an entry, have the
    teacher grade it and include a comment that's long enough that it
    gets truncated in the planner
  > expect the comment to show up with the item in the planner
  > expect the comment to be truncated with an ellipsis in desktop
    and tablet view

Change-Id: Ie540c6b11a95422fae3723f9a78e6bf68dbf10e9
Reviewed-on: https://gerrit.instructure.com/151377
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Luke Kingsley <lkingsley@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-06-05 14:47:33 +00:00
Ryan Shaw e415eaa961 Use yarn workspaces
Run `script/nuke_node.sh` to clean everything up
Run `yarn install` it should install everything for everything
Run `yarn build` and `yarn test` they should work exactly as before

Change-Id: I11a27ff2d705c6cbb3b3f9029dd8b32138706146
Reviewed-on: https://gerrit.instructure.com/151356
Tested-by: Jenkins
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-06-04 20:02:02 +00:00
Ryan Shaw 03cb9f3b9a canvas-rce: update deps & prepare for workspaces
Test plan:
* tests should pass
* everything should work exactly as before

Change-Id: Iad2144ec0ab41087ea5efcc89f3492bf791dd7cf
Reviewed-on: https://gerrit.instructure.com/152122
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-06-01 16:45:44 +00:00
Carl Kibler 7099f4c4df polish planner ui to match mockups
This became a sweeping set of visual fixes in planner as I reviewed
the UI with the design team.

fixes ADMIN-995

test plan:
- see jira for complete list of changes
- incomplete item text should be dark text color
- user-created todos use user color like in calendar
- checkboxes match course color

Change-Id: Ia624844a349f268e7a7da98744be75bfccfe12fd
Reviewed-on: https://gerrit.instructure.com/151250
Tested-by: Jenkins
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Carl Kibler <ckibler@instructure.com>
2018-05-31 16:55:12 +00:00
Ryan Shaw 1d96d1ff36 Add packages/canvas-supported-browsers/yarn.lock
The new version of yarn (1.7.0) creates this file even though
This package has no deps

Change-Id: I8f69baf0ae84b88e95957977c9998ac4896f133e
Reviewed-on: https://gerrit.instructure.com/151696
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
Tested-by: Jenkins
2018-05-29 18:12:46 +00:00
Ubuntu bfca213092 [i18n] update locales with new translations
Change-Id: I982e04e3cf368f24085fcc75879793bf9b63a12c
Reviewed-on: https://gerrit.instructure.com/151603
Tested-by: Jenkins
2018-05-26 07:44:50 +00:00
Ryan Shaw 900b40c78d upgrade instUI to 5.10.0 and dedupe
Test plan:
* see https://instructure.design/#CHANGELOG for what changed.
  nothing looks important to us

Change-Id: Ib3477fa160e6f7a6b8039b1c719bbbf2cee11e8e
Reviewed-on: https://gerrit.instructure.com/151522
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
Tested-by: Jenkins
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-05-25 20:07:14 +00:00
Ed Schiebel 14f79817b3 Fix a11y issues when clicking the Today button
fixes ADMIN-1017

test plan:
  - have a planner with items due in the future and past, but not today.
  - load planner and click the Today button
  > expect screenreaders to tell the user meaningful information about
  > what just happened
  - scroll away from today and click the button again
  > expect the screenreader to tell the user meaningful info.

Change-Id: Iea9b668ce3502e167c30516f60f7be18db2845d1
Reviewed-on: https://gerrit.instructure.com/149336
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
Reviewed-by: Carl Kibler <ckibler@instructure.com>
QA-Review: Dan Sasaki <dsasaki@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2018-05-25 17:22:19 +00:00
Ryan Shaw 4fb263498c upgrade InstUI from 5.8.1 to 5.9.0
Closes:  CORE-1451

Test plan:
* look at https://instructure.design/#CHANGELOG to see if anything
  Looks interesting.
  (I couldn’t see anything that should affect us)

Change-Id: I1cee6c0db65c64fb5f827efbce8d32c03fe1b5a6
Reviewed-on: https://gerrit.instructure.com/151206
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-05-23 20:49:45 +00:00
Ed Schiebel cb59a1af4f UpdateItemTray closes when it should
fixes ADMIN-1055

note: skipping the selenium spec "student planner Create To Do Sidebar
edits a To Do" because it refuses to pass. I firmly believe it's due
to selenium running against stale planner code, so skipping to get
this change moving forward until we
figure out what's going on in the build

It seems that the newer version of Tray calls the onExited callback
later than it used to. It was in our handler for onExited that we
cleared out the updateTodoItem. Because that was happening too late, the
tray never closed.  We get the previous order of execution by attaching
to the onExit event, which fires as soon as the Tray is toggled closed.

test plan:
  - click on the + button to create a new item
  - fill it in and click Save
  > expect the tray to close and focus to be on the new item
  - click on the new item
  - click on the X close button in the tray
  > expect focus to return to the item you clicked
  - click on the new item
  > expect the tray to open
  - make a change and click Save
  > expect the tray to close and the item to reflect your
    change in the  planner and focus to be on the item
  - click on the item
  > expect the tray to open
  - click on Delete and confirm
  > expect the tray to close and for the item to be gone and
    focus to be on the prior item.

Change-Id: I4cc094898f879e2dc2c6f9572b87288a9a9e5ebc
Reviewed-on: https://gerrit.instructure.com/150557
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Luke Kingsley <lkingsley@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2018-05-23 17:00:19 +00:00
Ubuntu aa02ad737a [i18n] update locales with new translations
Change-Id: I532da5f184ceeb48f72db9f16112878b0a56aa44
Reviewed-on: https://gerrit.instructure.com/151167
Tested-by: Jenkins
2018-05-23 07:42:07 +00:00
Jon Willesen 02506408f3 fix editing a planner item outside loaded range
fixes ADMIN-940

If you created or edited a planner item so it was outside the currently
loaded date range, it would appear to be the only item on that date,
even though if you loaded more the rest of the items on that date would
appear. This is confusing, so instead of displaying that item, we put
a success alert indicating the item was successfully saved and we don't
show that item on a date that hasn't been loaded.

test plan:
- the number of test cases is large and complex and depends somewhat
on data that you can't see in the interface. See the
save-item-reducer.spec.js file to get an idea of what to test.

- Generally you'll want to have 9 or 10 items on today and shorten your
screen such that only today loads. Then add items for tomorrow and
yesterday, and then make sure they load along with the exisiting items
when you load the future or past. Also, with lots of items near the
present, add items in the far future and past, and make sure they load
as well when you scroll to their date.

Change-Id: I8183ec3cbcd90ab1fcf5c13bb17ba671a0f18d90
Reviewed-on: https://gerrit.instructure.com/150238
Tested-by: Jenkins
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-05-22 21:17:18 +00:00
Clay Diffrient 5f9d1c3876 Generate immediate thumbnails in the browser
This makes it so we never have a situtation right after upload
where we are waiting for a thumbnail image to be generated in a
background process.

closes CORE-1360

Test Plan:
  - Upload an image file  using the sidebar images tab.
  - You should see a thumbnail for it when it loads in the
    list of other images in the sidebar.

Change-Id: I5235d72469c0078174d9caa662a537cecb2b17b3
Reviewed-on: https://gerrit.instructure.com/148912
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
Tested-by: Jenkins
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Clay Diffrient <cdiffrient@instructure.com>
2018-05-21 21:36:19 +00:00
Jon Willesen 0e6b0d6a69 don't focus planner item link on toggle
fixes ADMIN-1046

test plan:
- mark an item as complete using the checkbox
- focus should stay on the checkbox

Change-Id: Id8b30acfcccf300ae193574aed755fbbfbf59bbc
Reviewed-on: https://gerrit.instructure.com/150600
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
Tested-by: Jenkins
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-05-21 20:00:00 +00:00
Ryan Shaw 06f092b709 rce: upgrade demo to InstUI 5 & add RTL toggle
Closes: CORE-1421

Test plan:
* Run:
yarn
cd packages/canvas-rce
yarn dev

* open the demo: http://localhost:8080/demo.html
* the select boxes no longer use a native <select>, but use a new
  instUI select component.
* that means that we don’t need the whole ui-core library, so that 
  so that is gone from yarn.lock
* I also added a [LTR <-> RTL] toggle switch in the “editor options”.
  That should work.
* changing the language should work

Change-Id: I4906ff6d01fd774569d9394230f483054aa9553f
Reviewed-on: https://gerrit.instructure.com/150236
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
Tested-by: Jenkins
2018-05-21 19:18:31 +00:00
Ryan Shaw 2c3390024a canvas-rce: upgrade components & icons to instUI 5
closes: CORE-1415

This is just import path renaming so everything is pulled from
it’s new location in the instUI5 monorepo. It also changes
the icon paths to come from their new home in @instructure/ui-icons
from their old home in ‘instructure-icons’

Test plan:
* look at the instUI changelog at the breaking changes from 5.0
  http://instructure.github.io/instructure-ui/#CHANGELOG
* make sure we are not affected by any of those
* general regression test of UI components

Change-Id: I7ee2b44f7f0e577981fe52cd1ad03ae78730bcab
Reviewed-on: https://gerrit.instructure.com/149947
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Tested-by: Jenkins
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-05-21 19:18:15 +00:00
Ryan Shaw 0b4df04034 canvas-rce: replace Accordion w/ ToggleDetails
closes: CORE-1411

The ‘accordion’ variant of TabList is deprecated and we should use
The <ToggleDetails> component instead. This is needed before we can
upgrade to instUI 5

Test plan:
* go to the demo page
* on the “links” tab, the accordion with the “Pages”, “Assignments”,
  etc, has been replaced with a new InstUI component
* it should work the same as before

Change-Id: I9344525287cb30c7b01200b8d4dba0ba084c9305
Reviewed-on: https://gerrit.instructure.com/149946
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
2018-05-21 18:30:55 +00:00
Jon Willesen c13e3d72ca fix console error if no future planner items
fixes ADMIN-1047

test plan:
- have no items on today or in the future
- there should not be a console error

Change-Id: Ic85979c0f18cd4aec2ddd85fdc09ed52d2f50e5f
Reviewed-on: https://gerrit.instructure.com/150589
Tested-by: Jenkins
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
QA-Review: Ed Schiebel <eschiebel@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-05-21 15:50:34 +00:00
Ed Schiebel bf25c7b988 Sort groups and items correctly
fixes ADMIN-994

test plan:
  - fill one day of a planner with stuff. Put items in multiple courses,
    with multiple due dates and times. Include some user todos not in a
    course.
  > expect the groupings and items to be ordered:
    - Groupings are alpha by course/group name
    - Except that To Dos are last
    - Within each grouping,
        - items are ordered by due time, first things first
        - then alpha by item title if matching due times

Change-Id: Idcac554b93f908e5643db87fc913c69238e2cb15
Reviewed-on: https://gerrit.instructure.com/149416
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Christi Wruck
2018-05-17 20:32:56 +00:00
Clay Diffrient 0a9226051e Add quota error handling to RCS sidebar
closes CORE-1239

Test Plan:
  - Set a course's usage quota to 10mb (or anything low)
  - Attempt to upload a file bigger than that through
    the RCS sidebar
  - Notice an error shows up
  - Upload a file less than the quota
  - Notice the error goes away

Change-Id: I2b8cab2fb76d3ec3520fff5eee337892d34d56d1
Reviewed-on: https://gerrit.instructure.com/150085
Tested-by: Jenkins
Reviewed-by: Ryan Shaw <ryan@instructure.com>
QA-Review: Rohan Cheeniyil <rcheeniyil@instructure.com>
Product-Review: Clay Diffrient <cdiffrient@instructure.com>
2018-05-17 19:08:47 +00:00
Jeremy Neander 2a4996c9ee Revert "fix i18n for react CanvasRce"
This reverts commit d90f7b14ce.

Change-Id: Iba6c43bf8ade76528d805a7d5a371c4ce053998c
Reviewed-on: https://gerrit.instructure.com/150478
Tested-by: Jenkins
Reviewed-by: Jared Crystal <jcrystal@instructure.com>
Product-Review: Jeremy Neander <jneander@instructure.com>
QA-Review: Jeremy Neander <jneander@instructure.com>
2018-05-16 21:23:30 +00:00
Jared Crystal d90f7b14ce fix i18n for react CanvasRce
refs QUIZ-4451

test plan:
 - comment out the non-react examples for the demo
   (if you don't comment them out, they will pull in the locale files)
 - change the language for the demo
 - the rce should reflect the change

Change-Id: I516f917fc466dc2d081c4e18fb34b909940711cc
Reviewed-on: https://gerrit.instructure.com/149760
Tested-by: Jenkins
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
Product-Review: Brent Burgoyne <bburgoyne@instructure.com>
QA-Review: Brent Burgoyne <bburgoyne@instructure.com>
2018-05-16 17:47:23 +00:00
Carl Kibler 6fbee3c841 properly stick 'New Activity' button on planner
fixes ADMIN-908

the 'new activity' indicator could end up in wrong place in
IE and Edge and "position: sticky" doesn't work either. Moved
the indicator rendering from PlannerApp to PlannerHeader so it
can use absolute positioning below and work everywhere.

test plan:
- Add global announcement to 'push down' planner header
- add new assignment or other activity like 4 weeks in past
- 'New Activity' button should stick like glue to below
  separator line of Dashboard header. no floating above it.

Change-Id: Ib89b4e6cd6a1f42a42f800c4bc0cb4cded4312a0
Reviewed-on: https://gerrit.instructure.com/149251
Tested-by: Jenkins
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2018-05-16 17:04:57 +00:00
Ed Schiebel 3c6dc0c166 Correctly scroll to most recent new activity
when the planner is in tablet mode, the new activity indicators are next
to the item, not the group. the previous code didn't take that into
account when it looked for it by sorting on animatableIndex.
Unfortunately, there can be duplicate PlannerItem animatableIndices.
Deal with that by having PlannerApp -> Day -> Grouping -> PlannerItem
assign the index using this.props.animatableIndex * 100 + myIndex. A
nice side effect of this is that you can look in the animatable-registry
and see the logical groupings.

fixes ADMIN-911

test plan:
It was a fluke that my local date generated PlannerItems with new
activity with duplicate animatableIndex values. That's the only way
I stumbled on this issue.
  - Have items due with new activity in due the past,
    a couple in the same day but different courses.
  - load the planner, and click the New Activity button
  > expect it to scroll to the most recent in the past item with new
  > activity and focus on the checkbox
  - check the checkbox so the new activity item is completed
  - refresh the browser
  - click New Activity
  > expect it to scroll to the item and focus on the "show 1 completed
  > item" toggle.
Also
  - ensure that the item with new activity receives focus

Change-Id: I2cf5fbdcb5cf43647c5dce121149c03ae72a94bf
Reviewed-on: https://gerrit.instructure.com/149728
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Jon Willesen <jonw+gerrit@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2018-05-15 15:52:42 +00:00
Ryan Shaw a78b27f766 rce: react-codemod/transforms/manual-bind-to-arrow
closes: CORE-1414

this is just the result of running:
https://github.com/reactjs/react-codemod#manual-bind-to-arrow

test plan:
* nothing should actually change when running the demo

Change-Id: I7f6d172d8ec6b0365861f2cc69bec5a9df5b85ae
Reviewed-on: https://gerrit.instructure.com/149943
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-05-14 19:21:12 +00:00
Ryan Shaw f0f1b92b95 canvas-rce: don’t include polyfills
Instead, consumers are expected to have already globally polyfilled
so they have the modern browser apis. Canvas already does this but if
you need suggestions for how to this in your own app, you can just put
This in your html above the script that includes canvas-rce:

<script src="https://cdn.polyfill.io/v2/polyfill.min.js?rum=0"></script>

(See: https://polyfill.io/v2/docs/ for more info)

Closes: CORE-1412

Test plan:
* the canvas-rce bundle in canvas’s webpack build should be much smaller
* smoke test canvas-rce, everything should still work as it did before
  since canvas already had polyfills for everything we removed here

Change-Id: I3cd9ad38eb9e02d68ff36043318058bb09071d25
Reviewed-on: https://gerrit.instructure.com/149858
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-05-14 19:15:02 +00:00
Ryan Shaw a16325e791 Upgrade instUI from 5.7.0 to 5.8.1
Closes: CORE-1417

Even though the PSA that instUI put out about needing to update asap
doesn’t affect us because we already always set the `dir` attribute
on the <html> tag, this upgrades us to that new version so there is
no confusion

Test plan:
* automated builds should pass
* nothing should actually change since there is nothing significant
  In this upgrade other than the new thing that adds the dir=“ltr” 
  attribute for you if you haven’t already

Change-Id: Id7a471265c49c595c7a71a54258218d4062be7b6
Reviewed-on: https://gerrit.instructure.com/150156
Tested-by: Jenkins
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-05-14 19:14:17 +00:00
Ryan Shaw e123d3f532 canvas-rce: update yarn.lock to match master
This yarn.lock change should have gone with the last commit

Change-Id: Ie662859571f1a3bc15ce03c037734b35a3c8dde9
Reviewed-on: https://gerrit.instructure.com/150141
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-05-14 17:14:20 +00:00
Ryan Shaw 806b8f918a rce: react-codemod/transforms/pure-component
refs: CORE-1414

this is just the result of running:
https://github.com/reactjs/react-codemod#pure-component

test plan:
* nothing should actually change when running the demo

Change-Id: Idce33764aaa9f19e3b430d75f577e4ff7149a892
Reviewed-on: https://gerrit.instructure.com/149944
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-05-14 16:58:40 +00:00
Ryan Shaw 0d10b6abb8 canvas-rce: upgrade react-tinymce 0.6.0 -> 0.7.0
Test plan:
* load the demo page
* you should not see deprecation warnings about
  React.createClass going away
* everything should still work

Change-Id: I44ea2f3af62be3de68fbacdd9e826367f10dfe06
Reviewed-on: https://gerrit.instructure.com/149945
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-05-14 15:16:05 +00:00
Ryan Shaw 878240fe3c canvas-rce: upgrade babel deps and use ui-presets
Test plan:
* `yarn build` should output exactly the same code as before

Change-Id: Ie6fbf6a315487f164867a126d21dcb49035f283a
Reviewed-on: https://gerrit.instructure.com/149857
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-05-14 15:13:42 +00:00
Ryan Shaw d8659ee5c3 canvas-rce: replace React.PropTypes with ‘prop-types’
Test plan:
* run `yarn dev`
* in the demo, open the browser console
* there should not be warnings about:
“Warning: Accessing PropTypes via the main React package is deprecated”

Change-Id: I8db12b82d6121a27cdae57d6a5f2bbd880468109
Reviewed-on: https://gerrit.instructure.com/149942
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-05-14 15:01:52 +00:00
Ubuntu 9f4ab5b0a0 [i18n] update locales with new translations
Change-Id: I5fff7b34d180c767cc6d885730791d4131a1849b
Reviewed-on: https://gerrit.instructure.com/150097
Tested-by: Jenkins
2018-05-12 07:42:05 +00:00
Jon Willesen 87f786d599 don't show tomorrow when it may not be loaded
In the planner, we were always showing tomorrow after today, but we
might not have loaded tomorrow's data yet and would show an empty
tomorrow when it wasn't really empty.

fixes ADMIN-1023

test plan:
- have 9 items on today and some items tomorrow
- load the planner with a short window
- expand the window and see "load more" without today being displayed
- load more and see tomorrow show up with its items

Change-Id: I48c2d39c3d203b1d417cb0599a2a2ddfd8f9b96e
Reviewed-on: https://gerrit.instructure.com/149776
Tested-by: Jenkins
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-05-11 16:03:58 +00:00
Ubuntu 4d726bb855 [i18n] update locales with new translations
Change-Id: If95d12cab2ada9174418f3e5b1695b0acb432fa3
Reviewed-on: https://gerrit.instructure.com/149968
Tested-by: Jenkins
2018-05-11 07:42:14 +00:00
Ed Schiebel dc9b840415 Update empty day verbiage
fixes ADMIN-1007

test plan:
  - open a planner with some single empty days, and with a stretch of 3
    or more empty days
  > expect both to say "Nothing Planned yet"

Change-Id: Ic6293ad7e60666c526d836fd0ea23f07372c7314
Reviewed-on: https://gerrit.instructure.com/149644
Tested-by: Jenkins
Product-Review: Christi Wruck
Reviewed-by: Carl Kibler <ckibler@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
2018-05-10 21:36:02 +00:00
Ubuntu 2fde7e022a [i18n] update locales with new translations
Change-Id: I8d3f3bcb78012145da1f6fb652c2393943d5d0f4
Reviewed-on: https://gerrit.instructure.com/149805
Tested-by: Jenkins
2018-05-10 07:42:15 +00:00
Ed Schiebel 603b97dd1d Update css for dir=rtl
closes: ADMIN-984

test plan:
  - open the planner and have a variety of things in there.
  - take a screensshot
  - flip to rtl. you can do this by editing <html dir="ltr"> in
    devtools, or in account settings turn on "Allow RTL users to see RTL
    interface", then put your user in Hebrew or Arabic.
  > compare the planner to the saved screenshot. It should look the
    same, but backwards.
  - change the browser width so planner switches to tablet|desktop
    layout (whichever it wasn't before) and repeat.

Change-Id: I4e977cbbd35eb82b44571753daa5d438453aff89
Reviewed-on: https://gerrit.instructure.com/149144
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2018-05-09 21:34:57 +00:00
Jon Willesen 65d6151a25 fix focus when load prior dates button disappears
fixes ADMIN-962

test plan:
- using the keyboard, click the load prior dates button until all prior
dates have been loaded and the button disappears.
- focus should go to the prior triple dot menu button.

Change-Id: Iae6ff7fe43c33a81ff35032fe0de8eb3b4f4b0ec
Reviewed-on: https://gerrit.instructure.com/149346
Tested-by: Jenkins
Reviewed-by: Mysti Sadler <mysti@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-05-09 21:22:55 +00:00
Jon Willesen 5e218b8f20 change Container to View in planner
fixes ADMIN-1024

test plan:
- grades tray should work
- planner in general should look the same and work

Change-Id: I0d92daa0c1629430dd6835ea13ccef6f3212d9db
Reviewed-on: https://gerrit.instructure.com/149612
Tested-by: Jenkins
Reviewed-by: Mysti Sadler <mysti@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-05-09 19:50:12 +00:00
Ubuntu 56181d379e [i18n] update locales with new translations
Change-Id: I41e6c009ff9840640d6129761e166f723ecb7b18
Reviewed-on: https://gerrit.instructure.com/149643
Tested-by: Jenkins
2018-05-09 07:42:10 +00:00
Ryan Shaw 059437a199 add @instructure/canvas-supported-browsers package
This will become the single source of truth that everything in canvas
And the apps designed to work with canvas (quizzes, canvas-rce, inst-ui,
Etc) should use with their babel/postcss/etc configs

Test plan:
* commit this
* cd packages/canvas-supported-browsers
* npm publish
* it should work and @instructure/canvas-supported-browsers should exist
  on npm

Change-Id: Idd3e59965a24ef00f7f93b25057832bba5b9b6f2
Reviewed-on: https://gerrit.instructure.com/149586
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
Tested-by: Jenkins
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-05-08 22:00:18 +00:00
Jacob Fugal 3a4e3daf1c default display_name if not returned in getFile
refs RECNVS-436

test-plan:
- have a canvas using both rce sidebar and inst-fs
- upload a file to inst-fs through the sidebar in canvas
- file should upload, and file entry added to tree should have a name

Change-Id: Ib31da106e691e2af2748ff5e4e6127d34bbb4979
Reviewed-on: https://gerrit.instructure.com/149603
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Tested-by: Jenkins
QA-Review: Collin Parrish <cparrish@instructure.com>
Product-Review: Jacob Fugal <jacob@instructure.com>
2018-05-08 21:54:48 +00:00
Ed Schiebel 4f65397a90 Smoothly scroll to today with lots of due items
scroll-to-today includes the height of the today element in the offset
pased to animator.scrollTo, to be sure today's date is included on
screen when today's item is focused. When the today element was the
whole Grouping, and there are many items due today, this caused
problems.  The fix is to include just the <h2> that holds today's date
in the offset.

fixes ADMIN-1021

test plan:
  - create 9 items due today
  - scroll Today out of the visible area
  - click Today
  > expect the planner to smoothly scroll Today into view and focus one
  > of today's items (it should be the first one, but that will get
  > addressed in the ticket that controls fixes ordering)

Change-Id: I32fc13de3e5fd3f1f8ba3cf89396b95817ae3f3d
Reviewed-on: https://gerrit.instructure.com/149494
Tested-by: Jenkins
Reviewed-by: Dan Minkevitch <dan@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2018-05-08 20:27:37 +00:00
Jon Willesen dec3d12af4 planner's initial load fills screen more reliably
Turns out this wasn't specific to ie, and the masquerading border had
some side effects about how tall the document is. So instead of checking
whether the document is taller than the screen, we'll check whether
the fixed element at the bottom of the items list is on screen. This
means we'll try to push the "load more" button below the screen, which
feels natural.

fixes ADMIN-925

test plan:
- have 9 items on today and some future items.
- if the browser height is taller than the 9 items, it should load
the future items until the window is full.
- if the browser height is shorter than the 9 items, it should only
load the 9 items.

Change-Id: Id9cb4c316dc2e96286e9a4e509ff6f8d9b2f5384
Reviewed-on: https://gerrit.instructure.com/149300
Tested-by: Jenkins
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-05-08 16:50:20 +00:00
Ryan Shaw 3948fa015e Upgrade InstUI to 5.7.0 from 5.4.1-dev.1
Closes: CORE-1378

(Relevant) Change log / things to test:
Bug Fixes
ui-forms: Preserve FileDrop event during onDrop (e45b70d)
ui-i18n: Fix moment version dependency (b6289c2)
ui-overlays: Fix a11y issues in Tooltip and Popover (352b8ca)
Features
ui-forms,DateInput: Add support for disabled days (c1067ad)
ui-icons,IconX: Updated IconX to be a little smaller (1bdcd86)
ui-layout,View: Add style prop white list (incl backgroundImage) (d8a35ab)
ui-overlays,Tray: Replace timeout with requestAnimationFrame (ddd9096)

Change-Id: I4cc63f322e53bc2bb744d2a11bbdcfab9fbe88dc
Reviewed-on: https://gerrit.instructure.com/149270
Reviewed-by: Jennifer Stern <jstern@instructure.com>
Tested-by: Jenkins
Reviewed-by: Steven Burnett <sburnett@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-05-08 14:39:13 +00:00
Ubuntu 60331cffc3 [i18n] update locales with new translations
Change-Id: If626683b54d2fc2d9344222eee8110db431e1d43
Reviewed-on: https://gerrit.instructure.com/149427
Tested-by: Jenkins
2018-05-07 20:54:21 +00:00
Carl Kibler 3013c94f3f update 'nothing planned' image in planner
fixes ADMIN-1010

test plan:
 - Create 3-day gap in planner items to see hammock image
 - ensure furthest left tree has a trunk
 - check in several browsers

Change-Id: Idcf9bd1fbd783c7d12c521f3280b48382592ad3f
Reviewed-on: https://gerrit.instructure.com/149383
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Jon Willesen <jonw+gerrit@instructure.com>
Product-Review: Carl Kibler <ckibler@instructure.com>
2018-05-07 19:38:34 +00:00
Ed Schiebel 693e620d7d Add Today button to planner
closes ADMIN-158

This is built on a couple other changes.
you need to wait until theiy merge, or cherry-pick in this order
1. ADMIN-199, g/147973: merge 3 or more empty days
2. ADMIN-920, g/145621: scroll planner when layout changes
3. ADMIN-158, g/145742: today button (this change)

test plan:
  - have a student planner with an item a few days in the future, and
    some a few days back in the past, but none on today
  - go to the planner and you should see the item in the future. Today's
    date is not shown in the planner
  - click the Today button
  > expect the planner to scroll to the top of the page, load past
  > items, then scroll so Today is at the top of the screen
  - scroll into the past some more
  - click Today
  > expect Today to scroll back to the top of the planner
  - scroll into the future so Today is off the window
  - click Today
  > expect today's date to scroll to the top of the planner

Change-Id: I5e28af90e8e748c0dc6fbfc61e0406a05bf128d6
Reviewed-on: https://gerrit.instructure.com/145742
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
Product-Review: Christi Wruck
Tested-by: Jenkins
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
2018-05-07 16:49:20 +00:00
Ed Schiebel fd2ce53752 Scroll planner when layout changes to keep user in context
closes ADMIN-920

this commit builds on top of ADMIN-199 g/147973, so either wait until
it's merged, or cherry-pick it first.

test plan:
  - open a planner with a couple pages worth of stuff in it
  - scroll some
  - change the browser width until the layout switches from desktop to
    tablet view (or visa versa)
  > expect planner to scroll so that the day the user was looking at
  > remains in view

Change-Id: I8b1c1d66f9be3cbaafc38cd61e116ee14c5ff52e
Reviewed-on: https://gerrit.instructure.com/145621
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2018-05-07 16:48:59 +00:00
Jon Willesen bb2784e70f fix failing planner snapshot tests
test plan:
- specs pass

Change-Id: Ica6ccf04bacd56661ea06962ad86364536913a4e
Reviewed-on: https://gerrit.instructure.com/149295
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Tested-by: Jenkins
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-05-04 22:13:33 +00:00
Ed Schiebel 552f221d11 Merge 3 or more empty days
fixes ADMIN-199

test plan:
  - have a user with some items in the planner, in the past and the
    future
  - have a couple future items separated with 2 empty days between them
  - have a couple future items with 3 or more days between them
  - load the planner
  > expect only days in the past with items to be shown
  > expect yesterday, today, and tomorrow to always be shown, whether
    they have items or not
  > expect the stretch of 2 future empty days to be individual empty days
  > expect the stretch of 3 future empty days to have a single
    "start to end" grouping with a pretty picture saying "nothing planned"
  - create an item so it's the only one on a day, then delete it
  > expect it to be deleted (and the browser not to go into an infinite
    loop)

Change-Id: I4fbdc210501103396946f7b343e2ccbd488d9919
Reviewed-on: https://gerrit.instructure.com/147973
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Christi Wruck
2018-05-04 18:32:03 +00:00
Jon Willesen d976d4506e remove old code from planner
the old code probably got reintroduced while resolving a merge conflict

fixes ADMIN-1014

test plan:
- open edit tray, then cancel
- should be no console error

Change-Id: I441c72731ef11c34c1139e7f165935099813a014
Reviewed-on: https://gerrit.instructure.com/149151
Tested-by: Jenkins
Reviewed-by: Carl Kibler <ckibler@instructure.com>
QA-Review: Ed Schiebel <eschiebel@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-05-04 16:23:11 +00:00
Jon Willesen 2afef278bd center "load prior items" on planner dashboard
this keeps it from appearing under the new activity button and matches
the position of the load more button.

fixes ADMIN-1001

test plan:
- have new activity, tab to the load prior items button.
- it should appear centered instead of behind the new activity button

Change-Id: I7b7a95d3e128f2cf7dac60f66ab7da8ccb49f1c7
Reviewed-on: https://gerrit.instructure.com/149126
Tested-by: Jenkins
Reviewed-by: Carl Kibler <ckibler@instructure.com>
QA-Review: Ed Schiebel <eschiebel@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-05-04 16:10:18 +00:00
Steven Burnett 6c4ce74db4 fix sidebar names to match real navigation
Test Plan:
- Ensure the wiki side bar looks like the
  text found in the below link
https://community.canvaslms.com/ideas/7870-change-link-names-to-reflect-tool-names

Change-Id: If962fdfd89e03aceeb4cb24e1a21c536805c75cf
Reviewed-on: https://gerrit.instructure.com/148402
Product-Review: Christi Wruck
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
Tested-by: Jenkins
QA-Review: Steven Burnett <sburnett@instructure.com>
2018-05-04 13:19:51 +00:00
Jeremy Neander 1f7495b22c add @instructure/ui-a11y to canvas-planner dependencies
test plan:
 * ensure a successful build

Change-Id: Ia4a2bd8c84fc5325a9ed3f738a91cf89aa5f285c
Reviewed-on: https://gerrit.instructure.com/149060
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
Tested-by: Jenkins
2018-05-03 16:04:03 +00:00
Ubuntu b485de1d5d [i18n] update locales with new translations
Change-Id: I262c9dcf3ea5e7857dbb717de813a153409525e5
Reviewed-on: https://gerrit.instructure.com/149047
Tested-by: Jenkins
2018-05-03 07:42:39 +00:00
Mysti Sadler 2fe733666f Add calendar events to planner ui
closes ADMIN-971

Test plan
- Ensure calendar items from courses,
  groups, user and appointments show up
  on the planner with correct info
- Ensure all day events show up properly
- Ensure events group up with to do items
- Ensure item links to calendar and goes to
  the event (and opens it) when you click
  the link

Change-Id: I1a2ae654df785b0e2e8c010456ab6c666e0deabc
Reviewed-on: https://gerrit.instructure.com/148505
Tested-by: Jenkins
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
Reviewed-by: Carl Kibler <ckibler@instructure.com>
QA-Review: Ed Schiebel <eschiebel@instructure.com>
Product-Review: Christi Wruck
2018-05-03 00:27:25 +00:00
Jon Willesen 03b0720194 load grades data into the planner grades tray
closes ADMIN-639

test plan:
- the course grades load in the grades tray
- course titles in the tray now link to the course
- if any course has multiple grading periods, it shows the "only
current grading period" caveat
- it displays a loading spinner and announces to screen readers when
grades are loading
- it announces to screen readers when grades have loaded
- it displays an error if there is an error while loading grades
- if you have many courses (more than 10), it still loads all the grades
data from all the courses (exhausts pagination)

Change-Id: Ic4ce71fd1ef222487873260ef25ba765d6e05680
Reviewed-on: https://gerrit.instructure.com/148170
Tested-by: Jenkins
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-05-02 20:38:48 +00:00
Jon Willesen 524a1992a8 add initial grades tray to planner
this implementation displays the courses, but does not fetch the grades
yet. The grade values are just mocked for now.

closes ADMIN-638, ADMIN-640

test plan:
- check that the grades button and the grades tray match the design,
minus the header picture (which also isn't on the edit tray)
- it lists the courses you're enrolled in, but the grades are fake
for now.

Change-Id: Ieea58d70b91b013bf73df282e016db2bed57ecd9
Reviewed-on: https://gerrit.instructure.com/148022
Tested-by: Jenkins
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
Reviewed-by: Carl Kibler <ckibler@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Christi Wruck
2018-05-02 20:38:20 +00:00
Ubuntu d385f2c513 [i18n] update locales with new translations
Change-Id: Id38b6d4572458728c3c2d6a7c8708df7df51e1bd
Reviewed-on: https://gerrit.instructure.com/148892
Tested-by: Jenkins
2018-05-02 07:42:39 +00:00
Ryan Shaw 8f05a581c1 Fix so we don’t include 2 copies of all InstUI stuff
If we are going to use a dev build of instUI we have to do this
To make sure everything still shares the same version.

We need to be very careful with our updates to yarn.lock that there
is only ever 1 entry per inst-ui package in the same major version
range. Otherwise our client code will get super bloated and things
will start breaking in subtle unexpected ways (from having 2 copies
of same lib on the page)


Change-Id: Iab90131bae9e10a954ca2d5aef049a90eefb9a39
Reviewed-on: https://gerrit.instructure.com/148809
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
Tested-by: Jenkins
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-05-01 19:59:23 +00:00
Ed Schiebel 77935f7a54 Add DateTimeInput to planner
The user can now enter a due date and time.

refs ADMIN-297

test plan:
  - load the planner
  - create a new to do
  > expect the time to default to 11:59pm
  - save
  > expect the due time of 11:59 to be shown in the planner
  - edit the item, change the time, save
  > expect the new time to show up in the planner
  - edit the item, delete the date, tab out of the date text box
  > expect a "you must provide a date and time" error message
  > expect the Save button to be disabled
  - pick a date
  > expect the error message to go away
  - save
  > expect the to do to be in the planner at the given date and time

Change-Id: I6759cca675b59acfc200574a1e313f75e1cfda2e
Reviewed-on: https://gerrit.instructure.com/145147
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Christi Wruck
2018-05-01 16:29:51 +00:00
Brent Burgoyne f46193782d fix out of sync canvas-rce yarn.lock
Change-Id: Id726cff696b9451a3a59d467b9bfac9e38a9561e
Reviewed-on: https://gerrit.instructure.com/148742
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Tested-by: Jenkins
Product-Review: Brent Burgoyne <bburgoyne@instructure.com>
QA-Review: Brent Burgoyne <bburgoyne@instructure.com>
2018-05-01 15:42:55 +00:00
Brent Burgoyne f91658d4bf move canvas-rce to canvas-lms/packages/canvas-rce
closes CORE-994
refs RECNVS-398
refs CORE-1224
closes CORE-1237

test plan:
- yarn install
- smoke test rce
- tests pass

Change-Id: Ieaff024fa89879fac3e7edf99381f46de921cce2
Reviewed-on: https://gerrit.instructure.com/145671
Tested-by: Jenkins
Reviewed-by: Rob Orton <rob@instructure.com>
QA-Review: Tucker McKnight <tmcknight@instructure.com>
Product-Review: Brent Burgoyne <bburgoyne@instructure.com>
2018-05-01 13:46:18 +00:00
Jon Willesen e82ebd3363 keep dashboard from scrolling when tray closes
Instead of fixing the existing code, I ported it over to the new
animation framework. The core problem was stale information about the
fixed element's position. Now the animations keep track of the scroll
position of the fixed element they're specifically interested in
(although there's only one for now).

closes ADMIN-926

test plan:
- scroll behaviors of scrolling into the past and fetching new activity
should be the same.
- opening and closing the tray should not cause the scroll position to
jump, whether by saving, deleting, or canceling.
- The scroll position should be maintained if the new focus is on the
screen. Otherwise the focused element should be scrolled into view.

Change-Id: I5b6f1069dda3354aafdb156cd9660257f942b77d
Reviewed-on: https://gerrit.instructure.com/146236
Tested-by: Jenkins
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-04-26 19:42:21 +00:00
Jon Willesen e651f9f4ef fix focus after deleting a planner item
This works around INSTUI-1141
fixes ADMIN-945

test plan:
- The bug was most easily reproduced in Chrome.
- Have some planner items.
- Create and delete a to do item several times and see that the prior
item reliably receives focus after the delete.

Change-Id: I7fc00b9c3fa01de8fe7c35b035b5340d1429b67e
Reviewed-on: https://gerrit.instructure.com/146172
Reviewed-by: Mysti Sadler <mysti@instructure.com>
Tested-by: Jenkins
QA-Review: Ed Schiebel <eschiebel@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-04-26 16:24:45 +00:00
Ed Schiebel 3662e42ec6 Keep to do in a course with other course items
fixes ADMIN-917

test plan:
  - have a student with a course assignment on some date
  - have the student add a to do to the course on the same date
  > expect the planner to show the assignment and the todo in the same
  > grouping

Change-Id: Ice5b796935bfe3f69d05db509696fb2ce7b38cf3
Reviewed-on: https://gerrit.instructure.com/147161
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Jon Willesen <jonw+gerrit@instructure.com>
Product-Review: Christi Wruck
2018-04-25 14:55:21 +00:00
Mysti Sadler 77171b991e Use "build" script for packages pre-install
refs ADMIN-761

When we added canvas-planner to the packages
directory, we set up a prebuild script to
build everything we needed for Canvas that
would run during yarn install.  This causes
canvas-planner to have to do a lot that it
doesn't need to do when we just want the npm
packages to be installed (for the sync-
translations build or for other purposes)
so we're setting a specific build step
instead

Test Plan
- Specs pass

Change-Id: I72a0dc52cd9be1255985d69921d9910ba12e9ffe
Reviewed-on: https://gerrit.instructure.com/147565
Tested-by: Jenkins
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Product-Review: Mysti Sadler <mysti@instructure.com>
QA-Review: Mysti Sadler <mysti@instructure.com>
2018-04-20 18:02:34 +00:00
Ubuntu 1dfcd74747 [i18n] update locales with new translations
Change-Id: Ibb657eae3538317b098b7880552a914dceb9cac4
Reviewed-on: https://gerrit.instructure.com/147637
Tested-by: Jenkins
2018-04-20 16:52:32 +00:00
Jon Willesen 97e617e8f4 improvements to loading past on desert page
This does two things (because they were both simple):
- keep focus on the "load prior items" button when it is pressed to load
past items from the desert page.
- show a loading spinner when you're loading past items from the
desert page.

fixes ADMIN-907

test plan:
- press the load prior dates button. It should retain focus after load.
- load past items from the desert page. It should replace the desert
with a loading indicator.

Change-Id: If03d854903a33ef7d842f90e09cc4fd27b97ba99
Reviewed-on: https://gerrit.instructure.com/147247
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
Tested-by: Jenkins
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-04-18 21:30:03 +00:00
Jon Willesen edde8b3d0e announce sr loading on planner dashboard
fixes ADMIN-910

note: sometimes the screenreader is busy saying something else,
especially when the page initially loads. In the dev tools, you can
check the `body .flash_screenreader_holder` div to see that the alerts
are being inserted into the DOM properly. Whether it will actually read
the loading text probably depends a lot on their specific screen reader
settings.

test plan:
- check that screen readers announce "loading" when items are loading,
past or future (with the above caveats)

Change-Id: Id53dd1c220ac99aba1045ca0c9681f49af2c69a6
Reviewed-on: https://gerrit.instructure.com/147171
Tested-by: Jenkins
Reviewed-by: Mysti Sadler <mysti@instructure.com>
QA-Review: Dan Sasaki <dsasaki@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-04-18 17:00:16 +00:00
Ubuntu f8390e8c04 [i18n] update locales with new translations
Change-Id: I6f6cd744e24a4ff6c7c928e24df28584fedcd27f
Reviewed-on: https://gerrit.instructure.com/147132
Tested-by: Jenkins
Reviewed-by: Mysti Sadler <mysti@instructure.com>
Product-Review: Mysti Sadler <mysti@instructure.com>
QA-Review: Mysti Sadler <mysti@instructure.com>
2018-04-17 21:51:05 +00:00
Jon Willesen 0fa4012da2 conditionally hide load prior items button
fixes ADMIN-909

test plan:
- if there are past items to load, you should be able to tab to the
load prior items button
- if all past items are loaded, the load prior items button should be
missing.

Change-Id: Ibbe46802a26ae09419fe7c26e7861a586698e7e6
Reviewed-on: https://gerrit.instructure.com/147189
Tested-by: Jenkins
Reviewed-by: Mysti Sadler <mysti@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-04-17 21:46:07 +00:00
Ed Schiebel 929798ca3e Fix responsive planner layout bugs
fixes ADMIN-906

test plan:
  - have a user in a course with assignments.  have some new ativity,
    and something graded, and something completed, and something with
    a long title/name, and something graded with feedback
  - load the planner
  >  expet the graded+feedback pills not to stick out the right edge
     of planner
  - gradually  make the browser narrower
  > expect "show 1 completed item" to wrap and not get trunctated
  - keep making the browser narrower until it switches to the tablet
    layout
  > expect the assignment with the long title to be on 1 line, truncated
  > with an ellipsis, and not wrap.
  - if the browser is narrow enough, the feedback pill and the due date
    will run together. there's nothing to do about that other than limit
    the width of the planner

Change-Id: I23823773bf8f418b7ca4bab7aa572e6c5dceec82
Reviewed-on: https://gerrit.instructure.com/145613
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
Product-Review: Mary Jane Anderson <manderson@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
2018-04-06 19:45:06 +00:00
Mysti Sadler 16a4effc9b Ensure canvas-planner docker build runs
refs ADMIN-761

Test plan
- N/A

Change-Id: I277386f93133515c11fe981c06ddafd1071ec82d
Reviewed-on: https://gerrit.instructure.com/146083
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
Product-Review: Mysti Sadler <mysti@instructure.com>
QA-Review: Mysti Sadler <mysti@instructure.com>
2018-04-05 23:34:06 +00:00
Dan Minkevitch d74bbe69a9 Hide New Activity button from Screenreader
Closes ADMIN-782

Test Plan:
* As a student in a course with Student
  Planner enabled
* When on the Student Planner (List View Dashboard)
* With items that trigger the display of the New Activity
  button
* A screenreader should not navigate to or detect
  the New Activity button (since its primary function
  is a change in visual display)

Change-Id: I45d0db0431c76f7c9eb472a2baef9817eecaa776
Reviewed-on: https://gerrit.instructure.com/145737
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Dan Minkevitch <dan@instructure.com>
2018-04-04 20:36:09 +00:00
Jon Willesen 64738d6db2 dashboard fallback focus when deleting first item
Moves the focus management on deleted items from the manager to the new
animation stuff.

fixes ADMIN-784

test plan:
- In the dashboard list view, have a to do item at the beginning of the
list. One way to do this is to create one with a date before the
existing items.
- Delete the item at the beginning of the list. Focus should go to the
triple dot menu button.
- Have a to do item in the middle of the list.
- Delete the mid-list item. Focus should still go to the prior item.

Change-Id: I22869e37c5e9af5f87893d4f117c92b459739d8a
Reviewed-on: https://gerrit.instructure.com/145645
Tested-by: Jenkins
Reviewed-by: Mysti Sadler <mysti@instructure.com>
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-04-04 18:56:45 +00:00
Mysti Sadler 57577f343b Update canvas-planner to use plannable_date
fixes ADMIN-130

Test plan
- Specs pass

Change-Id: I588f2f8b5db00d97560da31124a2ea6014f61e06
Reviewed-on: https://gerrit.instructure.com/145083
Tested-by: Jenkins
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Mysti Sadler <mysti@instructure.com>
2018-04-03 19:39:44 +00:00
Jon Willesen 2cde41d12c fix focus when clicking list view load more button
This should only set focus when the load more button is clicked.
Loading more by scrolling does not set the focus.

fixes ADMIN-780

test plan:
- have a bunch of future items in dashboard list view
- click the load more button to load more items
- focus should go to the item before the newly loaded items

Change-Id: Ib9e7054956060f47eed33c8d2c8d9bfa4f030f41
Reviewed-on: https://gerrit.instructure.com/145173
Reviewed-by: Mysti Sadler <mysti@instructure.com>
QA-Review: Dan Sasaki <dsasaki@instructure.com>
Tested-by: Jenkins
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-04-03 16:40:44 +00:00
Jon Willesen de86f6553e dashboard list view fills screen on initial load
closes ADMIN-894

test plan:
- Have a bunch of future items
- Have a tall browser window and see that multiple loads occur to fill
up the screen. Zooming out helps to increase the tallness of your
browser. Firefox seems to do this well; Chrome switches to tablet view.
- Should work on all the browsers

Change-Id: I1ccd62c43ec1e2a7ee53907b466df2dbd6d0429c
Reviewed-on: https://gerrit.instructure.com/144913
Tested-by: Jenkins
Reviewed-by: Mysti Sadler <mysti@instructure.com>
QA-Review: Dan Sasaki <dsasaki@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-04-03 16:40:18 +00:00
Ed Schiebel f7be7df9a6 Implement responsive dashboard
Replace container query css with Responsive component

This commit changes planner from using the instui containerQuery based
data-media-* attributes to the new Responsive component. When it's
complete, the wide-screen planner should look just like it did before,
though all the responsive changes have been removed in prep for building
the new designs in upcoming commits.

While updating the specs, I also cleaned up a few xpath
contains-text expressions.

closes ADMIN-871

test plan:
  - The planner should look just like it did before in normal desktop
    view.

Change-Id: I39cd99b6a29eb01bca25392f77ca96acd3d56c7e

Implement responsive dashboard

also refactored the Indicators into their own component directory

fixes ADMIN-872

test plan:
  - load the planner
  - shrink your browser's width
  > see that it reconfigures itsef to look like the tablet design
  - click the New Activity button
  > ensure that it scrolls to the next previous new activity

Change-Id: I73966fe1b1eefa69d0f0df404bb6da6d89a25471
Reviewed-on: https://gerrit.instructure.com/144279
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Jon Willesen <jonw+gerrit@instructure.com>
Product-Review: Mary Jane Anderson <manderson@instructure.com>
2018-03-31 14:09:15 +00:00
Jon Willesen cbd39bb1f4 replace waypoint with event handling autoloading
On the dashboard list view, instead of triggering the loading of
future items when a waypoint comes into view, make it respond to
attempts to scroll into the future, like we do with scrolling into the
past. This makes it nicer for screenreader and keyboard only users so
they can actually reach the load more button.

Note that this change affects the initial load: it won't keep loading
until the window is full. There is another ticket to handle this:
ADMIN-894

closes ADMIN-892

test plan:
* make sure attempts to scroll into the past and future still work via
scroll wheel, touch events.
* make sure you navigate to the load more button via tab and
screenreaders

Change-Id: Id0af1682bfec67f29f7e392672ae49812f4ad19a
Reviewed-on: https://gerrit.instructure.com/144549
Reviewed-by: Mysti Sadler <mysti@instructure.com>
Tested-by: Jenkins
QA-Review: Dan Sasaki <dsasaki@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-03-28 21:39:06 +00:00
Jon Willesen 028169d345 correct animation for load prior dates button
When clicking on the load prior dates button in the dashboard list view,
the focus should stay on the button and the button should stay in view.
This means the scroll position will jump to the top of the page when the
new items are loaded.

If intead the window is scrolled to load the past by the scroll wheel
or keyboard scrolling buttons, the scrolling position should be
maintained and not jump to the top.

closes ADMIN-781

test plan:
- have lots of items in the past
- make sure loading past items behaves as above

Change-Id: Ib1e38e9eb487da56d395ae7f0ce3cf747defcb21
Reviewed-on: https://gerrit.instructure.com/144390
Reviewed-by: Mysti Sadler <mysti@instructure.com>
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
Tested-by: Jenkins
QA-Review: Dan Sasaki <dsasaki@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-03-28 21:38:54 +00:00
Jon Willesen 247143529c refactor the dashboard list view's animations
This is the first step of separating out the animations from the dynamic
ui manager so it's easier to add new animations, understand when
animations occur, and see all of the steps involved in the animation in
one place.

For this first pass, only the new activity animations have been
separated out. The rest will be separated from the manager in future
commits.

closes ADMIN-808

test plan:
- The new activity button scrolling animations should still work as
before.

Change-Id: I04a30440db5d9b080605ffe71bfcfc4a64015386
Reviewed-on: https://gerrit.instructure.com/143196
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
Tested-by: Jenkins
QA-Review: Dan Sasaki <dsasaki@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-03-28 21:38:38 +00:00
Ryan Shaw 33a5bd5a0a Upgrade instUI from 4.7.3 to 4.8.0
Fixes: CORE-1105 CORE-1106 CORE-1174

Test plan (for CORE-1105 CORE-1106):
* using the keyboard, go to /accounts/x/users
* you should be able to hit “enter” to click on the “Act As” or 
  “Send Message” icon links

Test plan (for CORE-1174):
* set your feature flags so you use the RTL layout
* the navigation tray, RCE a11y checker, etc should pop in from
  the opposite side of the page than the did in normal LTR layout

Change-Id: I25d664bfd94970f4bbb37ba8ebe5c72cc9e5b3ff
Reviewed-on: https://gerrit.instructure.com/144969
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-03-27 20:03:14 +00:00
Dan Minkevitch e80e190e9f Add account setting to set default dashboard view
Closes ADMIN-634

Test Plan:
* As an admin
* With the student planner feature flag disabled
* Set the account's Default Dashboard View setting to 'activity'
* Masquerade as a newly created user in that account
* View their dashboard
* It should match the account's setting
* Repeat the process above, but enable the student planner feature
  flag and make sure the new user for testing the
  dashboard is a student
* It should still work as above

Change-Id: Ic9a99c5710ac0eeca22afaf4a5c76f3c542ce65f
Reviewed-on: https://gerrit.instructure.com/138160
Reviewed-by: Mysti Sadler <mysti@instructure.com>
Tested-by: Jenkins
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Christi Wruck
2018-03-27 16:13:54 +00:00
Ed Schiebel 28a247ae3e Update planner per new design
closes ADMIN-837

Visual Updates include:
  - Replacing note icon with user avatar for user created to do items
  - replacing checkbox with caret for "show completed items"
Internal updates:
  - replaced user id in the store with the current user object so I
    could render the Avatar
  - refactored some more of the complex prop types

test plan:
  - open the planner
  > it looks like the design attached to the ticket. (except for the
  > button to open the grades tray, which doesn't exist yet)

Change-Id: Ic7285fd6f0cb45ed0c262832b0769dd3f9f248ea
Reviewed-on: https://gerrit.instructure.com/142736
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Dan Sasaki <dsasaki@instructure.com>
Product-Review: Mary Jane Anderson <manderson@instructure.com>
2018-03-15 19:56:36 +00:00
Ed Schiebel 905a8998e3 Fix new activity button so it stays put.
fixes ADMIN-812

test plan:
  - have a user with new activity in the past
  - load the planner as the user
  - click the new activity button
  > expect the buton to stay in place, and not scroll down at all while
  > the new activity is loaded
  - click again and be sure the button still doesn't move.

Change-Id: I390d168c859ff80008781ce647fd134e78336744
Reviewed-on: https://gerrit.instructure.com/143421
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Jon Willesen <jonw+gerrit@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2018-03-14 19:31:46 +00:00
Jon Willesen 453be50504 change timing of maintainViewportPosition call
Makes it so this call can happen after the UI update. Then the
animations don't have to worry so much about the timing of it.

closes ADMIN-851

test plan:
- when scrolling into the past, the viewport position is maintained
as before.
- when clicking new activity, the scrolling is still animated as before.

Change-Id: I773f8731775796b434b1e5768f8a600a091b8f9a
Reviewed-on: https://gerrit.instructure.com/143400
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
Tested-by: Jenkins
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-03-14 16:28:38 +00:00
Jon Willesen ee891dae47 refactor new activity button's additional offset
This is a small, independant preparation step for the larger refactor.

closes ADMIN-850

test plan:
- scrolling to new activity should still work as before.

Change-Id: I65375977ae3924cb425edc33bb649354b4803052
Reviewed-on: https://gerrit.instructure.com/143267
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
Tested-by: Jenkins
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-03-13 19:51:58 +00:00
Ed Schiebel b6ef529792 Fix spacing issues in the planner
fixes ADMIN-279

test plan:
  - load the planner
  > expect it to look like the mockup attached to the ticket

Change-Id: I76a43ff4c3085425e0b816dade9b34d40f927da7
Reviewed-on: https://gerrit.instructure.com/142609
QA-Review: Mysti Sadler <mysti@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Jenkins
Product-Review: Mary Jane Anderson <manderson@instructure.com>
2018-03-12 17:05:00 +00:00
Jon Willesen f49455a3c5 new activity button visibility
toggles rendering of the new activity button based on
- whether there is new activity to load still
- whether the top-most new activity indicator is above the screen

closes ADMIN-744

test plan:
- have some planner items with new activity that will show up in
separate page fetches.
- loading the first page with new activity, the new activity button
should stay visible no matter the scroll position.
- with all new activity items loaded, the new activity button should
be visible only when a new activity item is scrolled above the window.

Change-Id: If2bb6a378d866bdd0e676115d1c19ae3aabcb46c
Reviewed-on: https://gerrit.instructure.com/141048
Tested-by: Jenkins
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
QA-Review: Dan Sasaki <dsasaki@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-03-06 22:59:46 +00:00
Jeremy Neander 24ce45f2b1 update canvas-planner yarn.lock
test plan:
 * ensure Jenkins passes

Change-Id: I919293d0fe86db0eee028289ed13ceaedb4e0a3a
Reviewed-on: https://gerrit.instructure.com/142681
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Jeremy Neander <jneander@instructure.com>
QA-Review: Jeremy Neander <jneander@instructure.com>
2018-03-06 20:45:53 +00:00
Ed Schiebel f1f8fdde70 Bump instui version to be in sync w/ canvas
4.7.1 -> 4.7.2 is easy peasy

closes ADMIN-825

test plan:
  - jenkins is happy.

Change-Id: Ib1f4027a6267f91df3ea6cb70b7c2da71fb1f68f
Reviewed-on: https://gerrit.instructure.com/142453
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2018-03-05 21:00:27 +00:00
Jon Willesen 7030256618 new activity button scrolls to offscreen indicator
This makes the new activity button just scroll to an indicator above the
current scroll position, if one exists. If there isn't one, it does its
previous behavior of loading the past and then scrolling to the new
indicator.

Note that the visibility rules for the new activity button have not
changed in this commit. You still need to have an unloaded new activity
item in order to see the new activity button. This commit just changes
the new activity button's behavior. The visibility will be addressed in
a separate commit.

This commit also removes setting focus when simply loading future or
past items. The focus should stay where it is.

closes ADMIN-745

test plan:

- with a new activity indicator above the screen, click on
the new activity button. The view should scroll the blue dot so it
appears just below the new activity button without loading more data.

- with no new activity indicators above the screen, click on the new
activity button. It should load more past items and then scroll to the
most recent new activity.

- when scrolling to or loading new activity, focus should be set to the
course link with the new activity (the link the indicator is next to).

- loading the future or the past should not change keyboard focus.

Change-Id: I565a164aeb85546ad12250f8d027b30f003834fa
Reviewed-on: https://gerrit.instructure.com/140252
Tested-by: Jenkins
Reviewed-by: Mysti Sadler <mysti@instructure.com>
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
QA-Review: Ed Schiebel <eschiebel@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-02-26 14:01:51 +00:00
Ed Schiebel ec05f824fc Put finishing touches on planner under canvas
- update README with new instructions
- update how canvas runs sub-package tests
- remove planner's test server

closes ADMIN-742

test plan:
  - when jenkins runs, check to see that planner's tests run too

Change-Id: I2493b65f580c76b28f225f1330e99e1ceb1378b4
Reviewed-on: https://gerrit.instructure.com/139882
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Jon Willesen <jonw+gerrit@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2018-02-21 17:49:03 +00:00
Ed Schiebel 265e72ffb2 Fix ISO date formatting when the local is ar
moment has a bug, in that moment.format() doesn't generate a correct
ISO8601 string when the locale is ar.  This fix works around that.

fixes ADMIN-728

test plan:
  - log in as a student with some todos in the planner
  - set her language to Arabic (6th from the bottom)
  - open the planner
  > expect the planner to load. no network errors
  > expect the todos to be on the correct dates dates and the
  > times to be correct (if you're in chrome, you can translate the page)
  - go to the card dashboard
  > expect the todo sidebar to look right too.

Change-Id: I1d0dc3ea7c3a7e6d8265918f1f66b14bd1761206
Reviewed-on: https://gerrit.instructure.com/141000
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
Tested-by: Jenkins
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2018-02-21 17:48:43 +00:00
Mysti Sadler 8cb422f205 Only load one dashboard component at a time
fixes ADMIN-574

Test plan
- Ensure only the API calls for the current
  dashboard are called on page load
- Ensure each dashboard can properly load
  when you select a new one
- Ensure that if you turn off the to do feature
  that after the setting has saved properly (it
  takes a few seconds) that the option disappears
  from the drop down and the view changes to card
  view if list view was selected
- Load up the planner dashboard and then switch to
  another dashboard and ensure API calls are NOT made
  to load future or past items for the planner when
  scrolling

Change-Id: Ibb5f640440179a667a128993a6effd3f898e8465
Reviewed-on: https://gerrit.instructure.com/138566
Tested-by: Jenkins
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Jon Willesen <jonw+gerrit@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-02-15 16:52:04 +00:00
Jon Willesen ab9b3edfeb make new activity indicators animatable
closes ADMIN-743

test plan:
- new activity and missing indicators still show up as expected
- they have the right screen reader text
- specs pass

Change-Id: Ic7ca8df63dab28667256438afd94a379c0e75499
Reviewed-on: https://gerrit.instructure.com/139870
Reviewed-by: Mysti Sadler <mysti@instructure.com>
Tested-by: Jenkins
Reviewed-by: Dan Minkevitch <dan@instructure.com>
Product-Review: Dan Minkevitch <dan@instructure.com>
QA-Review: Dan Minkevitch <dan@instructure.com>
2018-02-14 22:19:58 +00:00
Ed Schiebel 89720ff5b0 Retain override info on editing planner note
editing a note lost its override info, so the UI didn't show it as
complete. That's fixed.
There was also an issue with deleting a completed item from planner
causing an error finding the new thing to focus. That's fixed with this
change also.

fixes: ADMIN-693

test plan:
  - create a couple todos on 2 different dates
  - check the complete checkbox on one
  - edit this todo and change it's date
  > expect this todo's complete checkbox to remain checked
  - delete this item
  > expect no errors in the console and focus to be on the next item in
  > the planner

Change-Id: I1747c3b1a7c04ab523f12dac2b97232d6ab65f23
Reviewed-on: https://gerrit.instructure.com/139992
Tested-by: Jenkins
Reviewed-by: Dan Minkevitch <dan@instructure.com>
QA-Review: Jon Willesen <jonw+gerrit@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2018-02-14 19:36:06 +00:00
Ed Schiebel 473a834fde Show dashboard To Dos in user's profile timezone
fixes ADMIN-727

test plan:
  - have a course in Mountain Time, with a teacher in MT.
  - log in as the teacher and create an assignment due at  1pm some day.
  - log in as a user with a profile timezone set to Atlantic Time
    (Canada)
  - load the card dashbaord
  > expect the assignment's due date to show up at 4pm
  - load the list dashboard
  > expect the assignment's due data to also be 4pm

  - open the planner dashboard
  - create a to do
  > expect the date to default to today
  - save
  > expect the todo to show up in the planner on today
  - click the todo to edit it
  > expect the date field to still show the same date

Change-Id: I43c8985f11354bd06b5b8af6b64eeb7eb8bb02fd
Reviewed-on: https://gerrit.instructure.com/140523
Tested-by: Jenkins
Reviewed-by: Dan Minkevitch <dan@instructure.com>
QA-Review: Dan Sasaki <dsasaki@instructure.com>
Product-Review: Dan Minkevitch <dan@instructure.com>
2018-02-14 19:29:24 +00:00
Mysti Sadler c83f195bb5 Don't lose data in Tray on state update
refs ADMIN-752

Test plan
- Open the update tray while the planner is
  still loading opportunities
- (Very quickly) type something in the title
  field
- Wait a few seconds for everything to finish
  loading and ensure the title is not lost
  and ensure the date field doesn't error
- Focus is still being lost at final planner
  render, further ticket needed

Change-Id: I8366d13959e1285b930e5ee434d616575a8b3daa
Reviewed-on: https://gerrit.instructure.com/140377
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Jenkins
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Mysti Sadler <mysti@instructure.com>
2018-02-08 20:00:37 +00:00
Mysti Sadler 902ec4e3ac Fix selenium failures for Planner sidebar
Fixes ADMIN-752

Test plan
- Load up the planner and while the opportunities
  are still loading, open the sidebar menu
- Ensure it does not close when the opportunities
  finish loading
- Ensure you can still load a new item in the
  sidebar when one is already open in the sidebar

Change-Id: I822a3ca7e845cb876e87cc393bb072964cce3173
Reviewed-on: https://gerrit.instructure.com/140220
Tested-by: Jenkins
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Mysti Sadler <mysti@instructure.com>
2018-02-07 20:39:13 +00:00
Jon Willesen 7c12090ab0 fix focus location when dismissing an opportunity
fixes ADMIN-685

test plan:
- dismiss first opportunity, last opportunity, and middle opportunities
  and make sure focus goes to the right place.
- dismiss the only opportunity when there is one and focus should go to
  the close button.
- deleting items in the main view should similarly still set focus to
  the right place item. For now it gives up if you delete the only item.
  This will be fixed in a separate ticket.

Change-Id: I14159892ac1af9dd207c0c558f4f063944c048cb
Reviewed-on: https://gerrit.instructure.com/139867
Tested-by: Jenkins
Reviewed-by: Mysti Sadler <mysti@instructure.com>
Reviewed-by: Dan Minkevitch <dan@instructure.com>
QA-Review: Dan Sasaki <dsasaki@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
2018-02-06 21:12:26 +00:00
Ryan Shaw 97510022cd don’t cp all of canvas-planner’s node_modules dir
this is to prevent canvas from copying everything in canvas-planner’s
node_modules dir into /node_modules/canvas-planner/node_modules

this will mimic the exact same behavior that pushing it to the npm
repository and pulling it from there in canvas’s package.json

test plan:
* do `ls node_modules/canvas-planner/node_modules/jest*`
* you should get: ls: node_modules/canvas-planner/\
  node_modules/jest*: No such file or directory

Change-Id: Ie428b3d0a5d6cc1d9bec89ae00adb3d451dfc916
Reviewed-on: https://gerrit.instructure.com/139907
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-02-05 22:13:31 +00:00
Ryan Shaw 68126c6504 update canvas-planner/yarn.lock
Change-Id: I9946241b3ee03ef9a405f282a8f87089c9a50a66
Reviewed-on: https://gerrit.instructure.com/139868
Tested-by: Jenkins
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-02-05 21:18:41 +00:00
Ed Schiebel 40b876493e Move planner under canvas-lms
closes: CORE-949

this also upgrades us to use what was on canvas-planner master
as of 1pm on 2/1/2018 (specifically 9569cc1)

test plan:
* canvas planner should work
* all automated builds should pass

Change-Id: Iecce81d640c8aacb79189e2b26946613a03d25f2
Reviewed-on: https://gerrit.instructure.com/135947
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Tested-by: Jenkins
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-02-02 23:58:48 +00:00