chayns-api 1.1.0-9 → 1.1.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.
Files changed (168) 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 +54 -54
  7. package/dist/cjs/calls/dialogs/date.js +34 -34
  8. package/dist/cjs/calls/index.js +116 -108
  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 +2 -2
  12. package/dist/cjs/components/ChaynsProvider.js +3 -6
  13. package/dist/cjs/components/ErrorBoundary.js +1 -1
  14. package/dist/cjs/components/withCompatMode.js +2 -2
  15. package/dist/cjs/constants/languages.js +19 -0
  16. package/dist/cjs/handler/DialogHandler.js +1 -2
  17. package/dist/cjs/hooks/geoLocationListener.js +4 -4
  18. package/dist/cjs/hooks/scrollListener.js +8 -8
  19. package/dist/cjs/hooks/useAccessToken.js +3 -3
  20. package/dist/cjs/hooks/useCurrentPage.js +2 -2
  21. package/dist/cjs/hooks/useCustomData.js +2 -2
  22. package/dist/cjs/hooks/useDevice.js +2 -2
  23. package/dist/cjs/hooks/useDialogState.js +4 -4
  24. package/dist/cjs/hooks/useEnvironment.js +2 -2
  25. package/dist/cjs/hooks/useFunctions.js +2 -2
  26. package/dist/cjs/hooks/useIsAdminMode.js +2 -2
  27. package/dist/cjs/hooks/useLanguage.js +2 -2
  28. package/dist/cjs/hooks/usePages.js +4 -4
  29. package/dist/cjs/hooks/useParameters.js +2 -2
  30. package/dist/cjs/hooks/useSite.js +2 -2
  31. package/dist/cjs/hooks/useUser.js +2 -2
  32. package/dist/cjs/hooks/useValues.js +2 -2
  33. package/dist/cjs/hooks/windowMetricsListener.js +4 -4
  34. package/dist/cjs/host/ChaynsHost.js +1 -1
  35. package/dist/cjs/host/iframe/HostIframe.js +2 -2
  36. package/dist/cjs/host/module/ModuleHost.js +20 -23
  37. package/dist/cjs/host/module/utils/loadComponent.js +54 -57
  38. package/dist/cjs/host/module/utils/useDynamicScript.js +5 -7
  39. package/dist/cjs/index.js +5 -21
  40. package/dist/cjs/types/IChaynsReact.js +5 -4
  41. package/dist/cjs/util/deviceHelper.js +9 -2
  42. package/dist/cjs/util/heightHelper.js +1 -1
  43. package/dist/cjs/util/is.js +30 -0
  44. package/dist/cjs/util/transferNestedFunctions.js +5 -2
  45. package/dist/cjs/wrapper/AppWrapper.js +86 -43
  46. package/dist/cjs/wrapper/FrameWrapper.js +6 -2
  47. package/dist/cjs/wrapper/ModuleFederationWrapper.js +1 -1
  48. package/dist/cjs/wrapper/StaticChaynsApi.js +7 -0
  49. package/dist/esm/calls/dialogs/date.js +34 -34
  50. package/dist/esm/calls/index.js +114 -109
  51. package/dist/esm/calls/sendMessage.js +8 -8
  52. package/dist/esm/calls/visibilityChangeListener.js +4 -4
  53. package/dist/esm/components/AppDialogWrapper.js +1 -1
  54. package/dist/esm/components/ChaynsProvider.js +2 -5
  55. package/dist/esm/components/withCompatMode.js +1 -1
  56. package/dist/esm/constants/languages.js +13 -0
  57. package/dist/esm/handler/DialogHandler.js +2 -3
  58. package/dist/esm/hooks/geoLocationListener.js +4 -4
  59. package/dist/esm/hooks/scrollListener.js +8 -8
  60. package/dist/esm/hooks/useAccessToken.js +3 -3
  61. package/dist/esm/hooks/useCurrentPage.js +2 -2
  62. package/dist/esm/hooks/useCustomData.js +2 -2
  63. package/dist/esm/hooks/useDevice.js +2 -2
  64. package/dist/esm/hooks/useDialogState.js +4 -4
  65. package/dist/esm/hooks/useEnvironment.js +2 -2
  66. package/dist/esm/hooks/useFunctions.js +2 -2
  67. package/dist/esm/hooks/useIsAdminMode.js +2 -2
  68. package/dist/esm/hooks/useLanguage.js +2 -2
  69. package/dist/esm/hooks/usePages.js +4 -4
  70. package/dist/esm/hooks/useParameters.js +2 -2
  71. package/dist/esm/hooks/useSite.js +2 -2
  72. package/dist/esm/hooks/useUser.js +2 -2
  73. package/dist/esm/hooks/useValues.js +2 -2
  74. package/dist/esm/hooks/windowMetricsListener.js +4 -4
  75. package/dist/esm/host/iframe/HostIframe.js +1 -1
  76. package/dist/esm/host/module/ModuleHost.js +19 -22
  77. package/dist/esm/host/module/utils/loadComponent.js +53 -56
  78. package/dist/esm/index.js +1 -3
  79. package/dist/esm/types/IChaynsReact.js +5 -4
  80. package/dist/esm/util/deviceHelper.js +9 -2
  81. package/dist/esm/util/is.js +23 -0
  82. package/dist/esm/util/transferNestedFunctions.js +5 -2
  83. package/dist/esm/wrapper/AppWrapper.js +90 -45
  84. package/dist/esm/wrapper/FrameWrapper.js +6 -2
  85. package/dist/esm/wrapper/StaticChaynsApi.js +8 -1
  86. package/dist/types/calls/dialogs/alert.d.ts +1 -1
  87. package/dist/types/calls/dialogs/chaynsDialog.d.ts +24 -24
  88. package/dist/types/calls/dialogs/close.d.ts +1 -1
  89. package/dist/types/calls/dialogs/communication.d.ts +3 -3
  90. package/dist/types/calls/dialogs/confirm.d.ts +13 -13
  91. package/dist/types/calls/dialogs/date.d.ts +96 -96
  92. package/dist/types/calls/dialogs/dropUpAlert.d.ts +5 -5
  93. package/dist/types/calls/dialogs/fileSelect.d.ts +16 -16
  94. package/dist/types/calls/dialogs/iFrame.d.ts +10 -10
  95. package/dist/types/calls/dialogs/index.d.ts +14 -14
  96. package/dist/types/calls/dialogs/input.d.ts +15 -15
  97. package/dist/types/calls/dialogs/mediaSelect.d.ts +8 -8
  98. package/dist/types/calls/dialogs/open.d.ts +1 -1
  99. package/dist/types/calls/dialogs/select.d.ts +6 -6
  100. package/dist/types/calls/dialogs/signature.d.ts +7 -7
  101. package/dist/types/calls/dialogs/toast.d.ts +1 -1
  102. package/dist/types/calls/dialogs/utils/callback.d.ts +1 -1
  103. package/dist/types/calls/dialogs/utils/is.d.ts +4 -4
  104. package/dist/types/calls/getUserInfo.d.ts +9 -9
  105. package/dist/types/calls/index.d.ts +255 -251
  106. package/dist/types/calls/sendMessage.d.ts +13 -13
  107. package/dist/types/calls/visibilityChangeListener.d.ts +9 -9
  108. package/dist/types/components/AppDialogWrapper.d.ts +5 -5
  109. package/dist/types/components/ChaynsContext.d.ts +3 -3
  110. package/dist/types/components/ChaynsProvider.d.ts +11 -11
  111. package/dist/types/components/ErrorBoundary.d.ts +13 -13
  112. package/dist/types/components/WaitUntil.d.ts +7 -7
  113. package/dist/types/components/moduleWrapper.d.ts +4 -4
  114. package/dist/types/components/withCompatMode.d.ts +13 -13
  115. package/dist/types/constants/languages.d.ts +12 -0
  116. package/dist/types/handler/DialogHandler.d.ts +24 -18
  117. package/dist/types/helper/apiListenerHelper.d.ts +6 -6
  118. package/dist/types/hooks/geoLocationListener.d.ts +18 -18
  119. package/dist/types/hooks/index.d.ts +17 -17
  120. package/dist/types/hooks/scrollListener.d.ts +28 -28
  121. package/dist/types/hooks/useAccessToken.d.ts +6 -6
  122. package/dist/types/hooks/useCurrentPage.d.ts +4 -4
  123. package/dist/types/hooks/useCustomData.d.ts +4 -4
  124. package/dist/types/hooks/useDevice.d.ts +5 -5
  125. package/dist/types/hooks/useDialogState.d.ts +9 -9
  126. package/dist/types/hooks/useEnvironment.d.ts +5 -5
  127. package/dist/types/hooks/useFunctions.d.ts +5 -5
  128. package/dist/types/hooks/useIsAdminMode.d.ts +4 -4
  129. package/dist/types/hooks/useLanguage.d.ts +5 -5
  130. package/dist/types/hooks/usePages.d.ts +18 -18
  131. package/dist/types/hooks/useParameters.d.ts +5 -5
  132. package/dist/types/hooks/useSite.d.ts +5 -5
  133. package/dist/types/hooks/useUser.d.ts +5 -5
  134. package/dist/types/hooks/useValues.d.ts +5 -5
  135. package/dist/types/hooks/windowMetricsListener.d.ts +11 -11
  136. package/dist/types/host/ChaynsHost.d.ts +30 -30
  137. package/dist/types/host/iframe/HostIframe.d.ts +26 -26
  138. package/dist/types/host/iframe/utils/useUpdateData.d.ts +3 -3
  139. package/dist/types/host/module/ModuleHost.d.ts +27 -27
  140. package/dist/types/host/module/utils/loadComponent.d.ts +1 -1
  141. package/dist/types/host/module/utils/useDynamicScript.d.ts +9 -9
  142. package/dist/types/index.d.ts +20 -22
  143. package/dist/types/types/IChaynsReact.d.ts +859 -816
  144. package/dist/types/types/dialog.d.ts +41 -41
  145. package/dist/types/util/appCall.d.ts +2 -2
  146. package/dist/types/util/deviceHelper.d.ts +7 -7
  147. package/dist/types/util/heightHelper.d.ts +1 -1
  148. package/dist/types/util/is.d.ts +5 -0
  149. package/dist/types/util/postIframeForm.d.ts +1 -1
  150. package/dist/types/util/transferNestedFunctions.d.ts +1 -1
  151. package/dist/types/util/url.d.ts +1 -1
  152. package/dist/types/wrapper/AppWrapper.d.ts +19 -22
  153. package/dist/types/wrapper/FrameWrapper.d.ts +15 -15
  154. package/dist/types/wrapper/ModuleFederationWrapper.d.ts +10 -10
  155. package/dist/types/wrapper/SsrWrapper.d.ts +11 -11
  156. package/dist/types/wrapper/StaticChaynsApi.d.ts +16 -9
  157. package/package.json +78 -86
  158. package/toolkit.config.js +20 -20
  159. package/tsconfig.json +56 -56
  160. package/dist/cjs/components/withHydrationBoundary.js +0 -58
  161. package/dist/cjs/constants/hydrationContext.js +0 -16
  162. package/dist/cjs/constants/index.js +0 -16
  163. package/dist/esm/components/withHydrationBoundary.js +0 -51
  164. package/dist/esm/constants/hydrationContext.js +0 -10
  165. package/dist/esm/constants/index.js +0 -1
  166. package/dist/types/components/withHydrationBoundary.d.ts +0 -17
  167. package/dist/types/constants/hydrationContext.d.ts +0 -9
  168. package/dist/types/constants/index.d.ts +0 -1
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.useCustomData = void 0;
7
7
  var _useContextSelector = require("use-context-selector");
8
8
  var _ChaynsContext = require("../components/ChaynsContext");
9
- /**
10
- * @category Hooks
9
+ /**
10
+ * @category Hooks
11
11
  */
12
12
  const useCustomData = () => (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, v => v === null || v === void 0 ? void 0 : v.customData);
13
13
  exports.useCustomData = useCustomData;
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.useDevice = void 0;
7
7
  var _useContextSelector = require("use-context-selector");
8
8
  var _ChaynsContext = require("../components/ChaynsContext");
9
- /**
10
- * @category Hooks
9
+ /**
10
+ * @category Hooks
11
11
  */
12
12
  const useDevice = () => (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, v => v === null || v === void 0 ? void 0 : v.device);
13
13
  exports.useDevice = useDevice;
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.useDialogState = exports.useDialogData = void 0;
7
7
  var _useContextSelector = require("use-context-selector");
8
8
  var _ChaynsContext = require("../components/ChaynsContext");
9
- /**
10
- * @category Hooks
9
+ /**
10
+ * @category Hooks
11
11
  */
12
12
  const useDialogState = () => {
13
13
  const setResult = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, v => v === null || v === void 0 ? void 0 : v.setDialogResult);
@@ -25,8 +25,8 @@ const useDialogState = () => {
25
25
  };
26
26
  };
27
27
 
28
- /**
29
- * @category Hooks
28
+ /**
29
+ * @category Hooks
30
30
  */
31
31
  exports.useDialogState = useDialogState;
32
32
  const useDialogData = () => {
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.useEnvironment = void 0;
7
7
  var _useContextSelector = require("use-context-selector");
8
8
  var _ChaynsContext = require("../components/ChaynsContext");
9
- /**
10
- * @category Hooks
9
+ /**
10
+ * @category Hooks
11
11
  */
12
12
  const useEnvironment = () => (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, v => v === null || v === void 0 ? void 0 : v.environment);
13
13
  exports.useEnvironment = useEnvironment;
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.useFunctions = void 0;
7
7
  var _useContextSelector = require("use-context-selector");
8
8
  var _ChaynsContext = require("../components/ChaynsContext");
9
- /**
10
- * @category Hooks
9
+ /**
10
+ * @category Hooks
11
11
  */
12
12
  const useFunctions = () => {
13
13
  const t = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, f => f || {});
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.useIsAdminMode = void 0;
7
7
  var _useContextSelector2 = require("use-context-selector");
8
8
  var _ChaynsContext = require("../components/ChaynsContext");
9
- /**
10
- * @category Hooks
9
+ /**
10
+ * @category Hooks
11
11
  */
12
12
  const useIsAdminMode = () => {
13
13
  var _useContextSelector;
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.useLanguage = void 0;
7
7
  var _useContextSelector = require("use-context-selector");
8
8
  var _ChaynsContext = require("../components/ChaynsContext");
9
- /**
10
- * @category Hooks
9
+ /**
10
+ * @category Hooks
11
11
  */
12
12
  const useLanguage = () => (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, v => v === null || v === void 0 ? void 0 : v.language);
13
13
  exports.useLanguage = useLanguage;
@@ -7,8 +7,8 @@ exports.usePages = exports.usePage = exports.getPage = void 0;
7
7
  var _useContextSelector = require("use-context-selector");
8
8
  var _ChaynsContext = require("../components/ChaynsContext");
9
9
  var _moduleWrapper = require("../components/moduleWrapper");
10
- /**
11
- * @category Hooks
10
+ /**
11
+ * @category Hooks
12
12
  */
13
13
  const usePages = ({
14
14
  siteId
@@ -21,8 +21,8 @@ const usePages = ({
21
21
  }
22
22
  return pages;
23
23
  };
24
- /**
25
- * @category Hooks
24
+ /**
25
+ * @category Hooks
26
26
  */
27
27
  exports.usePages = usePages;
28
28
  const usePage = ({
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.useParameters = void 0;
7
7
  var _useContextSelector = require("use-context-selector");
8
8
  var _ChaynsContext = require("../components/ChaynsContext");
9
- /**
10
- * @category Hooks
9
+ /**
10
+ * @category Hooks
11
11
  */
12
12
  const useParameters = () => (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, v => (v === null || v === void 0 ? void 0 : v.parameters) || []);
13
13
  exports.useParameters = useParameters;
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.useSite = void 0;
7
7
  var _useContextSelector = require("use-context-selector");
8
8
  var _ChaynsContext = require("../components/ChaynsContext");
9
- /**
10
- * @category Hooks
9
+ /**
10
+ * @category Hooks
11
11
  */
12
12
  const useSite = () => (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, v => v === null || v === void 0 ? void 0 : v.site);
13
13
  exports.useSite = useSite;
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.useUser = void 0;
7
7
  var _useContextSelector = require("use-context-selector");
8
8
  var _ChaynsContext = require("../components/ChaynsContext");
9
- /**
10
- * @category Hooks
9
+ /**
10
+ * @category Hooks
11
11
  */
12
12
  const useUser = () => (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, v => (v === null || v === void 0 ? void 0 : v.user) || {});
13
13
  exports.useUser = useUser;
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.useValues = void 0;
7
7
  var _useContextSelector = require("use-context-selector");
8
8
  var _ChaynsContext = require("../components/ChaynsContext");
9
- /**
10
- * @category Hooks
9
+ /**
10
+ * @category Hooks
11
11
  */
12
12
  const useValues = () => {
13
13
  const t = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, v => v || {});
@@ -8,8 +8,8 @@ var _useContextSelector = require("use-context-selector");
8
8
  var _react = require("react");
9
9
  var _ChaynsContext = require("../components/ChaynsContext");
10
10
  var _IChaynsReact = require("../types/IChaynsReact");
11
- /**
12
- * @category Hooks
11
+ /**
12
+ * @category Hooks
13
13
  */
14
14
  const useWindowMetricsListener = () => {
15
15
  const addListener = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, v => v.addWindowMetricsListener);
@@ -24,8 +24,8 @@ const useWindowMetricsListener = () => {
24
24
  // eslint-disable-next-line react-hooks/exhaustive-deps
25
25
  }, []);
26
26
  };
27
- /**
28
- * @category Hooks
27
+ /**
28
+ * @category Hooks
29
29
  */
30
30
  exports.useWindowMetricsListener = useWindowMetricsListener;
31
31
  const useWindowMetrics = ({
@@ -7,7 +7,7 @@ exports.default = void 0;
7
7
  var _react = _interopRequireDefault(require("react"));
8
8
  var _HostIframe = _interopRequireDefault(require("./iframe/HostIframe"));
9
9
  var _ModuleHost = _interopRequireDefault(require("./module/ModuleHost"));
10
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
11
  const ChaynsHost = ({
12
12
  type,
13
13
  iFrameProps,
@@ -9,10 +9,10 @@ var comlink = _interopRequireWildcard(require("comlink"));
9
9
  var _postIframeForm = _interopRequireDefault(require("../../util/postIframeForm"));
10
10
  var _useUpdateData = _interopRequireDefault(require("./utils/useUpdateData"));
11
11
  var _url = require("../../util/url");
12
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
13
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
14
14
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
15
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
15
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
16
16
  const HostIframe = ({
17
17
  iFrameProps,
18
18
  src,
@@ -4,40 +4,37 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
- var _runtime = require("@module-federation/runtime");
8
7
  var _react = _interopRequireWildcard(require("react"));
9
- var _reactDom = _interopRequireDefault(require("react-dom"));
8
+ var _useDynamicScript = _interopRequireDefault(require("./utils/useDynamicScript"));
10
9
  var _loadComponent = _interopRequireDefault(require("./utils/loadComponent"));
11
10
  var _url = require("../../util/url");
12
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
12
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
14
13
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
15
- (0, _runtime.init)({
16
- // @ts-expect-error will be set by chayns-toolkit via DefinePlugin
17
- name: process.env.__PACKAGE_NAME__,
18
- remotes: [],
19
- shared: {
20
- react: {
21
- version: _react.default.version,
22
- scope: 'default',
23
- lib: () => _react.default
24
- },
25
- 'react-dom': {
26
- version: _reactDom.default.version,
27
- scope: 'default',
28
- lib: () => _reactDom.default
29
- }
30
- }
31
- });
32
14
  const System = ({
33
15
  system,
34
16
  fallback,
35
17
  ...props
36
18
  }) => {
37
- const Component = (0, _react.useMemo)(() => (0, _loadComponent.default)(system.scope, system.module, system.url, undefined, system.preventSingleton), [system.scope, system.module, system.url, system.preventSingleton]);
38
- return /*#__PURE__*/_react.default.createElement(_react.default.Suspense, {
19
+ const {
20
+ ready,
21
+ failed
22
+ } = (0, _useDynamicScript.default)({
23
+ url: system === null || system === void 0 ? void 0 : system.url,
24
+ scope: system === null || system === void 0 ? void 0 : system.scope
25
+ });
26
+ const Component = (0, _react.useMemo)(() => {
27
+ // maybe return waitcursor instead
28
+ if (!system || !ready || failed) {
29
+ return null;
30
+ }
31
+ return /*#__PURE__*/_react.default.lazy((0, _loadComponent.default)(system.scope, system.module, system.url, undefined, system.preventSingleton));
32
+
33
+ /* eslint-disable react-hooks/exhaustive-deps */
34
+ }, [system === null || system === void 0 ? void 0 : system.scope, ready, system === null || system === void 0 ? void 0 : system.url]);
35
+ return Component ? /*#__PURE__*/_react.default.createElement(_react.default.Suspense, {
39
36
  fallback: fallback || ''
40
- }, /*#__PURE__*/_react.default.createElement(Component, props));
37
+ }, /*#__PURE__*/_react.default.createElement(Component, props)) : fallback;
41
38
  };
42
39
  const ModuleHost = ({
43
40
  system,
@@ -6,63 +6,60 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = loadComponent;
7
7
  var _semver = _interopRequireDefault(require("semver"));
8
8
  var _react = _interopRequireDefault(require("react"));
9
- var _runtime = require("@module-federation/runtime");
10
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
- const registeredScopes = {};
12
- const dynamicMap = {};
9
+ var _useDynamicScript = require("./useDynamicScript");
10
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
+ /* eslint-disable */
12
+ // @ts-nocheck
13
+
14
+ let instances = {};
13
15
  function loadComponent(scope, module, url, skipCompatMode = false, preventSingleton = false) {
14
- if (skipCompatMode) {
15
- console.warn('[chayns-api] skipCompatMode-option is deprecated and is set automatically now');
16
- }
17
- if (registeredScopes[scope] !== url || preventSingleton) {
18
- (0, _runtime.registerRemotes)([{
19
- name: scope,
20
- entry: url,
21
- alias: scope
22
- }], {
23
- force: scope in registeredScopes
24
- });
25
- registeredScopes[scope] = url;
26
- dynamicMap[scope] = {};
27
- }
28
- if (!(module in dynamicMap[scope])) {
29
- const path = `${scope}/${module.replace(/^\.\//, '')}`;
30
- dynamicMap[scope][module] = /*#__PURE__*/_react.default.lazy(() => {
31
- return (0, _runtime.loadRemote)(path).then(async Module => {
32
- // semantically equals skipCompatMode
33
- if (typeof Module.default === 'function') {
34
- return Module;
35
- }
36
- const hostVersion = _semver.default.minVersion(_react.default.version);
37
- const {
38
- requiredVersion,
39
- environment
40
- } = Module.default;
41
- const shareScopes = await new Promise(resolve => {
42
- (0, _runtime.loadShareSync)('react', {
43
- resolver: shareOptions => {
44
- resolve(shareOptions);
45
- return shareOptions[0];
46
- }
47
- });
48
- });
49
- const matchReactVersion = requiredVersion && _semver.default.satisfies(hostVersion, requiredVersion) && !shareScopes.some(t => {
50
- const {
51
- version,
52
- from
53
- } = t;
54
- return _semver.default.gt(version, hostVersion) && _semver.default.satisfies(version, requiredVersion) || scope === from.split('-').join('_');
55
- });
56
- if (!matchReactVersion || environment !== 'production' || process.env.NODE_ENV === 'development') {
57
- return {
58
- default: Module.default.CompatComponent
59
- };
60
- }
61
- return {
62
- default: Module.default.Component
63
- };
64
- });
16
+ return async () => {
17
+ // Initializes the shared scope. Fills it with known provided modules from this build and all remotes
18
+ await __webpack_init_sharing__('default');
19
+ const {
20
+ container
21
+ } = window[scope + "_list"].find(x => x.url === url); // or get the container somewhere else
22
+ // Initialize the container, it may provide shared modules
23
+ await container.init(__webpack_share_scopes__.default);
24
+ const factory = await container.get(module);
25
+ _useDynamicScript.semaphore[scope].release();
26
+ let ModuleMap = instances[`${scope}__${module}`];
27
+ let Module;
28
+ if (!ModuleMap) {
29
+ ModuleMap = {};
30
+ instances[`${scope}__${module}`] = ModuleMap;
31
+ }
32
+ if (Object.keys(ModuleMap).length > 0) {
33
+ const newModule = factory();
34
+ Module = ModuleMap[`${newModule.default.buildEnv}__${newModule.default.appVersion}`];
35
+ if (!Module) {
36
+ Module = newModule;
37
+ ModuleMap[`${newModule.default.buildEnv}__${newModule.default.appVersion}`] = newModule;
38
+ }
39
+ } else {
40
+ Module = factory();
41
+ ModuleMap[`${Module.default.buildEnv}__${Module.default.appVersion}`] = Module;
42
+ }
43
+ if (preventSingleton) {
44
+ // Intercom :)
45
+ window[scope + "_list"] = null;
46
+ }
47
+ if (skipCompatMode) return Module;
48
+ const hostVersion = _semver.default.minVersion(_react.default.version);
49
+ const {
50
+ requiredVersion,
51
+ environment
52
+ } = Module.default;
53
+ const matchReactVersion = requiredVersion && _semver.default.satisfies(hostVersion, requiredVersion) && !Object.keys(__webpack_share_scopes__.default.react).some(version => {
54
+ return _semver.default.gt(version, hostVersion) && _semver.default.satisfies(version, requiredVersion) || scope === __webpack_share_scopes__.default.react[version].from.split('-').join('_');
65
55
  });
66
- }
67
- return dynamicMap[scope][module];
56
+ if (!matchReactVersion || environment !== 'production' || process.env.NODE_ENV === 'development') {
57
+ return {
58
+ default: Module.default.CompatComponent
59
+ };
60
+ }
61
+ return {
62
+ default: Module.default.Component
63
+ };
64
+ };
68
65
  }
@@ -6,11 +6,10 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.semaphore = exports.default = void 0;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
8
  var _semaphoreAsyncAwait = _interopRequireDefault(require("semaphore-async-await"));
9
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
11
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
12
- const semaphore = {};
13
- exports.semaphore = semaphore;
9
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
11
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
12
+ const semaphore = exports.semaphore = {};
14
13
  const useDynamicScript = args => {
15
14
  const [ready, setReady] = _react.default.useState(false);
16
15
  const [failed, setFailed] = _react.default.useState(false);
@@ -57,5 +56,4 @@ const useDynamicScript = args => {
57
56
  failed
58
57
  };
59
58
  };
60
- var _default = useDynamicScript;
61
- exports.default = _default;
59
+ var _default = exports.default = useDynamicScript;
package/dist/cjs/index.js CHANGED
@@ -10,9 +10,7 @@ var _exportNames = {
10
10
  getClientDeviceInfo: true,
11
11
  ChaynsHost: true,
12
12
  withCompatMode: true,
13
- withHydrationBoundary: true,
14
13
  StaticChaynsApi: true,
15
- loadComponent: true,
16
14
  DialogHandler: true,
17
15
  dialog: true
18
16
  };
@@ -59,24 +57,12 @@ Object.defineProperty(exports, "getScreenSize", {
59
57
  return _deviceHelper.getScreenSize;
60
58
  }
61
59
  });
62
- Object.defineProperty(exports, "loadComponent", {
63
- enumerable: true,
64
- get: function () {
65
- return _loadComponent.default;
66
- }
67
- });
68
60
  Object.defineProperty(exports, "withCompatMode", {
69
61
  enumerable: true,
70
62
  get: function () {
71
63
  return _withCompatMode.withCompatMode;
72
64
  }
73
65
  });
74
- Object.defineProperty(exports, "withHydrationBoundary", {
75
- enumerable: true,
76
- get: function () {
77
- return _withHydrationBoundary.default;
78
- }
79
- });
80
66
  require("./util/transferNestedFunctions");
81
67
  var _ChaynsProvider = _interopRequireDefault(require("./components/ChaynsProvider"));
82
68
  var _deviceHelper = _interopRequireWildcard(require("./util/deviceHelper"));
@@ -141,27 +127,25 @@ Object.keys(_IChaynsReact).forEach(function (key) {
141
127
  }
142
128
  });
143
129
  });
144
- var _constants = require("./constants");
145
- Object.keys(_constants).forEach(function (key) {
130
+ var _is = require("./util/is");
131
+ Object.keys(_is).forEach(function (key) {
146
132
  if (key === "default" || key === "__esModule") return;
147
133
  if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
148
- if (key in exports && exports[key] === _constants[key]) return;
134
+ if (key in exports && exports[key] === _is[key]) return;
149
135
  Object.defineProperty(exports, key, {
150
136
  enumerable: true,
151
137
  get: function () {
152
- return _constants[key];
138
+ return _is[key];
153
139
  }
154
140
  });
155
141
  });
156
- var _withHydrationBoundary = _interopRequireDefault(require("./components/withHydrationBoundary"));
157
142
  var _StaticChaynsApi = _interopRequireDefault(require("./wrapper/StaticChaynsApi"));
158
- var _loadComponent = _interopRequireDefault(require("./host/module/utils/loadComponent"));
159
143
  var _DialogHandler = _interopRequireDefault(require("./handler/DialogHandler"));
160
144
  var _dialog = _interopRequireWildcard(require("./calls/dialogs/index"));
161
145
  exports.dialog = _dialog;
162
146
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
163
147
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
164
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
148
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
165
149
  var _default = exports.default = {
166
150
  buildEnv: process.env.BUILD_ENV,
167
151
  appVersion: process.env.VERSION
@@ -29,6 +29,7 @@ let DialogSelectType = exports.DialogSelectType = /*#__PURE__*/function (DialogS
29
29
  DialogSelectType[DialogSelectType["DEFAULT"] = 0] = "DEFAULT";
30
30
  DialogSelectType[DialogSelectType["ICON"] = 1] = "ICON";
31
31
  DialogSelectType[DialogSelectType["IMAGE"] = 2] = "IMAGE";
32
+ DialogSelectType[DialogSelectType["SIMPLE"] = 3] = "SIMPLE";
32
33
  return DialogSelectType;
33
34
  }({});
34
35
  let DialogButtonType = exports.DialogButtonType = /*#__PURE__*/function (DialogButtonType) {
@@ -45,11 +46,11 @@ let ScreenSize = exports.ScreenSize = /*#__PURE__*/function (ScreenSize) {
45
46
  ScreenSize[ScreenSize["XL"] = 4] = "XL";
46
47
  return ScreenSize;
47
48
  }({});
48
- /**
49
- * @ignore
49
+ /**
50
+ * @ignore
50
51
  */
51
- /**
52
- * @ignore
52
+ /**
53
+ * @ignore
53
54
  */
54
55
  let AccessMode = exports.AccessMode = /*#__PURE__*/function (AccessMode) {
55
56
  AccessMode[AccessMode["public"] = 0] = "public";
@@ -7,10 +7,11 @@ exports.getScreenSize = exports.getClientDeviceInfo = exports.default = void 0;
7
7
  var _detectBrowser = require("detect-browser");
8
8
  var _IChaynsReact = require("../types/IChaynsReact");
9
9
  const getDeviceInfo = (userAgent, acceptHeader) => {
10
- var _match$groups, _match$groups2, _parsedUA$version$spl, _parsedUA$version;
10
+ var _match$groups, _match$groups2, _customMatch$groups, _parsedUA$version$spl, _parsedUA$version;
11
11
  const parsedUA = (0, _detectBrowser.parseUserAgent)(userAgent);
12
12
  let appName = _IChaynsReact.AppName.Unknown;
13
13
  const match = /(?:my)?chayns\/(?<version>\d+).*(?<siteId>\d{5}-\d{5})/i.exec(userAgent);
14
+ const customMatch = /\s(?<name>intercom|sidekick|team)\/(?<version>\d+)/i.exec(userAgent);
14
15
  if (/\sintercom\/\d+/i.test(userAgent)) {
15
16
  appName = _IChaynsReact.AppName.TobitChat;
16
17
  } else if (/\ssidekick\/\d+/i.test(userAgent)) {
@@ -26,6 +27,10 @@ const getDeviceInfo = (userAgent, acceptHeader) => {
26
27
  } else if (/dface|h96pp|h96max|jabiru|chaynsterminal|wayter|odroidn2p/i.test(userAgent)) {
27
28
  appName = _IChaynsReact.AppName.ChaynsLauncher;
28
29
  }
30
+ let appVersion = match !== null && match !== void 0 && match.groups ? Number.parseInt(match.groups.version, 10) : NaN;
31
+ if (customMatch !== null && customMatch !== void 0 && (_customMatch$groups = customMatch.groups) !== null && _customMatch$groups !== void 0 && _customMatch$groups.version) {
32
+ appVersion = Number.parseInt(customMatch.groups.version, 10);
33
+ }
29
34
  const result = {};
30
35
  result.browser = {
31
36
  name: parsedUA === null || parsedUA === void 0 ? void 0 : parsedUA.name,
@@ -35,7 +40,9 @@ const getDeviceInfo = (userAgent, acceptHeader) => {
35
40
  };
36
41
  result.app = {
37
42
  name: appName,
38
- version: match !== null && match !== void 0 && match.groups ? Number.parseInt(match.groups.version, 10) : NaN
43
+ version: match !== null && match !== void 0 && match.groups ? Number.parseInt(match.groups.version, 10) : NaN,
44
+ appVersion,
45
+ callVersion: match !== null && match !== void 0 && match.groups ? Number.parseInt(match.groups.version, 10) : NaN
39
46
  };
40
47
  result.imei = undefined; // TODO
41
48
  result.accessToken = undefined; // TODO
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.setTappHeight = void 0;
7
7
  var _lodash = _interopRequireDefault(require("lodash.throttle"));
8
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
8
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
9
  const setTappHeight = setHeight => {
10
10
  document.documentElement.style.overflow = 'hidden';
11
11
  void setHeight(document.body.offsetHeight);
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.isAppCallSupported = exports.isApp = void 0;
7
+ var _calls = require("../calls");
8
+ var _IChaynsReact = require("../types/IChaynsReact");
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;
12
+ };
13
+ exports.isApp = isApp;
14
+ const isAppCallSupported = ({
15
+ minAndroidVersion = 1,
16
+ minIOSVersion = 1
17
+ }) => {
18
+ var _device$app;
19
+ if (!isApp()) return false;
20
+ const device = (0, _calls.getDevice)();
21
+ if (!((_device$app = device.app) !== null && _device$app !== void 0 && _device$app.callVersion) || isNaN(device.app.callVersion)) return false;
22
+ if (device.os && ['iOS', 'Mac OS'].includes(device.os)) {
23
+ return device.app.callVersion >= minIOSVersion;
24
+ }
25
+ if (device.os === 'Android OS') {
26
+ return device.app.callVersion >= minAndroidVersion;
27
+ }
28
+ return false;
29
+ };
30
+ exports.isAppCallSupported = isAppCallSupported;
@@ -28,8 +28,11 @@ Comlink.transferHandlers.set("FUNCTION", {
28
28
  },
29
29
  deserialize(obj) {
30
30
  obj._functionKeys.forEach(x => {
31
- obj[x].start();
32
- obj[x] = Comlink.wrap(obj[x]);
31
+ // under certain conditions deserialize can be called more than once on same object
32
+ if (obj[x] instanceof MessagePort) {
33
+ obj[x].start();
34
+ obj[x] = Comlink.wrap(obj[x]);
35
+ }
33
36
  });
34
37
  return obj;
35
38
  }