chayns-api 2.5.2 → 2.5.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -66,6 +66,7 @@ let ScreenSize = exports.ScreenSize = function (ScreenSize) {
66
66
  let AppFlavor = exports.AppFlavor = function (AppFlavor) {
67
67
  AppFlavor["None"] = "none";
68
68
  AppFlavor["Chayns"] = "chayns";
69
+ AppFlavor["Electron"] = "electron";
69
70
  return AppFlavor;
70
71
  }({});
71
72
  let AccessMode = exports.AccessMode = function (AccessMode) {
@@ -251,6 +252,7 @@ let AppName = exports.AppName = function (AppName) {
251
252
  AppName[AppName["Team"] = 8] = "Team";
252
253
  AppName[AppName["CityApp"] = 9] = "CityApp";
253
254
  AppName[AppName["ElectronChayns"] = 10] = "ElectronChayns";
255
+ AppName[AppName["ElectronTeam"] = 11] = "ElectronTeam";
254
256
  return AppName;
255
257
  }({});
256
258
  let BrowserName = exports.BrowserName = function (BrowserName) {
@@ -12,26 +12,39 @@ const getDeviceInfo = (userAgent, acceptHeader, {
12
12
  var _match$groups, _match$groups2, _customMatch$groups, _browser$version$spli, _browser$version, _uaParser$getOS, _uaParser$getOS2, _uaParser$getOS3;
13
13
  const uaParser = new _uaParserJs.UAParser(userAgent);
14
14
  let appName = _IChaynsReact.AppName.Unknown;
15
- const match = /(?:my)?chayns\/(?<version>\d+).*(?<siteId>\d{5}-\d{5})/i.exec(userAgent);
16
- const customMatch = /\s(?<name>intercom|sidekick|team|cityApp|electron-chayns|electron-d3sc)\/(?<version>\d+)/i.exec(userAgent);
15
+ let appFlavor = _IChaynsReact.AppFlavor.None;
16
+ const match = /(?:^|\s)(?:my)?chayns\/(?<version>\d+).*(?<siteId>\d{5}-\d{5})/i.exec(userAgent);
17
+ const customMatch = /\s(?<name>intercom|sidekick|team|cityApp|electron-chayns|electron-d3sc|electron-team)\/(?<version>\d+)/i.exec(userAgent);
17
18
  if (/\sintercom\/\d+/i.test(userAgent)) {
18
19
  appName = _IChaynsReact.AppName.TobitChat;
20
+ appFlavor = _IChaynsReact.AppFlavor.Chayns;
19
21
  } else if (/\ssidekick\/\d+/i.test(userAgent)) {
20
22
  appName = _IChaynsReact.AppName.Sidekick;
23
+ appFlavor = _IChaynsReact.AppFlavor.Chayns;
21
24
  } else if (/\steam\/\d+/i.test(userAgent)) {
22
25
  appName = _IChaynsReact.AppName.Team;
26
+ appFlavor = _IChaynsReact.AppFlavor.Chayns;
23
27
  } else if (/\scityApp\/\d+/i.test(userAgent)) {
24
28
  appName = _IChaynsReact.AppName.CityApp;
29
+ appFlavor = _IChaynsReact.AppFlavor.Chayns;
25
30
  } else if ((match === null || match === void 0 || (_match$groups = match.groups) === null || _match$groups === void 0 ? void 0 : _match$groups.siteId) === '60021-08989') {
26
31
  appName = _IChaynsReact.AppName.Chayns;
32
+ appFlavor = _IChaynsReact.AppFlavor.Chayns;
27
33
  } else if ((match === null || match === void 0 || (_match$groups2 = match.groups) === null || _match$groups2 === void 0 ? void 0 : _match$groups2.siteId) === '77892-10814') {
28
34
  appName = _IChaynsReact.AppName.David;
35
+ appFlavor = _IChaynsReact.AppFlavor.Chayns;
29
36
  } else if (match) {
30
37
  appName = _IChaynsReact.AppName.Location;
38
+ appFlavor = _IChaynsReact.AppFlavor.Chayns;
31
39
  } else if (/dface|h96pp|h96max|jabiru|chaynsterminal|wayter|odroidn2p|chayns-runtime-custom/i.test(userAgent)) {
32
40
  appName = _IChaynsReact.AppName.ChaynsLauncher;
41
+ appFlavor = _IChaynsReact.AppFlavor.Chayns;
33
42
  } else if (/electron-chayns|electron-d3sc/i.test(userAgent)) {
34
43
  appName = _IChaynsReact.AppName.ElectronChayns;
44
+ appFlavor = _IChaynsReact.AppFlavor.Electron;
45
+ } else if (/electron-team/i.test(userAgent)) {
46
+ appName = _IChaynsReact.AppName.ElectronTeam;
47
+ appFlavor = _IChaynsReact.AppFlavor.Electron;
35
48
  }
36
49
  let appVersion = match !== null && match !== void 0 && match.groups ? Number.parseInt(match.groups.version, 10) : NaN;
37
50
  if (customMatch !== null && customMatch !== void 0 && (_customMatch$groups = customMatch.groups) !== null && _customMatch$groups !== void 0 && _customMatch$groups.version) {
@@ -47,7 +60,7 @@ const getDeviceInfo = (userAgent, acceptHeader, {
47
60
  };
48
61
  result.app = {
49
62
  name: appName,
50
- flavor: appName === _IChaynsReact.AppName.Unknown || appName === _IChaynsReact.AppName.ElectronChayns ? _IChaynsReact.AppFlavor.None : _IChaynsReact.AppFlavor.Chayns,
63
+ flavor: appFlavor,
51
64
  version: match !== null && match !== void 0 && match.groups ? Number.parseInt(match.groups.version, 10) : NaN,
52
65
  appVersion,
53
66
  callVersion: match !== null && match !== void 0 && match.groups ? Number.parseInt(match.groups.version, 10) : NaN
@@ -61,7 +74,7 @@ const getDeviceInfo = (userAgent, acceptHeader, {
61
74
  result.isTouch = getClientDeviceInfo().isTouch;
62
75
  } else {
63
76
  const screenSizeByUA = /mobi/i.test(userAgent) ? _IChaynsReact.ScreenSize.SM : _IChaynsReact.ScreenSize.XL;
64
- result.screenSize = appName !== _IChaynsReact.AppName.Unknown && appName !== _IChaynsReact.AppName.ElectronChayns ? _IChaynsReact.ScreenSize.XS : screenSizeByUA;
77
+ result.screenSize = appFlavor === _IChaynsReact.AppFlavor.Chayns ? _IChaynsReact.ScreenSize.XS : screenSizeByUA;
65
78
  }
66
79
  return result;
67
80
  };
@@ -3,12 +3,12 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.isAppCallSupported = exports.isApp = void 0;
6
+ exports.isElectron = exports.isAppCallSupported = exports.isApp = void 0;
7
7
  var _calls = require("../calls");
8
8
  var _IChaynsReact = require("../types/IChaynsReact");
9
9
  const isApp = () => {
10
- var _getDevice$app$name, _getDevice$app;
11
- return ((_getDevice$app$name = (_getDevice$app = (0, _calls.getDevice)().app) === null || _getDevice$app === void 0 ? void 0 : _getDevice$app.name) !== null && _getDevice$app$name !== void 0 ? _getDevice$app$name : _IChaynsReact.AppName.Unknown) !== _IChaynsReact.AppName.Unknown;
10
+ var _getDevice$app;
11
+ return ((_getDevice$app = (0, _calls.getDevice)().app) === null || _getDevice$app === void 0 ? void 0 : _getDevice$app.flavor) === _IChaynsReact.AppFlavor.Chayns;
12
12
  };
13
13
  exports.isApp = isApp;
14
14
  const isAppCallSupported = ({
@@ -27,4 +27,9 @@ const isAppCallSupported = ({
27
27
  }
28
28
  return false;
29
29
  };
30
- exports.isAppCallSupported = isAppCallSupported;
30
+ exports.isAppCallSupported = isAppCallSupported;
31
+ const isElectron = () => {
32
+ var _getDevice$app2;
33
+ return ((_getDevice$app2 = (0, _calls.getDevice)().app) === null || _getDevice$app2 === void 0 ? void 0 : _getDevice$app2.flavor) === _IChaynsReact.AppFlavor.Electron;
34
+ };
35
+ exports.isElectron = isElectron;
@@ -60,6 +60,7 @@ export let ScreenSize = function (ScreenSize) {
60
60
  export let AppFlavor = function (AppFlavor) {
61
61
  AppFlavor["None"] = "none";
62
62
  AppFlavor["Chayns"] = "chayns";
63
+ AppFlavor["Electron"] = "electron";
63
64
  return AppFlavor;
64
65
  }({});
65
66
  export let AccessMode = function (AccessMode) {
@@ -245,6 +246,7 @@ export let AppName = function (AppName) {
245
246
  AppName[AppName["Team"] = 8] = "Team";
246
247
  AppName[AppName["CityApp"] = 9] = "CityApp";
247
248
  AppName[AppName["ElectronChayns"] = 10] = "ElectronChayns";
249
+ AppName[AppName["ElectronTeam"] = 11] = "ElectronTeam";
248
250
  return AppName;
249
251
  }({});
250
252
  export let BrowserName = function (BrowserName) {
@@ -6,26 +6,39 @@ const getDeviceInfo = (userAgent, acceptHeader, {
6
6
  var _match$groups, _match$groups2, _customMatch$groups, _browser$version$spli, _browser$version, _uaParser$getOS, _uaParser$getOS2, _uaParser$getOS3;
7
7
  const uaParser = new UAParser(userAgent);
8
8
  let appName = AppName.Unknown;
9
- const match = /(?:my)?chayns\/(?<version>\d+).*(?<siteId>\d{5}-\d{5})/i.exec(userAgent);
10
- const customMatch = /\s(?<name>intercom|sidekick|team|cityApp|electron-chayns|electron-d3sc)\/(?<version>\d+)/i.exec(userAgent);
9
+ let appFlavor = AppFlavor.None;
10
+ const match = /(?:^|\s)(?:my)?chayns\/(?<version>\d+).*(?<siteId>\d{5}-\d{5})/i.exec(userAgent);
11
+ const customMatch = /\s(?<name>intercom|sidekick|team|cityApp|electron-chayns|electron-d3sc|electron-team)\/(?<version>\d+)/i.exec(userAgent);
11
12
  if (/\sintercom\/\d+/i.test(userAgent)) {
12
13
  appName = AppName.TobitChat;
14
+ appFlavor = AppFlavor.Chayns;
13
15
  } else if (/\ssidekick\/\d+/i.test(userAgent)) {
14
16
  appName = AppName.Sidekick;
17
+ appFlavor = AppFlavor.Chayns;
15
18
  } else if (/\steam\/\d+/i.test(userAgent)) {
16
19
  appName = AppName.Team;
20
+ appFlavor = AppFlavor.Chayns;
17
21
  } else if (/\scityApp\/\d+/i.test(userAgent)) {
18
22
  appName = AppName.CityApp;
23
+ appFlavor = AppFlavor.Chayns;
19
24
  } else if ((match === null || match === void 0 || (_match$groups = match.groups) === null || _match$groups === void 0 ? void 0 : _match$groups.siteId) === '60021-08989') {
20
25
  appName = AppName.Chayns;
26
+ appFlavor = AppFlavor.Chayns;
21
27
  } else if ((match === null || match === void 0 || (_match$groups2 = match.groups) === null || _match$groups2 === void 0 ? void 0 : _match$groups2.siteId) === '77892-10814') {
22
28
  appName = AppName.David;
29
+ appFlavor = AppFlavor.Chayns;
23
30
  } else if (match) {
24
31
  appName = AppName.Location;
32
+ appFlavor = AppFlavor.Chayns;
25
33
  } else if (/dface|h96pp|h96max|jabiru|chaynsterminal|wayter|odroidn2p|chayns-runtime-custom/i.test(userAgent)) {
26
34
  appName = AppName.ChaynsLauncher;
35
+ appFlavor = AppFlavor.Chayns;
27
36
  } else if (/electron-chayns|electron-d3sc/i.test(userAgent)) {
28
37
  appName = AppName.ElectronChayns;
38
+ appFlavor = AppFlavor.Electron;
39
+ } else if (/electron-team/i.test(userAgent)) {
40
+ appName = AppName.ElectronTeam;
41
+ appFlavor = AppFlavor.Electron;
29
42
  }
30
43
  let appVersion = match !== null && match !== void 0 && match.groups ? Number.parseInt(match.groups.version, 10) : NaN;
31
44
  if (customMatch !== null && customMatch !== void 0 && (_customMatch$groups = customMatch.groups) !== null && _customMatch$groups !== void 0 && _customMatch$groups.version) {
@@ -41,7 +54,7 @@ const getDeviceInfo = (userAgent, acceptHeader, {
41
54
  };
42
55
  result.app = {
43
56
  name: appName,
44
- flavor: appName === AppName.Unknown || appName === AppName.ElectronChayns ? AppFlavor.None : AppFlavor.Chayns,
57
+ flavor: appFlavor,
45
58
  version: match !== null && match !== void 0 && match.groups ? Number.parseInt(match.groups.version, 10) : NaN,
46
59
  appVersion,
47
60
  callVersion: match !== null && match !== void 0 && match.groups ? Number.parseInt(match.groups.version, 10) : NaN
@@ -55,7 +68,7 @@ const getDeviceInfo = (userAgent, acceptHeader, {
55
68
  result.isTouch = getClientDeviceInfo().isTouch;
56
69
  } else {
57
70
  const screenSizeByUA = /mobi/i.test(userAgent) ? ScreenSize.SM : ScreenSize.XL;
58
- result.screenSize = appName !== AppName.Unknown && appName !== AppName.ElectronChayns ? ScreenSize.XS : screenSizeByUA;
71
+ result.screenSize = appFlavor === AppFlavor.Chayns ? ScreenSize.XS : screenSizeByUA;
59
72
  }
60
73
  return result;
61
74
  };
@@ -1,8 +1,8 @@
1
1
  import { getDevice } from '../calls';
2
- import { AppName } from '../types/IChaynsReact';
2
+ import { AppFlavor } from '../types/IChaynsReact';
3
3
  export const isApp = () => {
4
- var _getDevice$app$name, _getDevice$app;
5
- return ((_getDevice$app$name = (_getDevice$app = getDevice().app) === null || _getDevice$app === void 0 ? void 0 : _getDevice$app.name) !== null && _getDevice$app$name !== void 0 ? _getDevice$app$name : AppName.Unknown) !== AppName.Unknown;
4
+ var _getDevice$app;
5
+ return ((_getDevice$app = getDevice().app) === null || _getDevice$app === void 0 ? void 0 : _getDevice$app.flavor) === AppFlavor.Chayns;
6
6
  };
7
7
  export const isAppCallSupported = ({
8
8
  minAndroidVersion = 1,
@@ -19,4 +19,8 @@ export const isAppCallSupported = ({
19
19
  return device.app.callVersion >= minAndroidVersion;
20
20
  }
21
21
  return false;
22
+ };
23
+ export const isElectron = () => {
24
+ var _getDevice$app2;
25
+ return ((_getDevice$app2 = getDevice().app) === null || _getDevice$app2 === void 0 ? void 0 : _getDevice$app2.flavor) === AppFlavor.Electron;
22
26
  };
@@ -259,7 +259,8 @@ export declare enum ScreenSize {
259
259
  }
260
260
  export declare enum AppFlavor {
261
261
  None = "none",
262
- Chayns = "chayns"
262
+ Chayns = "chayns",
263
+ Electron = "electron"
263
264
  }
264
265
  export type ChaynsApiDevice = {
265
266
  app?: {
@@ -921,7 +922,8 @@ export declare enum AppName {
921
922
  Sidekick = 7,
922
923
  Team = 8,
923
924
  CityApp = 9,
924
- ElectronChayns = 10
925
+ ElectronChayns = 10,
926
+ ElectronTeam = 11
925
927
  }
926
928
  export declare enum BrowserName {
927
929
  Unknown = "unknown",
@@ -3,3 +3,4 @@ export declare const isAppCallSupported: ({ minAndroidVersion, minIOSVersion }:
3
3
  minAndroidVersion?: number | undefined;
4
4
  minIOSVersion?: number | undefined;
5
5
  }) => boolean;
6
+ export declare const isElectron: () => boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "chayns-api",
3
- "version": "2.5.2",
3
+ "version": "2.5.3",
4
4
  "description": "new chayns api",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",