UNPKG

@looker/sdk-rtl

Version:
59 lines 3.15 kB
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); } function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } import { agentPrefix, defaultTimeout } from './transport'; import { boolDefault, isTrue, unquote } from './constants'; export var ApiConfigMap = envPrefix => { if (!envPrefix) return {}; return { base_url: "".concat(envPrefix, "_BASE_URL"), client_id: "".concat(envPrefix, "_CLIENT_ID"), client_secret: "".concat(envPrefix, "_CLIENT_SECRET"), timeout: "".concat(envPrefix, "_TIMEOUT"), verify_ssl: "".concat(envPrefix, "_VERIFY_SSL") }; }; export var strBadConfiguration = "".concat(agentPrefix, " configuration error:\nMissing required configuration values like base_url\n"); export var DefaultSettings = () => ({ agentTag: agentPrefix, base_url: '', timeout: defaultTimeout, verify_ssl: true }); export var configValue = (values, name, envKey) => { var val = values[envKey[name]] || values[name]; return typeof val === 'string' ? unquote(val) : val; }; export var ValueSettings = (values, envPrefix) => { var settings = DefaultSettings(); var envKey = ApiConfigMap(envPrefix); settings.base_url = configValue(values, 'base_url', envKey) || settings.base_url; settings.verify_ssl = boolDefault(configValue(values, 'verify_ssl', envKey), true); settings.agentTag = "TS-SDK"; var timeout = configValue(values, 'timeout', envKey); settings.timeout = timeout ? parseInt(timeout, 10) : defaultTimeout; return settings; }; export class ApiSettings { constructor(settings) { var _settings$verify_ssl, _settings$timeout; _defineProperty(this, "base_url", ''); _defineProperty(this, "verify_ssl", true); _defineProperty(this, "timeout", defaultTimeout); _defineProperty(this, "agentTag", agentPrefix); this.base_url = 'base_url' in settings ? unquote(settings.base_url) : this.base_url; this.verify_ssl = 'verify_ssl' in settings ? isTrue(unquote((_settings$verify_ssl = settings.verify_ssl) === null || _settings$verify_ssl === void 0 ? void 0 : _settings$verify_ssl.toString())) : this.verify_ssl; this.timeout = 'timeout' in settings ? parseInt(unquote((_settings$timeout = settings.timeout) === null || _settings$timeout === void 0 ? void 0 : _settings$timeout.toString()), 10) : this.timeout; if ('agentTag' in settings && settings.agentTag) this.agentTag = settings.agentTag; if (!this.isConfigured()) { throw new Error(strBadConfiguration); } } isConfigured() { return !!this.base_url; } readConfig(_section) { return {}; } } //# sourceMappingURL=apiSettings.js.map