Commit graph

28 commits

Author SHA1 Message Date
Christopher Willis-Ford
88dada5cb8 Use UMD for web ouput
UMD output seems to be working well for the storage module; this change
adjusts the web-targeted build outputs of this module to use it as well.
Also, common output properties are now specified in the base config and
removed from each individual config.
2017-11-27 20:07:31 -08:00
Eric Rosenbaum
614708d48c
Merge pull request #785 from ericrosenbaum/feature/load-drums-from-storage
Load drum sounds from storage and play them
2017-11-20 13:56:23 -05:00
Paul Kaplan
26771e9e0c Only uglify if building for production.
Uglify was trying to run always, including the dev-server output, which
included es6 that broke uglifier.
2017-11-17 09:59:09 -05:00
Eric Rosenbaum
f5b25a190e Add assets (drum sounds) for music extension 2017-11-13 16:23:10 -05:00
Chris Willis-Ford
d8a3e659d5 Playground: use UMD to load storage as global (#722)
* Playground: use UMD to load storage as global

It appears that `expose-loader` is not compatible with WebPack's UMD
exporter, so the VM playground broke when I converted `scratch-storage`
to use UMD. This change causes the playground to load `scratch-storage`
as an independent script and relies on its UMD loader to expose it as a
global. Bonus points: we get better source mapping this way.

* Playground: tell eslint about global ScratchStorage
2017-10-17 17:40:11 -04:00
Ray Schamp
bafdf8d9f2 Use ES6 linting rules in the project root
Update all tests for `no-var` and `prefer-arrow-callback` (using `--fix`)
2017-04-24 15:37:58 -04:00
Ray Schamp
e96807b399 Merge branch 'develop' of https://github.com/LLK/scratch-vm into es6
# Conflicts:
#	src/import/sb2import.js
#	src/virtual-machine.js
#	webpack.config.js
2017-04-19 17:54:31 -04:00
Ray Schamp
9be29439b1 Fix webpack for ES6 2017-04-17 19:55:34 -04:00
Christopher Willis-Ford
0402b7ed8e Standardize repository settings
Set dev tool to `cheap-module-source-map`.
2017-04-11 11:38:58 -04:00
Christopher Willis-Ford
c23e9c6bf8 Load projects & costumes through scratch-storage
This also sets up the framework to load sounds through scratch-storage,
to be finished in a later change.
2017-03-09 11:25:55 -08:00
Christopher Willis-Ford
243d68f88b Use Webpack to generate the whole playground
The previous configuration mixed Webpack output with static content in
order to create the playground. This change moves that static content
from `/playground/` into `/src/playground/` and adds a Webpack rule to
copy it into the playground as part of the build.

On the surface this might seem unnecessary, but it provides at least two
benefits:
- It's no longer possible to accidentally load stale build output
  through `webpack-dev-server` in the event of a misconfiguration. This
  was very easy in the previous configuration, and might in fact be the
  only way that `webpack-dev-server` ever worked for this repository.
- It's simpler to ensure that various rules apply to the hand-authored
  content and not build outputs. This includes lint rules, `.gitignore`,
  IDE symbol search paths, etc.
2017-02-10 14:21:37 -08:00
Ray Schamp
a6568c4bf2 Update webpack config for webpack 2
* `module.loaders` -> `module.rules`
* loaders need `-loader` suffix
* `json-loader` is enabled by default
* `UglifyJsPlugin`'s `compress.warning` setting is false by default
2017-02-01 16:27:55 -05:00
Chris Willis-Ford
9b04392211 Move build outputs into a dist/ subdirectory (#375)
* Move Node output: /dist.js => /dist/node/scratch-vm.js
* Move web output: /vm{.js,.min.js} => /dist/web/scratch-vm{.js,.min.js}
* Update build output references in package.json and the playground's index.html
* Move the VirtualMachine class out of index.js into its own file, referenced by index.js. The VirtualMachine class is otherwise unchanged.
* Add .gitattributes rules for new file types which were added to this repository without specifying their text/binary attributes
* Turn on source maps in webpack and add corresponding .gitignore rule
2017-01-13 13:34:26 -08:00
Eric Rosenbaum
fec9e5b91a add audio to playground 2017-01-06 11:49:25 -05:00
Ray Schamp
9859c3d91a Merge pull request #335 from rschamp/feature/port
Fix dev port number
2016-11-21 14:32:44 -05:00
Ray Schamp
5b36e3cacd Fix dev port number
scratch-www: 8333
scratch-api: 8491
scratch-gui: 8601

Clearly the port should be 8073 for scratch-vm.
2016-11-21 14:25:08 -05:00
Tim Mickel
16c405d559
Remove assets copy plugin 2016-10-31 10:41:16 -04:00
Ray Schamp
7712b2902f Fix quote-props 2016-10-24 11:02:19 -04:00
TheBrokenRail
ebe8f63232 Fix 2016-10-13 20:01:17 -04:00
TheBrokenRail
1d99efbcd8 Copy Assets To Playground With Webpack 2016-10-12 20:58:03 -04:00
Ray Schamp
6b1d2a8eb6 Update dev server to only serve the playground
Now that we don't rely on node_modules, we can update the content base to just `playground` and just look at it from http://localhost:8080/
2016-09-26 10:04:47 -04:00
Ray Schamp
a99f9ad5ff Provide playground dependencies with webpack
This confines all the files the playground needs to the playground directory.
2016-09-26 09:42:37 -04:00
Ray Schamp
e689664733 Build the module to be imported
This puts the details of the loaders needed to build index.js out of the concern of the packages that require it.
2016-09-20 16:35:11 -04:00
Ray Schamp
fa10a2279a Only expose VirtualMachine to window for bundles 2016-09-20 10:29:47 -04:00
Tim Mickel
08b40b4d1d Drop worker support (#175)
* Take out worker code

* Fix Blockly event listening (minus worker)

* Recompile Sept. 13
2016-09-13 17:49:45 -04:00
Tim Mickel
b97974e2ac Implement WebWorker interface 2016-06-21 15:30:27 -04:00
Andrew Sliwinski
981b85e78f AST create / change / move / delete from blockly 2016-04-26 09:49:52 -04:00
Andrew Sliwinski
f9f47ed103 WIP 2016-04-18 17:20:30 -04:00