@aws-amplify/core
Version:
Core category of aws-amplify
1 lines • 2.44 kB
Source Map (JSON)
{"version":3,"file":"getDeviceName.mjs","sources":["../../../../src/utils/deviceName/getDeviceName.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Retrieves the device name using the User-Agent Client Hints API if available,\n * falling back to the traditional userAgent string if not.\n *\n * @returns {Promise<string>} A promise that resolves with a string representing the device name.\n *\n * Example Output:\n * navigator.userAgentData:\n * 'macOS 14.2.1 arm macOS Not A(Brand/99.0.0.0;Google Chrome/121.0.6167.160;Chromium/121.0.6167.160'\n * navigator.userAgent:\n * 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:109.0) Gecko/20100101 Firefox/115.0'\n */\nexport const getDeviceName = async () => {\n const { userAgentData } = navigator;\n if (!userAgentData)\n return navigator.userAgent;\n const { platform = '', platformVersion = '', model = '', architecture = '', fullVersionList = [], } = await userAgentData.getHighEntropyValues([\n 'platform',\n 'platformVersion',\n 'architecture',\n 'model',\n 'fullVersionList',\n ]);\n const versionList = fullVersionList\n .map((v) => `${v.brand}/${v.version}`)\n .join(';');\n const deviceName = [\n platform,\n platformVersion,\n architecture,\n model,\n platform,\n versionList,\n ]\n .filter(value => value)\n .join(' ');\n return deviceName || navigator.userAgent;\n};\n"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,aAAa,GAAG,YAAY;AACzC,IAAI,MAAM,EAAE,aAAa,EAAE,GAAG,SAAS;AACvC,IAAI,IAAI,CAAC,aAAa;AACtB,QAAQ,OAAO,SAAS,CAAC,SAAS;AAClC,IAAI,MAAM,EAAE,QAAQ,GAAG,EAAE,EAAE,eAAe,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,YAAY,GAAG,EAAE,EAAE,eAAe,GAAG,EAAE,GAAG,GAAG,MAAM,aAAa,CAAC,oBAAoB,CAAC;AACnJ,QAAQ,UAAU;AAClB,QAAQ,iBAAiB;AACzB,QAAQ,cAAc;AACtB,QAAQ,OAAO;AACf,QAAQ,iBAAiB;AACzB,KAAK,CAAC;AACN,IAAI,MAAM,WAAW,GAAG;AACxB,SAAS,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;AAC7C,SAAS,IAAI,CAAC,GAAG,CAAC;AAClB,IAAI,MAAM,UAAU,GAAG;AACvB,QAAQ,QAAQ;AAChB,QAAQ,eAAe;AACvB,QAAQ,YAAY;AACpB,QAAQ,KAAK;AACb,QAAQ,QAAQ;AAChB,QAAQ,WAAW;AACnB;AACA,SAAS,MAAM,CAAC,KAAK,IAAI,KAAK;AAC9B,SAAS,IAAI,CAAC,GAAG,CAAC;AAClB,IAAI,OAAO,UAAU,IAAI,SAAS,CAAC,SAAS;AAC5C;;;;"}