Refactored the submit row of the login component to use Flex Row instead of `float: right` for the `need help` link. The bulk of the changes are white space, so remember to ignore whitespace for review.
Refactored studio list consolidation code for add to studio; set canAdd,
canRemove flags directly on each studio.
pass flag userOwnsProject through to add to studio modal and its
buttons.
pass flag isAdmin through to add to studio and its buttons.
set flags in add to studio buttons for whether user has permission to
add project to studio, remove project from studio.
Set user ability/inability to click add to studio buttons using
permissions flags and css
Use current Sentry browser package and forward errorId into eventId
Fix up errorInfo reference
Put Sentry on the window object for GUI to use
Remove unneeded reference to old style Raven and raven-js
Move Sentry webpack config into production only
Add GA tracker ID to window
Allows scratch-gui to use same GA id
* intro component was changed for new banner masthead layout
* added new video component for embedding wistia (based on extension video, we should probably figure out consolidating the two)
* new and updated strings in splash/l10n.json
* updated splash presentation to move Intro above `inner` to allow it to be full width (like banners)
* new assets
start to depend on `scratch-l10n`
So far only the supported locales is used.
There is one small difference between scratch-l10n and the `languages.json` that was removed.
languages was:
`{locale: ‘languagename’, …}` key value pairs.
l10n exports:
`{locale: {name: ‘languagename’},…}
That required an additional change to the language chooser.
- `create` on the navbar opens the getting started tutorial if the user is not logged in
- replaced any other use of `tip_bar=getStarted` with `tutorial=getStarted` (with the exception of Tips page)
- did not replace other uses of `tip_bar=home` as those should probably go to the new tips/ideas page.
* move login/registration functions and view state to session reducer, pass to gui
* navigation reducer handles login; gui passed renderLogin function
* put back in join class to make smoke tests keep working
* Add extension-landing generalized styles, install scratch link component
* Make EV3 page use generalized stuff
* Use OS_ENUM file instead of class variable
* use extension-landing/os-enum in os chooser
* Use extension-landing class in extension-landing.scss
* Use extension-landing styles and components on microbit page
* Add view-specific styles
* Move install scratch link l10n strings to src/l10n.json
* Start moving steps display to its own components
* Finish initial pass at Step, Steps components for extension landing pages
* Create ProjectCard component
* Use new components on InstallScratchLInk component
* Use new components on EV3 page
* allow className prop in Steps component
* Use new components on micro:bit landing page
* imageUrl -> imageSrc in ProjectCard
* Create ExtensionHeader component and use it on micro:bit and EV3 pages
* Fix a spacing issue in the InstallScratchLink component
* Add ExtensionRequirements component
* Use ExtensionRequirements component on landing pages
* Remove requirements l10n string for ev3 page
* Move project card styles out of things-to-try section
* Don't render the number row in a step if compact and number props are not set
* Add ExtensionSection component
* Use ExtensionSection on ev3 and microbit pages
* Move state configuration to ExtensionLanding class
* Move tip box, screenshot styles outside of specific section
* Add TipBox component and use it on the EV3 page
* Use hr element instead of section-separator div
* Remove refactor TODO comments :)
* Add extension-landing generalized styles, install scratch link component
* Make EV3 page use generalized stuff
* Use OS_ENUM file instead of class variable
* use extension-landing/os-enum in os chooser
* Use extension-landing class in extension-landing.scss
* Use extension-landing styles and components on microbit page
* Add view-specific styles
* Move install scratch link l10n strings to src/l10n.json
* Start moving steps display to its own components
* Finish initial pass at Step, Steps components for extension landing pages
* Create ProjectCard component
* Use new components on InstallScratchLInk component
* Use new components on EV3 page
* allow className prop in Steps component
* Use new components on micro:bit landing page
* imageUrl -> imageSrc in ProjectCard
* Create ExtensionHeader component and use it on micro:bit and EV3 pages
* Fix a spacing issue in the InstallScratchLink component
* Add ExtensionRequirements component
* Use ExtensionRequirements component on landing pages
* Remove requirements l10n string for ev3 page
* Move project card styles out of things-to-try section
* Don't render the number row in a step if compact and number props are not set
* Add ExtensionSection component
* Use ExtensionSection on ev3 and microbit pages
* Move state configuration to ExtensionLanding class
* Move tip box, screenshot styles outside of specific section
* Add TipBox component and use it on the EV3 page
* Use hr element instead of section-separator div
* Remove refactor TODO comments :)
Updated all the places in the SCSS where we use Darken and Lighten properties.
These properties have been problematic in the past and caused some state issues, e.g. New message(s) hightlight (which was fixed seperately from this issue)
* start building ev3 landing page structure
* Inject translations, add more content and structure to ev3 landing page
* Add ev3 route
* add active styles for os chooser buttons
* Add ev3 assets
* Add content and intial styles for everything down to "Sample Projects"
* Add correct padding to all sections on ev3 page
* Add more margins to match the mockup
* Create os chooser component for reuse on other landing pages
* Make EV3 page stateful, add OS logic, change step styles, fix images on Chrome
* Add sample project cards and styles
* Add fixed ev3 icon svg
* Add app store badges (no href on links yet)
* Add section separator, fix sample project card margins
* Add border to project cards, make project cards clickable links
* Add FAQ boilerplate and styling from InformationPage component
* Add indented ol style, example
* Add link style with underline
* Add EV3 retail link
* Content updates
* Fix some z-index issues with os chooser
* micro:bit page mega-commit
* os chooser should not have a higher z-index than nav
* Update starter projects
* Localize OS chooser
* Add localization configuration for EV3 page
* Localize section titles on ev3 page
* Add starter project images and descriptions
* Add link to microbit.org
* Fix tip box width on microbit and ev3 pages
* add l10n strings up to things to try on ev3 page
* Fix lint error in ev3.scss
* Add download link style to ev3
* microbit getting started text and images
* Remove tip about microbit name
* Hex file and starter project download links
* microbit wording updates
* update images
* Fix issues with download link style
* text fix
* Add ev3 starter project downloads
* Add microbit l10n file and config
* Add l10n strings for microbit header and scratch link sections
* Add l10n strings for microbit page up to faq
* content updates
* Fix some page overflow issues
* microbit faq content and style
* Use zipped version of microbit hex file
* Add platform name to scratch link download button
* Add EV3 faq to l10n.json
* Add final strings from micro:bit and EV3 pages to l10n.json files
* Add white download asset
* Tweak styles for ev3 and microbit
* Add some final tweaks to the EV3 page styles
* Add TODO comments about refactoring duplicate code
Updates maintain WWW color variable naming conventions, but replaces values with 3.0 colors.
Colors have the commented HEX and GUI variable name.
More work to do auditing but it’s a start.
* addresses comments for https://github.com/LLK/scratch-www/pull/1900
* renames report fields to match scratchr2 expectations
* restyle modal to allow display of validation messages
* removed cruft
addresses most comments except modal refactor, and error response from sumitting report.
* restore gui as a dev dependency
* better separation of view container/presentation
* replace absolute heights for textareas with making all sub components `display: flex`
* start to make presentation more modular added subcomponents to the view folder:
* share-banner (moved from components)
* remix-credit
* remix-list
* studio-list
* move all the report modal presentation into the component
* add strings to general l10n file because we don’t handle l10n files in components
* Add current project id and username to the data before submitting
Report button opens a modal with the report project form. All the content is currently in `preview/presentation` because components cannot have their own l10n files.
First pass at project page design using actual assets from Carl, and matching styles with current design.
Includes a (negative margin) hack to line up the stage. see https://github.com/LLK/scratch-gui/issues/2132
* Add user-session awareness
- only show remix button if user is logged in (TBD: probably will want to hide if project creator == user)
* decorate text with @mentions and #hashtags
* Add studios, loves, favs
* In-place editing of title and description if current user is author and project shared (with validation)
* checkbox needed a default value
* general-error is passed a ref by formsy - cannot be stateless function
* add missing `label` prop to input field
* add missing proptypes to phoneinput.
- Moved preview state into redux
- Gets remix credit if the project is a remix
- Shows up to 5 remixes (direct children?)
- handles empty remixes result (it’s not an array)
- Added Column component - based on Grid, but doesn’t use frameless to set width.
- allows trailing ‘/‘ on the URL
- cleaned up conditional content
Setting onClick to onNextStep directly caused click event data to be passed in handleAdvanceStep, which then merged it with the formData state in student registration. This caused issues.
See this StackOverflow answer: https://stackoverflow.com/a/18853002/4633828
This isn't a perfect fix - we have to set `color` explicitly, rather
than use `inherit`, because we want the text color to be the same when
the select element is focused. That means both `color` and
`text-shadow`'s color have to be explicitly set to the same thing
(otherwise they might not match). Yay, hacks!
..since it's the only property which actually animates. (The background
image also changes on hover/focus, but that isn't visually effected by
transition, so we ignore it.)
This is for the next commit. Without this, the focus ring slowly
disappears, and the text slowly becomes the color it's meant to be;
neither of those are good.
This incorporates a fallback image into the thumbnail component for all of project, studio and avatar thumbnails using the `onerror` property of img elements (which is supported across all browsers).
/cc @thisandagain @rschamp
* add 2018 conference page (new subdirectory and index page)
* Redirect /conference route to 2018, and add new route for /conference/2017 for last year's conferences.
* Update mailto link in the footer
* add 2018 conference page (new subdirectory and index page)
* Redirect /conference route to 2018, and add new route for /conference/2017 for last year's conferences.
* Update mailto link in the footer
Css animated top banner
Middle banner of activities - responsive
https://github.com/LLK/scratchr2/issues/4869
Also updated ttt see-more/open- modal link to be consistent with the new icon from Carl.
* start work on www page
committing out of paranoia.
including changing splash page endpoints
* updates from feedback
thanks @rschamp! This includes:
1. splitting out messages list into a separate component (for clarity)
2. some comment/formatting adjustments for the api calls
3. removal of an extraneous property in emoji-text
* remove duplicate string declaration
* use object.assign instead of defaults deep
we don’t need deep defaults
* fix react warnings
1. Moves carousel to `LegacyCarousel` since it currently is designed to handle JSON from proxy endpoints
2. Add separate `Carousel` endpoint to handle data from project models in scratch’s new api, the standard moving forward.
New of tips page, uses cards from new resources server (s3)
* added get-localized-urls script to get the generated json from the s3 bucket
* added /tips route
* correct localized-urls for other pages
* remove thingstotry
* redirect /go
* fix up /info/cards view to use resources (s3).
* redirect /go to /tips
* change /hoc redirect from /go to /tips
* Add full set of cards pdf download to tips localization
* removed cards and guides from static PDFs, they are all coming from resources.scratch.mit.edu now.
* removed things to try view
Corrections for reviews:
* decided to pretty print the localized URLs
* replaced console.errors with process.stdout and fail with exit(1)
* formatted localized-urls to make it easier to read
* moved link outside `<Button…` makes whole button clickable instead of just text
* fixed up css styles, removed unnecessary classes
* corrected “unused” resource links
* Don’t allow duplicate strings in a single l10n file
Added check_duplicate_strings to test for duplicates in a single file.
removed duplicates - tried to keep the more generic ‘key’
* revised test case for safer file reads
Fixes#1097 by not making the server-side username validation call if the client side validations have failed. This is not the ideal way to do this, since it’s getting the input from an array. However, to make this different would require significant refactor.
fixes#1101. I wanted to apply a custom class to the input, however that is unfortunately obscured and unreachable with our current implementation of `formsy-react-components`
Fixes#966. I was trying, if possible, to not introduce localization at the component level in order to keep it in the views – but that seemed a bit too involved given that the fix in this way is only a few lines long.
This fixes#962 – the margin was causing flex to overflow the radio buttons when the text was long, causing the male and other options to render on top of each other. This fixes that by giving the radio buttons a fixed with relative to the parent container, and by ensuring that languages with long localizations will still be visible in overflow text.
ttt.subtitle:
- ‘try theTutorial’ instead of ‘try a Tutorial’
- Hide and Seek instead of Hide-and-Seek Game
- change <b> to <strong>
title-banner.scss
- add explicit rule to bold <strong> within title-banner for windows browsers
integrated modal and added guide pdfs.
Catch and Pet Guides are still missing. We may need to remove them from the TTT list. Wanted to get this committed in any case to start review.
based on feedback from @rschamp, thanks!
1. make `ref` into method
2. remove accidental inclusion of prototype modal
3. use `omit` for props so that we don’t need a separate object for wrapped component properties
1. Split out base modal stylings from iframe modal stylings
2. Move iframe-specific stylings into a separate copmonent
3. Move width/height iframe stylings to scss
4. Change global stylings for modals to match #980
5. Update styles to use trello style guide
Went over styles with Carl. Some notes:
renamed tutorial button tutorial tag as it’s not really a button and is unique to ttt.
Found out why cols4 wasn’t working - if your browser default font isn’t 16px, rem isn’t 16px. Opening a separate issue and using cols4 where it should be.
Includes new SVGs for banner and resources link
MasonryGrid does the reordering of items
Using react-responsive MediaQuery to change columns
Brought in ../forms/button.scss for button styling, and then modified for TTT
Still needs Modal
Final styling pass with Carl
the `//` for an empty username that gets sent to the backend causes a 500 error. This is an edge case in formsy, as it has not detected a change value yet, so handle it in the username validation method. Fixes#872
Since we only check for the US, only require for that country. Other countries have zip codes, but it seems better to do it this way than codify which countries do/do not have zip codes (in case local practices are not the same as international information). Fixes#825