github-tools / github-tools/github
Requestable.js `require('js-base64')` returns an empty object
- Dominant language
- JavaScript
- Stars
- 3.8k
- Forks
- 809
- PR merge metrics
- No merged PRs in 30d
Description
Hey guys, I'm facing a strange issue. On my distribution Requestable.js, `require('js-base64')` returns an empty object.
Line 15, `node_modules/github-api/dist/components/Requestable.js`
```javascript
var _jsBase = require('js-base64');
console.log(_jsBase) // {}
```
So then, when it tries to encode the username and password using base64 in line 96:
```javascript
this.__authorizationHeader = 'Basic ' + _jsBase.Base64.encode(auth.username + ':' + auth.password);
```
Of course that it fails as `_jsBase` doesn't have a property `Base64`. Do you know what might be going on?
This is my package.json:
```json
{
"name": "github",
"version": "0.0.0",
"description": "Hello Expo!",
"author": null,
"private": true,
"main": "main.js",
"dependencies": {
"expo": "16.0.0",
"github-api": "^3.0.0",
"react": "16.0.0-alpha.6",
"react-native": "https://github.com/expo/react-native/archive/sdk-16.0.0.tar.gz"
},
"devDependencies": {
"babel-plugin-add-module-exports": "^0.2.1",
"buffer": "^5.0.6"
}
}
```
and `js-base64` seems to be installed correctly.
Thanks!

Contributor guide
No contributing guide indexed for this repository
Research direction
Start in node_modules/github-api/dist/components/Requestable.js at lines 15 and 96, then inspect how the installed js-base64 package exports its Base64 API under the versions in package.json. Reproduce the require result in the reported Expo/React Native setup; done means authentication can construct the Basic authorization header without _jsBase being empty.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- api
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100