chayns-api 1.0.0 → 1.0.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 (205) hide show
  1. package/dist/cjs/bootstrap.js +11 -0
  2. package/dist/cjs/calls/abstractApiListener.js +40 -0
  3. package/dist/cjs/calls/apiEventListener.js +40 -0
  4. package/dist/cjs/calls/dialogs/alert.js +2 -0
  5. package/dist/cjs/calls/dialogs/chaynsDialog.js +8 -2
  6. package/dist/cjs/calls/dialogs/close.js +2 -0
  7. package/dist/cjs/calls/dialogs/communication.js +16 -1
  8. package/dist/cjs/calls/dialogs/confirm.js +4 -0
  9. package/dist/cjs/calls/dialogs/date.js +53 -36
  10. package/dist/cjs/calls/dialogs/dropUpAlert.js +3 -0
  11. package/dist/cjs/calls/dialogs/fileSelect.js +10 -0
  12. package/dist/cjs/calls/dialogs/iFrame.js +8 -0
  13. package/dist/cjs/calls/dialogs/index.js +27 -0
  14. package/dist/cjs/calls/dialogs/input.js +6 -0
  15. package/dist/cjs/calls/dialogs/mediaSelect.js +7 -0
  16. package/dist/cjs/calls/dialogs/open.js +2 -0
  17. package/dist/cjs/calls/dialogs/select.js +9 -0
  18. package/dist/cjs/calls/dialogs/signature.js +5 -0
  19. package/dist/cjs/calls/dialogs/toast.js +3 -0
  20. package/dist/cjs/calls/dialogs/utils/callback.js +2 -0
  21. package/dist/cjs/calls/dialogs/utils/is.js +4 -0
  22. package/dist/cjs/calls/getUserInfo.js +11 -0
  23. package/dist/cjs/calls/index.js +155 -3
  24. package/dist/cjs/calls/sendMessage.js +26 -0
  25. package/dist/cjs/calls/setVisibilityChangeListener.js +1 -0
  26. package/dist/cjs/calls/visibilityChangeListener.js +12 -1
  27. package/dist/cjs/calls/windowMetricsListener.js +18 -0
  28. package/dist/cjs/components/App.js +32 -0
  29. package/dist/cjs/components/App.spec.js +16 -0
  30. package/dist/cjs/components/Button.js +32 -0
  31. package/dist/cjs/components/ChaynsContext.js +4 -2
  32. package/dist/cjs/components/ChaynsProvider.js +28 -6
  33. package/dist/cjs/components/ChaynsProviderExposed.js +16 -0
  34. package/dist/cjs/components/TestProvider.js +236 -0
  35. package/dist/cjs/components/Title.js +162 -0
  36. package/dist/cjs/components/WaitUntil.js +5 -0
  37. package/dist/cjs/components/withCompatMode.js +16 -1
  38. package/dist/cjs/functions/addApiListener.js +37 -0
  39. package/dist/cjs/functions/addGeoLocationListener.js +26 -0
  40. package/dist/cjs/functions/addScrollListener.js +26 -0
  41. package/dist/cjs/functions/addWindowMetricsListener.js +37 -0
  42. package/dist/cjs/helper/apiListenerHelper.js +9 -0
  43. package/dist/cjs/helper/cssLoader.js +28 -0
  44. package/dist/cjs/hooks/addGeoLocationListener.js +26 -0
  45. package/dist/cjs/hooks/addScrollListener.js +26 -0
  46. package/dist/cjs/hooks/addWindowMetricsListener.js +37 -0
  47. package/dist/cjs/hooks/geoLocation.js +48 -0
  48. package/dist/cjs/hooks/geoLocationListener.js +11 -2
  49. package/dist/cjs/hooks/index.js +16 -0
  50. package/dist/cjs/hooks/scrollListener.js +23 -4
  51. package/dist/cjs/hooks/useAccessToken.js +5 -0
  52. package/dist/cjs/hooks/useAddGeoLocationListener.js +26 -0
  53. package/dist/cjs/hooks/useAddScrollListener.js +48 -0
  54. package/dist/cjs/hooks/useAddWindowMetricsListener.js +45 -0
  55. package/dist/cjs/hooks/useAdddScrollListener.js +26 -0
  56. package/dist/cjs/hooks/useCurrentPage.js +4 -0
  57. package/dist/cjs/hooks/useCustomData.js +4 -0
  58. package/dist/cjs/hooks/useDevice.js +4 -0
  59. package/dist/cjs/hooks/useEnvironment.js +4 -0
  60. package/dist/cjs/hooks/useFunctions.js +4 -0
  61. package/dist/cjs/hooks/useIsAdminMode.js +5 -0
  62. package/dist/cjs/hooks/useLanguage.js +4 -0
  63. package/dist/cjs/hooks/usePages.js +12 -0
  64. package/dist/cjs/hooks/useParameters.js +4 -0
  65. package/dist/cjs/hooks/useSite.js +4 -0
  66. package/dist/cjs/hooks/useUser.js +4 -0
  67. package/dist/cjs/hooks/useValues.js +4 -0
  68. package/dist/cjs/hooks/windowMetrics.js +45 -0
  69. package/dist/cjs/hooks/windowMetricsListener.js +12 -2
  70. package/dist/cjs/host/ChaynsHost.js +12 -0
  71. package/dist/cjs/host/{module/PagemakerFrame.js → HostIframe.js} +75 -23
  72. package/dist/cjs/host/ModuleHost.js +11 -0
  73. package/dist/cjs/host/iframe/HostIframe.js +30 -23
  74. package/dist/cjs/host/iframe/utils/useUpdateData.js +3 -0
  75. package/dist/cjs/host/module/ModuleHost.js +13 -3
  76. package/dist/cjs/host/module/utils/loadComponent.js +18 -1
  77. package/dist/cjs/host/module/utils/useDynamicScript.js +18 -0
  78. package/dist/cjs/host/module/utils.js +25 -0
  79. package/dist/cjs/index.example.js +7 -0
  80. package/dist/cjs/index.js +19 -0
  81. package/dist/cjs/index2.js +64 -0
  82. package/dist/cjs/types/DynamicImport.d.js +5 -0
  83. package/dist/cjs/types/IChaynsReact.js +47 -0
  84. package/dist/cjs/types/chayns-components.d.js +1 -0
  85. package/dist/cjs/types/chayns-logger.d.js +1 -0
  86. package/dist/cjs/types/chayns.d.js +1 -0
  87. package/dist/cjs/types/tobit-websocket-service-client.d.js +1 -0
  88. package/dist/cjs/types/toolkit-types.d.js +1 -0
  89. package/dist/cjs/util/appCall.js +4 -1
  90. package/dist/cjs/util/deviceHelper.js +17 -2
  91. package/dist/cjs/util/heightHelper.js +9 -0
  92. package/dist/cjs/util/postIframeForm.js +5 -0
  93. package/dist/cjs/util/useFunctionsContext.js +16 -0
  94. package/dist/cjs/util/useIsAdminMode.js +18 -0
  95. package/dist/cjs/util/useUser.js +16 -0
  96. package/dist/cjs/wrapper/AppWrapper.js +144 -119
  97. package/dist/cjs/wrapper/FrameWrapper.js +248 -215
  98. package/dist/cjs/wrapper/ModuleFederationWrapper.js +27 -2
  99. package/dist/cjs/wrapper/SsrWrapper.js +8 -0
  100. package/dist/esm/bootstrap.js +4 -0
  101. package/dist/esm/calls/dialogs/alert.js +4 -4
  102. package/dist/esm/calls/dialogs/chaynsDialog.js +11 -7
  103. package/dist/esm/calls/dialogs/communication.js +26 -15
  104. package/dist/esm/calls/dialogs/confirm.js +8 -5
  105. package/dist/esm/calls/dialogs/date.js +94 -85
  106. package/dist/esm/calls/dialogs/dropUpAlert.js +1 -1
  107. package/dist/esm/calls/dialogs/fileSelect.js +62 -23
  108. package/dist/esm/calls/dialogs/iFrame.js +10 -7
  109. package/dist/esm/calls/dialogs/input.js +5 -2
  110. package/dist/esm/calls/dialogs/mediaSelect.js +55 -18
  111. package/dist/esm/calls/dialogs/open.js +2 -2
  112. package/dist/esm/calls/dialogs/select.js +9 -5
  113. package/dist/esm/calls/dialogs/signature.js +2 -0
  114. package/dist/esm/calls/dialogs/toast.js +11 -6
  115. package/dist/esm/calls/dialogs/utils/callback.js +5 -3
  116. package/dist/esm/calls/dialogs/utils/is.js +3 -1
  117. package/dist/esm/calls/getUserInfo.js +92 -32
  118. package/dist/esm/calls/index.js +276 -124
  119. package/dist/esm/calls/sendMessage.js +221 -91
  120. package/dist/esm/calls/visibilityChangeListener.js +15 -10
  121. package/dist/esm/components/App.js +35 -0
  122. package/dist/esm/components/App.spec.js +9 -0
  123. package/dist/esm/components/Button.js +34 -0
  124. package/dist/esm/components/ChaynsContext.js +3 -3
  125. package/dist/esm/components/ChaynsProvider.js +86 -45
  126. package/dist/esm/components/ChaynsProviderExposed.js +3 -0
  127. package/dist/esm/components/TestProvider.js +308 -0
  128. package/dist/esm/components/Title.js +210 -0
  129. package/dist/esm/components/WaitUntil.js +86 -21
  130. package/dist/esm/components/withCompatMode.js +77 -35
  131. package/dist/esm/helper/apiListenerHelper.js +15 -10
  132. package/dist/esm/helper/cssLoader.js +21 -0
  133. package/dist/esm/hooks/geoLocationListener.js +46 -20
  134. package/dist/esm/hooks/scrollListener.js +86 -50
  135. package/dist/esm/hooks/useAccessToken.js +28 -6
  136. package/dist/esm/hooks/useAddGeoLocationListener.js +18 -0
  137. package/dist/esm/hooks/useAddScrollListener.js +18 -0
  138. package/dist/esm/hooks/useAddWindowMetricsListener.js +18 -0
  139. package/dist/esm/hooks/useCurrentPage.js +6 -2
  140. package/dist/esm/hooks/useCustomData.js +6 -2
  141. package/dist/esm/hooks/useDevice.js +6 -1
  142. package/dist/esm/hooks/useEnvironment.js +6 -1
  143. package/dist/esm/hooks/useFunctions.js +5 -2
  144. package/dist/esm/hooks/useIsAdminMode.js +6 -2
  145. package/dist/esm/hooks/useLanguage.js +6 -1
  146. package/dist/esm/hooks/usePages.js +27 -14
  147. package/dist/esm/hooks/useParameters.js +6 -1
  148. package/dist/esm/hooks/useSite.js +6 -1
  149. package/dist/esm/hooks/useUser.js +6 -1
  150. package/dist/esm/hooks/useValues.js +5 -2
  151. package/dist/esm/hooks/windowMetricsListener.js +44 -18
  152. package/dist/esm/host/ChaynsHost.js +30 -21
  153. package/dist/esm/host/HostIframe.js +153 -0
  154. package/dist/esm/host/iframe/HostIframe.js +142 -86
  155. package/dist/esm/host/iframe/utils/useUpdateData.js +6 -4
  156. package/dist/esm/host/module/ModuleHost.js +49 -42
  157. package/dist/esm/host/module/utils/loadComponent.js +85 -47
  158. package/dist/esm/host/module/utils/useDynamicScript.js +74 -27
  159. package/dist/esm/index.example.js +1 -0
  160. package/dist/esm/index2.js +5 -0
  161. package/dist/esm/types/DynamicImport.d.js +1 -0
  162. package/dist/esm/types/IChaynsReact.js +61 -14
  163. package/dist/esm/types/chayns-components.d.js +0 -0
  164. package/dist/esm/types/chayns-logger.d.js +0 -0
  165. package/dist/esm/types/chayns.d.js +0 -0
  166. package/dist/esm/types/tobit-websocket-service-client.d.js +0 -0
  167. package/dist/esm/types/toolkit-types.d.js +0 -0
  168. package/dist/esm/util/appCall.js +4 -2
  169. package/dist/esm/util/deviceHelper.js +33 -11
  170. package/dist/esm/util/heightHelper.js +13 -10
  171. package/dist/esm/util/postIframeForm.js +57 -25
  172. package/dist/esm/util/useIsAdminMode.js +9 -0
  173. package/dist/esm/util/useUser.js +7 -0
  174. package/dist/esm/wrapper/AppWrapper.js +762 -179
  175. package/dist/esm/wrapper/FrameWrapper.js +1509 -258
  176. package/dist/esm/wrapper/ModuleFederationWrapper.js +284 -47
  177. package/dist/esm/wrapper/SsrWrapper.js +65 -19
  178. package/dist/types/bootstrap.d.ts +1 -0
  179. package/dist/types/calls/dialogs/confirm.d.ts +1 -1
  180. package/dist/types/calls/dialogs/date.d.ts +4 -4
  181. package/dist/types/calls/dialogs/dropUpAlert.d.ts +1 -1
  182. package/dist/types/calls/dialogs/fileSelect.d.ts +1 -1
  183. package/dist/types/calls/dialogs/iFrame.d.ts +1 -1
  184. package/dist/types/calls/dialogs/input.d.ts +1 -1
  185. package/dist/types/calls/dialogs/mediaSelect.d.ts +1 -1
  186. package/dist/types/calls/dialogs/signature.d.ts +1 -1
  187. package/dist/types/components/App.d.ts +5 -0
  188. package/dist/types/components/Button.d.ts +8 -0
  189. package/dist/types/components/ChaynsProvider.d.ts +1 -1
  190. package/dist/types/components/ChaynsProviderExposed.d.ts +13 -0
  191. package/dist/types/components/Title.d.ts +3 -0
  192. package/dist/types/components/WaitUntil.d.ts +1 -1
  193. package/dist/types/components/withCompatMode.d.ts +1 -1
  194. package/dist/types/hooks/useAccessToken.d.ts +1 -1
  195. package/dist/types/host/ChaynsHost.d.ts +2 -1
  196. package/dist/types/host/{module/PagemakerFrame.d.ts → HostIframe.d.ts} +5 -7
  197. package/dist/types/host/iframe/HostIframe.d.ts +1 -1
  198. package/dist/types/host/module/ModuleHost.d.ts +2 -2
  199. package/dist/types/index.example.d.ts +0 -0
  200. package/dist/types/types/IChaynsReact.d.ts +14 -14
  201. package/package.json +1 -1
  202. package/dist/cjs/calls/dialogs/utils/environment.js +0 -10
  203. package/dist/esm/calls/dialogs/utils/environment.js +0 -3
  204. package/dist/esm/host/module/PagemakerFrame.js +0 -97
  205. package/dist/types/calls/dialogs/utils/environment.d.ts +0 -3
@@ -4,10 +4,15 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useScrollPosition = exports.useScrollOffsetTop = exports.useScrollOffsetBottom = exports.useScrollListener = void 0;
7
+
7
8
  var _useContextSelector = require("use-context-selector");
9
+
8
10
  var _react = require("react");
11
+
9
12
  var _ChaynsContext = require("../components/ChaynsContext");
13
+
10
14
  var _windowMetricsListener = require("./windowMetricsListener");
15
+
11
16
  /**
12
17
  * @category Hooks
13
18
  */
@@ -19,15 +24,18 @@ const useScrollListener = () => {
19
24
  promiseRef.current = addListener(value, callback);
20
25
  return () => {
21
26
  var _promiseRef$current;
27
+
22
28
  void ((_promiseRef$current = promiseRef.current) === null || _promiseRef$current === void 0 ? void 0 : _promiseRef$current.then(removeListener));
23
- };
24
- // eslint-disable-next-line react-hooks/exhaustive-deps
29
+ }; // eslint-disable-next-line react-hooks/exhaustive-deps
25
30
  }, []);
26
31
  };
27
32
  /**
28
33
  * @category Hooks
29
34
  */
35
+
36
+
30
37
  exports.useScrollListener = useScrollListener;
38
+
31
39
  const useScrollPosition = ({
32
40
  enabled = true,
33
41
  throttle = 200
@@ -44,8 +52,8 @@ const useScrollPosition = ({
44
52
  throttle
45
53
  }, setValue);
46
54
  }
47
- return undefined;
48
- // eslint-disable-next-line react-hooks/exhaustive-deps
55
+
56
+ return undefined; // eslint-disable-next-line react-hooks/exhaustive-deps
49
57
  }, [enabled, throttle, addListener]);
50
58
  (0, _react.useEffect)(() => {
51
59
  void getScrollPosition().then(setValue);
@@ -55,7 +63,10 @@ const useScrollPosition = ({
55
63
  /**
56
64
  * @category Hooks
57
65
  */
66
+
67
+
58
68
  exports.useScrollPosition = useScrollPosition;
69
+
59
70
  const useScrollOffsetTop = ({
60
71
  enabled = true,
61
72
  throttle = 200
@@ -70,15 +81,20 @@ const useScrollOffsetTop = ({
70
81
  } = (0, _windowMetricsListener.useWindowMetrics)({
71
82
  enabled
72
83
  });
84
+
73
85
  if (typeof (scrollPosition === null || scrollPosition === void 0 ? void 0 : scrollPosition.scrollY) === 'number') {
74
86
  return Math.max(0, scrollPosition.scrollY - (offsetTop - topBarHeight));
75
87
  }
88
+
76
89
  return 0;
77
90
  };
78
91
  /**
79
92
  * @category Hooks
80
93
  */
94
+
95
+
81
96
  exports.useScrollOffsetTop = useScrollOffsetTop;
97
+
82
98
  const useScrollOffsetBottom = ({
83
99
  enabled = true,
84
100
  throttle = 200
@@ -94,9 +110,12 @@ const useScrollOffsetBottom = ({
94
110
  } = (0, _windowMetricsListener.useWindowMetrics)({
95
111
  enabled
96
112
  });
113
+
97
114
  if (typeof (scrollPosition === null || scrollPosition === void 0 ? void 0 : scrollPosition.scrollY) === 'number') {
98
115
  return windowHeight - Math.max(0, offsetTop - scrollPosition.scrollY + bottomBarHeight);
99
116
  }
117
+
100
118
  return 0;
101
119
  };
120
+
102
121
  exports.useScrollOffsetBottom = useScrollOffsetBottom;
@@ -4,9 +4,13 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useAccessToken = void 0;
7
+
7
8
  var _react = require("react");
9
+
8
10
  var _useContextSelector = require("use-context-selector");
11
+
9
12
  var _ChaynsContext = require("../components/ChaynsContext");
13
+
10
14
  /**
11
15
  * @category Hooks
12
16
  */
@@ -25,4 +29,5 @@ const useAccessToken = accessToken => {
25
29
  }, [accessToken === null || accessToken === void 0 ? void 0 : accessToken.external, getAccessToken]);
26
30
  return accessToken !== null && accessToken !== void 0 && accessToken.external ? externalToken === null || externalToken === void 0 ? void 0 : externalToken.accessToken : token === null || token === void 0 ? void 0 : token.accessToken;
27
31
  };
32
+
28
33
  exports.useAccessToken = useAccessToken;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useAddGeoLocationListener = void 0;
7
+
8
+ var _useContextSelector = require("use-context-selector");
9
+
10
+ var _ChaynsContext = require("../components/ChaynsContext");
11
+
12
+ var _react = require("react");
13
+
14
+ const useAddGeoLocationListener = () => {
15
+ const addGeoLocationListener = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, v => v === null || v === void 0 ? void 0 : v.addGeoLocationListener);
16
+ const removeGeoLocationListener = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, v => v === null || v === void 0 ? void 0 : v.removeGeoLocationListener);
17
+ let promise;
18
+ return (0, _react.useCallback)((value, callback) => {
19
+ promise = addGeoLocationListener(value, callback);
20
+ return () => {
21
+ promise.then(removeGeoLocationListener);
22
+ };
23
+ }, []);
24
+ };
25
+
26
+ exports.useAddGeoLocationListener = useAddGeoLocationListener;
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useScrollPosition = exports.useScrollListener = void 0;
7
+
8
+ var _useContextSelector = require("use-context-selector");
9
+
10
+ var _ChaynsContext = require("../components/ChaynsContext");
11
+
12
+ var _react = require("react");
13
+
14
+ const useScrollListener = () => {
15
+ const addScrollListener = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, v => v === null || v === void 0 ? void 0 : v.addScrollListener);
16
+ const removeScrollListener = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, v => v === null || v === void 0 ? void 0 : v.removeScrollListener);
17
+ let promise;
18
+ return (0, _react.useCallback)((value, callback) => {
19
+ promise = addScrollListener(value, callback);
20
+ return () => {
21
+ promise.then(removeScrollListener);
22
+ };
23
+ }, []);
24
+ };
25
+
26
+ exports.useScrollListener = useScrollListener;
27
+
28
+ const useScrollPosition = ({
29
+ enabled = true,
30
+ throttle = 200
31
+ } = {}) => {
32
+ const [value, setValue] = (0, _react.useState)(null);
33
+ const addScrollListener = useScrollListener();
34
+ (0, _react.useEffect)(() => {
35
+ if (enabled) {
36
+ return addScrollListener({
37
+ throttle
38
+ }, setValue);
39
+ }
40
+
41
+ return undefined;
42
+ }, [enabled, throttle, addScrollListener]);
43
+ return {
44
+ value
45
+ };
46
+ };
47
+
48
+ exports.useScrollPosition = useScrollPosition;
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useWindowMetricsListener = exports.useWindowMetrics = void 0;
7
+
8
+ var _useContextSelector = require("use-context-selector");
9
+
10
+ var _ChaynsContext = require("../components/ChaynsContext");
11
+
12
+ var _react = require("react");
13
+
14
+ const useWindowMetricsListener = () => {
15
+ const addListener = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, v => v === null || v === void 0 ? void 0 : v.addWindowMetricsListener);
16
+ const removeListener = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, v => v === null || v === void 0 ? void 0 : v.removeWindowMetricsListener);
17
+ let promise;
18
+ return (0, _react.useCallback)(callback => {
19
+ promise = addListener(callback);
20
+ return () => {
21
+ promise.then(removeListener);
22
+ };
23
+ }, []);
24
+ };
25
+
26
+ exports.useWindowMetricsListener = useWindowMetricsListener;
27
+
28
+ const useWindowMetrics = ({
29
+ enabled = true
30
+ } = {}) => {
31
+ const [value, setValue] = (0, _react.useState)(null);
32
+ const addListener = useWindowMetricsListener();
33
+ (0, _react.useEffect)(() => {
34
+ if (enabled) {
35
+ return addListener(setValue);
36
+ }
37
+
38
+ return undefined;
39
+ }, [enabled, addListener]);
40
+ return {
41
+ value
42
+ };
43
+ };
44
+
45
+ exports.useWindowMetrics = useWindowMetrics;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useAddScrollListener = void 0;
7
+
8
+ var _useContextSelector = require("use-context-selector");
9
+
10
+ var _ChaynsContext = require("../components/ChaynsContext");
11
+
12
+ var _react = require("react");
13
+
14
+ const useAddScrollListener = () => {
15
+ const addScrollListener = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, v => v === null || v === void 0 ? void 0 : v.addScrollListener);
16
+ const removeScrollListener = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, v => v === null || v === void 0 ? void 0 : v.removeScrollListener);
17
+ let promise;
18
+ return (0, _react.useCallback)((value, callback) => {
19
+ promise = addScrollListener(value, callback);
20
+ return () => {
21
+ promise.then(removeScrollListener);
22
+ };
23
+ }, []);
24
+ };
25
+
26
+ exports.useAddScrollListener = useAddScrollListener;
@@ -4,10 +4,14 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useCurrentPage = void 0;
7
+
7
8
  var _useContextSelector = require("use-context-selector");
9
+
8
10
  var _ChaynsContext = require("../components/ChaynsContext");
11
+
9
12
  /**
10
13
  * @category Hooks
11
14
  */
12
15
  const useCurrentPage = () => (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, v => v === null || v === void 0 ? void 0 : v.currentPage);
16
+
13
17
  exports.useCurrentPage = useCurrentPage;
@@ -4,10 +4,14 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useCustomData = void 0;
7
+
7
8
  var _useContextSelector = require("use-context-selector");
9
+
8
10
  var _ChaynsContext = require("../components/ChaynsContext");
11
+
9
12
  /**
10
13
  * @category Hooks
11
14
  */
12
15
  const useCustomData = () => (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, v => v === null || v === void 0 ? void 0 : v.customData);
16
+
13
17
  exports.useCustomData = useCustomData;
@@ -4,10 +4,14 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useDevice = void 0;
7
+
7
8
  var _useContextSelector = require("use-context-selector");
9
+
8
10
  var _ChaynsContext = require("../components/ChaynsContext");
11
+
9
12
  /**
10
13
  * @category Hooks
11
14
  */
12
15
  const useDevice = () => (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, v => v === null || v === void 0 ? void 0 : v.device);
16
+
13
17
  exports.useDevice = useDevice;
@@ -4,10 +4,14 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useEnvironment = void 0;
7
+
7
8
  var _useContextSelector = require("use-context-selector");
9
+
8
10
  var _ChaynsContext = require("../components/ChaynsContext");
11
+
9
12
  /**
10
13
  * @category Hooks
11
14
  */
12
15
  const useEnvironment = () => (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, v => v === null || v === void 0 ? void 0 : v.environment);
16
+
13
17
  exports.useEnvironment = useEnvironment;
@@ -4,8 +4,11 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useFunctions = void 0;
7
+
7
8
  var _useContextSelector = require("use-context-selector");
9
+
8
10
  var _ChaynsContext = require("../components/ChaynsContext");
11
+
9
12
  /**
10
13
  * @category Hooks
11
14
  */
@@ -13,4 +16,5 @@ const useFunctions = () => {
13
16
  const t = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, f => f || {});
14
17
  return t;
15
18
  };
19
+
16
20
  exports.useFunctions = useFunctions;
@@ -4,13 +4,18 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useIsAdminMode = void 0;
7
+
7
8
  var _useContextSelector2 = require("use-context-selector");
9
+
8
10
  var _ChaynsContext = require("../components/ChaynsContext");
11
+
9
12
  /**
10
13
  * @category Hooks
11
14
  */
12
15
  const useIsAdminMode = () => {
13
16
  var _useContextSelector;
17
+
14
18
  return (_useContextSelector = (0, _useContextSelector2.useContextSelector)(_ChaynsContext.ChaynsContext, v => v === null || v === void 0 ? void 0 : v.isAdminModeActive)) !== null && _useContextSelector !== void 0 ? _useContextSelector : false;
15
19
  };
20
+
16
21
  exports.useIsAdminMode = useIsAdminMode;
@@ -4,10 +4,14 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useLanguage = void 0;
7
+
7
8
  var _useContextSelector = require("use-context-selector");
9
+
8
10
  var _ChaynsContext = require("../components/ChaynsContext");
11
+
9
12
  /**
10
13
  * @category Hooks
11
14
  */
12
15
  const useLanguage = () => (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, v => v === null || v === void 0 ? void 0 : v.language);
16
+
13
17
  exports.useLanguage = useLanguage;
@@ -4,8 +4,11 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.usePages = exports.usePage = void 0;
7
+
7
8
  var _useContextSelector = require("use-context-selector");
9
+
8
10
  var _ChaynsContext = require("../components/ChaynsContext");
11
+
9
12
  /**
10
13
  * @category Hooks
11
14
  */
@@ -15,24 +18,33 @@ const usePages = ({
15
18
  siteId: undefined
16
19
  }) => {
17
20
  const pages = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, v => v.pages);
21
+
18
22
  if (siteId) {
19
23
  pages.filter(tapp => tapp.siteId === siteId);
20
24
  }
25
+
21
26
  return pages;
22
27
  };
23
28
  /**
24
29
  * @category Hooks
25
30
  */
31
+
32
+
26
33
  exports.usePages = usePages;
34
+
27
35
  const usePage = ({
28
36
  id,
29
37
  siteId
30
38
  }) => {
31
39
  const pages = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, v => v.pages);
40
+
32
41
  if (id) {
33
42
  var _pages$find;
43
+
34
44
  return (_pages$find = pages.find(x => x.id === id && (!siteId || x.siteId === siteId))) !== null && _pages$find !== void 0 ? _pages$find : null;
35
45
  }
46
+
36
47
  return null;
37
48
  };
49
+
38
50
  exports.usePage = usePage;
@@ -4,10 +4,14 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useParameters = void 0;
7
+
7
8
  var _useContextSelector = require("use-context-selector");
9
+
8
10
  var _ChaynsContext = require("../components/ChaynsContext");
11
+
9
12
  /**
10
13
  * @category Hooks
11
14
  */
12
15
  const useParameters = () => (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, v => (v === null || v === void 0 ? void 0 : v.parameters) || []);
16
+
13
17
  exports.useParameters = useParameters;
@@ -4,10 +4,14 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useSite = void 0;
7
+
7
8
  var _useContextSelector = require("use-context-selector");
9
+
8
10
  var _ChaynsContext = require("../components/ChaynsContext");
11
+
9
12
  /**
10
13
  * @category Hooks
11
14
  */
12
15
  const useSite = () => (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, v => v === null || v === void 0 ? void 0 : v.site);
16
+
13
17
  exports.useSite = useSite;
@@ -4,11 +4,15 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useUser = void 0;
7
+
7
8
  var _useContextSelector = require("use-context-selector");
9
+
8
10
  var _ChaynsContext = require("../components/ChaynsContext");
11
+
9
12
  /**
10
13
  * @category Hooks
11
14
  */
12
15
  // @ts-ignore
13
16
  const useUser = () => (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, v => (v === null || v === void 0 ? void 0 : v.user) || {});
17
+
14
18
  exports.useUser = useUser;
@@ -4,8 +4,11 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useValues = void 0;
7
+
7
8
  var _useContextSelector = require("use-context-selector");
9
+
8
10
  var _ChaynsContext = require("../components/ChaynsContext");
11
+
9
12
  /**
10
13
  * @category Hooks
11
14
  */
@@ -13,4 +16,5 @@ const useValues = () => {
13
16
  const t = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, v => v || {});
14
17
  return t;
15
18
  };
19
+
16
20
  exports.useValues = useValues;
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useWindowMetricsListener = exports.useWindowMetrics = void 0;
7
+
8
+ var _useContextSelector = require("use-context-selector");
9
+
10
+ var _ChaynsContext = require("../components/ChaynsContext");
11
+
12
+ var _react = require("react");
13
+
14
+ const useWindowMetricsListener = () => {
15
+ const addListener = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, v => v === null || v === void 0 ? void 0 : v.addWindowMetricsListener);
16
+ const removeListener = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, v => v === null || v === void 0 ? void 0 : v.removeWindowMetricsListener);
17
+ let promise;
18
+ return (0, _react.useCallback)(callback => {
19
+ promise = addListener(callback);
20
+ return () => {
21
+ promise.then(removeListener);
22
+ };
23
+ }, []);
24
+ };
25
+
26
+ exports.useWindowMetricsListener = useWindowMetricsListener;
27
+
28
+ const useWindowMetrics = ({
29
+ enabled = true
30
+ } = {}) => {
31
+ const [value, setValue] = (0, _react.useState)(null);
32
+ const addListener = useWindowMetricsListener();
33
+ (0, _react.useEffect)(() => {
34
+ if (enabled) {
35
+ return addListener(setValue);
36
+ }
37
+
38
+ return undefined;
39
+ }, [enabled, addListener]);
40
+ return {
41
+ value
42
+ };
43
+ };
44
+
45
+ exports.useWindowMetrics = useWindowMetrics;
@@ -4,10 +4,15 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useWindowMetricsListener = exports.useWindowMetrics = void 0;
7
+
7
8
  var _useContextSelector = require("use-context-selector");
9
+
8
10
  var _react = require("react");
11
+
9
12
  var _ChaynsContext = require("../components/ChaynsContext");
13
+
10
14
  var _IChaynsReact = require("../types/IChaynsReact");
15
+
11
16
  /**
12
17
  * @category Hooks
13
18
  */
@@ -19,15 +24,18 @@ const useWindowMetricsListener = () => {
19
24
  promiseRef.current = addListener(callback);
20
25
  return () => {
21
26
  var _promiseRef$current;
27
+
22
28
  void ((_promiseRef$current = promiseRef.current) === null || _promiseRef$current === void 0 ? void 0 : _promiseRef$current.then(removeListener));
23
- };
24
- // eslint-disable-next-line react-hooks/exhaustive-deps
29
+ }; // eslint-disable-next-line react-hooks/exhaustive-deps
25
30
  }, []);
26
31
  };
27
32
  /**
28
33
  * @category Hooks
29
34
  */
35
+
36
+
30
37
  exports.useWindowMetricsListener = useWindowMetricsListener;
38
+
31
39
  const useWindowMetrics = ({
32
40
  enabled = true
33
41
  } = {}) => {
@@ -48,6 +56,7 @@ const useWindowMetrics = ({
48
56
  setValue(v);
49
57
  });
50
58
  }
59
+
51
60
  return undefined;
52
61
  }, [enabled, addListener]);
53
62
  (0, _react.useEffect)(() => {
@@ -55,4 +64,5 @@ const useWindowMetrics = ({
55
64
  }, [getWindowMetrics]);
56
65
  return value;
57
66
  };
67
+
58
68
  exports.useWindowMetrics = useWindowMetrics;
@@ -4,16 +4,22 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
+
7
8
  var _react = _interopRequireDefault(require("react"));
9
+
8
10
  var _HostIframe = _interopRequireDefault(require("./iframe/HostIframe"));
11
+
9
12
  var _ModuleHost = _interopRequireDefault(require("./module/ModuleHost"));
13
+
10
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
+
11
16
  const ChaynsHost = ({
12
17
  type,
13
18
  iFrameProps,
14
19
  functions,
15
20
  src,
16
21
  iFrameRef = undefined,
22
+ loadingComponent = undefined,
17
23
  children = undefined,
18
24
  system,
19
25
  // shallow data
@@ -46,6 +52,7 @@ const ChaynsHost = ({
46
52
  environment: environment,
47
53
  customData: customData
48
54
  });
55
+
49
56
  case 'client-module':
50
57
  return /*#__PURE__*/_react.default.createElement(_ModuleHost.default, {
51
58
  system: system,
@@ -55,12 +62,14 @@ const ChaynsHost = ({
55
62
  user: user,
56
63
  device: device,
57
64
  currentPage: currentPage,
65
+ children: loadingComponent,
58
66
  functions: functions,
59
67
  language: language,
60
68
  parameters: parameters,
61
69
  customData: customData,
62
70
  environment: environment
63
71
  });
72
+
64
73
  case 'server-iframe':
65
74
  return /*#__PURE__*/_react.default.createElement(_HostIframe.default, {
66
75
  iFrameRef: iFrameRef,
@@ -79,6 +88,7 @@ const ChaynsHost = ({
79
88
  environment: environment,
80
89
  customData: customData
81
90
  });
91
+
82
92
  case 'server-module':
83
93
  return /*#__PURE__*/_react.default.createElement(_ModuleHost.default, {
84
94
  system: system,
@@ -94,9 +104,11 @@ const ChaynsHost = ({
94
104
  customData: customData,
95
105
  environment: environment
96
106
  }, children);
107
+
97
108
  default:
98
109
  return null;
99
110
  }
100
111
  };
112
+
101
113
  var _default = ChaynsHost;
102
114
  exports.default = _default;