UNPKG

@aws-amplify/core

Version:
72 lines (71 loc) 2.76 kB
"use strict"; // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0 var __read = (this && this.__read) || function (o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error: error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.getAmplifyUserAgent = exports.getAmplifyUserAgentObject = exports.Platform = void 0; var types_1 = require("./types"); var version_1 = require("./version"); var detectFramework_1 = require("./detectFramework"); var BASE_USER_AGENT = "aws-amplify"; var PlatformBuilder = /** @class */ (function () { function PlatformBuilder() { this.userAgent = "".concat(BASE_USER_AGENT, "/").concat(version_1.version); } Object.defineProperty(PlatformBuilder.prototype, "framework", { get: function () { return (0, detectFramework_1.detectFramework)(); }, enumerable: false, configurable: true }); Object.defineProperty(PlatformBuilder.prototype, "isReactNative", { get: function () { return (this.framework === types_1.Framework.ReactNative || this.framework === types_1.Framework.Expo); }, enumerable: false, configurable: true }); PlatformBuilder.prototype.observeFrameworkChanges = function (fcn) { (0, detectFramework_1.observeFrameworkChanges)(fcn); }; return PlatformBuilder; }()); exports.Platform = new PlatformBuilder(); var getAmplifyUserAgentObject = function (_a) { var _b = _a === void 0 ? {} : _a, category = _b.category, action = _b.action, framework = _b.framework; var userAgent = [[BASE_USER_AGENT, version_1.version]]; if (category) { userAgent.push([category, action]); } userAgent.push(['framework', (0, detectFramework_1.detectFramework)()]); return userAgent; }; exports.getAmplifyUserAgentObject = getAmplifyUserAgentObject; var getAmplifyUserAgent = function (customUserAgentDetails) { var userAgent = (0, exports.getAmplifyUserAgentObject)(customUserAgentDetails); var userAgentString = userAgent .map(function (_a) { var _b = __read(_a, 2), agentKey = _b[0], agentValue = _b[1]; return "".concat(agentKey, "/").concat(agentValue); }) .join(' '); return userAgentString; }; exports.getAmplifyUserAgent = getAmplifyUserAgent;