Uppy: Transloadit error - TypeError: Right-hand side of 'instanceof' is not an object

Created on 19 Jun 2017  路  6Comments  路  Source: transloadit/uppy

Having some issues with the new Transloadit Plugin.

        .use(Tus10, { endpoint: 'http://master.tus.io/files/' })
        //.use(Tus10, { resume: false })  
        .use(Transloadit, {
              params: {
                template_id: 'XXXX',
                auth: {
                  key: 'XXXX'
                },
              },
              waitForEncoding: true,
            })
        .use(Dashboard, {
          target: '.dashboard',
          inline: true,
          showProgressDetails: true
        })
       .use(Informer, { target: Dashboard })
       .run();

image

A closer inspection of the console I did note the FS readstream is undefined.
image

Most helpful comment

All 6 comments

Thanks for the report!

That instanceof check is in the Node.js version of the tus-js-client. It should normally be replaced by the browser version by your bundler according to the package.json "browser" field.

How are you bundling your code for the browser?

Thanks @goto-bus-stop

I'm using meteor so it's handling the bundling. I'm not sure how to go deep into how it works.

I had a look at the package in tus-js-client and the browser is pointing to node files. should this be pointing to browser folder?

"name": "tus-js-client",
  "version": "1.4.3",
  "description": "A pure JavaScript client for the tus resumable upload protocol",
  "main": "lib.es5/index.js",
  "jsnext:main": "lib/index.js",
  "browser": {
    "./lib/node/request.js": "./lib/browser/request.js",
    "./lib/node/base64.js": "./lib/browser/base64.js",
    "./lib/node/storage.js": "./lib/browser/storage.js",
    "./lib/node/source.js": "./lib/browser/source.js",
    "./lib.es5/node/request.js": "./lib.es5/browser/request.js",
    "./lib.es5/node/base64.js": "./lib.es5/browser/base64.js",
    "./lib.es5/node/storage.js": "./lib.es5/browser/storage.js",
    "./lib.es5/node/source.js": "./lib.es5/browser/source.js"
  },

@Acconut, Marius, could you take a look at this too

tracked it down to a Meteor issue with the "Browser" field.

https://github.com/meteor/meteor/issues/6890

changing the imports in the package work

var _request = require("./browser/request");

var _source = require("./browser/source");

var _base = require("./browser/base64");

here is my working example..
https://github.com/payner35/tus-js-client

Nice work @payner35! I'll leave the deep dive to @Acconut but wanted to thank you already for your part, and offer the diff for convenience: https://github.com/tus/tus-js-client/compare/master...payner35:master

Was this page helpful?
0 / 5 - 0 ratings