UNPKG

@jsprismarine/raknet

Version:
71 lines (70 loc) 4.62 kB
"use strict"; Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } }); //#region src/utils/InetAddress.ts /** * Represents an IP address and port. */ var InetAddress = class { address; port; version; get [Symbol.toStringTag]() { return `InetAddress(${this.toString()})`; } /** * Constructs an InetAddress. * @param {string} address - The IP address. * @param {number} port - The port. * @param {number} [version=4] - The IP version. * @example * ```typescript * const address = new InetAddress('0.0.0.0', 19132); * ``` */ constructor(address, port, version = 4) { this.address = address; this.port = port; this.version = version; } /** * Returns the string representation of the IP address and port. * @returns {string} The string representation of the IP address and port. */ toString() { return `${this.address}:${this.port}`; } /** * Returns the IP address. * @returns {string} The IP address. */ getAddress() { return this.address; } /** * Returns the port. * @returns {number} The port. */ getPort() { return this.port; } /** * Returns the IP version. * @returns {number} The IP version. */ getVersion() { return this.version; } /** * Returns the token of the IP address and port. * @returns {string} The token of the IP address and port. */ toToken() { return `${this.address}:${this.port}`; } }; //#endregion exports.default = InetAddress; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW5ldEFkZHJlc3MuY2pzLmNqcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvSW5ldEFkZHJlc3MudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBSZXByZXNlbnRzIGFuIElQIGFkZHJlc3MgYW5kIHBvcnQuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEluZXRBZGRyZXNzIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFkZHJlc3M6IHN0cmluZztcbiAgICBwcml2YXRlIHJlYWRvbmx5IHBvcnQ6IG51bWJlcjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHZlcnNpb246IG51bWJlcjtcblxuICAgIHB1YmxpYyBnZXQgW1N5bWJvbC50b1N0cmluZ1RhZ10oKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGBJbmV0QWRkcmVzcygke3RoaXMudG9TdHJpbmcoKX0pYDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDb25zdHJ1Y3RzIGFuIEluZXRBZGRyZXNzLlxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBhZGRyZXNzIC0gVGhlIElQIGFkZHJlc3MuXG4gICAgICogQHBhcmFtIHtudW1iZXJ9IHBvcnQgLSBUaGUgcG9ydC5cbiAgICAgKiBAcGFyYW0ge251bWJlcn0gW3ZlcnNpb249NF0gLSBUaGUgSVAgdmVyc2lvbi5cbiAgICAgKiBAZXhhbXBsZVxuICAgICAqIGBgYHR5cGVzY3JpcHRcbiAgICAgKiBjb25zdCBhZGRyZXNzID0gbmV3IEluZXRBZGRyZXNzKCcwLjAuMC4wJywgMTkxMzIpO1xuICAgICAqIGBgYFxuICAgICAqL1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihhZGRyZXNzOiBzdHJpbmcsIHBvcnQ6IG51bWJlciwgdmVyc2lvbiA9IDQpIHtcbiAgICAgICAgdGhpcy5hZGRyZXNzID0gYWRkcmVzcztcbiAgICAgICAgdGhpcy5wb3J0ID0gcG9ydDtcbiAgICAgICAgdGhpcy52ZXJzaW9uID0gdmVyc2lvbjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIElQIGFkZHJlc3MgYW5kIHBvcnQuXG4gICAgICogQHJldHVybnMge3N0cmluZ30gVGhlIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGUgSVAgYWRkcmVzcyBhbmQgcG9ydC5cbiAgICAgKi9cbiAgICBwdWJsaWMgdG9TdHJpbmcoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGAke3RoaXMuYWRkcmVzc306JHt0aGlzLnBvcnR9YDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBJUCBhZGRyZXNzLlxuICAgICAqIEByZXR1cm5zIHtzdHJpbmd9IFRoZSBJUCBhZGRyZXNzLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRBZGRyZXNzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmFkZHJlc3M7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0aGUgcG9ydC5cbiAgICAgKiBAcmV0dXJucyB7bnVtYmVyfSBUaGUgcG9ydC5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0UG9ydCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5wb3J0O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdGhlIElQIHZlcnNpb24uXG4gICAgICogQHJldHVybnMge251bWJlcn0gVGhlIElQIHZlcnNpb24uXG4gICAgICovXG4gICAgcHVibGljIGdldFZlcnNpb24oKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmVyc2lvbjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSB0b2tlbiBvZiB0aGUgSVAgYWRkcmVzcyBhbmQgcG9ydC5cbiAgICAgKiBAcmV0dXJucyB7c3RyaW5nfSBUaGUgdG9rZW4gb2YgdGhlIElQIGFkZHJlc3MgYW5kIHBvcnQuXG4gICAgICovXG4gICAgcHVibGljIHRvVG9rZW4oKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGAke3RoaXMuYWRkcmVzc306JHt0aGlzLnBvcnR9YDtcbiAgICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUdBLElBQXFCLGNBQXJCLE1BQWlDO0NBQzdCO0NBQ0E7Q0FDQTtDQUVBLEtBQVksT0FBTyxlQUF1QjtFQUN0QyxPQUFPLGVBQWUsS0FBSyxTQUFTLEVBQUU7Q0FDMUM7Ozs7Ozs7Ozs7O0NBWUEsWUFBbUIsU0FBaUIsTUFBYyxVQUFVLEdBQUc7RUFDM0QsS0FBSyxVQUFVO0VBQ2YsS0FBSyxPQUFPO0VBQ1osS0FBSyxVQUFVO0NBQ25COzs7OztDQU1BLFdBQTBCO0VBQ3RCLE9BQU8sR0FBRyxLQUFLLFFBQVEsR0FBRyxLQUFLO0NBQ25DOzs7OztDQU1BLGFBQTRCO0VBQ3hCLE9BQU8sS0FBSztDQUNoQjs7Ozs7Q0FNQSxVQUF5QjtFQUNyQixPQUFPLEtBQUs7Q0FDaEI7Ozs7O0NBTUEsYUFBNEI7RUFDeEIsT0FBTyxLQUFLO0NBQ2hCOzs7OztDQU1BLFVBQXlCO0VBQ3JCLE9BQU8sR0FBRyxLQUFLLFFBQVEsR0FBRyxLQUFLO0NBQ25DO0FBQ0oifQ==