Since 08e59d2, shopify no longer published .esnext files for webpack
so we can drop these rules. However, when we do this, there is still
another .mjs issue that needs to be worked around.
When an environment variable is not defined, `process.env` returns
`undefined` which was used literally as text. Fix by using an empty
string if `process.env` returns something falsy.
Fixes: https://github.com/pybricks/support/issues/560
This replaces the ace editor with the monaco editor. It fixes quite a
few small paper-cut bugs and should be easier to add code completion
to in the future.
Many of the snippets are omitted but can be added back later if needed.
Otherwise, we have tried to preserve the existing look and feel as much
as possible.
This grabs the docs via the @pybricks/ide-docs package and copies them
to the build directory with copy-webpack-plugin.
The service worker automatically picks up these files for precache
since they go through webpack.
This package is a bit more versatile. For example, it lets us include
the app's package too.
webpack-license-plugin had a bug that made it unusable anyway.
This lets us modify some config without ejecting create-react-app.
This allows us to target esnext which works around a number of issues
with multi-targeted packages like blueprintsjs and react-i18n.