chayns-api 1.1.0-2 → 1.1.0-4

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.
Files changed (76) hide show
  1. package/dist/cjs/calls/dialogs/chaynsDialog.js +3 -6
  2. package/dist/cjs/calls/dialogs/date.js +29 -2
  3. package/dist/cjs/calls/dialogs/fileSelect.js +1 -2
  4. package/dist/cjs/calls/dialogs/input.js +2 -3
  5. package/dist/cjs/calls/dialogs/select.js +2 -3
  6. package/dist/cjs/calls/getUserInfo.js +1 -2
  7. package/dist/cjs/calls/index.js +93 -82
  8. package/dist/cjs/components/AppDialogWrapper.js +7 -7
  9. package/dist/cjs/components/ChaynsContext.js +2 -4
  10. package/dist/cjs/components/ChaynsProvider.js +10 -13
  11. package/dist/cjs/components/ErrorBoundary.js +31 -0
  12. package/dist/cjs/components/moduleWrapper.js +9 -0
  13. package/dist/cjs/components/withCompatMode.js +8 -7
  14. package/dist/cjs/components/withHydrationBoundary.js +57 -0
  15. package/dist/cjs/constants/hydrationContext.js +16 -0
  16. package/dist/cjs/constants/index.js +16 -0
  17. package/dist/cjs/handler/DialogHandler.js +4 -2
  18. package/dist/cjs/hooks/useAccessToken.js +1 -0
  19. package/dist/cjs/hooks/useDialogState.js +2 -2
  20. package/dist/cjs/hooks/usePages.js +2 -2
  21. package/dist/cjs/host/ChaynsHost.js +1 -2
  22. package/dist/cjs/host/iframe/HostIframe.js +4 -6
  23. package/dist/cjs/host/iframe/utils/useUpdateData.js +1 -2
  24. package/dist/cjs/host/module/ModuleHost.js +8 -24
  25. package/dist/cjs/host/module/utils/loadComponent.js +58 -51
  26. package/dist/cjs/index.js +48 -5
  27. package/dist/cjs/types/IChaynsReact.js +140 -107
  28. package/dist/cjs/util/appCall.js +3 -4
  29. package/dist/cjs/util/deviceHelper.js +18 -13
  30. package/dist/cjs/util/transferNestedFunctions.js +36 -0
  31. package/dist/cjs/wrapper/AppWrapper.js +69 -11
  32. package/dist/cjs/wrapper/FrameWrapper.js +16 -5
  33. package/dist/cjs/wrapper/StaticChaynsApi.js +22 -0
  34. package/dist/esm/calls/index.js +22 -1
  35. package/dist/esm/components/AppDialogWrapper.js +4 -3
  36. package/dist/esm/components/ChaynsProvider.js +6 -7
  37. package/dist/esm/components/ErrorBoundary.js +23 -0
  38. package/dist/esm/components/moduleWrapper.js +3 -0
  39. package/dist/esm/components/withCompatMode.js +5 -4
  40. package/dist/esm/components/withHydrationBoundary.js +50 -0
  41. package/dist/esm/constants/hydrationContext.js +10 -0
  42. package/dist/esm/constants/index.js +1 -0
  43. package/dist/esm/handler/DialogHandler.js +6 -4
  44. package/dist/esm/hooks/useAccessToken.js +1 -0
  45. package/dist/esm/hooks/useDialogState.js +2 -2
  46. package/dist/esm/hooks/usePages.js +1 -1
  47. package/dist/esm/host/iframe/HostIframe.js +1 -2
  48. package/dist/esm/host/module/ModuleHost.js +5 -20
  49. package/dist/esm/host/module/utils/loadComponent.js +58 -50
  50. package/dist/esm/index.js +6 -1
  51. package/dist/esm/types/IChaynsReact.js +142 -87
  52. package/dist/esm/util/appCall.js +2 -2
  53. package/dist/esm/util/deviceHelper.js +17 -11
  54. package/dist/esm/util/transferNestedFunctions.js +32 -0
  55. package/dist/esm/wrapper/AppWrapper.js +70 -11
  56. package/dist/esm/wrapper/FrameWrapper.js +16 -5
  57. package/dist/esm/wrapper/StaticChaynsApi.js +20 -0
  58. package/dist/types/calls/index.d.ts +19 -5
  59. package/dist/types/components/AppDialogWrapper.d.ts +2 -2
  60. package/dist/types/components/ChaynsProvider.d.ts +1 -4
  61. package/dist/types/components/ErrorBoundary.d.ts +13 -0
  62. package/dist/types/components/moduleWrapper.d.ts +4 -0
  63. package/dist/types/components/withHydrationBoundary.d.ts +16 -0
  64. package/dist/types/constants/hydrationContext.d.ts +8 -0
  65. package/dist/types/constants/index.d.ts +1 -0
  66. package/dist/types/handler/DialogHandler.d.ts +0 -1
  67. package/dist/types/hooks/useAccessToken.d.ts +1 -0
  68. package/dist/types/host/module/ModuleHost.d.ts +1 -0
  69. package/dist/types/host/module/utils/loadComponent.d.ts +1 -1
  70. package/dist/types/index.d.ts +6 -1
  71. package/dist/types/types/IChaynsReact.d.ts +136 -28
  72. package/dist/types/util/deviceHelper.d.ts +2 -2
  73. package/dist/types/util/transferNestedFunctions.d.ts +1 -0
  74. package/dist/types/wrapper/StaticChaynsApi.d.ts +9 -0
  75. package/package.json +26 -22
  76. package/toolkit.config.js +20 -0
@@ -1,55 +1,63 @@
1
- /* eslint-disable */
2
- // @ts-nocheck
3
-
4
1
  import semver from 'semver';
5
2
  import React from 'react';
6
- import { semaphore } from './useDynamicScript';
7
- let instances = {};
3
+ import { loadRemote, registerRemotes, loadShareSync } from '@module-federation/runtime';
4
+ const registeredScopes = {};
5
+ const dynamicMap = {};
8
6
  export default function loadComponent(scope, module, url) {
9
7
  let skipCompatMode = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
10
- return async () => {
11
- // Initializes the shared scope. Fills it with known provided modules from this build and all remotes
12
- // eslint-disable-next-line no-undef
13
- await __webpack_init_sharing__('default');
14
- const {
15
- container
16
- } = window[scope + "_list"].find(x => x.url === url); // or get the container somewhere else
17
- // Initialize the container, it may provide shared modules
18
- // eslint-disable-next-line no-undef
19
- await container.init(__webpack_share_scopes__.default);
20
- const factory = await container.get(module);
21
- semaphore[scope].release();
22
- let ModuleMap = instances[`${scope}__${module}`];
23
- let Module;
24
- if (!ModuleMap) {
25
- ModuleMap = {};
26
- instances[`${scope}__${module}`] = ModuleMap;
27
- }
28
- if (Object.keys(ModuleMap).length > 0) {
29
- const newModule = factory();
30
- Module = ModuleMap[`${newModule.default.buildEnv}__${newModule.default.appVersion}`];
31
- if (!Module) {
32
- Module = newModule;
33
- ModuleMap[`${newModule.default.buildEnv}__${newModule.default.appVersion}`] = newModule;
34
- }
35
- } else {
36
- Module = factory();
37
- ModuleMap[`${Module.default.buildEnv}__${Module.default.appVersion}`] = Module;
38
- }
39
- if (skipCompatMode) return Module;
40
- const hostVersion = semver.minVersion(React.version);
41
- const {
42
- requiredVersion,
43
- environment
44
- } = Module.default;
45
- const matchReactVersion = requiredVersion && semver.satisfies(hostVersion, requiredVersion);
46
- if (!matchReactVersion || environment !== 'production') {
47
- return {
48
- default: Module.default.CompatComponent
49
- };
50
- }
51
- return {
52
- default: Module.default.Component
53
- };
54
- };
8
+ let preventSingleton = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;
9
+ if (skipCompatMode) {
10
+ console.warn('[chayns-api] skipCompatMode-option is deprecated and is set automatically now');
11
+ }
12
+ if (registeredScopes[scope] !== url || preventSingleton) {
13
+ registerRemotes([{
14
+ name: scope,
15
+ entry: url,
16
+ alias: scope
17
+ }], {
18
+ force: scope in registeredScopes
19
+ });
20
+ registeredScopes[scope] = url;
21
+ dynamicMap[scope] = {};
22
+ }
23
+ if (!(module in dynamicMap[scope])) {
24
+ const path = `${scope}/${module.replace(/^\.\//, '')}`;
25
+ dynamicMap[scope][module] = /*#__PURE__*/React.lazy(() => {
26
+ return loadRemote(path).then(async Module => {
27
+ // semantically equals skipCompatMode
28
+ if (typeof Module.default === 'function') {
29
+ return Module;
30
+ }
31
+ const hostVersion = semver.minVersion(React.version);
32
+ const {
33
+ requiredVersion,
34
+ environment
35
+ } = Module.default;
36
+ const shareScopes = await new Promise(resolve => {
37
+ loadShareSync('react', {
38
+ resolver: shareOptions => {
39
+ resolve(shareOptions);
40
+ return shareOptions[0];
41
+ }
42
+ });
43
+ });
44
+ const matchReactVersion = requiredVersion && semver.satisfies(hostVersion, requiredVersion) && !shareScopes.some(t => {
45
+ const {
46
+ version,
47
+ from
48
+ } = t;
49
+ return semver.gt(version, hostVersion) && semver.satisfies(version, requiredVersion) || scope === from.split('-').join('_');
50
+ });
51
+ if (!matchReactVersion || environment !== 'production' || process.env.NODE_ENV === 'development') {
52
+ return {
53
+ default: Module.default.CompatComponent
54
+ };
55
+ }
56
+ return {
57
+ default: Module.default.Component
58
+ };
59
+ });
60
+ });
61
+ }
62
+ return dynamicMap[scope][module];
55
63
  }
package/dist/esm/index.js CHANGED
@@ -1,5 +1,6 @@
1
+ import './util/transferNestedFunctions';
1
2
  export { default as ChaynsProvider } from './components/ChaynsProvider';
2
- export { default as getDeviceInfo, getScreenSize } from './util/deviceHelper';
3
+ export { default as getDeviceInfo, getScreenSize, getClientDeviceInfo } from './util/deviceHelper';
3
4
  export { default as ChaynsHost } from './host/ChaynsHost';
4
5
  export { withCompatMode } from './components/withCompatMode';
5
6
  export * from './calls';
@@ -7,6 +8,10 @@ export * from './hooks';
7
8
  export * from './components/WaitUntil';
8
9
  export * from './types/IChaynsReact';
9
10
  export * from './components/withCompatMode';
11
+ export * from './constants';
12
+ export { default as withHydrationBoundary } from './components/withHydrationBoundary';
13
+ export { default as StaticChaynsApi } from './wrapper/StaticChaynsApi';
14
+ export { default as DialogHandler } from './handler/DialogHandler';
10
15
  import * as _dialog from './calls/dialogs/index';
11
16
  export { _dialog as dialog };
12
17
  export * from './types/IChaynsReact';
@@ -1,37 +1,72 @@
1
- export let DialogButtonType;
2
- (function (DialogButtonType) {
1
+ export let DateType = /*#__PURE__*/function (DateType) {
2
+ DateType[DateType["DATE"] = 0] = "DATE";
3
+ DateType[DateType["TIME"] = 1] = "TIME";
4
+ DateType[DateType["DATE_TIME"] = 2] = "DATE_TIME";
5
+ return DateType;
6
+ }({});
7
+ export let ToastType = /*#__PURE__*/function (ToastType) {
8
+ ToastType[ToastType["NEUTRAL"] = 1] = "NEUTRAL";
9
+ ToastType[ToastType["SUCCESS"] = 2] = "SUCCESS";
10
+ ToastType[ToastType["WARNING"] = 3] = "WARNING";
11
+ ToastType[ToastType["ERROR"] = 4] = "ERROR";
12
+ return ToastType;
13
+ }({});
14
+ export let DialogInputType = /*#__PURE__*/function (DialogInputType) {
15
+ DialogInputType["NUMBER"] = "number";
16
+ DialogInputType["PASSWORD"] = "password";
17
+ DialogInputType["TELEPHONE"] = "tel";
18
+ DialogInputType["TEXT"] = "text";
19
+ DialogInputType["TEXTAREA"] = "textarea";
20
+ return DialogInputType;
21
+ }({});
22
+ export let DialogSelectType = /*#__PURE__*/function (DialogSelectType) {
23
+ DialogSelectType[DialogSelectType["DEFAULT"] = 0] = "DEFAULT";
24
+ DialogSelectType[DialogSelectType["ICON"] = 1] = "ICON";
25
+ DialogSelectType[DialogSelectType["IMAGE"] = 2] = "IMAGE";
26
+ return DialogSelectType;
27
+ }({});
28
+ export let DialogButtonType = /*#__PURE__*/function (DialogButtonType) {
3
29
  DialogButtonType[DialogButtonType["OK"] = 1] = "OK";
4
30
  DialogButtonType[DialogButtonType["CANCEL"] = -1] = "CANCEL";
5
31
  DialogButtonType[DialogButtonType["NEGATIVE"] = 0] = "NEGATIVE";
6
- })(DialogButtonType || (DialogButtonType = {}));
7
- export let ScreenSize;
8
- (function (ScreenSize) {
32
+ return DialogButtonType;
33
+ }({});
34
+ export let ScreenSize = /*#__PURE__*/function (ScreenSize) {
9
35
  ScreenSize[ScreenSize["XS"] = 0] = "XS";
10
36
  ScreenSize[ScreenSize["SM"] = 1] = "SM";
11
37
  ScreenSize[ScreenSize["MD"] = 2] = "MD";
12
38
  ScreenSize[ScreenSize["LG"] = 3] = "LG";
13
39
  ScreenSize[ScreenSize["XL"] = 4] = "XL";
14
- })(ScreenSize || (ScreenSize = {}));
15
- export let AccessMode;
16
- (function (AccessMode) {
40
+ return ScreenSize;
41
+ }({});
42
+
43
+ /**
44
+ * @ignore
45
+ */
46
+
47
+ /**
48
+ * @ignore
49
+ */
50
+
51
+ export let AccessMode = /*#__PURE__*/function (AccessMode) {
17
52
  AccessMode[AccessMode["public"] = 0] = "public";
18
53
  AccessMode[AccessMode["protected"] = 1] = "protected";
19
54
  AccessMode[AccessMode["private"] = 2] = "private";
20
- })(AccessMode || (AccessMode = {}));
21
- export let ScanQrCodeCodeType;
22
- (function (ScanQrCodeCodeType) {
55
+ return AccessMode;
56
+ }({});
57
+ export let ScanQrCodeCodeType = /*#__PURE__*/function (ScanQrCodeCodeType) {
23
58
  ScanQrCodeCodeType[ScanQrCodeCodeType["QR"] = 0] = "QR";
24
59
  ScanQrCodeCodeType[ScanQrCodeCodeType["BARCODE"] = 0] = "BARCODE";
25
60
  ScanQrCodeCodeType[ScanQrCodeCodeType["ALL"] = 2] = "ALL";
26
- })(ScanQrCodeCodeType || (ScanQrCodeCodeType = {}));
27
- export let ScanQrCodeCameraTypes;
28
- (function (ScanQrCodeCameraTypes) {
61
+ return ScanQrCodeCodeType;
62
+ }({});
63
+ export let ScanQrCodeCameraTypes = /*#__PURE__*/function (ScanQrCodeCameraTypes) {
29
64
  ScanQrCodeCameraTypes[ScanQrCodeCameraTypes["AUTO"] = 0] = "AUTO";
30
65
  ScanQrCodeCameraTypes[ScanQrCodeCameraTypes["BACK"] = 1] = "BACK";
31
66
  ScanQrCodeCameraTypes[ScanQrCodeCameraTypes["FRONT"] = 2] = "FRONT";
32
- })(ScanQrCodeCameraTypes || (ScanQrCodeCameraTypes = {}));
33
- var IOSFeedbackVibration;
34
- (function (IOSFeedbackVibration) {
67
+ return ScanQrCodeCameraTypes;
68
+ }({});
69
+ var IOSFeedbackVibration = /*#__PURE__*/function (IOSFeedbackVibration) {
35
70
  IOSFeedbackVibration[IOSFeedbackVibration["Unknown"] = 0] = "Unknown";
36
71
  IOSFeedbackVibration[IOSFeedbackVibration["SelectionChanged"] = 1] = "SelectionChanged";
37
72
  IOSFeedbackVibration[IOSFeedbackVibration["NotificationError"] = 2] = "NotificationError";
@@ -42,25 +77,25 @@ var IOSFeedbackVibration;
42
77
  IOSFeedbackVibration[IOSFeedbackVibration["Heavy"] = 7] = "Heavy";
43
78
  IOSFeedbackVibration[IOSFeedbackVibration["Soft"] = 8] = "Soft";
44
79
  IOSFeedbackVibration[IOSFeedbackVibration["Rigid"] = 9] = "Rigid";
45
- })(IOSFeedbackVibration || (IOSFeedbackVibration = {}));
80
+ return IOSFeedbackVibration;
81
+ }(IOSFeedbackVibration || {});
46
82
  // region design settings
47
- var SnapshotType;
48
- (function (SnapshotType) {
83
+ var SnapshotType = /*#__PURE__*/function (SnapshotType) {
49
84
  SnapshotType["Background"] = "background";
50
85
  SnapshotType["Settings"] = "settings";
51
86
  SnapshotType["ColorScheme"] = "colorScheme";
52
87
  SnapshotType["Cover"] = "cover";
53
88
  SnapshotType["Tapp"] = "tapp";
54
- })(SnapshotType || (SnapshotType = {}));
55
- var DesignSettingsUpdateBackgroundType;
56
- (function (DesignSettingsUpdateBackgroundType) {
89
+ return SnapshotType;
90
+ }(SnapshotType || {});
91
+ var DesignSettingsUpdateBackgroundType = /*#__PURE__*/function (DesignSettingsUpdateBackgroundType) {
57
92
  DesignSettingsUpdateBackgroundType[DesignSettingsUpdateBackgroundType["None"] = 0] = "None";
58
93
  DesignSettingsUpdateBackgroundType[DesignSettingsUpdateBackgroundType["Image"] = 1] = "Image";
59
94
  DesignSettingsUpdateBackgroundType[DesignSettingsUpdateBackgroundType["Video"] = 2] = "Video";
60
95
  DesignSettingsUpdateBackgroundType[DesignSettingsUpdateBackgroundType["Color"] = 3] = "Color";
61
- })(DesignSettingsUpdateBackgroundType || (DesignSettingsUpdateBackgroundType = {}));
62
- var DesignSettingsUpdateSeasonTypes;
63
- (function (DesignSettingsUpdateSeasonTypes) {
96
+ return DesignSettingsUpdateBackgroundType;
97
+ }(DesignSettingsUpdateBackgroundType || {});
98
+ var DesignSettingsUpdateSeasonTypes = /*#__PURE__*/function (DesignSettingsUpdateSeasonTypes) {
64
99
  DesignSettingsUpdateSeasonTypes[DesignSettingsUpdateSeasonTypes["None"] = 0] = "None";
65
100
  DesignSettingsUpdateSeasonTypes[DesignSettingsUpdateSeasonTypes["Snowm"] = 1] = "Snowm";
66
101
  DesignSettingsUpdateSeasonTypes[DesignSettingsUpdateSeasonTypes["Confetti"] = 2] = "Confetti";
@@ -70,88 +105,88 @@ var DesignSettingsUpdateSeasonTypes;
70
105
  DesignSettingsUpdateSeasonTypes[DesignSettingsUpdateSeasonTypes["Eastern"] = 6] = "Eastern";
71
106
  DesignSettingsUpdateSeasonTypes[DesignSettingsUpdateSeasonTypes["Clover"] = 7] = "Clover";
72
107
  DesignSettingsUpdateSeasonTypes[DesignSettingsUpdateSeasonTypes["Coins"] = 8] = "Coins";
73
- })(DesignSettingsUpdateSeasonTypes || (DesignSettingsUpdateSeasonTypes = {}));
74
- var DesignSettingsUpdateGalleryAnimationTypes;
75
- (function (DesignSettingsUpdateGalleryAnimationTypes) {
108
+ return DesignSettingsUpdateSeasonTypes;
109
+ }(DesignSettingsUpdateSeasonTypes || {});
110
+ var DesignSettingsUpdateGalleryAnimationTypes = /*#__PURE__*/function (DesignSettingsUpdateGalleryAnimationTypes) {
76
111
  DesignSettingsUpdateGalleryAnimationTypes[DesignSettingsUpdateGalleryAnimationTypes["Swipe"] = 0] = "Swipe";
77
112
  DesignSettingsUpdateGalleryAnimationTypes[DesignSettingsUpdateGalleryAnimationTypes["Fade"] = 1] = "Fade";
78
113
  DesignSettingsUpdateGalleryAnimationTypes[DesignSettingsUpdateGalleryAnimationTypes["Parallax"] = 2] = "Parallax";
79
114
  DesignSettingsUpdateGalleryAnimationTypes[DesignSettingsUpdateGalleryAnimationTypes["KenBurns"] = 3] = "KenBurns";
80
- })(DesignSettingsUpdateGalleryAnimationTypes || (DesignSettingsUpdateGalleryAnimationTypes = {}));
81
- var DesignSettingsUpdateCoverTypes;
82
- (function (DesignSettingsUpdateCoverTypes) {
115
+ return DesignSettingsUpdateGalleryAnimationTypes;
116
+ }(DesignSettingsUpdateGalleryAnimationTypes || {});
117
+ var DesignSettingsUpdateCoverTypes = /*#__PURE__*/function (DesignSettingsUpdateCoverTypes) {
83
118
  DesignSettingsUpdateCoverTypes[DesignSettingsUpdateCoverTypes["Image"] = 0] = "Image";
84
119
  DesignSettingsUpdateCoverTypes[DesignSettingsUpdateCoverTypes["Video"] = 1] = "Video";
85
120
  DesignSettingsUpdateCoverTypes[DesignSettingsUpdateCoverTypes["Slideshow"] = 2] = "Slideshow";
86
121
  DesignSettingsUpdateCoverTypes[DesignSettingsUpdateCoverTypes["Frame"] = 3] = "Frame";
87
122
  DesignSettingsUpdateCoverTypes[DesignSettingsUpdateCoverTypes["None"] = 4] = "None";
88
- })(DesignSettingsUpdateCoverTypes || (DesignSettingsUpdateCoverTypes = {}));
89
- var DesignSettingsUpdateColorSchemeMode;
90
- (function (DesignSettingsUpdateColorSchemeMode) {
123
+ return DesignSettingsUpdateCoverTypes;
124
+ }(DesignSettingsUpdateCoverTypes || {});
125
+ var DesignSettingsUpdateColorSchemeMode = /*#__PURE__*/function (DesignSettingsUpdateColorSchemeMode) {
91
126
  DesignSettingsUpdateColorSchemeMode[DesignSettingsUpdateColorSchemeMode["Normal"] = 0] = "Normal";
92
127
  DesignSettingsUpdateColorSchemeMode[DesignSettingsUpdateColorSchemeMode["Dark"] = 1] = "Dark";
93
128
  DesignSettingsUpdateColorSchemeMode[DesignSettingsUpdateColorSchemeMode["Bright"] = 2] = "Bright";
94
- })(DesignSettingsUpdateColorSchemeMode || (DesignSettingsUpdateColorSchemeMode = {}));
95
- var DesignSettingsUpdateTappViewModes;
96
- (function (DesignSettingsUpdateTappViewModes) {
129
+ return DesignSettingsUpdateColorSchemeMode;
130
+ }(DesignSettingsUpdateColorSchemeMode || {});
131
+ var DesignSettingsUpdateTappViewModes = /*#__PURE__*/function (DesignSettingsUpdateTappViewModes) {
97
132
  DesignSettingsUpdateTappViewModes[DesignSettingsUpdateTappViewModes["Normal"] = 0] = "Normal";
98
133
  DesignSettingsUpdateTappViewModes[DesignSettingsUpdateTappViewModes["Exclusive"] = 1] = "Exclusive";
99
134
  DesignSettingsUpdateTappViewModes[DesignSettingsUpdateTappViewModes["Wide"] = 2] = "Wide";
100
135
  DesignSettingsUpdateTappViewModes[DesignSettingsUpdateTappViewModes["Fullscreen"] = 3] = "Fullscreen";
101
136
  DesignSettingsUpdateTappViewModes[DesignSettingsUpdateTappViewModes["FullscreenWithBackground"] = 4] = "FullscreenWithBackground";
102
- })(DesignSettingsUpdateTappViewModes || (DesignSettingsUpdateTappViewModes = {}));
103
- var LoginState;
104
- (function (LoginState) {
137
+ return DesignSettingsUpdateTappViewModes;
138
+ }(DesignSettingsUpdateTappViewModes || {}); // endregion
139
+ var LoginState = /*#__PURE__*/function (LoginState) {
105
140
  LoginState[LoginState["FACEBOOK"] = 0] = "FACEBOOK";
106
141
  LoginState[LoginState["T_WEB"] = 1] = "T_WEB";
107
142
  LoginState[LoginState["LoginFailed"] = 2] = "LoginFailed";
108
143
  LoginState[LoginState["AlreadyLoggedIn"] = 3] = "AlreadyLoggedIn";
109
144
  LoginState[LoginState["SUCCESS"] = 4] = "SUCCESS";
110
- })(LoginState || (LoginState = {}));
111
- export let FloatingButtonPosition;
112
- (function (FloatingButtonPosition) {
145
+ return LoginState;
146
+ }(LoginState || {});
147
+ export let FloatingButtonPosition = /*#__PURE__*/function (FloatingButtonPosition) {
113
148
  FloatingButtonPosition[FloatingButtonPosition["Right"] = 0] = "Right";
114
149
  FloatingButtonPosition[FloatingButtonPosition["Center"] = 1] = "Center";
115
150
  FloatingButtonPosition[FloatingButtonPosition["Left"] = 2] = "Left";
116
- })(FloatingButtonPosition || (FloatingButtonPosition = {}));
117
- export let SharingApp;
118
- (function (SharingApp) {
151
+ return FloatingButtonPosition;
152
+ }({});
153
+ export let SharingApp = /*#__PURE__*/function (SharingApp) {
119
154
  SharingApp[SharingApp["Mail"] = 0] = "Mail";
120
155
  SharingApp[SharingApp["WhatsApp"] = 1] = "WhatsApp";
121
156
  SharingApp[SharingApp["Facebook"] = 2] = "Facebook";
122
157
  SharingApp[SharingApp["FacebookMessenger"] = 3] = "FacebookMessenger";
123
158
  SharingApp[SharingApp["GooglePlus"] = 4] = "GooglePlus";
124
159
  SharingApp[SharingApp["Twitter"] = 5] = "Twitter";
125
- })(SharingApp || (SharingApp = {}));
126
- export let TappEvent;
127
- (function (TappEvent) {
160
+ return SharingApp;
161
+ }({});
162
+ export let TappEvent = /*#__PURE__*/function (TappEvent) {
128
163
  TappEvent[TappEvent["OnShow"] = 0] = "OnShow";
129
164
  TappEvent[TappEvent["OnHide"] = 1] = "OnHide";
130
165
  TappEvent[TappEvent["OnRefresh"] = 2] = "OnRefresh";
131
166
  TappEvent[TappEvent["OnOpenCcScanner"] = 3] = "OnOpenCcScanner";
132
167
  TappEvent[TappEvent["OnCloseCcScanner"] = 4] = "OnCloseCcScanner";
133
- })(TappEvent || (TappEvent = {}));
134
- export let IconType;
135
- (function (IconType) {
168
+ return TappEvent;
169
+ }({});
170
+ export let IconType = /*#__PURE__*/function (IconType) {
136
171
  IconType[IconType["Font"] = 0] = "Font";
137
172
  IconType[IconType["Base64"] = 1] = "Base64";
138
173
  IconType[IconType["Url"] = 2] = "Url";
139
- })(IconType || (IconType = {}));
140
- export let Gender;
141
- (function (Gender) {
174
+ return IconType;
175
+ }({});
176
+ export let Gender = /*#__PURE__*/function (Gender) {
142
177
  Gender[Gender["Unknown"] = 0] = "Unknown";
143
178
  Gender[Gender["male"] = 1] = "male";
144
179
  Gender[Gender["female"] = 2] = "female";
145
180
  Gender[Gender["diverse"] = 9] = "diverse";
146
- })(Gender || (Gender = {}));
147
- export let ColorMode;
148
- (function (ColorMode) {
181
+ return Gender;
182
+ }({});
183
+ export let ColorMode = /*#__PURE__*/function (ColorMode) {
149
184
  ColorMode[ColorMode["Classic"] = 0] = "Classic";
150
185
  ColorMode[ColorMode["Dark"] = 1] = "Dark";
151
186
  ColorMode[ColorMode["Light"] = 2] = "Light";
152
- })(ColorMode || (ColorMode = {}));
153
- export let Language;
154
- (function (Language) {
187
+ return ColorMode;
188
+ }({});
189
+ export let Language = /*#__PURE__*/function (Language) {
155
190
  Language["Unknown"] = "unknown";
156
191
  Language["German"] = "de";
157
192
  Language["English"] = "en";
@@ -163,51 +198,54 @@ export let Language;
163
198
  Language["Turkish"] = "tr";
164
199
  Language["Polish"] = "pl";
165
200
  Language["Ukrainian"] = "uk";
166
- })(Language || (Language = {}));
167
- export let RuntimeEnviroment;
168
- (function (RuntimeEnviroment) {
201
+ return Language;
202
+ }({});
203
+ export let RuntimeEnviroment = /*#__PURE__*/function (RuntimeEnviroment) {
169
204
  RuntimeEnviroment[RuntimeEnviroment["Unknown"] = 0] = "Unknown";
170
205
  RuntimeEnviroment[RuntimeEnviroment["ChaynsDe"] = 1] = "ChaynsDe";
171
206
  RuntimeEnviroment[RuntimeEnviroment["ChaynsWeb"] = 2] = "ChaynsWeb";
172
207
  RuntimeEnviroment[RuntimeEnviroment["ChaynsRuntime"] = 3] = "ChaynsRuntime";
173
208
  RuntimeEnviroment[RuntimeEnviroment["IntercomPlugin"] = 4] = "IntercomPlugin";
174
209
  RuntimeEnviroment[RuntimeEnviroment["PagemakerPlugin"] = 5] = "PagemakerPlugin";
175
- })(RuntimeEnviroment || (RuntimeEnviroment = {}));
176
- export let DeviceOs;
177
- (function (DeviceOs) {
210
+ return RuntimeEnviroment;
211
+ }({});
212
+ export let DeviceOs = /*#__PURE__*/function (DeviceOs) {
178
213
  DeviceOs["Unknown"] = "unknown";
179
214
  DeviceOs["Android"] = "android";
180
215
  DeviceOs["IOS"] = "ios";
181
216
  DeviceOs["Windows"] = "windows";
182
217
  DeviceOs["MacOs"] = "macos";
183
218
  DeviceOs["Linux"] = "linux";
184
- })(DeviceOs || (DeviceOs = {}));
185
- export let AppName;
186
- (function (AppName) {
219
+ return DeviceOs;
220
+ }({});
221
+ export let AppName = /*#__PURE__*/function (AppName) {
187
222
  AppName[AppName["Unknown"] = 0] = "Unknown";
188
223
  AppName[AppName["David"] = 1] = "David";
189
224
  AppName[AppName["Chayns"] = 2] = "Chayns";
190
225
  AppName[AppName["Location"] = 3] = "Location";
191
226
  AppName[AppName["Intercom"] = 4] = "Intercom";
192
227
  AppName[AppName["ChaynsLauncher"] = 5] = "ChaynsLauncher";
193
- })(AppName || (AppName = {}));
194
- export let BrowserName;
195
- (function (BrowserName) {
228
+ AppName[AppName["TobitChat"] = 6] = "TobitChat";
229
+ AppName[AppName["Sidekick"] = 7] = "Sidekick";
230
+ AppName[AppName["Team"] = 8] = "Team";
231
+ return AppName;
232
+ }({});
233
+ export let BrowserName = /*#__PURE__*/function (BrowserName) {
196
234
  BrowserName["Unknown"] = "unknown";
197
235
  BrowserName["Chrome"] = "chrome";
198
236
  BrowserName["Safari"] = "safari";
199
237
  BrowserName["Firefox"] = "firefox";
200
238
  BrowserName["Edge"] = "edge";
201
- })(BrowserName || (BrowserName = {}));
202
- export let Environment;
203
- (function (Environment) {
239
+ return BrowserName;
240
+ }({});
241
+ export let Environment = /*#__PURE__*/function (Environment) {
204
242
  Environment[Environment["Development"] = 0] = "Development";
205
243
  Environment[Environment["Qa"] = 1] = "Qa";
206
244
  Environment[Environment["Staging"] = 2] = "Staging";
207
245
  Environment[Environment["Production"] = 3] = "Production";
208
- })(Environment || (Environment = {}));
209
- export let Font;
210
- (function (Font) {
246
+ return Environment;
247
+ }({});
248
+ export let Font = /*#__PURE__*/function (Font) {
211
249
  Font[Font["Unknown"] = 0] = "Unknown";
212
250
  Font[Font["Roboto"] = 1] = "Roboto";
213
251
  Font[Font["OpenSans"] = 2] = "OpenSans";
@@ -236,14 +274,14 @@ export let Font;
236
274
  Font[Font["RobotoBold"] = 25] = "RobotoBold";
237
275
  Font[Font["RobotoRegular"] = 26] = "RobotoRegular";
238
276
  Font[Font["Inter"] = 27] = "Inter";
239
- })(Font || (Font = {}));
240
- var selectType;
241
- (function (selectType) {
277
+ return Font;
278
+ }({});
279
+ var selectType = /*#__PURE__*/function (selectType) {
242
280
  selectType[selectType["DEFAULT"] = 0] = "DEFAULT";
243
281
  selectType[selectType["ICON"] = 1] = "ICON";
244
- })(selectType || (selectType = {}));
245
- export let DialogType;
246
- (function (DialogType) {
282
+ return selectType;
283
+ }(selectType || {});
284
+ export let DialogType = /*#__PURE__*/function (DialogType) {
247
285
  DialogType["ALERT"] = "alert";
248
286
  DialogType["CONFIRM"] = "confirm";
249
287
  DialogType["DATE"] = "date";
@@ -253,4 +291,21 @@ export let DialogType;
253
291
  DialogType["INPUT"] = "input";
254
292
  DialogType["SELECT"] = "select";
255
293
  DialogType["TOAST"] = "toast";
256
- })(DialogType || (DialogType = {}));
294
+ DialogType["SIGNATURE"] = "signature";
295
+ return DialogType;
296
+ }({});
297
+ export let MediaType = /*#__PURE__*/function (MediaType) {
298
+ MediaType["IMAGE"] = "image";
299
+ MediaType["VIDEO"] = "video";
300
+ return MediaType;
301
+ }({});
302
+ export let DialogAnimation = /*#__PURE__*/function (DialogAnimation) {
303
+ DialogAnimation["CONFETTI"] = "confetti";
304
+ return DialogAnimation;
305
+ }({});
306
+ export let DialogIconType = /*#__PURE__*/function (DialogIconType) {
307
+ DialogIconType["SuccessIcon"] = "%%DialogSuccessIcon%%";
308
+ DialogIconType["WarningIcon"] = "%%DialogWarningIcon%%";
309
+ DialogIconType["ErrorIcon"] = "%%DialogErrorIcon%%";
310
+ return DialogIconType;
311
+ }({});
@@ -1,9 +1,9 @@
1
1
  // @ts-nocheck
2
2
 
3
3
  const invokeAppCall = call => {
4
- var _window$webkit, _window$webkit$messag, _window$chaynsApp, _window$chaynsElectro;
4
+ var _window$webkit, _window$chaynsApp, _window$chaynsElectro;
5
5
  call = JSON.stringify(call);
6
- if ((_window$webkit = window.webkit) !== null && _window$webkit !== void 0 && (_window$webkit$messag = _window$webkit.messageHandlers) !== null && _window$webkit$messag !== void 0 && _window$webkit$messag.jsonCall) {
6
+ if ((_window$webkit = window.webkit) !== null && _window$webkit !== void 0 && (_window$webkit = _window$webkit.messageHandlers) !== null && _window$webkit !== void 0 && _window$webkit.jsonCall) {
7
7
  window.webkit.messageHandlers.jsonCall.postMessage(call);
8
8
  } else if ((_window$chaynsApp = window.chaynsApp) !== null && _window$chaynsApp !== void 0 && _window$chaynsApp.jsonCall) {
9
9
  window.chaynsApp.jsonCall(call);
@@ -5,9 +5,15 @@ const getDeviceInfo = (userAgent, acceptHeader) => {
5
5
  const parsedUA = parseUserAgent(userAgent);
6
6
  let appName = AppName.Unknown;
7
7
  const match = /(?:my)?chayns\/(?<version>\d+).*(?<siteId>\d{5}-\d{5})/i.exec(userAgent);
8
- if ((match === null || match === void 0 ? void 0 : (_match$groups = match.groups) === null || _match$groups === void 0 ? void 0 : _match$groups.siteId) === '60021-08989') {
8
+ if (/\sintercom\/\d+/i.test(userAgent)) {
9
+ appName = AppName.TobitChat;
10
+ } else if (/\ssidekick\/\d+/i.test(userAgent)) {
11
+ appName = AppName.Sidekick;
12
+ } else if (/\steam\/\d+/i.test(userAgent)) {
13
+ appName = AppName.Team;
14
+ } else if ((match === null || match === void 0 || (_match$groups = match.groups) === null || _match$groups === void 0 ? void 0 : _match$groups.siteId) === '60021-08989') {
9
15
  appName = AppName.Chayns;
10
- } else if ((match === null || match === void 0 ? void 0 : (_match$groups2 = match.groups) === null || _match$groups2 === void 0 ? void 0 : _match$groups2.siteId) === '77892-10814') {
16
+ } else if ((match === null || match === void 0 || (_match$groups2 = match.groups) === null || _match$groups2 === void 0 ? void 0 : _match$groups2.siteId) === '77892-10814') {
11
17
  appName = AppName.David;
12
18
  } else if (match) {
13
19
  appName = AppName.Location;
@@ -18,7 +24,7 @@ const getDeviceInfo = (userAgent, acceptHeader) => {
18
24
  result.browser = {
19
25
  name: parsedUA === null || parsedUA === void 0 ? void 0 : parsedUA.name,
20
26
  version: parsedUA === null || parsedUA === void 0 ? void 0 : parsedUA.version,
21
- majorVersion: Number.parseInt((_parsedUA$version$spl = parsedUA === null || parsedUA === void 0 ? void 0 : (_parsedUA$version = parsedUA.version) === null || _parsedUA$version === void 0 ? void 0 : _parsedUA$version.split('.')[0]) !== null && _parsedUA$version$spl !== void 0 ? _parsedUA$version$spl : '0', 10) || 0,
27
+ majorVersion: Number.parseInt((_parsedUA$version$spl = parsedUA === null || parsedUA === void 0 || (_parsedUA$version = parsedUA.version) === null || _parsedUA$version === void 0 ? void 0 : _parsedUA$version.split('.')[0]) !== null && _parsedUA$version$spl !== void 0 ? _parsedUA$version$spl : '0', 10) || 0,
22
28
  isWebPSupported: acceptHeader.includes('image/webp')
23
29
  };
24
30
  result.app = {
@@ -29,7 +35,8 @@ const getDeviceInfo = (userAgent, acceptHeader) => {
29
35
  result.accessToken = undefined; // TODO
30
36
  result.os = parsedUA === null || parsedUA === void 0 ? void 0 : parsedUA.os;
31
37
  if (typeof window !== 'undefined') {
32
- result.screenSize = getScreenSize(window.innerWidth, window.innerHeight);
38
+ result.screenSize = getScreenSize(window.innerWidth);
39
+ result.isTouch = getClientDeviceInfo().isTouch;
33
40
  } else {
34
41
  // estimate size over user agent, very inaccurate, could be improved by setting a cookie with the screensize
35
42
  const screenSizeByUA = /mobi/i.test(userAgent) ? ScreenSize.SM : ScreenSize.XL;
@@ -40,18 +47,17 @@ const getDeviceInfo = (userAgent, acceptHeader) => {
40
47
 
41
48
  // Infos that are only available on client or iframe side
42
49
  export const getClientDeviceInfo = () => ({
43
- isTouch: navigator.maxTouchPoints > 0 && window.matchMedia('(pointer: coarse)')
50
+ isTouch: navigator.maxTouchPoints > 0 && window.matchMedia('(pointer: coarse)').matches
44
51
  });
45
- export const getScreenSize = (width, height) => {
46
- const size = Math.max(width, height);
52
+ export const getScreenSize = width => {
47
53
  let value;
48
- if (size > 1200) {
54
+ if (width > 1200) {
49
55
  value = ScreenSize.XL;
50
- } else if (size > 993) {
56
+ } else if (width > 993) {
51
57
  value = ScreenSize.LG;
52
- } else if (size > 769) {
58
+ } else if (width > 769) {
53
59
  value = ScreenSize.MD;
54
- } else if (size > 556) {
60
+ } else if (width > 556) {
55
61
  value = ScreenSize.SM;
56
62
  } else {
57
63
  value = ScreenSize.XS;
@@ -0,0 +1,32 @@
1
+ // @ts-nocheck
2
+ import * as Comlink from 'comlink';
3
+ Comlink.transferHandlers.set("FUNCTION", {
4
+ canHandle: obj => {
5
+ return obj && typeof obj === "object" && Object.values(obj).some(x => typeof x === 'function');
6
+ },
7
+ serialize(obj) {
8
+ obj._functionKeys = [];
9
+ const ports = [];
10
+ Object.entries(obj).forEach(_ref => {
11
+ let [k, v] = _ref;
12
+ if (typeof v === 'function') {
13
+ const {
14
+ port1,
15
+ port2
16
+ } = new MessageChannel();
17
+ obj._functionKeys.push(k);
18
+ Comlink.expose(obj[k], port1);
19
+ obj[k] = port2;
20
+ ports.push(port2);
21
+ }
22
+ });
23
+ return [obj, ports];
24
+ },
25
+ deserialize(obj) {
26
+ obj._functionKeys.forEach(x => {
27
+ obj[x].start();
28
+ obj[x] = Comlink.wrap(obj[x]);
29
+ });
30
+ return obj;
31
+ }
32
+ });