Commit Graph

56 Commits

Author SHA1 Message Date
Douglas Hall
85d8e31201 Reduce bundle size by upgrading frontend-component-footer. 2019-05-28 09:33:08 -04:00
Christopher Pappas
2362dd603a fix: updating react-footer-component to complie with is-es5 2019-05-16 13:55:08 -04:00
Douglas Hall
0c689d92a2 Upgrade frontend-component-footer 2019-05-15 16:52:56 -04:00
Douglas Hall
605cadef55 Upgrade frontend-logging 2019-05-15 14:59:20 -04:00
Adam Butterworth
511c8addab feat: update frontend-auth which eliminates unneeded error logging (#171) 2019-05-08 14:24:33 -06:00
Adam Butterworth
0f72a5d5b0 fix: upgrade frontend auth (#168)
* fix: delay closing a form on success so a user can read the message

* fix: update test

* fix: upgrade frontend-auth to stop logging login redirects as errors
2019-05-02 15:23:39 -04:00
Robert Raposa
64c12679b7 update frontend-auth for real
I thought this was pulled in in the last commit, but I made a mistake.

ARCH-687
2019-04-26 16:26:06 -04:00
Robert Raposa
359330645f update frontend-logging and frontend-auth
- The logging service is now configured and used via an interface,
rather then from the concrete implementation.
- The logging service is passed to frontend-auth.

ARCH-687
2019-04-26 16:04:02 -04:00
Robert Raposa
5064e5f050 add sourcemaps for dependencies
ARCH-587
2019-04-24 17:02:33 -04:00
David Joy
3f411f3795 Miscellaneous updates to the boilerplate code. (#161)
Based on changes/things I noticed when putting together the frontend-app-account repository.
2019-04-23 15:52:32 -04:00
Adam Butterworth
9eeb61cef8 fix: loading of certificate images (#159)
Remove extra loader from webpack for svgs. Was svgr, url, and file. url and file together was creating problems.
2019-04-23 10:02:25 -07:00
Robert Raposa
4c663fe513 upload source maps to newrelic
ARCH-587
2019-04-23 10:43:37 -04:00
David Joy
d009d5ce6c Organize application according to semantic modules. (#153) 2019-04-16 11:46:20 -04:00
Adam Butterworth
14023dbf32 refactor: upgrade edx-bootstrap to published version 2.0.0 (#156) 2019-04-12 17:32:08 -04:00
Adam Butterworth
ca66f20233 fix: make intl.formatMessage more resilient (#155)
* fix: shim injectIntl hoc to prevent errors with undefined
* refactor: add i18n-loader exports to i18n/index
* fix: add NewRelic logging
2019-04-12 17:28:51 -04:00
Adam Butterworth
ae3737ef7c feat: upgrade frontend-logging to show errors and logs in dev console (#150)
* feat: upgrade frontend-logging to show errors and logs in development console

* fix: version bump for frontend-logging
2019-04-12 14:39:13 -04:00
Douglas Hall
ff9ddb54ed Upgrade frontend-auth and conform to new signature of ensurePublicOrAuthenticationAndCookies. 2019-04-11 11:38:48 -04:00
Robert Raposa
343e4cb062 use new frontend-analytics library
ARCH-517
2019-04-11 10:00:08 -04:00
Adam Butterworth
5e323338f4 feat: lookup language preference in cookie (#148)
* feat: lookup language preference in cookie

* fix: skip unsupported languages in user settings lookups
2019-04-10 16:09:51 -04:00
David Joy
348cd7a637 Redirect to error page on fetch user account failure (#147) 2019-04-10 14:18:42 -04:00
David Joy
a51f08b065 Reuse userAccount data for profile if possible. (#142)
* Removing rename of “levelOfEducation” to “education”

It caused the user account and profile data to diverge, and we want to use the same data for both at the moment.

* Reuse userAccount data for profile if possible.

Don’t make a separate request to fetch the user profile if we’ve already gotten it for the current user.
2019-04-10 12:06:50 -04:00
Robert Raposa
fedff33c62 drop fork of html-webpack-new-relic-plugin
The update to NewRelic snippet was merged upstream, so we can now use
the upstream version again.
2019-04-09 16:08:44 -04:00
Adam Butterworth
7f6ed5382f refactor: upgrade and use Paragon (#136)
* fix: upgrade paragon and use new components

* test: update snapshot to reflect minor dom changes

* fix: use transition replace from paragon

* refactor: remove unneeded class definition on EditButton

* fix: add missing margin next to pencil icon in edit button
2019-04-09 13:23:57 -04:00
Douglas Hall
b3d43f3f91 Move LoggingService to npm package 2019-04-08 16:04:48 -04:00
Adam Butterworth
599cbfc649 refactor: use raw html form elements (#123)
* refactor: use raw html for form elements

* test: update snapshot to reflect minor changes in html output

* refactor: replace all reactstrap with paragon or html

* test: update snapshot

* fix: add a noop to the button in async button if needed

This is a flaw in the Button component in Paragon. It calls props.onClick even if it doesn't exist.

* refactor: use classnames for toggling class names

* fix: remove unneeded ids. fix some form markup

* fix: update snapshot to reflect removed labels
2019-04-05 13:07:44 -04:00
Douglas Hall
4f8e96e710 Add RTL capabilities. 2019-04-03 09:32:26 -04:00
Adam Butterworth
2210d4f1a4 feat(test): add snapshot tests for profile page component (#120)
* feat(test): add snapshot tests for profile page component
2019-04-02 15:15:15 -04:00
Douglas Hall
ef7b1ea009 Display default avatar if user does not have a profile image. 2019-03-21 16:16:07 -04:00
Adam Butterworth
0fc8990e08 fix: use lodash.get to provide default message ids to intl.formatMessage (#108) 2019-03-19 15:22:20 -07:00
Douglas Hall
189c3db630 Upgrade frontend-auth to 3.0.3. 2019-03-19 16:00:33 -04:00
Robert Raposa
5d9c9b52cf Enhance the logging service.
- Add custom attributes to api response errors.
- Add custom attribute capabilities to loadError.
- Drop the data for html page responses.
- Move code for max message length.
- Add tests.

ARCH-578
2019-03-18 15:54:24 -04:00
Adam Butterworth
161d1e2c14 fix: update site header to fix bad active state in usermenu 2019-03-15 11:09:04 -04:00
albemarle
d213c6ffd8 feature: add AR, FR, and ZH (#82)
Also move copy-webpack-plugin into dev dependencies.
2019-03-13 11:12:21 -04:00
Douglas Hall
01bdc66528 Upgrade the frontend-auth package. 2019-03-12 16:50:04 -04:00
Robert Raposa
e3c3895869 Use form-urlencoded npm package.
Switch from custom function to form-urlencoded to perform form url
encoding.

ARCH-390
2019-03-12 09:41:57 -04:00
albemarle
971a712b04 i18n: add make targets for Transifex (#77) 2019-03-11 17:58:07 -04:00
Adam Butterworth
b3a1c71a14 fix: update header (#76) 2019-03-11 16:50:56 -04:00
Adam Butterworth
15a06948de fix: upgrade header containing mobile fixes (#72) 2019-03-11 16:23:25 -04:00
Adam Butterworth
0853d6feb1 fix(a11y): Improvements to form descriptions and heading levels (#66)
* Add div role dialog for edit modes

* fix(a11y): add aria-describedby attributes on inputs

* fix(a11y): headings don't skip levels

* fix: update site header that contains a11y improvements
2019-03-11 11:14:11 -04:00
Adam Butterworth
b5f0a4e6ac fix: add ids for inputs and update header and footer components (#65) 2019-03-08 17:07:05 -05:00
Adam Butterworth
60268b5ba7 feat: Update header (#60)
* Update SiteHeader

* Remove old header

* Fix message key

* Icons now render in header

* style: move site header into common dir
2019-03-07 15:58:52 -05:00
Robert Raposa
f9f1c723cd Add Logging Service and event fixes.
- Original NewRelicService lifted from edx-portal.
- Fixed bug with snake case of event data.
- Added error handling for logEvent.
- Added tests for logEvent.

ARCH-430
2019-03-05 12:59:41 -05:00
David Joy
129e32f7b5 Client/server data adapter and simpler data model. (#53)
* Client/server data adapter and simpler data passthroughs.

* Parse error response and pipe to UI

* Add top-of-form error display for social links

* Remove save failed state from save button

* Remove object deconstruction in catch

* Fixing a few small bugs.

* When opening and closing forms, remove drafts.

* Tweak where we send account_privacy back to

* Passing course cert visibility through.

* Fixin’ up the tests.

* Documenting weird social links behavior.

* More comments.
2019-03-04 16:45:22 -05:00
Robert Raposa
57d78402d2 Add logEvent call and new event. 2019-03-01 14:19:08 -05:00
Adam Butterworth
a03a063179 Add languageProficiencies 2019-03-01 14:17:53 -05:00
David Joy
baf6e83f73 Re-re-rewire data/form state up to redux (#40)
This PR rewires how our forms get their data. It also folds in changes from #35 because @abutterworth and I had a pretty hefty conflict between our two branches.

This turned into a broader effort than I intended, admittedly.

The original goal was to take our form state out of component state and put it into redux state for all six forms on the profile page. This has been done, but doing so begged a bit of broader refactoring and renaming as well.

In no particular order:

1. We were referring to our forms as fields - that language has been fixed.  They're forms now.
2. We were putting 'draft' form values in component state - that state has been moved up to the redux level.
3. The fetchProfile action is now responsible for making several underlying calls to the system for the profile's account information, preferences (if it's your own account), and certificates.  Before, we had multiple actions responsible for each part, and coordination was hard.
4. `react-router-redux` has been replaced with `connected-react-router`.  This is admittedly not something that ultimately needed to be in this PR - I _thought_ I was going to need it, but after the work was done, the need for the change fell out and it's essentially unrelated.  That said, `react-router-redux` is deprecated and no longer supported, and `connected-react-router` has taken its place.  I didn't see any reason to throw away the work, so here it is.
5. I updated some packages as part of number 4 above which didn't strictly need to be updated.  I _thought_ I needed to update them w/r/t changing the router, but I didn't.  As above, didn't see any reason to throw away the work, though.
6. Introduced `reselect` to handle derived state.  This helps keep components clean.
7. Directly connected the forms to the store.  This makes ProfilePage.jsx a lot cleaner.
8. The ProfilePage.jsx file still manages calling action creators to put stuff in redux - the forms are connected for their data, but are otherwise "dumb" about how the data gets back into redux.  It felt weird, for instance, to have the Name.jsx component call an action creator called `saveProfile`... just seemed above its pay grade.  Admittedly this is a bit asymmetrical, but it allowed ProfilePage.jsx to be a lot shorter/have less responsibility for passing data down.
2019-02-27 16:23:41 -05:00
Adam Butterworth
2efdc78ace Import only lodash set and defaults deep 2019-02-21 13:55:03 -05:00
Adam Butterworth
5deff373ed Pull data down to UI 2019-02-21 13:55:03 -05:00
Adam Butterworth
f359cee2a4 Add icons to social links 2019-02-15 16:36:22 -05:00
albemarle
12db5859bf set up i18n 2019-02-15 15:34:18 -05:00