Commit Graph

658 Commits (47bb4ca5e38c3770825e58d142fcf30b7e86410b)

Author SHA1 Message Date
Timo dcfe18d5d5 refactor: Replace .com with .org 2017-08-26 00:07:44 +02:00
Zachary Kearns a5c330de4d fix(settings): Improve email settings buttons
Closes #15772
2017-08-23 23:36:44 -04:00
Abdelghani TAssi 9030df2d8b fix: uniformize text font size to 15px
fix: change code area text font size to 15px

fix: undo modification that have been accidentally commited

fix: undo modification that have been accidentally commited

fix: change tests font size to 15px
2017-08-23 23:35:55 +02:00
dhcodes 6caf034e70 fix(frame): Fix fcc-test-frame on firefox
I used an alternative to display: none; to allow Firefox to properly run
challenge tests

Closes #10749
2017-08-21 09:15:50 -05:00
Berkeley Martinez 42bfa2e64d feat(app): new layout (#14707)
* feat(app): Restructure app to be more flexible and redux idiomatic

BREAKING CHANGE: Lots of breaking changes

* refactor(challenges): Redux to started file structure

* fix(app): lint issues due to refactor

* fix(settings): Refactor settings to use folder structure

* refactor(challenges): Move step redux stuff into step folder

* fix(challenges): Remove fetchchallenges actions

* refactor(challenges): Move project redux logic into project view subdirectory

* refactor(app): %s/sagas/epics/g

* refactor(redux): Use new redux-epic with combineEpic and ofType

* refactor(app): Move challenge selector to app level

* fix(app): Move loading challenge info into challenge route

This moves a lot of the logic needed to load challenge info into the challenge app. This decouples
the main app from the challenge route

* refactor(map): Map is now decoupled from challenges

* refactor(challenges): Use selectors everywhere instead of guessing state shape

* refactor(client): refactor client epics to use selectors

* refactor(app): Refactor userSelector to return user object instead of object.user

* refactor(entities): Move entities logic into it's own file

* fix(redux): combineTypes should be combineActions

* fix(app): reducer namespacing and import

* fix(Map): Fix undefined type and update redux-action

* fix(redux): Refactor fetchUser to be more declarative

Use rxjs methods instead of imperative if/else. Also prevent non-actions from being emitted

* fix(redux): toString multi phase action types

* fix(redux): typecast multiphase type, fix typo in reducer

toString multiphase types in fetch challenge epic. Add epic to epics lists. Fix type in fetch
challenge complete handler

* fix(redux): updateCurrentChallengelogic should be centerlized

Move route changes to one location.

* fix(Nav): Prevent event object from hanging around

closeDropDown/openDropDown where handing on to the event object. This was causing issues with react
since event objects are recycled in React.

* fix(Map.Challenge): decouple map selector

* fix(Map): Decouple panel selectors from props

Panel Selectors no longer need to know the shape of a components props. Refactored component
selectors to decouple them entities state shape

* fix(Map.redux): Add select challenge epic and connect map epics

* fix(redux.analytics): Fix meta creator and nav/map events

* fix(redux): Update current challenge ajax

* fix(challenges): ssr fetch challenge should update challenge ui

Was using an epic to update challenge ui on fetch complete, but this was not working on ssr due to
the way ssr disables epics to wait for completion. This commit fixes this by causing the complete to
directly update state in the challenge ui

* fix(challenges): wrong import of types, refactor epic name

* fix(redux): Prevent fetch challenge epic from emitting null to dispatch

* fix(redux): prevent executechallenge from emitting null

* fix(challenges.redux): testsSelector returns just tests

* fix(challenges.redux): Prevent completion challenge from emitting null

* refactor(Challenges.Step): Refactor step challenge to release event object

* fix(redux): wrap reducers in factories
reducers exported from features need to be factories
this helps avoid cyclic requires messing up reducer creation
We end up with exports from files being undefined as node tries
to resolve cyclic dependencies.
This prevents that by wrapping the `handleActions` call so that the ref
to types imported from parent features are closures and can be resolved
by node before we need them.

* fix(Map): createUi not working correctly

map utils should receive just map ui state, createMapUi needs to add title to challenge

* feat(Challenges): Adds Panes and panes backend challenge

* fix: Create child container to wrap children

Create a ChildContainer comp' to wrap all children that represent the view for the current route.
This let's the child route define if they want a full width view or if they want the standard
max-width view.

* feat(Panes): panes now render dividers

* feat(Panes): Get divider to move currectly

* fix(Nav): Add top margin to contained childs

Move margin-bottom from nav to child container as margin top. This let's the jsbin style views fit
snug with navbar

* fix(Panes): Should be contained within their borders

* feat(Panes): Update navbar height of pane on app mount

* feat(Panes): Toggle map on map nav btn click

* fix(gulpfile): Ensure nodemon exits on restart

On process exit, wait for nodemon to shutdown before process.exit

* feat(Panes): Make Panes redux first

* fix(Panes): Fix divider positioning

* fix(Panes): Update divider moved handler

dividerMoved action now uses new panesByName structure

* feat(Panes): Pane nav button will hide panes

* chore(package-lock): Update package lock

* feat(Panes.redux): Recaculate dividers on pane toggle

* fix(Challenges): Update challenge on dashedName change

This fixes backwards navigation not updating the redux state current
challenge

* feat(Panes.redux): Clear panes on unmount

Clearing panes on unmount will clear bin buttons in nav

* refactor(Map): Colocate styles

* feat(Map): New map layout

* fix(Map): No longer has it's own page

* fix: FetchChallenges on appMounted

* feat: Normalize fetchChallenge(s) results

This allows superblocks to be sent with both fetchChallenge and
fetchChallenges so the map is always populated on first load

* feat(Map): Show blocks on first load

* fix(less): Remove old css

* feat(Nav): Reduce nav height

* fix(Nav): Render nav after content

Render nav after content and use css to reverse again on screen. We do
this so the panes can render first and update redux panes state which
will then update the nav ui state before nav has a chance to render

* fix(Panes): Add container

This adds a Panes Container that will allow it to udpate redux state so
Panes Component will have redux state ready to actually render panes

* feat(Challenges.Classic): Add panes

* fix(Challenge.Classic): Editor onchange should not need to know about file

* fix(Panes): Index on panes hide should account for hidden pane

* fix(Challanges.Classic): Fix panes types

* fix(Challenges): Add completion modal to all challenges

Change classic modal to completion modal

* fix(Panes): Dividers live on top of planes

* fix(Challenges): Remove codemirror theme

Remove codemirror theme and remove borders from preview frame

* fix(Challenges.Classic): Remove old component

* feat(Challenges.Step): Add panes to step challenge

* feat(Challenges.Project): Add panes to projects

* fix(Challenges.Projects): Remove row

* fix(Modals): Move modal text color to challenge less

This text color is dependent on the actual header color

* fix(Map): Use Superblock title for ui

* fix(Map): Reduce panel header height

* fix(app): Capitalize Toasts folder

Feature folders should be campitalized

* chore(Map): Remove unused epic file

* fix(Step): Fix tests

* test(Map): Update createMapUi tests input
2017-07-31 22:04:01 -05:00
dhcodes bc46368750 fix(styles): Change modal title color
Closes #15588
2017-07-25 09:07:03 -05:00
Dylan e1a2fecd13 add donate links and mousetrap 2017-06-05 16:46:04 +01:00
Berkeley Martinez 70f2b797d9 Fixs classic modal styling not rendering
Move classic modal less files co-locating them in the app file structure
2017-05-19 05:46:35 +01:00
techstonia 9f60f40b71 Code tags removed from output 2017-05-01 21:27:00 +03:00
Berkeley Martinez ee8ac7b453 feat(rechallenge): Retool challenge framework (#13666)
* feat(rechallenge): Retool challenge framework

* fix(code-storage): should use setContent not updateContent

* fix(rechallenge): fix context issue and temporal zone of death

* fix(rechallenge): Fix frame sources for user code

* fix(polyvinyl): Set should ignore source and transform should keep track of source

* fix(rechallenge): Missing return statement causing issues
2017-04-28 20:30:23 -05:00
Berkeley Martinez 4942156c31 Merge pull request #13229 from Bouncey/fix/nightModeOnPageLoad
Persist night mode on page load
2017-04-18 11:06:19 -07:00
slyty7 e8a7e31618 Update Modals.less 2017-04-01 00:56:33 -07:00
Stuart Taylor d6e302dd58 Persist night mode on page load 2017-03-24 17:03:21 +00:00
ZZhaoTireless 45f1c92d79 Fix: replace all GoMix with Glitch 2017-03-23 22:26:45 -04:00
Venkateshwaran 9eb80b6220 CSS fix for issue - Night Mode Poor Contrast #13959 (#14037) 2017-03-22 00:17:58 -05:00
Berkeley Martinez f4443e16dd feat(nav): make navbar static (#13673)
* feat(nav): make navbar static

make the navbar in react layout and the static layout stick to the top of the screen

* feat(challenges): Make classic view flex

Classic view now uses flex to control it's height. This was necessary to control view and allow
navbar to be static on other pages.

This breaks mobile view and other non-classic challenge views

* feat(app): Add logic to make screen expand on tablet

* fix(app): let routes define their content structure

* fix(less): use American spelling of gray

* fix(classic-preview): make preview smaller to prevent scroll

* feat(classic-frame): Make frame border less distinct

* fix(challenges): scope test suite less to challenges

* feat(challenges): make generic ChallengeTitle component
2017-03-13 18:17:07 -05:00
Ethan Arrowood 1491bf905f Initial state test icon color changed 2017-03-04 22:21:34 +00:00
Samuel Plumppu 3889f87cc3 Merge pull request #13651 from Ethan-Arrowood/fix/challenge-icon-color
Set default icon color to darkgreen
2017-03-01 11:06:16 +01:00
Ethan Arrowood c1ad7d56a2 Set default icon color to darkgreen 2017-02-28 13:49:35 -05:00
Berkeley Martinez 81d720da5b Merge pull request #11474 from petrgazarov/chore/remove-bower
Remove bower and port dependencies over to npm
2017-02-27 15:03:59 -08:00
Samuel Plumppu 659fff05ab Merge pull request #13476 from nawazishali/fix/iPhone-frame
Fixed iPhone frame doesn't disappear on narrow widths
2017-02-22 21:33:58 +01:00
Nawazish Ali e2e0fd7ccf Fixed iPhone frame doesn't disappear on narrow widths
Removed all unnecessary formatting.

I have removed all unnecessary formatting as requested. Sorry for inconvenience .

Squashed the second commit into first.
2017-02-22 23:43:00 +05:00
quentin de707c185e indexOf() instead of includes() 2017-02-20 15:42:50 -05:00
Petr Gazarov f159027025 Remove bower and port dependencies over to npm 2017-02-09 00:09:39 -05:00
Mrugesh Mohapatra 343397c282 fix: Update Gomix handler 2017-02-07 01:39:12 +05:30
Leon Feng 30bc87c1da Disable loopProtect for non-JavaScript code 2017-02-01 03:13:48 +04:00
Berkeley Martinez f1d936198e feat(challenges): add backend challenge infrastructure (#11058)
* Feat: Initial backend view

* Feat: Refactor frame runner

* Feat: backend challenge submit runs tests

* Feat: Backend challenge request

* Feat: Whitelist hyperdev in csp

* Fix: Use app tests instead of challenge tests

* Feat: Allow hyperdev subdomains

* Fix(csp): allow hypderdev.space subdomains

* feat(challenge): submit backend

* feat: Add timeout to test runner (5 sec)

* chore(seed): Add more to test backend

* fix(csp): s/hyperdev/gomix/g

* fix(app): fix code mirror skeleton filepath

* fix(app): remove Gitter saga import

* fix(app): codemirrorskeleton does not need it's own folder
fix(app): cmk needs to work with Null types

* fix: No longer restart the browser when challenges change

* fix(app): Update jquery for challenges

* fix(seed): Remove to promise jquery call

* fix(lint): Undo merge error
undefined is no allowed

* fix(app): linting errors due to bad merge

* fix(seed): Remove old seed file
2017-01-26 23:07:22 -06:00
Berkeley Martinez 51912d5263 Merge pull request #12605 from petrgazarov/fix/upgrade-jquery-major-version
Bump JQuery major version - to 3.1.1
2017-01-26 15:00:16 -08:00
Quincy Larson 3e3fa12b52 Merge pull request #12048 from raisedadead/feature/reporting-profiles
feat(user): Report profiles
2017-01-26 14:16:16 -06:00
Mrugesh Mohapatra f262bfd960 fix(night-mode): Update indenting and change border color 2017-01-24 22:23:20 +05:30
Markus Török e1261526d8 fix(night-mode): Add css classes to unsubscribe button
Add class btn-toggle and remove bg-color from inactive buttons in night mode
2017-01-24 22:17:45 +05:30
Petr Gazarov 6594106002 Bump JQuery major version - to 3.1.1
closes #12015
2017-01-21 01:46:48 -05:00
Berkeley Martinez 86d4b5e841 chore: Remove unused/deprecated files 2017-01-19 17:56:07 -08:00
Peter Weinberg e5c5a6ee63 amended nightmode styles: modals, dropdown, menu-toggle 2017-01-16 19:37:04 -05:00
Peter Weinberg 54c4f99066 added LESS rule for <dfn> tag in nightmode 2017-01-14 19:14:30 -05:00
Mrugesh Mohapatra 1f67c72fc6 feat(user): Report profiles
This adds a simple email-based mechanism to report profiles for
abuse. An email with text from the report is sent to Free Code
Camp's support account with the reporter's account in copy. This
also adds the reporter's details to the report for follow ups.
2017-01-13 00:14:29 +05:30
Stuart Taylor 075476f15f Render CodeMirror skeleton for SSR 2017-01-03 21:25:14 +00:00
Berkeley Martinez 3a4e62da44 feat(nav): Add dropdown menu 2016-12-30 16:08:15 -08:00
Quincy Larson 183e1c64a2 Merge pull request #11593 from BerkeleyTrue/feat/no-sidecar-map
feat(nav): remove sidecar
2016-12-30 00:06:54 -06:00
Berkeley Martinez 1892654dab feat(nav): remove sidecar 2016-12-29 22:04:05 -08:00
Berkeley Martinez ab977835e4 Merge pull request #11801 from Bouncey/fix/langRoutes
Fix: Lang routes persist between sessions
2016-12-29 20:12:49 -08:00
Dylan 7d2ca7c8a3 fix wording and css of Bug Modal 2016-12-28 19:11:27 -06:00
hudsontaylor 80eae43257 Center Testimonial Text
This gets rid of the odd white spaces in the testimonials section by just centering the text instead of justifying it.
2016-12-13 23:43:44 +05:30
Stuart Taylor 60d46e069b Add reactified challenge success modal 2016-12-05 22:54:38 +00:00
johnnyqbui baf225ad3a Remove reset progress animations, changed color and increase size of delete account buttons 2016-12-01 13:56:10 -06:00
Stuart Taylor 496c648f46 Fix: Lang routes persist between sessions 2016-11-29 23:10:08 +00:00
Stuart Taylor 9d46ebfc29 Added note about language degradation 2016-11-29 22:52:05 +00:00
Mrugesh Mohapatra 2386a07cd4 Merge pull request #11705 from chiptus/fix/text-break-test-output
added word-wrap less rule to .test-output
2016-11-22 20:53:28 +05:30
Jonathan 8834bd1c19 Merge pull request #11562 from marhyorh/odd-menu-behaviors
Fixed odd menu behaviors on mobile
2016-11-19 17:42:20 +00:00
Chaim Lando 78a1f9f036 added word-wrap less rule to .test-output 2016-11-18 20:05:14 +05:30
Quincy Larson 00063a909c Merge pull request #11439 from BerkeleyTrue/feat/shadow-settings
feat(app): render spinner on `/settings`
2016-11-08 16:59:16 -08:00
Adegbuyi Ademola 7653f55fb7 Fixed odd menu behaviors on mobile 2016-11-07 10:03:39 +01:00
Berkeley Martinez 5edfb77dbf Merge pull request #11219 from atjonathan/fix/hikes-styling
Fixed styling issues with Hikes
2016-11-04 08:26:42 -07:00
theflametrooper 6777823607 Fixed styling issues with Hikes
⚙ Fixed tabs/spaces issue
📱 Added responsiveness to YouTube embed
2016-11-04 13:18:35 +00:00
Jonathan 9a171940c6 Merge pull request #11472 from Bouncey/fix/replaceNBSP
Fix/Replace nbsp in campers code
2016-11-04 13:11:36 +00:00
Stuart Taylor e9d67eda97 Fix/Replace nbsp in campers code 2016-11-02 23:07:40 +00:00
Berkeley Martinez 2400ea04c5 feat(app): render spinner on /settings 2016-11-01 13:35:55 -07:00
Stuart Taylor 52053de593 Remove FontAwesome from 'client/less/lib/' 2016-10-30 20:09:37 +00:00
Stuart Taylor 9e727ee0c1 Fix for CSRF Token issue 2016-10-27 23:22:51 +01:00
Berkeley Martinez 19b7fe18f2 Merge pull request #11366 from Bouncey/fix/NoLoopProtectErrorInOutput
Add loopProtect error object
2016-10-27 09:54:16 -07:00
Stuart Taylor fb8a5d7af7 Add looProtect error to 'output' 2016-10-27 17:29:29 +01:00
Yasser Hussain a33e34f942 Code with hyperdev.com url should not run 2016-10-27 14:11:20 +01:00
Mahatthana Nomsawadi 3a17fc16c8 Use action from actionCreator 2016-10-17 08:00:44 +07:00
Logan Tegman 96f5b3a2af Merge pull request #10929 from Bouncey/fix/functionInComments
Incorrect error thrown when function is in comments
2016-10-16 14:10:55 -07:00
Jonathan 1c951a2fe5 Merge pull request #9907 from craigstroman/fix/text-editor-overflow-ipad
Text-editor overflow hidden on iPad
2016-10-15 14:11:04 +01:00
Logan Tegman 2762238c8d Fix sitemap, remove jobs remnants 2016-10-06 22:10:26 -07:00
Dylan 982ffd5228 fix map header and scrolling (#11054)
Checked across browsers and platforms. Crossing fingers now :D haha
2016-10-06 16:06:18 -04:00
Berkeley Martinez b8301230aa Fix: test suite disappearing 2016-10-03 22:33:54 -07:00
Hallaathrad f08ac78d99 Better visibility for `<code>` in night mode 2016-10-02 16:49:07 -04:00
Justin Richardsson 7ae36e3dd4 Merge pull request #10935 from dhcodes/fix/map-drawer-issues
Fix map drawer issues
2016-09-30 17:53:26 -04:00
Quincy Larson ae0f0e0f90 Merge pull request #10982 from BerkeleyTrue/fix/code-storage-fresh-head-tail
Fix(code-storage): Make sure head/tail is always fresh
2016-09-30 12:45:26 -07:00
Berkeley Martinez a315648c76 Fix(frames): Make sure main process has access to Rx 2016-09-29 12:48:19 -07:00
Berkeley Martinez 88c2763dc1 Fix(code-storage): Make sure head/tail is always fresh 2016-09-29 12:44:19 -07:00
Quincy Larson dc803b1b46 Merge pull request #10949 from BerkeleyTrue/fix/remove-slide-animation
Fix(step): remove slide animation
2016-09-28 23:06:32 -07:00
Quincy Larson 9bb3087776 Merge pull request #10711 from BerkeleyTrue/feature/async-tests
Feat(challenges): Adds the ability to test with async methods
2016-09-28 13:54:26 -07:00
dhcodes 42c9103e41 fix map drawer issues 2016-09-28 11:55:41 -05:00
Berkeley Martinez a6f9e95ed8 Feat: Add react-hot-loader
Combine webpack and browser-sync on one port
2016-09-27 19:49:58 -07:00
Stuart Taylor d5c3731536 Incorrect error thrown when function is in comments 2016-09-26 22:19:33 +01:00
Adegbuyi Ademola f1a1166173 fix(Nav): Avatar should light up brownie #10581 2016-09-24 18:07:13 +01:00
Berkeley Martinez 97e0bc8e87 Feat(challenges): Adds the ability to test with async methods 2016-09-23 07:25:12 -07:00
Berkeley Martinez 9d1e8c5a33 chore(toasts): refactor and test flash to toast logic 2016-09-01 18:46:09 -07:00
Berkeley Martinez 1a7c289324 Fix(flash): Turn flash messages into toasts. 2016-09-01 17:37:30 -07:00
Quincy Larson d48a618075 Merge pull request #10200 from BerkeleyTrue/fix/code-uri
Fix(challenges): code storage/uri
2016-08-31 16:18:50 -07:00
Berkeley Martinez be91ce3c42 Fix(code-uri): should use store.remove instead of clear 2016-08-31 15:16:00 -07:00
Berkeley Martinez 8f0ce00dc4 Feature(challenge): Load previously solved solution. 2016-08-19 12:13:24 -07:00
Berkeley Martinez 0e8c0b8470 Feature(code-storage): clear code storage on challenge completion 2016-08-18 19:33:24 -07:00
Berkeley Martinez 7d6250e8af Feature(challenges): Run user js code through babel
This is a naive implementation.
Ideally we would detect the users environment
and dynamically load only the appropriate plugins
2016-08-18 18:23:44 -07:00
Berkeley Martinez f9cf212fe7 Feature(code-uri): Lock untrusted code from playing on first load 2016-08-18 09:44:40 -07:00
Berkeley Martinez fb9c1001b0 Fix(code-uri): use href instead of search to remove code uri 2016-08-18 09:44:40 -07:00
Berkeley Martinez c919ce5dc8 Feature(code-uri): Load and remove code uri on loadCode 2016-08-18 09:44:40 -07:00
Berkeley Martinez 3f3aab3ff7 Feature(challenges): add code-uri utils
Fix(nav): points nav item propTypes
2016-08-18 09:44:40 -07:00
Berkeley Martinez 5fb2802e32 Chore(challenges): separate code storage sagas 2016-08-18 09:44:40 -07:00
Berkeley Martinez c3d9d48b01 Fix(challenges): Let code load update the main frame
Also display a message to the user that we loaded
in-progress code.
2016-08-18 09:44:40 -07:00
Berkeley Martinez b1d04077d9 Fix(challenges): load legacy code from localStorage 2016-08-18 09:44:40 -07:00
Berkeley Martinez 73b5fd5797 Fix(challenge): Add challenge head/tail to contents on execute 2016-08-11 20:54:30 -07:00
Berkeley Martinez be782f083c Fix(challenges): Add font-awesome 2016-08-06 15:24:00 -07:00
Mrugesh Mohapatra 2403492cee fix(night-mode): Add CSS to the map aside 2016-08-07 00:15:45 +05:30
Berkeley Martinez 94c4c846e9 Feature(theme): add nightmode react logic
We wait to load the user before applying the theme
as we will begin aggressively caching most of the react
app routes. This means we can not depend on user data to
determine.
2016-08-06 07:24:10 -07:00
Mrugesh Mohapatra 553b2e6ee0 Merge pull request #10010 from atjonathan/fix/wiki-to-forum
Replaced wiki links with new forum links
2016-08-02 16:22:08 +05:30
Mrugesh Mohapatra 3d8ec49520 Fix(css): react-layout and editor area 2016-08-02 10:38:01 +05:30