The problem is a NodeJS existence test inside tools/file_packager.py
# add Node.js support code, if necessary
node_support_code = ''
if support_node:
node_support_code = r'''
if (typeof process === 'object') {
require('fs').readFile(packageName, function(err, contents) {
if (err) {
errback(err);
} else {
callback(contents.buffer);
}
});
return;
}
typeof process === 'object' fails because a dummy object is created in the browser that defines process
My suggestion is to make this more explicit. i.e.:
const isNode = () => (typeof process !== 'undefined') &&
(typeof process.versions !== 'undefined') &&
(typeof process.versions.node !== 'undefined'));
# add Node.js support code, if necessary
node_support_code = ''
if support_node:
node_support_code = r'''
if (isNode()) {
require('fs').readFile(packageName, function(err, contents) {
if (err) {
errback(err);
} else {
callback(contents.buffer);
}
});
return;
}
The problem is a NodeJS existence test inside
tools/file_packager.pytypeof process === 'object'fails because a dummy object is created in the browser that defines processMy suggestion is to make this more explicit. i.e.: