I've read a few pages on extending a module.They revolve around using a functional form of a module and I get how to do it (from https://toddmotto.com/mastering-the-module-pattern/)
var Module = (function () {
  return {
    publicMethod: function () {
      // code
    }
  };
})();
but what I have is two modules like this
util.js
module.exports = {
    thing1: function() {// do thing1 stuff }      
}
extend.js  a package I can't change (from npm)
module.exports = {
    thing2: function() {// do thing2 one stuff}
}
now pretending I am going to use my util.js module
const _ = require('util.js);
let catin = _.thing1;  // that's easy
let thehat = _.thing2;.  // this was util.js extended.
I could in util.js just do this.
const ex = require('extend.js')
module.exports = {
    thing1: function() {// do thing1 stuff }
    thing2: ex.thing2
}
and that's ok since extend.js only has one function/method to extend, but I would like to extend this into my util library https://github.com/dodekeract/bitwise/blob/master/index.js but it has 22! items to extend.
There must be a better slicker way yes?
I'm open to refactoring my util.js file (but not hand coding each extension like I showed) so it extends automatically but obviously can't refactor that package I'm not maintaining, short of a fork...ugh. Also not interested in adding a sub deal like
  ex: ex 
_.ex.thing2  
Ideas?
 
    