@tyrads.com/tyrads-sdk-iframe
Version:
Official TyrAds SDK for NodeJS
36 lines (35 loc) • 1.44 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.init = void 0;
exports.resolveIframeBaseUrl = resolveIframeBaseUrl;
const DEFAULT_API_VERSION = "v4.0";
/**
* Resolves the default iframe base URL for the given API version.
* v3 and earlier are served from the root host (sdk.tyrads.com);
* v4 and later each get a dedicated v{major}.sdk.tyrads.com subdomain.
* Unrecognized version strings fall back to the SDK's current default major.
*/
function resolveIframeBaseUrl(apiVersion) {
const parsed = parseInt(apiVersion.toLowerCase().replace(/^v/, '').split('.')[0], 10);
if (!Number.isNaN(parsed) && parsed <= 3) {
return "https://sdk.tyrads.com";
}
const fallbackMajor = parseInt(DEFAULT_API_VERSION.replace(/^v/, '').split('.')[0], 10);
const major = Number.isNaN(parsed) ? fallbackMajor : parsed;
return `https://v${major}.sdk.tyrads.com`;
}
const init = (config) => {
var _a;
const sdkApiVersion = (_a = config.sdkApiVersion) !== null && _a !== void 0 ? _a : DEFAULT_API_VERSION;
const defaultConfig = {
iFrameBaseUrl: resolveIframeBaseUrl(sdkApiVersion),
sdkApiBaseUrl: "https://api.tyrads.com",
sdkApiVersion,
sdkPlatform: "Web",
apiKey: config.apiKey,
apiSecret: config.apiSecret,
language: "en",
};
return Object.assign(Object.assign({}, defaultConfig), config);
};
exports.init = init;