TypeError: JSSoup is not a constructor

В чем ошибка?

Код ECMAScript-модуля (mjs):

import request from 'request';
import JSSoup from 'jssoup';
request.get(url,function(error,response,body ){
    console.error('error:',error);
    console.log('statusCode:',response && response.statusCode);
    console.log('body:',body)
    var soup=new JSSoup(body);
})

Ошибка:

var soup=new JSSoup(body);
             ^

TypeError: JSSoup is not a constructor

Ответы (1 шт):

Автор решения: nörbörnën

jssoup.mjs

// @ts-check
import $JSSoup from 'jssoup';
// @ts-ignore
const JSSoup = $JSSoup.default;

const soup = new JSSoup('<html><head>hello</head></html>');
var tag = soup.find('head');
console.log(tag);

вывод:

<ref *2> SoupTag {
  parent: <ref *1> SoupTag {
    parent: JSSoup {
      parent: null,
      previousElement: null,
      nextElement: [Circular *1],
      name: '[document]',
      contents: [Array],
      attrs: {},
      hidden: true,
      builder: [TreeBuilder]
    },
    previousElement: JSSoup {
      parent: null,
      previousElement: null,
      nextElement: [Circular *1],
      name: '[document]',
      contents: [Array],
      attrs: {},
      hidden: true,
      builder: [TreeBuilder]
    },
    nextElement: [Circular *2],
    name: 'html',
    contents: [ [Circular *2] ],
    attrs: {},
    hidden: false,
    builder: TreeBuilder { EMPTY_ELEMENT_TAGS: [Set] }
  },
...
→ Ссылка