Files
scratch-gui/src/lib/project-loader.js
T
Ray Schamp 54548b5c0b Update project on hash change
While doing so:
- Use ProjectLoader for loading projects
- Stop using loadEmptyProject and supply empty project data
- Move project loading to App, GUI now receives data (as a string - the vm should receive an object eventually)
- Add logging
2016-10-12 23:22:15 -04:00

23 lines
600 B
JavaScript

const xhr = require('xhr');
const log = require('./log');
class ProjectLoader {
constructor () {
this.DEFAULT_PROJECT_DATA = ProjectLoader.DEFAULT_PROJECT_DATA;
}
load (id, callback) {
callback = callback || (err => log.error(err));
xhr({
uri: `https://projects.scratch.mit.edu/internalapi/project/${id}/get/`
}, (err, res, body) => {
if (err) return callback(err);
callback(null, body);
});
}
}
ProjectLoader.DEFAULT_PROJECT_DATA = require('./empty-project.json');
module.exports = new ProjectLoader();