mirror of
https://github.com/tribufu/node-gamedig
synced 2026-05-06 15:17:36 +00:00
Move to ES6 module (#357)
* Redo imports and exports for lib * Redo imports and exports for bim * Redo imports and exports for games * Remove remaining module.exports * Use export default in lib * Use export default in protocols * Fix import in genreadme.js * Make package module and solve __dirname * Fix minecraft protocol imports * Fix imports on games and make binary runnable * Renamed protocol class exports to lowercase * Export promises class as default * Update README.md to use imports instead of require * Update CHANGELOG to mention the changes. * Remove Valve unused imports * Fix iconv import
This commit is contained in:
parent
b4f6e7fab6
commit
ad9adff06c
64 changed files with 249 additions and 323 deletions
|
|
@ -1,22 +1,8 @@
|
|||
const Path = require('path'),
|
||||
fs = require('fs'),
|
||||
Core = require('../protocols/core');
|
||||
import * as Protocols from '../protocols/index.js'
|
||||
|
||||
class ProtocolResolver {
|
||||
constructor() {
|
||||
this.protocolDir = Path.normalize(__dirname+'/../protocols');
|
||||
}
|
||||
export const getProtocol = (protocolId) => {
|
||||
if(!(protocolId in Protocols))
|
||||
throw Error('Protocol definition file missing: ' + protocolId);
|
||||
|
||||
/**
|
||||
* @returns Core
|
||||
*/
|
||||
create(protocolId) {
|
||||
protocolId = Path.basename(protocolId);
|
||||
const path = this.protocolDir+'/'+protocolId;
|
||||
if(!fs.existsSync(path+'.js')) throw Error('Protocol definition file missing: '+type);
|
||||
const protocol = require(path);
|
||||
return new protocol();
|
||||
}
|
||||
return new Protocols[protocolId];
|
||||
}
|
||||
|
||||
module.exports = ProtocolResolver;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue