chayns-api 1.0.9 → 1.0.10-beta.1

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 (137) hide show
  1. package/.babelrc +30 -30
  2. package/.eslintrc +17 -17
  3. package/.github/workflows/deploy_docs.yml +28 -28
  4. package/.github/workflows/publish.yml +21 -21
  5. package/LICENSE +21 -21
  6. package/README.md +47 -47
  7. package/dist/cjs/calls/dialogs/date.js +10 -10
  8. package/dist/cjs/calls/index.js +102 -97
  9. package/dist/cjs/calls/sendMessage.js +8 -8
  10. package/dist/cjs/calls/visibilityChangeListener.js +4 -4
  11. package/dist/cjs/components/AppDialogWrapper.js +40 -0
  12. package/dist/cjs/components/ChaynsProvider.js +5 -2
  13. package/dist/cjs/components/withCompatMode.js +3 -0
  14. package/dist/cjs/hooks/geoLocationListener.js +4 -4
  15. package/dist/cjs/hooks/index.js +14 -1
  16. package/dist/cjs/hooks/scrollListener.js +8 -8
  17. package/dist/cjs/hooks/useAccessToken.js +2 -2
  18. package/dist/cjs/hooks/useCurrentPage.js +2 -2
  19. package/dist/cjs/hooks/useCustomData.js +2 -2
  20. package/dist/cjs/hooks/useDevice.js +2 -2
  21. package/dist/cjs/hooks/useDialogState.js +31 -0
  22. package/dist/cjs/hooks/useEnvironment.js +2 -2
  23. package/dist/cjs/hooks/useFunctions.js +2 -2
  24. package/dist/cjs/hooks/useIsAdminMode.js +2 -2
  25. package/dist/cjs/hooks/useLanguage.js +2 -2
  26. package/dist/cjs/hooks/usePages.js +4 -4
  27. package/dist/cjs/hooks/useParameters.js +2 -2
  28. package/dist/cjs/hooks/useSite.js +2 -2
  29. package/dist/cjs/hooks/useUser.js +2 -2
  30. package/dist/cjs/hooks/useValues.js +2 -2
  31. package/dist/cjs/hooks/windowMetricsListener.js +4 -4
  32. package/dist/cjs/host/ChaynsHost.js +6 -3
  33. package/dist/cjs/host/iframe/HostIframe.js +6 -3
  34. package/dist/cjs/types/IChaynsReact.js +22 -2
  35. package/dist/cjs/util/deviceHelper.js +7 -6
  36. package/dist/cjs/wrapper/AppWrapper.js +59 -0
  37. package/dist/cjs/wrapper/FrameWrapper.js +16 -1
  38. package/dist/cjs/wrapper/ModuleFederationWrapper.js +11 -0
  39. package/dist/esm/calls/dialogs/date.js +34 -34
  40. package/dist/esm/calls/index.js +102 -96
  41. package/dist/esm/calls/sendMessage.js +8 -8
  42. package/dist/esm/calls/visibilityChangeListener.js +4 -4
  43. package/dist/esm/components/AppDialogWrapper.js +31 -0
  44. package/dist/esm/components/ChaynsProvider.js +5 -2
  45. package/dist/esm/components/withCompatMode.js +3 -0
  46. package/dist/esm/hooks/geoLocationListener.js +4 -4
  47. package/dist/esm/hooks/index.js +2 -1
  48. package/dist/esm/hooks/scrollListener.js +8 -8
  49. package/dist/esm/hooks/useAccessToken.js +2 -2
  50. package/dist/esm/hooks/useCurrentPage.js +2 -2
  51. package/dist/esm/hooks/useCustomData.js +2 -2
  52. package/dist/esm/hooks/useDevice.js +2 -2
  53. package/dist/esm/hooks/useDialogState.js +24 -0
  54. package/dist/esm/hooks/useEnvironment.js +2 -2
  55. package/dist/esm/hooks/useFunctions.js +2 -2
  56. package/dist/esm/hooks/useIsAdminMode.js +2 -2
  57. package/dist/esm/hooks/useLanguage.js +2 -2
  58. package/dist/esm/hooks/usePages.js +4 -4
  59. package/dist/esm/hooks/useParameters.js +2 -2
  60. package/dist/esm/hooks/useSite.js +2 -2
  61. package/dist/esm/hooks/useUser.js +2 -2
  62. package/dist/esm/hooks/useValues.js +2 -2
  63. package/dist/esm/hooks/windowMetricsListener.js +4 -4
  64. package/dist/esm/host/ChaynsHost.js +6 -3
  65. package/dist/esm/host/iframe/HostIframe.js +6 -3
  66. package/dist/esm/types/IChaynsReact.js +19 -1
  67. package/dist/esm/util/deviceHelper.js +7 -6
  68. package/dist/esm/wrapper/AppWrapper.js +63 -1
  69. package/dist/esm/wrapper/FrameWrapper.js +19 -2
  70. package/dist/esm/wrapper/ModuleFederationWrapper.js +11 -0
  71. package/dist/types/calls/dialogs/alert.d.ts +1 -1
  72. package/dist/types/calls/dialogs/chaynsDialog.d.ts +24 -24
  73. package/dist/types/calls/dialogs/close.d.ts +1 -1
  74. package/dist/types/calls/dialogs/communication.d.ts +3 -3
  75. package/dist/types/calls/dialogs/confirm.d.ts +13 -13
  76. package/dist/types/calls/dialogs/date.d.ts +96 -96
  77. package/dist/types/calls/dialogs/dropUpAlert.d.ts +5 -5
  78. package/dist/types/calls/dialogs/fileSelect.d.ts +16 -16
  79. package/dist/types/calls/dialogs/iFrame.d.ts +10 -10
  80. package/dist/types/calls/dialogs/index.d.ts +14 -14
  81. package/dist/types/calls/dialogs/input.d.ts +15 -15
  82. package/dist/types/calls/dialogs/mediaSelect.d.ts +8 -8
  83. package/dist/types/calls/dialogs/open.d.ts +1 -1
  84. package/dist/types/calls/dialogs/select.d.ts +6 -6
  85. package/dist/types/calls/dialogs/signature.d.ts +7 -7
  86. package/dist/types/calls/dialogs/toast.d.ts +1 -1
  87. package/dist/types/calls/dialogs/utils/callback.d.ts +1 -1
  88. package/dist/types/calls/dialogs/utils/is.d.ts +4 -4
  89. package/dist/types/calls/getUserInfo.d.ts +9 -9
  90. package/dist/types/calls/index.d.ts +237 -233
  91. package/dist/types/calls/sendMessage.d.ts +13 -13
  92. package/dist/types/calls/visibilityChangeListener.d.ts +9 -9
  93. package/dist/types/components/AppDialogWrapper.d.ts +5 -0
  94. package/dist/types/components/ChaynsContext.d.ts +3 -3
  95. package/dist/types/components/ChaynsProvider.d.ts +14 -13
  96. package/dist/types/components/WaitUntil.d.ts +8 -7
  97. package/dist/types/components/withCompatMode.d.ts +13 -13
  98. package/dist/types/helper/apiListenerHelper.d.ts +6 -6
  99. package/dist/types/hooks/geoLocationListener.d.ts +18 -18
  100. package/dist/types/hooks/index.d.ts +17 -16
  101. package/dist/types/hooks/scrollListener.d.ts +28 -28
  102. package/dist/types/hooks/useAccessToken.d.ts +5 -5
  103. package/dist/types/hooks/useCurrentPage.d.ts +4 -4
  104. package/dist/types/hooks/useCustomData.d.ts +4 -4
  105. package/dist/types/hooks/useDevice.d.ts +5 -5
  106. package/dist/types/hooks/useDialogState.d.ts +9 -0
  107. package/dist/types/hooks/useEnvironment.d.ts +5 -5
  108. package/dist/types/hooks/useFunctions.d.ts +5 -5
  109. package/dist/types/hooks/useIsAdminMode.d.ts +4 -4
  110. package/dist/types/hooks/useLanguage.d.ts +5 -5
  111. package/dist/types/hooks/usePages.d.ts +18 -18
  112. package/dist/types/hooks/useParameters.d.ts +5 -5
  113. package/dist/types/hooks/useSite.d.ts +5 -5
  114. package/dist/types/hooks/useUser.d.ts +5 -5
  115. package/dist/types/hooks/useValues.d.ts +5 -5
  116. package/dist/types/hooks/windowMetricsListener.d.ts +11 -11
  117. package/dist/types/host/ChaynsHost.d.ts +30 -29
  118. package/dist/types/host/iframe/HostIframe.d.ts +26 -25
  119. package/dist/types/host/iframe/utils/useUpdateData.d.ts +3 -3
  120. package/dist/types/host/module/ModuleHost.d.ts +25 -24
  121. package/dist/types/host/module/utils/loadComponent.d.ts +1 -1
  122. package/dist/types/host/module/utils/useDynamicScript.d.ts +9 -9
  123. package/dist/types/index.d.ts +16 -16
  124. package/dist/types/types/IChaynsReact.d.ts +700 -622
  125. package/dist/types/types/dialog.d.ts +41 -41
  126. package/dist/types/util/appCall.d.ts +2 -2
  127. package/dist/types/util/deviceHelper.d.ts +7 -7
  128. package/dist/types/util/heightHelper.d.ts +1 -1
  129. package/dist/types/util/postIframeForm.d.ts +1 -1
  130. package/dist/types/util/url.d.ts +1 -1
  131. package/dist/types/wrapper/AppWrapper.d.ts +27 -18
  132. package/dist/types/wrapper/FrameWrapper.d.ts +15 -15
  133. package/dist/types/wrapper/ModuleFederationWrapper.d.ts +10 -10
  134. package/dist/types/wrapper/SsrWrapper.d.ts +11 -11
  135. package/package.json +75 -76
  136. package/tsconfig.json +56 -56
  137. package/toolkit.config.js +0 -52
@@ -1,7 +1,7 @@
1
1
  import { useContextSelector } from 'use-context-selector';
2
2
  import { ChaynsContext } from '../components/ChaynsContext';
3
- /**
4
- * @category Hooks
3
+ /**
4
+ * @category Hooks
5
5
  */
6
6
  export const useIsAdminMode = () => {
7
7
  var _useContextSelector;
@@ -1,6 +1,6 @@
1
1
  import { useContextSelector } from 'use-context-selector';
2
2
  import { ChaynsContext } from '../components/ChaynsContext';
3
- /**
4
- * @category Hooks
3
+ /**
4
+ * @category Hooks
5
5
  */
6
6
  export const useLanguage = () => useContextSelector(ChaynsContext, v => v === null || v === void 0 ? void 0 : v.language);
@@ -1,8 +1,8 @@
1
1
  import { useContextSelector } from 'use-context-selector';
2
2
  import { ChaynsContext } from '../components/ChaynsContext';
3
3
  import { moduleWrapper } from "../components/ChaynsProvider";
4
- /**
5
- * @category Hooks
4
+ /**
5
+ * @category Hooks
6
6
  */
7
7
  export const usePages = function () {
8
8
  let {
@@ -16,8 +16,8 @@ export const usePages = function () {
16
16
  }
17
17
  return pages;
18
18
  };
19
- /**
20
- * @category Hooks
19
+ /**
20
+ * @category Hooks
21
21
  */
22
22
  export const usePage = _ref => {
23
23
  let {
@@ -1,6 +1,6 @@
1
1
  import { useContextSelector } from 'use-context-selector';
2
2
  import { ChaynsContext } from '../components/ChaynsContext';
3
- /**
4
- * @category Hooks
3
+ /**
4
+ * @category Hooks
5
5
  */
6
6
  export const useParameters = () => useContextSelector(ChaynsContext, v => (v === null || v === void 0 ? void 0 : v.parameters) || []);
@@ -1,6 +1,6 @@
1
1
  import { useContextSelector } from 'use-context-selector';
2
2
  import { ChaynsContext } from '../components/ChaynsContext';
3
- /**
4
- * @category Hooks
3
+ /**
4
+ * @category Hooks
5
5
  */
6
6
  export const useSite = () => useContextSelector(ChaynsContext, v => v === null || v === void 0 ? void 0 : v.site);
@@ -1,6 +1,6 @@
1
1
  import { useContextSelector } from 'use-context-selector';
2
2
  import { ChaynsContext } from '../components/ChaynsContext';
3
- /**
4
- * @category Hooks
3
+ /**
4
+ * @category Hooks
5
5
  */
6
6
  export const useUser = () => useContextSelector(ChaynsContext, v => (v === null || v === void 0 ? void 0 : v.user) || {});
@@ -1,7 +1,7 @@
1
1
  import { useContextSelector } from 'use-context-selector';
2
2
  import { ChaynsContext } from '../components/ChaynsContext';
3
- /**
4
- * @category Hooks
3
+ /**
4
+ * @category Hooks
5
5
  */
6
6
  export const useValues = () => {
7
7
  const t = useContextSelector(ChaynsContext, v => v || {});
@@ -2,8 +2,8 @@ import { useContextSelector } from 'use-context-selector';
2
2
  import { useCallback, useEffect, useRef, useState } from 'react';
3
3
  import { ChaynsFunctionsContext } from '../components/ChaynsContext';
4
4
  import { ScreenSize } from '../types/IChaynsReact';
5
- /**
6
- * @category Hooks
5
+ /**
6
+ * @category Hooks
7
7
  */
8
8
  export const useWindowMetricsListener = () => {
9
9
  const addListener = useContextSelector(ChaynsFunctionsContext, v => v.addWindowMetricsListener);
@@ -18,8 +18,8 @@ export const useWindowMetricsListener = () => {
18
18
  // eslint-disable-next-line react-hooks/exhaustive-deps
19
19
  }, []);
20
20
  };
21
- /**
22
- * @category Hooks
21
+ /**
22
+ * @category Hooks
23
23
  */
24
24
  export const useWindowMetrics = function () {
25
25
  let {
@@ -22,7 +22,8 @@ const ChaynsHost = _ref => {
22
22
  parameters,
23
23
  customData,
24
24
  environment,
25
- preventStagingReplacement
25
+ preventStagingReplacement,
26
+ dialog
26
27
  } = _ref;
27
28
  switch (type) {
28
29
  case 'client-iframe':
@@ -41,7 +42,8 @@ const ChaynsHost = _ref => {
41
42
  parameters: parameters,
42
43
  environment: environment,
43
44
  customData: customData,
44
- preventStagingReplacement: preventStagingReplacement
45
+ preventStagingReplacement: preventStagingReplacement,
46
+ dialog: dialog
45
47
  });
46
48
  case 'client-module':
47
49
  return /*#__PURE__*/React.createElement(ModuleHost, {
@@ -77,7 +79,8 @@ const ChaynsHost = _ref => {
77
79
  parameters: parameters,
78
80
  environment: environment,
79
81
  customData: customData,
80
- preventStagingReplacement: preventStagingReplacement
82
+ preventStagingReplacement: preventStagingReplacement,
83
+ dialog: dialog
81
84
  });
82
85
  case 'server-module':
83
86
  return /*#__PURE__*/React.createElement(ModuleHost, {
@@ -22,7 +22,8 @@ const HostIframe = _ref => {
22
22
  parameters,
23
23
  environment,
24
24
  customData,
25
- preventStagingReplacement
25
+ preventStagingReplacement,
26
+ dialog
26
27
  } = _ref;
27
28
  const eventTarget = useRef();
28
29
  const ref = useRef();
@@ -48,7 +49,8 @@ const HostIframe = _ref => {
48
49
  language,
49
50
  parameters,
50
51
  environment,
51
- customData
52
+ customData,
53
+ dialog
52
54
  };
53
55
  // endregion
54
56
 
@@ -60,7 +62,7 @@ const HostIframe = _ref => {
60
62
  if (postForm) {
61
63
  var _await$functions$getA;
62
64
  const accessToken = (_await$functions$getA = await functions.getAccessToken()) !== null && _await$functions$getA !== void 0 ? _await$functions$getA : {};
63
- void postIframeForm(replaceStagingUrl(preventStagingReplacement, src, environment.runtimeEnvironment), JSON.stringify({
65
+ void postIframeForm(replaceStagingUrl(preventStagingReplacement, src, environment.buildEnvironment), JSON.stringify({
64
66
  ...initialData,
65
67
  pages: undefined,
66
68
  ...accessToken
@@ -108,6 +110,7 @@ const HostIframe = _ref => {
108
110
  useUpdateData(eventTarget.current, 'parameters', parameters);
109
111
  useUpdateData(eventTarget.current, 'environment', environment);
110
112
  useUpdateData(eventTarget.current, 'customData', customData);
113
+ useUpdateData(eventTarget.current, 'dialog', dialog);
111
114
  // endregion
112
115
 
113
116
  return /*#__PURE__*/React.createElement("iframe", _extends({
@@ -1,3 +1,9 @@
1
+ export let DialogButtonType;
2
+ (function (DialogButtonType) {
3
+ DialogButtonType[DialogButtonType["OK"] = 1] = "OK";
4
+ DialogButtonType[DialogButtonType["CANCEL"] = -1] = "CANCEL";
5
+ DialogButtonType[DialogButtonType["NEGATIVE"] = 0] = "NEGATIVE";
6
+ })(DialogButtonType || (DialogButtonType = {}));
1
7
  export let ScreenSize;
2
8
  (function (ScreenSize) {
3
9
  ScreenSize[ScreenSize["XS"] = 0] = "XS";
@@ -235,4 +241,16 @@ var selectType;
235
241
  (function (selectType) {
236
242
  selectType[selectType["DEFAULT"] = 0] = "DEFAULT";
237
243
  selectType[selectType["ICON"] = 1] = "ICON";
238
- })(selectType || (selectType = {}));
244
+ })(selectType || (selectType = {}));
245
+ export let DialogType;
246
+ (function (DialogType) {
247
+ DialogType["ALERT"] = "alert";
248
+ DialogType["CONFIRM"] = "confirm";
249
+ DialogType["DATE"] = "date";
250
+ DialogType["FILE_SELECT"] = "fileSelect";
251
+ DialogType["IFRAME"] = "iframe";
252
+ DialogType["MODULE"] = "module";
253
+ DialogType["INPUT"] = "input";
254
+ DialogType["SELECT"] = "select";
255
+ DialogType["TOAST"] = "toast";
256
+ })(DialogType || (DialogType = {}));
@@ -29,7 +29,7 @@ const getDeviceInfo = (userAgent, acceptHeader) => {
29
29
  result.accessToken = undefined; // TODO
30
30
  result.os = parsedUA === null || parsedUA === void 0 ? void 0 : parsedUA.os;
31
31
  if (typeof window !== 'undefined') {
32
- result.screenSize = getScreenSize(window.innerWidth);
32
+ result.screenSize = getScreenSize(window.innerWidth, window.innerHeight);
33
33
  } else {
34
34
  // estimate size over user agent, very inaccurate, could be improved by setting a cookie with the screensize
35
35
  const screenSizeByUA = /mobi/i.test(userAgent) ? ScreenSize.SM : ScreenSize.XL;
@@ -42,15 +42,16 @@ const getDeviceInfo = (userAgent, acceptHeader) => {
42
42
  export const getClientDeviceInfo = () => ({
43
43
  isTouch: navigator.maxTouchPoints > 0 && window.matchMedia('(pointer: coarse)')
44
44
  });
45
- export const getScreenSize = width => {
45
+ export const getScreenSize = (width, height) => {
46
+ const size = Math.max(width, height);
46
47
  let value;
47
- if (width > 1200) {
48
+ if (size > 1200) {
48
49
  value = ScreenSize.XL;
49
- } else if (width > 993) {
50
+ } else if (size > 993) {
50
51
  value = ScreenSize.LG;
51
- } else if (width > 769) {
52
+ } else if (size > 769) {
52
53
  value = ScreenSize.MD;
53
- } else if (width > 556) {
54
+ } else if (size > 556) {
54
55
  value = ScreenSize.SM;
55
56
  } else {
56
57
  value = ScreenSize.XS;
@@ -1,4 +1,6 @@
1
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
1
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
3
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
2
4
  /* eslint-disable */
3
5
  // @ts-nocheck
4
6
 
@@ -9,6 +11,7 @@ import getDeviceInfo, { getScreenSize } from '../util/deviceHelper';
9
11
  import getUserInfo from '../calls/getUserInfo';
10
12
  import { sendMessageToGroup, sendMessageToPage, sendMessageToUser } from '../calls/sendMessage';
11
13
  import { addApiListener, dispatchApiEvent, removeApiListener } from '../helper/apiListenerHelper';
14
+ let appWrapperDialogId = 0;
12
15
  export class AppWrapper {
13
16
  mapOldApiToNew(retVal) {
14
17
  var _window, _window2, _AppInfo$TappSelected;
@@ -85,6 +88,7 @@ export class AppWrapper {
85
88
  };
86
89
  }
87
90
  constructor() {
91
+ var _this = this;
88
92
  _defineProperty(this, "values", null);
89
93
  _defineProperty(this, "accessToken", '');
90
94
  _defineProperty(this, "counter", 0);
@@ -425,12 +429,44 @@ export class AppWrapper {
425
429
  void this.appCall(19, value, {
426
430
  awaitResult: false
427
431
  });
432
+ },
433
+ openDialog: async function () {
434
+ return _this.openDialog(...arguments);
435
+ },
436
+ createDialog: config => {
437
+ return {
438
+ close: async value => {
439
+ this.dialogs.find(x => x.dialogId === dialogId).eventTarget.dispatchEvent(new CustomEvent('close', {
440
+ detail: data
441
+ }));
442
+ },
443
+ open: async () => {
444
+ return await this.openDialog(config);
445
+ }
446
+ };
447
+ },
448
+ closeDialog: (dialogId, data) => {
449
+ try {
450
+ this.dialogs.find(x => x.dialogId === dialogId).eventTarget.dispatchEvent(new CustomEvent('requestClose', {
451
+ detail: data
452
+ }));
453
+ } catch (e) {
454
+ console.error(e);
455
+ }
428
456
  }
429
457
  });
458
+ _defineProperty(this, "dialogs", []);
459
+ _defineProperty(this, "dialogEventTarget", new EventTarget());
430
460
  }
431
461
  notImplemented(call) {
432
462
  console.warn(`call ${call} not implement in app`);
433
463
  }
464
+ dispatchDialogChange(detail) {
465
+ this.dialogs = detail;
466
+ this.dialogEventTarget.dispatchEvent(new CustomEvent('change', {
467
+ detail
468
+ }));
469
+ }
434
470
  appCall(action) {
435
471
  let value = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
436
472
  let {
@@ -463,6 +499,23 @@ export class AppWrapper {
463
499
  });
464
500
  });
465
501
  }
502
+ async openDialog(config) {
503
+ const currentDialogId = appWrapperDialogId;
504
+ const res = await new Promise(resolve => {
505
+ const eventTarget = new EventTarget();
506
+ this.dispatchDialogChange([...(this.dialogs || []), {
507
+ config,
508
+ resolve,
509
+ dialogId: appWrapperDialogId++,
510
+ eventTarget
511
+ }]);
512
+ });
513
+ this.dispatchDialogChange(this.dialogs.filter(x => x.dialogId !== currentDialogId));
514
+ return res;
515
+ }
516
+ getDialogEventTarget() {
517
+ return this.dialogEventTarget;
518
+ }
466
519
  async init() {
467
520
  this.values = this.mapOldApiToNew(await this.appCall(18));
468
521
  return undefined;
@@ -480,4 +533,13 @@ export class AppWrapper {
480
533
  getInitialData() {
481
534
  return this.values;
482
535
  }
536
+ createDialog(config) {
537
+ return {
538
+ close: () => {},
539
+ open: async () => {
540
+ const dialog = await functions.openDialog(config);
541
+ return dialog;
542
+ }
543
+ };
544
+ }
483
545
  }
@@ -1,4 +1,6 @@
1
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
1
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
3
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
2
4
  /* eslint-disable @typescript-eslint/no-non-null-assertion */
3
5
  import * as comlink from 'comlink';
4
6
  import { addVisibilityChangeListener, removeVisibilityChangeListener } from '../calls/visibilityChangeListener';
@@ -225,7 +227,22 @@ export class FrameWrapper {
225
227
  scrollByY: async (value, duration) => {
226
228
  if (!this.initialized) await this.ready;
227
229
  return this.exposedFunctions.scrollByY(value, duration);
228
- }
230
+ },
231
+ createDialog: config => {
232
+ return {
233
+ close: async (buttonType, data) => {
234
+ await this.exposedFunctions.closeDialog(buttonType, data);
235
+ },
236
+ open: async () => {
237
+ return await this.exposedFunctions.openDialog(config);
238
+ }
239
+ };
240
+ },
241
+ closeDialog: async (buttonType, value) => {
242
+ if (!this.initialized) await this.ready;
243
+ return this.exposedFunctions.closeDialog(buttonType, value);
244
+ },
245
+ openDialog: async value => {}
229
246
  });
230
247
  _defineProperty(this, "initialized", false);
231
248
  const initialDataTag = document.querySelector('#__CHAYNS_DATA__');
@@ -20,6 +20,17 @@ export class ModuleFederationWrapper {
20
20
  return fn(...arguments);
21
21
  };
22
22
  });
23
+ this.functions.createDialog = config => {
24
+ return {
25
+ close: (buttonType, data) => {
26
+ return functions.closeDialog(buttonType, data);
27
+ },
28
+ open: async () => {
29
+ const dialog = await functions.openDialog(config);
30
+ return dialog;
31
+ }
32
+ };
33
+ };
23
34
  this.functions.addWindowMetricsListener = async callback => {
24
35
  const {
25
36
  id,
@@ -1 +1 @@
1
- export declare function alert(title?: string, message?: string): Promise<any> | "unsupported";
1
+ export declare function alert(title?: string, message?: string): Promise<any> | "unsupported";
@@ -1,24 +1,24 @@
1
- export declare const buttonText: {
2
- YES: string;
3
- NO: string;
4
- OK: string;
5
- CANCEL: string;
6
- };
7
- export declare const buttonType: {
8
- CANCEL: number;
9
- NEGATIVE: number;
10
- POSITIVE: number;
11
- };
12
- export declare const dialogAction: {
13
- ALERT_CONFIRM: number;
14
- INPUT: number;
15
- SELECT: number;
16
- DATE: number;
17
- ADVANCED_DATE: number;
18
- DROP_UP_ALERT: number;
19
- MEDIA_SELECT: number;
20
- FILE_SELECT: number;
21
- SIGNATURE: number;
22
- IFRAME: number;
23
- };
24
- export declare function chaynsDialog(config: any): Promise<any> | "unsupported";
1
+ export declare const buttonText: {
2
+ YES: string;
3
+ NO: string;
4
+ OK: string;
5
+ CANCEL: string;
6
+ };
7
+ export declare const buttonType: {
8
+ CANCEL: number;
9
+ NEGATIVE: number;
10
+ POSITIVE: number;
11
+ };
12
+ export declare const dialogAction: {
13
+ ALERT_CONFIRM: number;
14
+ INPUT: number;
15
+ SELECT: number;
16
+ DATE: number;
17
+ ADVANCED_DATE: number;
18
+ DROP_UP_ALERT: number;
19
+ MEDIA_SELECT: number;
20
+ FILE_SELECT: number;
21
+ SIGNATURE: number;
22
+ IFRAME: number;
23
+ };
24
+ export declare function chaynsDialog(config: any): Promise<any> | "unsupported";
@@ -1 +1 @@
1
- export declare function close(): Promise<any>;
1
+ export declare function close(): Promise<any>;
@@ -1,3 +1,3 @@
1
- export declare function sendData(data: any, isApiEvent: any): Promise<any>;
2
- export declare function addDialogDataListener(callback: any, getApiEvents?: boolean): boolean;
3
- export declare function removeDialogDataListener(callback: any, getApiEvents?: boolean): boolean;
1
+ export declare function sendData(data: any, isApiEvent: any): Promise<any>;
2
+ export declare function addDialogDataListener(callback: any, getApiEvents?: boolean): boolean;
3
+ export declare function removeDialogDataListener(callback: any, getApiEvents?: boolean): boolean;
@@ -1,13 +1,13 @@
1
- import { DialogButton } from "../../types/dialog";
2
- type Confirm = {
3
- headline?: string;
4
- text?: string;
5
- buttons?: DialogButton[] | {
6
- buttons?: DialogButton[];
7
- links?: DialogButton[];
8
- };
9
- links?: unknown;
10
- select?: unknown;
11
- };
12
- export declare function confirm(title?: string, message?: string, config?: Confirm): Promise<any> | "unsupported";
13
- export {};
1
+ import { DialogButtonOld } from "../../types/dialog";
2
+ type Confirm = {
3
+ headline?: string;
4
+ text?: string;
5
+ buttons?: DialogButtonOld[] | {
6
+ buttons?: DialogButtonOld[];
7
+ links?: DialogButtonOld[];
8
+ };
9
+ links?: unknown;
10
+ select?: unknown;
11
+ };
12
+ export declare function confirm(title?: string, message?: string, config?: Confirm): Promise<any> | "unsupported";
13
+ export {};