Skip to content
This repository was archived by the owner on Aug 11, 2021. It is now read-only.

Commit 4042ad0

Browse files
deathcapzkat
authored andcommitted
index.js: Remove dependency on synchronous fs operations
PR-URL: #137 Credit: @deathcap Reviewed-By: @zkat
1 parent faacda9 commit 4042ad0

File tree

1 file changed

+25
-31
lines changed

1 file changed

+25
-31
lines changed

index.js

Lines changed: 25 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,6 @@
22

33
module.exports = RegClient
44

5-
var join = require('path').join
6-
var fs = require('graceful-fs')
7-
85
var npmlog
96
try {
107
npmlog = require('npmlog')
@@ -48,32 +45,29 @@ function RegClient (config) {
4845
delete this.config.log
4946

5047
var client = this
51-
fs.readdirSync(join(__dirname, 'lib')).forEach(function (f) {
52-
var entry = join(__dirname, 'lib', f)
53-
54-
// lib/group-name/operation.js -> client.groupName.operation
55-
var stat = fs.statSync(entry)
56-
if (stat.isDirectory()) {
57-
var groupName = f.replace(/-([a-z])/gi, dashToCamel)
58-
fs.readdirSync(entry).forEach(function (f) {
59-
if (!f.match(/\.js$/)) return
60-
61-
if (!client[groupName]) {
62-
// keep client.groupName.operation from stomping client.operation
63-
client[groupName] = Object.create(client)
64-
}
65-
var name = f.replace(/\.js$/, '').replace(/-([a-z])/gi, dashToCamel)
66-
client[groupName][name] = require(join(entry, f))
67-
})
68-
return
69-
}
70-
71-
if (!f.match(/\.js$/)) return
72-
var name = f.replace(/\.js$/, '').replace(/-([a-z])/gi, dashToCamel)
73-
client[name] = require(entry)
74-
})
75-
}
76-
77-
function dashToCamel (_, l) {
78-
return l.toUpperCase()
48+
client.access = require('./lib/access')
49+
client.adduser = require('./lib/adduser')
50+
client.attempt = require('./lib/attempt')
51+
client.authify = require('./lib/authify')
52+
client.deprecate = require('./lib/deprecate')
53+
client.distTags = Object.create(client)
54+
client.distTags.add = require('./lib/dist-tags/add')
55+
client.distTags.fetch = require('./lib/dist-tags/fetch')
56+
client.distTags.rm = require('./lib/dist-tags/rm')
57+
client.distTags.set = require('./lib/dist-tags/set')
58+
client.distTags.update = require('./lib/dist-tags/update')
59+
client.fetch = require('./lib/fetch')
60+
client.get = require('./lib/get')
61+
client.initialize = require('./lib/initialize')
62+
client.logout = require('./lib/logout')
63+
client.ping = require('./lib/ping')
64+
client.publish = require('./lib/publish')
65+
client.request = require('./lib/request')
66+
client.sendAnonymousCLIMetrics = require('./lib/send-anonymous-CLI-metrics')
67+
client.star = require('./lib/star')
68+
client.stars = require('./lib/stars')
69+
client.tag = require('./lib/tag')
70+
client.team = require('./lib/team')
71+
client.unpublish = require('./lib/unpublish')
72+
client.whoami = require('./lib/whoami')
7973
}

0 commit comments

Comments
 (0)