@awhere/api
Version:
The awesome aWhere API for JavaScript.
80 lines • 2.67 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var axios_1 = __importDefault(require("axios"));
var socket_io_client_1 = __importDefault(require("socket.io-client"));
var utils_1 = require("./utils");
var APIKey = /** @class */ (function () {
function APIKey(props) {
this._key = props.key;
this._aWhereUrl = props.aWhereUrl;
this._locale = props.locale || undefined;
}
Object.defineProperty(APIKey.prototype, "key", {
get: function () {
return this._key;
},
set: function (value) {
this._key = value;
},
enumerable: false,
configurable: true
});
Object.defineProperty(APIKey.prototype, "aWhereUrl", {
get: function () {
return this._aWhereUrl;
},
set: function (value) {
this._aWhereUrl = value;
},
enumerable: false,
configurable: true
});
Object.defineProperty(APIKey.prototype, "locale", {
get: function () {
return this._locale;
},
set: function (value) {
this._locale = value;
},
enumerable: false,
configurable: true
});
Object.defineProperty(APIKey.prototype, "request", {
get: function () {
if (!this._request) {
this._request = axios_1.default.create({
baseURL: "".concat(this._aWhereUrl).concat(utils_1.endpoint.api, "/"),
headers: {
'X-API-KEY': "".concat(this._key),
},
});
}
return this._request;
},
enumerable: false,
configurable: true
});
Object.defineProperty(APIKey.prototype, "socket", {
get: function () {
if (!this._socket) {
var url = new URL("".concat(this._aWhereUrl).concat(utils_1.endpoint.api, "/realtime"));
var path = url.pathname.replace(/(\/\/)/gi, '/').replace(/(\/$)/, '');
this._socket = (0, socket_io_client_1.default)(url.origin, {
path: path,
query: { key: this._key },
transports: ['websocket'],
autoConnect: false,
});
}
return this._socket;
},
enumerable: false,
configurable: true
});
return APIKey;
}());
exports.default = APIKey;
//# sourceMappingURL=APIKey.js.map