UNPKG

@nativecode/plex

Version:
38 lines 1.63 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.PlexCloud = void 0; var deepmerge_1 = __importDefault(require("deepmerge")); var url_1 = require("url"); var lincoln_debug_1 = require("@nofrills/lincoln-debug"); var PlexClient_1 = require("../PlexClient"); var SystemResource_1 = require("./Resources/SystemResource"); var packageInfo = require('../../package.json'); var DefaultPlexOptions = { app: { name: 'PlexCloud', version: packageInfo.version, }, }; var PlexCloud = /** @class */ (function () { function PlexCloud(options, logger) { if (options === void 0) { options = {}; } this.log = logger ? logger.extend('plexcloud') : lincoln_debug_1.CreateLogger('plexcloud'); this.options = deepmerge_1.default.all([DefaultPlexOptions, options]); var headers = [ { name: 'X-Plex-Client-Identifier', value: this.options.app.name }, { name: 'X-Plex-Product', value: 'PlexCloud' }, { name: 'X-Plex-Version', value: this.options.app.version }, ]; var url = new url_1.URL('https://plex.tv'); var resoptions = { headers: headers }; this.accounts = new PlexClient_1.AccountResource(url, this.log, resoptions); this.system = new SystemResource_1.SystemResource(url, this.log, resoptions); this.log.trace(this.options); } return PlexCloud; }()); exports.PlexCloud = PlexCloud; //# sourceMappingURL=PlexCloud.js.map