Skip to content

Commit 5d9afb0

Browse files
authored
Merge pull request scratchfoundation#4809 from benjiwheeler/refactor-file-uploader
refactor SB* file uploader into top-level HOC
2 parents 4f70b0f + d19cf91 commit 5d9afb0

File tree

8 files changed

+389
-326
lines changed

8 files changed

+389
-326
lines changed

src/components/gui/gui.jsx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,7 @@ const GUIComponent = props => {
105105
onRequestCloseTelemetryModal,
106106
onSeeCommunity,
107107
onShare,
108+
onStartSelectingFileUpload,
108109
onTelemetryModalCancel,
109110
onTelemetryModalOptIn,
110111
onTelemetryModalOptOut,
@@ -226,6 +227,7 @@ const GUIComponent = props => {
226227
onProjectTelemetryEvent={onProjectTelemetryEvent}
227228
onSeeCommunity={onSeeCommunity}
228229
onShare={onShare}
230+
onStartSelectingFileUpload={onStartSelectingFileUpload}
229231
onToggleLoginOpen={onToggleLoginOpen}
230232
/>
231233
<Box className={styles.bodyWrapper}>
@@ -399,6 +401,7 @@ GUIComponent.propTypes = {
399401
onRequestCloseTelemetryModal: PropTypes.func,
400402
onSeeCommunity: PropTypes.func,
401403
onShare: PropTypes.func,
404+
onStartSelectingFileUpload: PropTypes.func,
402405
onTabSelect: PropTypes.func,
403406
onTelemetryModalCancel: PropTypes.func,
404407
onTelemetryModalOptIn: PropTypes.func,

src/components/menu-bar/menu-bar.jsx

Lines changed: 5 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ import {ComingSoonTooltip} from '../coming-soon/coming-soon.jsx';
1717
import Divider from '../divider/divider.jsx';
1818
import LanguageSelector from '../../containers/language-selector.jsx';
1919
import SaveStatus from './save-status.jsx';
20-
import SBFileUploader from '../../containers/sb-file-uploader.jsx';
2120
import ProjectWatcher from '../../containers/project-watcher.jsx';
2221
import MenuBarMenu from './menu-bar-menu.jsx';
2322
import {MenuItem, MenuSection} from '../menu/menu.jsx';
@@ -392,22 +391,11 @@ class MenuBar extends React.Component {
392391
</MenuSection>
393392
)}
394393
<MenuSection>
395-
<SBFileUploader
396-
canSave={this.props.canSave}
397-
userOwnsProject={this.props.userOwnsProject}
394+
<MenuItem
395+
onClick={this.props.onStartSelectingFileUpload}
398396
>
399-
{(className, renderFileInput, handleLoadProject) => (
400-
<MenuItem
401-
className={className}
402-
onClick={handleLoadProject}
403-
>
404-
{/* eslint-disable max-len */}
405-
{this.props.intl.formatMessage(sharedMessages.loadFromComputerTitle)}
406-
{/* eslint-enable max-len */}
407-
{renderFileInput()}
408-
</MenuItem>
409-
)}
410-
</SBFileUploader>
397+
{this.props.intl.formatMessage(sharedMessages.loadFromComputerTitle)}
398+
</MenuItem>
411399
<SB3Downloader>{(className, downloadProjectCallback) => (
412400
<MenuItem
413401
className={className}
@@ -743,6 +731,7 @@ MenuBar.propTypes = {
743731
onRequestCloseLogin: PropTypes.func,
744732
onSeeCommunity: PropTypes.func,
745733
onShare: PropTypes.func,
734+
onStartSelectingFileUpload: PropTypes.func,
746735
onToggleLoginOpen: PropTypes.func,
747736
projectTitle: PropTypes.string,
748737
renderLogin: PropTypes.func,

src/containers/gui.jsx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ import {
2727

2828
import FontLoaderHOC from '../lib/font-loader-hoc.jsx';
2929
import LocalizationHOC from '../lib/localization-hoc.jsx';
30+
import SBFileUploaderHOC from '../lib/sb-file-uploader-hoc.jsx';
3031
import ProjectFetcherHOC from '../lib/project-fetcher-hoc.jsx';
3132
import TitledHOC from '../lib/titled-hoc.jsx';
3233
import ProjectSaverHOC from '../lib/project-saver-hoc.jsx';
@@ -181,6 +182,7 @@ const WrappedGui = compose(
181182
ProjectSaverHOC,
182183
vmListenerHOC,
183184
vmManagerHOC,
185+
SBFileUploaderHOC,
184186
cloudManagerHOC
185187
)(ConnectedGUI);
186188

src/containers/sb-file-uploader.jsx

Lines changed: 0 additions & 226 deletions
This file was deleted.

0 commit comments

Comments
 (0)