diff --git a/src/views/preview/l10n.json b/src/views/preview/l10n.json index 5f1e86026..f335bc1d4 100644 --- a/src/views/preview/l10n.json +++ b/src/views/preview/l10n.json @@ -22,6 +22,7 @@ "project.remixButton.altText": "Save a copy of this project and add your own ideas.", "project.remixButton.remixing": "Remixing...", "project.remixes": "Remixes", + "project.viewAllInList": "View all", "project.inviteToRemix": "Invite user to remix", "project.instructionsLabel": "Instructions", "project.notesAndCreditsLabel": "Notes and Credits", diff --git a/src/views/preview/presentation.jsx b/src/views/preview/presentation.jsx index 37bf0d8bd..4e8f2a29c 100644 --- a/src/views/preview/presentation.jsx +++ b/src/views/preview/presentation.jsx @@ -581,8 +581,14 @@ const PreviewPresentation = ({ - - + + diff --git a/src/views/preview/preview.scss b/src/views/preview/preview.scss index 60bb0560c..075539ded 100644 --- a/src/views/preview/preview.scss +++ b/src/views/preview/preview.scss @@ -554,12 +554,33 @@ $stage-width: 480px; .remix-list, .studio-list { flex-direction: column; + width: 14.625rem; + + .list-header { + display: flex; + width: 100%; + justify-content: space-between; + } + + .list-header-spacer { + flex: 1 0 1px; + } .list-title { margin-left: 1rem; font-size: 1.2rem; font-weight: bold; align-self: flex-start; + line-height: 110%; + text-align: left; + } + + .list-header-link { + margin-right: 1rem; + align-self: flex-end; + font-size: .75rem; + line-height: 110%; + text-align: right; } .creator-image img { @@ -585,6 +606,7 @@ $stage-width: 480px; @media #{$medium-and-smaller} { margin-top: 1rem; + width: 100%; } } } diff --git a/src/views/preview/remix-list.jsx b/src/views/preview/remix-list.jsx index 9f24c688c..9efa723f4 100644 --- a/src/views/preview/remix-list.jsx +++ b/src/views/preview/remix-list.jsx @@ -10,8 +10,16 @@ const RemixList = props => { if (remixes.length === 0) return null; return ( -
- +
+
+ +
+
+
+ + + +
{remixes.length === 0 ? ( // TODO: style remix invitation @@ -32,6 +40,7 @@ const RemixList = props => { }; RemixList.propTypes = { + projectId: PropTypes.string, remixes: PropTypes.arrayOf(projectShape) }; diff --git a/src/views/preview/studio-list.jsx b/src/views/preview/studio-list.jsx index 2b75e4e4d..d44244397 100644 --- a/src/views/preview/studio-list.jsx +++ b/src/views/preview/studio-list.jsx @@ -10,8 +10,16 @@ const StudioList = props => { if (studios.length === 0) return null; return ( -
- +
+
+ +
+
+
+ + + +
{studios.length === 0 ? ( // TODO: style remix invitation @@ -32,6 +40,7 @@ const StudioList = props => { }; StudioList.propTypes = { + projectId: PropTypes.string, studios: PropTypes.arrayOf(projectShape) };