chayns-api 1.1.9 → 1.1.11
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.
- package/dist/cjs/components/withCompatMode.js +1 -1
- package/dist/cjs/types/IChaynsReact.js +11 -1
- package/dist/cjs/util/deviceHelper.js +7 -3
- package/dist/cjs/wrapper/AppWrapper.js +3 -1
- package/dist/cjs/wrapper/StaticChaynsApi.js +12 -1
- package/dist/esm/components/withCompatMode.js +1 -1
- package/dist/esm/types/IChaynsReact.js +10 -0
- package/dist/esm/util/deviceHelper.js +8 -3
- package/dist/esm/wrapper/AppWrapper.js +3 -1
- package/dist/esm/wrapper/StaticChaynsApi.js +11 -1
- package/dist/types/types/IChaynsReact.d.ts +23 -0
- package/dist/types/util/deviceHelper.d.ts +3 -1
- package/package.json +1 -1
|
@@ -55,7 +55,7 @@ const withCompatMode = Component => {
|
|
|
55
55
|
if (this.root) {
|
|
56
56
|
this.root.unmount();
|
|
57
57
|
} else {
|
|
58
|
-
_reactDom.default.render(
|
|
58
|
+
_reactDom.default.render(/*#__PURE__*/_react.default.createElement(_react.default.Fragment, null), this.ref.current);
|
|
59
59
|
}
|
|
60
60
|
}
|
|
61
61
|
render() {
|
|
@@ -3,13 +3,23 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.ToastType = exports.TappEvent = exports.SharingApp = exports.ScreenSize = exports.ScanQrCodeCodeType = exports.ScanQrCodeCameraTypes = exports.RuntimeEnviroment = exports.MediaType = exports.Language = exports.IconType = exports.Gender = exports.Font = exports.FloatingButtonPosition = exports.Environment = exports.DialogType = exports.DialogSelectType = exports.DialogInputType = exports.DialogIconType = exports.DialogButtonType = exports.DialogAnimation = exports.DeviceOs = exports.DateType = exports.ColorMode = exports.BrowserName = exports.AppName = exports.AccessMode = void 0;
|
|
6
|
+
exports.WeekDayType = exports.ToastType = exports.TappEvent = exports.SharingApp = exports.ScreenSize = exports.ScanQrCodeCodeType = exports.ScanQrCodeCameraTypes = exports.RuntimeEnviroment = exports.MediaType = exports.Language = exports.IconType = exports.Gender = exports.Font = exports.FloatingButtonPosition = exports.Environment = exports.DialogType = exports.DialogSelectType = exports.DialogInputType = exports.DialogIconType = exports.DialogButtonType = exports.DialogAnimation = exports.DeviceOs = exports.DateType = exports.ColorMode = exports.BrowserName = exports.AppName = exports.AccessMode = void 0;
|
|
7
7
|
let DateType = exports.DateType = /*#__PURE__*/function (DateType) {
|
|
8
8
|
DateType[DateType["DATE"] = 0] = "DATE";
|
|
9
9
|
DateType[DateType["TIME"] = 1] = "TIME";
|
|
10
10
|
DateType[DateType["DATE_TIME"] = 2] = "DATE_TIME";
|
|
11
11
|
return DateType;
|
|
12
12
|
}({});
|
|
13
|
+
let WeekDayType = exports.WeekDayType = /*#__PURE__*/function (WeekDayType) {
|
|
14
|
+
WeekDayType[WeekDayType["SUNDAY"] = 0] = "SUNDAY";
|
|
15
|
+
WeekDayType[WeekDayType["MONDAY"] = 1] = "MONDAY";
|
|
16
|
+
WeekDayType[WeekDayType["TUESDAY"] = 2] = "TUESDAY";
|
|
17
|
+
WeekDayType[WeekDayType["WEDNESDAY"] = 3] = "WEDNESDAY";
|
|
18
|
+
WeekDayType[WeekDayType["THURSDAY"] = 4] = "THURSDAY";
|
|
19
|
+
WeekDayType[WeekDayType["FRIDAY"] = 5] = "FRIDAY";
|
|
20
|
+
WeekDayType[WeekDayType["SATURDAY"] = 6] = "SATURDAY";
|
|
21
|
+
return WeekDayType;
|
|
22
|
+
}({});
|
|
13
23
|
let ToastType = exports.ToastType = /*#__PURE__*/function (ToastType) {
|
|
14
24
|
ToastType[ToastType["NEUTRAL"] = 1] = "NEUTRAL";
|
|
15
25
|
ToastType[ToastType["SUCCESS"] = 2] = "SUCCESS";
|
|
@@ -6,8 +6,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.getScreenSize = exports.getClientDeviceInfo = exports.default = void 0;
|
|
7
7
|
var _uaParserJs = require("ua-parser-js");
|
|
8
8
|
var _IChaynsReact = require("../types/IChaynsReact");
|
|
9
|
-
const getDeviceInfo = (userAgent, acceptHeader
|
|
10
|
-
|
|
9
|
+
const getDeviceInfo = (userAgent, acceptHeader, {
|
|
10
|
+
imei
|
|
11
|
+
} = {}) => {
|
|
12
|
+
var _match$groups, _match$groups2, _customMatch$groups, _browser$version$spli, _browser$version, _uaParser$getOS, _uaParser$getOS2, _uaParser$getOS3;
|
|
11
13
|
const uaParser = new _uaParserJs.UAParser(userAgent);
|
|
12
14
|
let appName = _IChaynsReact.AppName.Unknown;
|
|
13
15
|
const match = /(?:my)?chayns\/(?<version>\d+).*(?<siteId>\d{5}-\d{5})/i.exec(userAgent);
|
|
@@ -45,9 +47,11 @@ const getDeviceInfo = (userAgent, acceptHeader) => {
|
|
|
45
47
|
appVersion,
|
|
46
48
|
callVersion: match !== null && match !== void 0 && match.groups ? Number.parseInt(match.groups.version, 10) : NaN
|
|
47
49
|
};
|
|
48
|
-
result.imei =
|
|
50
|
+
result.imei = imei;
|
|
49
51
|
result.engine = uaParser.getEngine();
|
|
52
|
+
// TODO: breaking change on next minor and use object with name and version
|
|
50
53
|
result.os = ((_uaParser$getOS = uaParser.getOS()) === null || _uaParser$getOS === void 0 ? void 0 : _uaParser$getOS.name) === 'Android' ? 'Android OS' : (_uaParser$getOS2 = uaParser.getOS()) === null || _uaParser$getOS2 === void 0 ? void 0 : _uaParser$getOS2.name;
|
|
54
|
+
result.osVersion = (_uaParser$getOS3 = uaParser.getOS()) === null || _uaParser$getOS3 === void 0 ? void 0 : _uaParser$getOS3.version;
|
|
51
55
|
if (typeof window !== 'undefined') {
|
|
52
56
|
result.screenSize = getScreenSize(window.innerWidth);
|
|
53
57
|
result.isTouch = getClientDeviceInfo().isTouch;
|
|
@@ -68,7 +68,9 @@ class AppWrapper {
|
|
|
68
68
|
language = _languages.DeviceLanguage[Number.parseInt(Device === null || Device === void 0 ? void 0 : Device.LanguageID, 10)] || 'de';
|
|
69
69
|
}
|
|
70
70
|
return {
|
|
71
|
-
device: (0, _deviceHelper.default)(navigator.userAgent, 'image/webp'
|
|
71
|
+
device: (0, _deviceHelper.default)(navigator.userAgent, 'image/webp', {
|
|
72
|
+
imei: Device.IMEI
|
|
73
|
+
}),
|
|
72
74
|
environment: {
|
|
73
75
|
buildEnvironment: _IChaynsReact.Environment.Production,
|
|
74
76
|
runtimeEnvironment: _IChaynsReact.RuntimeEnviroment.Unknown
|
|
@@ -5,10 +5,21 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _moduleWrapper = require("../components/moduleWrapper");
|
|
8
|
+
var _IChaynsReact = require("../types/IChaynsReact");
|
|
9
|
+
var _deviceHelper = _interopRequireDefault(require("../util/deviceHelper"));
|
|
10
|
+
var _AppWrapper = require("./AppWrapper");
|
|
8
11
|
var _FrameWrapper = require("./FrameWrapper");
|
|
12
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
13
|
class StaticChaynsApi {
|
|
10
14
|
constructor() {
|
|
11
|
-
|
|
15
|
+
var _deviceInfo$app$name, _deviceInfo$app;
|
|
16
|
+
let wrapper;
|
|
17
|
+
const deviceInfo = (0, _deviceHelper.default)(navigator.userAgent, '');
|
|
18
|
+
if ([_IChaynsReact.AppName.Chayns, _IChaynsReact.AppName.ChaynsLauncher, _IChaynsReact.AppName.Sidekick, _IChaynsReact.AppName.TobitChat].includes((_deviceInfo$app$name = (_deviceInfo$app = deviceInfo.app) === null || _deviceInfo$app === void 0 ? void 0 : _deviceInfo$app.name) !== null && _deviceInfo$app$name !== void 0 ? _deviceInfo$app$name : _IChaynsReact.AppName.Unknown) && window.self === window.top) {
|
|
19
|
+
wrapper = new _AppWrapper.AppWrapper();
|
|
20
|
+
} else {
|
|
21
|
+
wrapper = new _FrameWrapper.FrameWrapper();
|
|
22
|
+
}
|
|
12
23
|
_moduleWrapper.moduleWrapper.current = wrapper;
|
|
13
24
|
this._wrapper = wrapper;
|
|
14
25
|
this.ready = wrapper.init();
|
|
@@ -48,7 +48,7 @@ export const withCompatMode = Component => {
|
|
|
48
48
|
if (this.root) {
|
|
49
49
|
this.root.unmount();
|
|
50
50
|
} else {
|
|
51
|
-
ReactDOM.render(
|
|
51
|
+
ReactDOM.render(/*#__PURE__*/React.createElement(React.Fragment, null), this.ref.current);
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
54
|
render() {
|
|
@@ -4,6 +4,16 @@ export let DateType = /*#__PURE__*/function (DateType) {
|
|
|
4
4
|
DateType[DateType["DATE_TIME"] = 2] = "DATE_TIME";
|
|
5
5
|
return DateType;
|
|
6
6
|
}({});
|
|
7
|
+
export let WeekDayType = /*#__PURE__*/function (WeekDayType) {
|
|
8
|
+
WeekDayType[WeekDayType["SUNDAY"] = 0] = "SUNDAY";
|
|
9
|
+
WeekDayType[WeekDayType["MONDAY"] = 1] = "MONDAY";
|
|
10
|
+
WeekDayType[WeekDayType["TUESDAY"] = 2] = "TUESDAY";
|
|
11
|
+
WeekDayType[WeekDayType["WEDNESDAY"] = 3] = "WEDNESDAY";
|
|
12
|
+
WeekDayType[WeekDayType["THURSDAY"] = 4] = "THURSDAY";
|
|
13
|
+
WeekDayType[WeekDayType["FRIDAY"] = 5] = "FRIDAY";
|
|
14
|
+
WeekDayType[WeekDayType["SATURDAY"] = 6] = "SATURDAY";
|
|
15
|
+
return WeekDayType;
|
|
16
|
+
}({});
|
|
7
17
|
export let ToastType = /*#__PURE__*/function (ToastType) {
|
|
8
18
|
ToastType[ToastType["NEUTRAL"] = 1] = "NEUTRAL";
|
|
9
19
|
ToastType[ToastType["SUCCESS"] = 2] = "SUCCESS";
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { UAParser } from 'ua-parser-js';
|
|
2
2
|
import { AppName, ScreenSize } from '../types/IChaynsReact';
|
|
3
|
-
const getDeviceInfo = (userAgent, acceptHeader)
|
|
4
|
-
var _match$groups, _match$groups2, _customMatch$groups, _browser$version$spli, _browser$version, _uaParser$getOS, _uaParser$getOS2;
|
|
3
|
+
const getDeviceInfo = function (userAgent, acceptHeader) {
|
|
4
|
+
var _match$groups, _match$groups2, _customMatch$groups, _browser$version$spli, _browser$version, _uaParser$getOS, _uaParser$getOS2, _uaParser$getOS3;
|
|
5
|
+
let {
|
|
6
|
+
imei
|
|
7
|
+
} = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
5
8
|
const uaParser = new UAParser(userAgent);
|
|
6
9
|
let appName = AppName.Unknown;
|
|
7
10
|
const match = /(?:my)?chayns\/(?<version>\d+).*(?<siteId>\d{5}-\d{5})/i.exec(userAgent);
|
|
@@ -39,9 +42,11 @@ const getDeviceInfo = (userAgent, acceptHeader) => {
|
|
|
39
42
|
appVersion,
|
|
40
43
|
callVersion: match !== null && match !== void 0 && match.groups ? Number.parseInt(match.groups.version, 10) : NaN
|
|
41
44
|
};
|
|
42
|
-
result.imei =
|
|
45
|
+
result.imei = imei;
|
|
43
46
|
result.engine = uaParser.getEngine();
|
|
47
|
+
// TODO: breaking change on next minor and use object with name and version
|
|
44
48
|
result.os = ((_uaParser$getOS = uaParser.getOS()) === null || _uaParser$getOS === void 0 ? void 0 : _uaParser$getOS.name) === 'Android' ? 'Android OS' : (_uaParser$getOS2 = uaParser.getOS()) === null || _uaParser$getOS2 === void 0 ? void 0 : _uaParser$getOS2.name;
|
|
49
|
+
result.osVersion = (_uaParser$getOS3 = uaParser.getOS()) === null || _uaParser$getOS3 === void 0 ? void 0 : _uaParser$getOS3.version;
|
|
45
50
|
if (typeof window !== 'undefined') {
|
|
46
51
|
result.screenSize = getScreenSize(window.innerWidth);
|
|
47
52
|
result.isTouch = getClientDeviceInfo().isTouch;
|
|
@@ -60,7 +60,9 @@ export class AppWrapper {
|
|
|
60
60
|
language = DeviceLanguage[Number.parseInt(Device === null || Device === void 0 ? void 0 : Device.LanguageID, 10)] || 'de';
|
|
61
61
|
}
|
|
62
62
|
return {
|
|
63
|
-
device: getDeviceInfo(navigator.userAgent, 'image/webp'
|
|
63
|
+
device: getDeviceInfo(navigator.userAgent, 'image/webp', {
|
|
64
|
+
imei: Device.IMEI
|
|
65
|
+
}),
|
|
64
66
|
environment: {
|
|
65
67
|
buildEnvironment: Environment.Production,
|
|
66
68
|
runtimeEnvironment: RuntimeEnviroment.Unknown
|
|
@@ -2,9 +2,13 @@ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object
|
|
|
2
2
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
3
3
|
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); }
|
|
4
4
|
import { moduleWrapper } from '../components/moduleWrapper';
|
|
5
|
+
import { AppName } from '../types/IChaynsReact';
|
|
6
|
+
import getDeviceInfo from '../util/deviceHelper';
|
|
7
|
+
import { AppWrapper } from './AppWrapper';
|
|
5
8
|
import { FrameWrapper } from './FrameWrapper';
|
|
6
9
|
class StaticChaynsApi {
|
|
7
10
|
constructor() {
|
|
11
|
+
var _deviceInfo$app$name, _deviceInfo$app;
|
|
8
12
|
_defineProperty(this, "getUser", () => this._wrapper.values.user);
|
|
9
13
|
_defineProperty(this, "getSite", () => this._wrapper.values.site);
|
|
10
14
|
_defineProperty(this, "getCurrentPage", () => this._wrapper.values.currentPage);
|
|
@@ -13,7 +17,13 @@ class StaticChaynsApi {
|
|
|
13
17
|
_defineProperty(this, "getParameters", () => this._wrapper.values.parameters);
|
|
14
18
|
_defineProperty(this, "getPages", () => this._wrapper.values.pages);
|
|
15
19
|
_defineProperty(this, "getEnvironment", () => this._wrapper.values.environment);
|
|
16
|
-
|
|
20
|
+
let wrapper;
|
|
21
|
+
const deviceInfo = getDeviceInfo(navigator.userAgent, '');
|
|
22
|
+
if ([AppName.Chayns, AppName.ChaynsLauncher, AppName.Sidekick, AppName.TobitChat].includes((_deviceInfo$app$name = (_deviceInfo$app = deviceInfo.app) === null || _deviceInfo$app === void 0 ? void 0 : _deviceInfo$app.name) !== null && _deviceInfo$app$name !== void 0 ? _deviceInfo$app$name : AppName.Unknown) && window.self === window.top) {
|
|
23
|
+
wrapper = new AppWrapper();
|
|
24
|
+
} else {
|
|
25
|
+
wrapper = new FrameWrapper();
|
|
26
|
+
}
|
|
17
27
|
moduleWrapper.current = wrapper;
|
|
18
28
|
this._wrapper = wrapper;
|
|
19
29
|
this.ready = wrapper.init();
|
|
@@ -21,6 +21,28 @@ export interface DialogDate {
|
|
|
21
21
|
multiselect?: boolean;
|
|
22
22
|
monthSelect?: boolean;
|
|
23
23
|
yearSelect?: boolean;
|
|
24
|
+
interval?: boolean;
|
|
25
|
+
disabledDates?: Date[];
|
|
26
|
+
disabledIntervals?: {
|
|
27
|
+
start: Date;
|
|
28
|
+
end: Date;
|
|
29
|
+
}[];
|
|
30
|
+
disabledWeekDayIntervals?: {
|
|
31
|
+
weekDay: WeekDayType;
|
|
32
|
+
interval?: {
|
|
33
|
+
start: Date;
|
|
34
|
+
end: Date;
|
|
35
|
+
};
|
|
36
|
+
}[];
|
|
37
|
+
}
|
|
38
|
+
export declare enum WeekDayType {
|
|
39
|
+
SUNDAY = 0,
|
|
40
|
+
MONDAY = 1,
|
|
41
|
+
TUESDAY = 2,
|
|
42
|
+
WEDNESDAY = 3,
|
|
43
|
+
THURSDAY = 4,
|
|
44
|
+
FRIDAY = 5,
|
|
45
|
+
SATURDAY = 6
|
|
24
46
|
}
|
|
25
47
|
export declare enum ToastType {
|
|
26
48
|
NEUTRAL = 1,
|
|
@@ -185,6 +207,7 @@ export type ChaynsApiDevice = {
|
|
|
185
207
|
imei?: string;
|
|
186
208
|
accessToken?: string;
|
|
187
209
|
os?: 'AIX' | 'Amiga OS' | 'Android OS' | 'Arch' | 'Bada' | 'BeOS' | 'BlackBerry' | 'CentOS' | 'Chromium OS' | 'Contiki' | 'Fedora' | 'Firefox OS' | 'FreeBSD' | 'Debian' | 'DragonFly' | 'Gentoo' | 'GNU' | 'Haiku' | 'Hurd' | 'iOS' | 'Joli' | 'Linpus' | 'Linux' | 'Mac OS' | 'Mageia' | 'Mandriva' | 'MeeGo' | 'Minix' | 'Mint' | 'Morph OS' | 'NetBSD' | 'Nintendo' | 'OpenBSD' | 'OpenVMS' | 'OS/2' | 'Palm' | 'PCLinuxOS' | 'Plan9' | 'Playstation' | 'QNX' | 'RedHat' | 'RIM Tablet OS' | 'RISC OS' | 'Sailfish' | 'Series40' | 'Slackware' | 'Solaris' | 'SUSE' | 'Symbian' | 'Tizen' | 'Ubuntu' | 'UNIX' | 'VectorLinux' | 'WebOS' | 'Windows' | 'Windows Phone' | 'Windows Mobile' | 'Zenwalk' | null;
|
|
210
|
+
osVersion?: string;
|
|
188
211
|
isTouch: boolean;
|
|
189
212
|
screenSize: ScreenSize;
|
|
190
213
|
};
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { ChaynsApiDevice, ScreenSize } from '../types/IChaynsReact';
|
|
2
|
-
declare const getDeviceInfo: (userAgent: string, acceptHeader: string
|
|
2
|
+
declare const getDeviceInfo: (userAgent: string, acceptHeader: string, { imei }?: {
|
|
3
|
+
imei?: string | undefined;
|
|
4
|
+
}) => ChaynsApiDevice;
|
|
3
5
|
export declare const getClientDeviceInfo: () => {
|
|
4
6
|
isTouch: boolean;
|
|
5
7
|
};
|