chayns-api 1.1.0-0 → 1.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 (167) hide show
  1. package/dist/cjs/calls/dialogs/chaynsDialog.js +3 -6
  2. package/dist/cjs/calls/dialogs/date.js +29 -2
  3. package/dist/cjs/calls/dialogs/fileSelect.js +1 -2
  4. package/dist/cjs/calls/dialogs/input.js +2 -3
  5. package/dist/cjs/calls/dialogs/select.js +2 -3
  6. package/dist/cjs/calls/getUserInfo.js +1 -2
  7. package/dist/cjs/calls/index.js +93 -82
  8. package/dist/cjs/components/AppDialogWrapper.js +7 -7
  9. package/dist/cjs/components/ChaynsContext.js +2 -4
  10. package/dist/cjs/components/ChaynsProvider.js +10 -13
  11. package/dist/cjs/components/ErrorBoundary.js +31 -0
  12. package/dist/cjs/components/moduleWrapper.js +9 -0
  13. package/dist/cjs/components/withCompatMode.js +8 -7
  14. package/dist/cjs/components/withHydrationBoundary.js +57 -0
  15. package/dist/cjs/constants/hydrationContext.js +16 -0
  16. package/dist/cjs/constants/index.js +16 -0
  17. package/dist/cjs/handler/DialogHandler.js +26 -1
  18. package/dist/cjs/hooks/useAccessToken.js +1 -0
  19. package/dist/cjs/hooks/useDialogState.js +8 -4
  20. package/dist/cjs/hooks/usePages.js +2 -2
  21. package/dist/cjs/host/ChaynsHost.js +1 -2
  22. package/dist/cjs/host/iframe/HostIframe.js +4 -6
  23. package/dist/cjs/host/iframe/utils/useUpdateData.js +1 -2
  24. package/dist/cjs/host/module/ModuleHost.js +8 -24
  25. package/dist/cjs/host/module/utils/loadComponent.js +48 -51
  26. package/dist/cjs/index.js +48 -5
  27. package/dist/cjs/types/IChaynsReact.js +140 -107
  28. package/dist/cjs/util/appCall.js +3 -4
  29. package/dist/cjs/util/deviceHelper.js +18 -13
  30. package/dist/cjs/util/transferNestedFunctions.js +36 -0
  31. package/dist/cjs/wrapper/AppWrapper.js +69 -11
  32. package/dist/cjs/wrapper/FrameWrapper.js +53 -8
  33. package/dist/cjs/wrapper/ModuleFederationWrapper.js +1 -1
  34. package/dist/cjs/wrapper/StaticChaynsApi.js +22 -0
  35. package/dist/esm/calls/index.js +22 -1
  36. package/dist/esm/components/AppDialogWrapper.js +4 -3
  37. package/dist/esm/components/ChaynsProvider.js +6 -7
  38. package/dist/esm/components/ErrorBoundary.js +23 -0
  39. package/dist/esm/components/moduleWrapper.js +3 -0
  40. package/dist/esm/components/withCompatMode.js +5 -4
  41. package/dist/esm/components/withHydrationBoundary.js +50 -0
  42. package/dist/esm/constants/hydrationContext.js +10 -0
  43. package/dist/esm/constants/index.js +1 -0
  44. package/dist/esm/handler/DialogHandler.js +28 -3
  45. package/dist/esm/hooks/useAccessToken.js +1 -0
  46. package/dist/esm/hooks/useDialogState.js +8 -4
  47. package/dist/esm/hooks/usePages.js +1 -1
  48. package/dist/esm/host/iframe/HostIframe.js +1 -2
  49. package/dist/esm/host/module/ModuleHost.js +5 -20
  50. package/dist/esm/host/module/utils/loadComponent.js +48 -50
  51. package/dist/esm/index.js +6 -1
  52. package/dist/esm/types/IChaynsReact.js +142 -87
  53. package/dist/esm/util/appCall.js +2 -2
  54. package/dist/esm/util/deviceHelper.js +17 -11
  55. package/dist/esm/util/transferNestedFunctions.js +32 -0
  56. package/dist/esm/wrapper/AppWrapper.js +70 -11
  57. package/dist/esm/wrapper/FrameWrapper.js +53 -8
  58. package/dist/esm/wrapper/ModuleFederationWrapper.js +1 -1
  59. package/dist/esm/wrapper/StaticChaynsApi.js +20 -0
  60. package/dist/types/calls/index.d.ts +19 -5
  61. package/dist/types/components/AppDialogWrapper.d.ts +2 -2
  62. package/dist/types/components/ChaynsProvider.d.ts +1 -4
  63. package/dist/types/components/ErrorBoundary.d.ts +13 -0
  64. package/dist/types/components/WaitUntil.d.ts +1 -2
  65. package/dist/types/components/moduleWrapper.d.ts +4 -0
  66. package/dist/types/components/withHydrationBoundary.d.ts +16 -0
  67. package/dist/types/constants/hydrationContext.d.ts +8 -0
  68. package/dist/types/constants/index.d.ts +1 -0
  69. package/dist/types/handler/DialogHandler.d.ts +7 -1
  70. package/dist/types/hooks/useAccessToken.d.ts +1 -0
  71. package/dist/types/hooks/useDialogState.d.ts +1 -1
  72. package/dist/types/host/module/ModuleHost.d.ts +1 -0
  73. package/dist/types/host/module/utils/loadComponent.d.ts +1 -1
  74. package/dist/types/index.d.ts +6 -1
  75. package/dist/types/types/IChaynsReact.d.ts +145 -31
  76. package/dist/types/util/deviceHelper.d.ts +2 -2
  77. package/dist/types/wrapper/StaticChaynsApi.d.ts +9 -0
  78. package/package.json +28 -24
  79. package/toolkit.config.js +20 -0
  80. package/dist/cjs/bootstrap.js +0 -11
  81. package/dist/cjs/calls/abstractApiListener.js +0 -40
  82. package/dist/cjs/calls/apiEventListener.js +0 -40
  83. package/dist/cjs/calls/setVisibilityChangeListener.js +0 -1
  84. package/dist/cjs/calls/windowMetricsListener.js +0 -18
  85. package/dist/cjs/client.js +0 -93
  86. package/dist/cjs/components/App.js +0 -32
  87. package/dist/cjs/components/App.spec.js +0 -16
  88. package/dist/cjs/components/Button.js +0 -32
  89. package/dist/cjs/components/ChaynsModuleProvider.js +0 -457
  90. package/dist/cjs/components/ChaynsProviderExposed.js +0 -16
  91. package/dist/cjs/components/Dialog.js +0 -1
  92. package/dist/cjs/components/TestProvider.js +0 -236
  93. package/dist/cjs/components/Title.js +0 -162
  94. package/dist/cjs/functions/addApiListener.js +0 -37
  95. package/dist/cjs/functions/addGeoLocationListener.js +0 -26
  96. package/dist/cjs/functions/addScrollListener.js +0 -26
  97. package/dist/cjs/functions/addWindowMetricsListener.js +0 -37
  98. package/dist/cjs/helper/cssLoader.js +0 -28
  99. package/dist/cjs/hooks/addGeoLocationListener.js +0 -26
  100. package/dist/cjs/hooks/addScrollListener.js +0 -26
  101. package/dist/cjs/hooks/addWindowMetricsListener.js +0 -37
  102. package/dist/cjs/hooks/geoLocation.js +0 -48
  103. package/dist/cjs/hooks/useAddGeoLocationListener.js +0 -26
  104. package/dist/cjs/hooks/useAddScrollListener.js +0 -48
  105. package/dist/cjs/hooks/useAddWindowMetricsListener.js +0 -45
  106. package/dist/cjs/hooks/useAdddScrollListener.js +0 -26
  107. package/dist/cjs/hooks/useFunction.js +0 -13
  108. package/dist/cjs/hooks/windowMetrics.js +0 -45
  109. package/dist/cjs/host/HostIframe.js +0 -157
  110. package/dist/cjs/host/ModuleHost.js +0 -11
  111. package/dist/cjs/host/module/utils.js +0 -25
  112. package/dist/cjs/index.example.js +0 -7
  113. package/dist/cjs/index2.js +0 -64
  114. package/dist/cjs/types/DynamicApiImport.d.js +0 -5
  115. package/dist/cjs/types/DynamicImport.d.js +0 -5
  116. package/dist/cjs/types/chayns-components.d.js +0 -1
  117. package/dist/cjs/types/chayns-logger.d.js +0 -1
  118. package/dist/cjs/types/chayns.d.js +0 -1
  119. package/dist/cjs/types/tobit-websocket-service-client.d.js +0 -1
  120. package/dist/cjs/types/toolkit-types.d.js +0 -1
  121. package/dist/cjs/util/useFunctionsContext.js +0 -16
  122. package/dist/cjs/util/useIsAdminMode.js +0 -18
  123. package/dist/cjs/util/useUser.js +0 -16
  124. package/dist/cjs/wrapper/Dialog.js +0 -35
  125. package/dist/cjs/wrapper/DialogHandler.js +0 -35
  126. package/dist/esm/bootstrap.js +0 -4
  127. package/dist/esm/client.js +0 -8
  128. package/dist/esm/components/App.js +0 -35
  129. package/dist/esm/components/App.spec.js +0 -9
  130. package/dist/esm/components/Button.js +0 -34
  131. package/dist/esm/components/ChaynsModuleProvider.js +0 -517
  132. package/dist/esm/components/ChaynsProviderExposed.js +0 -3
  133. package/dist/esm/components/Dialog.js +0 -0
  134. package/dist/esm/components/TestProvider.js +0 -308
  135. package/dist/esm/components/Title.js +0 -210
  136. package/dist/esm/helper/cssLoader.js +0 -21
  137. package/dist/esm/hooks/useAddGeoLocationListener.js +0 -18
  138. package/dist/esm/hooks/useAddScrollListener.js +0 -18
  139. package/dist/esm/hooks/useAddWindowMetricsListener.js +0 -18
  140. package/dist/esm/hooks/useFunction.js +0 -6
  141. package/dist/esm/host/HostIframe.js +0 -153
  142. package/dist/esm/index.example.js +0 -1
  143. package/dist/esm/index2.js +0 -5
  144. package/dist/esm/types/DynamicApiImport.d.js +0 -1
  145. package/dist/esm/types/DynamicImport.d.js +0 -1
  146. package/dist/esm/types/chayns-components.d.js +0 -0
  147. package/dist/esm/types/chayns-logger.d.js +0 -0
  148. package/dist/esm/types/chayns.d.js +0 -0
  149. package/dist/esm/types/tobit-websocket-service-client.d.js +0 -0
  150. package/dist/esm/types/toolkit-types.d.js +0 -0
  151. package/dist/esm/util/useIsAdminMode.js +0 -9
  152. package/dist/esm/util/useUser.js +0 -7
  153. package/dist/esm/wrapper/Dialog.js +0 -31
  154. package/dist/esm/wrapper/DialogHandler.js +0 -31
  155. package/dist/types/client.d.ts +0 -7
  156. package/dist/types/components/App.d.ts +0 -5
  157. package/dist/types/components/Button.d.ts +0 -8
  158. package/dist/types/components/ChaynsModuleProvider.d.ts +0 -170
  159. package/dist/types/components/ChaynsProviderExposed.d.ts +0 -13
  160. package/dist/types/components/Dialog.d.ts +0 -0
  161. package/dist/types/components/Title.d.ts +0 -3
  162. package/dist/types/hooks/useFunction.d.ts +0 -2
  163. package/dist/types/host/HostIframe.d.ts +0 -20
  164. package/dist/types/index.example.d.ts +0 -0
  165. package/dist/types/wrapper/Dialog.d.ts +0 -10
  166. package/dist/types/wrapper/DialogHandler.d.ts +0 -10
  167. /package/dist/types/{bootstrap.d.ts → util/transferNestedFunctions.d.ts} +0 -0
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.moduleWrapper = exports.default = void 0;
6
+ exports.default = void 0;
7
7
  var _htmlescape = _interopRequireDefault(require("htmlescape"));
8
8
  var _react = _interopRequireWildcard(require("react"));
9
9
  var _IChaynsReact = require("../types/IChaynsReact");
@@ -14,14 +14,12 @@ var _ModuleFederationWrapper = require("../wrapper/ModuleFederationWrapper");
14
14
  var _SsrWrapper = require("../wrapper/SsrWrapper");
15
15
  var _ChaynsContext = require("./ChaynsContext");
16
16
  var _AppDialogWrapper = _interopRequireDefault(require("./AppDialogWrapper"));
17
- 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); }
18
- 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; }
17
+ var _moduleWrapper = require("./moduleWrapper");
18
+ 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); }
19
+ 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; }
19
20
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
20
21
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
21
- const moduleWrapper = {
22
- current: undefined
23
- };
24
- exports.moduleWrapper = moduleWrapper;
22
+
25
23
  const isServer = typeof window === 'undefined';
26
24
  const InitialDataProvider = /*#__PURE__*/_react.default.memo(({
27
25
  data,
@@ -65,13 +63,13 @@ const ChaynsProvider = ({
65
63
  var _deviceInfo$app$name, _deviceInfo$app;
66
64
  const deviceInfo = (0, _deviceHelper.default)(navigator.userAgent, '');
67
65
  // load framewrapper in Chaynsweb in app (window.self === window.top)
68
- if ([_IChaynsReact.AppName.Chayns, _IChaynsReact.AppName.ChaynsLauncher].includes((_deviceInfo$app$name = (_deviceInfo$app = deviceInfo.app) === null || _deviceInfo$app === void 0 ? void 0 : _deviceInfo$app.name) !== null && _deviceInfo$app$name !== void 0 ? _deviceInfo$app$name : _IChaynsReact.AppName.Unknown) && window.self === window.top) {
66
+ if ([_IChaynsReact.AppName.Chayns, _IChaynsReact.AppName.ChaynsLauncher, _IChaynsReact.AppName.Sidekick, _IChaynsReact.AppName.TobitChat].includes((_deviceInfo$app$name = (_deviceInfo$app = deviceInfo.app) === null || _deviceInfo$app === void 0 ? void 0 : _deviceInfo$app.name) !== null && _deviceInfo$app$name !== void 0 ? _deviceInfo$app$name : _IChaynsReact.AppName.Unknown) && window.self === window.top) {
69
67
  customWrapper.current = new _AppWrapper.AppWrapper();
70
68
  } else {
71
69
  customWrapper.current = new _FrameWrapper.FrameWrapper();
72
70
  }
73
71
  }
74
- moduleWrapper.current = customWrapper.current;
72
+ _moduleWrapper.moduleWrapper.current = customWrapper.current;
75
73
  }
76
74
  const [state, setState] = (0, _react.useState)((_customWrapper$curren = (_customWrapper$curren2 = customWrapper.current) === null || _customWrapper$curren2 === void 0 ? void 0 : _customWrapper$curren2.values) !== null && _customWrapper$curren !== void 0 ? _customWrapper$curren : undefined);
77
75
  (0, _react.useEffect)(() => {
@@ -89,7 +87,7 @@ const ChaynsProvider = ({
89
87
  return undefined;
90
88
  });
91
89
  });
92
- if (customWrapper.current.values) {
90
+ if (customWrapper.current.values && !isModule) {
93
91
  setState({
94
92
  ...customWrapper.current.values
95
93
  });
@@ -100,7 +98,7 @@ const ChaynsProvider = ({
100
98
  if (isModule) {
101
99
  setState(data);
102
100
  if (data) {
103
- moduleWrapper.current.values = data;
101
+ customWrapper.current.values = data;
104
102
  }
105
103
  }
106
104
  }, [data, isModule]);
@@ -115,5 +113,4 @@ const ChaynsProvider = ({
115
113
  renderedByServer: renderedByServer
116
114
  }));
117
115
  };
118
- var _default = ChaynsProvider;
119
- exports.default = _default;
116
+ var _default = exports.default = ChaynsProvider;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
+ class ErrorBoundary extends _react.default.Component {
10
+ constructor(props) {
11
+ super(props);
12
+ this.state = {
13
+ hasError: false
14
+ };
15
+ }
16
+ static getDerivedStateFromError() {
17
+ return {
18
+ hasError: true
19
+ };
20
+ }
21
+ componentDidCatch(error, errorInfo) {
22
+ console.error(error, errorInfo);
23
+ }
24
+ render() {
25
+ if (this.state.hasError) {
26
+ return null;
27
+ }
28
+ return this.props.children;
29
+ }
30
+ }
31
+ exports.default = ErrorBoundary;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.moduleWrapper = void 0;
7
+ const moduleWrapper = exports.moduleWrapper = {
8
+ current: undefined
9
+ };
@@ -6,10 +6,11 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.withCompatMode = void 0;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
8
  var _reactDom = _interopRequireDefault(require("react-dom"));
9
+ var _ErrorBoundary = _interopRequireDefault(require("./ErrorBoundary"));
9
10
  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
- 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); }
11
+ 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); }
12
+ 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; }
13
+ 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); } /* eslint-disable react/jsx-props-no-spreading */
13
14
  let ReactDOMClient;
14
15
  try {
15
16
  ReactDOMClient = require('react-dom/client');
@@ -27,9 +28,9 @@ const withCompatMode = Component => {
27
28
  const {
28
29
  innerRef
29
30
  } = this.props;
30
- const component = /*#__PURE__*/_react.default.createElement(Component, _extends({}, this.props, {
31
+ const component = /*#__PURE__*/_react.default.createElement(_ErrorBoundary.default, null, /*#__PURE__*/_react.default.createElement(Component, _extends({}, this.props, {
31
32
  ref: innerRef
32
- }));
33
+ })));
33
34
  if (typeof ((_ReactDOMClient = ReactDOMClient) === null || _ReactDOMClient === void 0 ? void 0 : _ReactDOMClient.createRoot) === 'function') {
34
35
  this.root = ReactDOMClient.createRoot(this.ref.current);
35
36
  this.root.render(component);
@@ -41,9 +42,9 @@ const withCompatMode = Component => {
41
42
  const {
42
43
  innerRef
43
44
  } = this.props;
44
- const component = /*#__PURE__*/_react.default.createElement(Component, _extends({}, this.props, {
45
+ const component = /*#__PURE__*/_react.default.createElement(_ErrorBoundary.default, null, /*#__PURE__*/_react.default.createElement(Component, _extends({}, this.props, {
45
46
  ref: innerRef
46
- }));
47
+ })));
47
48
  if (this.root) {
48
49
  this.root.render(component);
49
50
  } else {
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _constants = require("../constants");
9
+ 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); }
10
+ 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; }
11
+ const withHydrationBoundary = (Component, initializer, useHydrationId) => {
12
+ return ({
13
+ id: idProp,
14
+ children
15
+ }) => {
16
+ let value;
17
+ if (!globalThis.window) {
18
+ value = (0, _react.useContext)(_constants.HydrationContext);
19
+ }
20
+ const id = useHydrationId ? useHydrationId() : idProp;
21
+ if (!id) {
22
+ throw new Error('hydration boundary was not given a id which is required');
23
+ }
24
+ const [store] = (0, _react.useState)(() => {
25
+ let initialValue = undefined;
26
+ if (globalThis.window) {
27
+ const htmlId = `__INITIAL_DATA_${id}__`;
28
+ const $elem = document.getElementById(htmlId);
29
+ if ($elem) {
30
+ initialValue = JSON.parse($elem.innerHTML);
31
+ }
32
+ }
33
+ const s = initializer(initialValue);
34
+ if (!globalThis.window) {
35
+ if (id in value) {
36
+ console.warn(`Dehydration function for id "${id}" has been defined multiple times. This can have two reasons. The children cause suspension and therefor the hydration boundary has to mount from scratch again. You can avoid this by adding a Suspense around the children. The id is not unique. This has to be fixed or might cause hydration issues.`);
37
+ }
38
+ value[id] = {
39
+ getState: s.getState,
40
+ abort: s.abort
41
+ };
42
+ }
43
+ return s;
44
+ });
45
+ (0, _react.useEffect)(() => {
46
+ const htmlId = `__INITIAL_DATA_${id}__`;
47
+ const $elem = document.getElementById(htmlId);
48
+ if ($elem) {
49
+ $elem.remove();
50
+ }
51
+ }, []);
52
+ return /*#__PURE__*/_react.default.createElement(Component, {
53
+ value: store
54
+ }, children);
55
+ };
56
+ };
57
+ var _default = exports.default = withHydrationBoundary;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.HydrationContext = void 0;
7
+ var _react = require("react");
8
+ let HydrationContext = exports.HydrationContext = void 0;
9
+
10
+ // force single context on server-side (fake sharing)
11
+ if (!globalThis.window && globalThis._hydrationContext) {
12
+ exports.HydrationContext = HydrationContext = globalThis._hydrationContext;
13
+ } else {
14
+ exports.HydrationContext = HydrationContext = /*#__PURE__*/(0, _react.createContext)({});
15
+ globalThis._hydrationContext = HydrationContext;
16
+ }
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _hydrationContext = require("./hydrationContext");
7
+ Object.keys(_hydrationContext).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _hydrationContext[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _hydrationContext[key];
14
+ }
15
+ });
16
+ });
@@ -7,10 +7,13 @@ exports.default = void 0;
7
7
  class DialogHandler {
8
8
  isOpen = false;
9
9
  result = undefined;
10
- constructor(config, open, close) {
10
+ listeners = [];
11
+ constructor(config, open, close, dispatchEvent, addDataListener) {
11
12
  this._open = open;
12
13
  this._close = close;
13
14
  this._config = config;
15
+ this._dispatchEvent = dispatchEvent;
16
+ this._addDataListener = addDataListener;
14
17
  }
15
18
  async open() {
16
19
  if (this.isOpen) {
@@ -23,6 +26,13 @@ class DialogHandler {
23
26
  };
24
27
  this.isOpen = true;
25
28
  this.dialogId = await this._open(this._config, callback);
29
+
30
+ // console.log('dialogId', this.dialogId);
31
+
32
+ this._addDataListener(this.dialogId, data => {
33
+ // console.log('[DialogHandler]dataListener', this.dialogId, data);
34
+ this.listeners.forEach(cb => cb(data));
35
+ });
26
36
  });
27
37
  return this.result = res;
28
38
  }
@@ -33,6 +43,21 @@ class DialogHandler {
33
43
  this.isOpen = false;
34
44
  this._close(this.dialogId, data);
35
45
  }
46
+ dispatchEvent(data) {
47
+ if (!this.isOpen) {
48
+ return;
49
+ }
50
+ this._dispatchEvent(this.dialogId, data);
51
+ }
52
+ addDataListener(listener) {
53
+ this.listeners.push(listener);
54
+ }
55
+ removeDataListener(listener) {
56
+ const index = this.listeners.findIndex(l => l === listener);
57
+ if (index > -1) {
58
+ this.listeners.splice(index, 1);
59
+ }
60
+ }
36
61
  getResult() {
37
62
  return this.result;
38
63
  }
@@ -9,6 +9,7 @@ var _useContextSelector = require("use-context-selector");
9
9
  var _ChaynsContext = require("../components/ChaynsContext");
10
10
  /**
11
11
  * @category Hooks
12
+ * @deprecated Use {@link getAccessToken} instead
12
13
  */
13
14
  const useAccessToken = accessToken => {
14
15
  const [token, setToken] = (0, _react.useState)(null);
@@ -10,13 +10,17 @@ var _ChaynsContext = require("../components/ChaynsContext");
10
10
  * @category Hooks
11
11
  */
12
12
  const useDialogState = () => {
13
- const closeDialog = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, v => v === null || v === void 0 ? void 0 : v.closeDialog);
13
+ const setResult = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, v => v === null || v === void 0 ? void 0 : v.setDialogResult);
14
+ const sendData = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, v => v === null || v === void 0 ? void 0 : v.dispatchEventToDialogHost);
15
+ const addDataListener = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, v => v === null || v === void 0 ? void 0 : v.addDialogHostEventListener);
14
16
  const isClosingRequested = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, v => {
15
17
  var _v$dialog;
16
- return v === null || v === void 0 ? void 0 : (_v$dialog = v.dialog) === null || _v$dialog === void 0 ? void 0 : _v$dialog.isClosingRequested;
18
+ return v === null || v === void 0 || (_v$dialog = v.dialog) === null || _v$dialog === void 0 ? void 0 : _v$dialog.isClosingRequested;
17
19
  });
18
20
  return {
19
- closeDialog,
21
+ setResult,
22
+ sendData,
23
+ addDataListener,
20
24
  isClosingRequested
21
25
  };
22
26
  };
@@ -28,7 +32,7 @@ exports.useDialogState = useDialogState;
28
32
  const useDialogData = () => {
29
33
  const inputData = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, v => {
30
34
  var _v$dialog2;
31
- return v === null || v === void 0 ? void 0 : (_v$dialog2 = v.dialog) === null || _v$dialog2 === void 0 ? void 0 : _v$dialog2.dialogInput;
35
+ return v === null || v === void 0 || (_v$dialog2 = v.dialog) === null || _v$dialog2 === void 0 ? void 0 : _v$dialog2.dialogInput;
32
36
  });
33
37
  return inputData;
34
38
  };
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.usePages = exports.usePage = exports.getPage = void 0;
7
7
  var _useContextSelector = require("use-context-selector");
8
8
  var _ChaynsContext = require("../components/ChaynsContext");
9
- var _ChaynsProvider = require("../components/ChaynsProvider");
9
+ var _moduleWrapper = require("../components/moduleWrapper");
10
10
  /**
11
11
  * @category Hooks
12
12
  */
@@ -48,7 +48,7 @@ const getPage = ({
48
48
  const {
49
49
  pages,
50
50
  currentPage
51
- } = _ChaynsProvider.moduleWrapper.current.values;
51
+ } = _moduleWrapper.moduleWrapper.current.values;
52
52
  if (id) {
53
53
  var _pages$find2;
54
54
  return (_pages$find2 = pages.find(x => x.id === id && (!siteId || x.siteId === siteId))) !== null && _pages$find2 !== void 0 ? _pages$find2 : null;
@@ -110,5 +110,4 @@ const ChaynsHost = ({
110
110
  return null;
111
111
  }
112
112
  };
113
- var _default = ChaynsHost;
114
- exports.default = _default;
113
+ var _default = exports.default = ChaynsHost;
@@ -10,8 +10,8 @@ var _postIframeForm = _interopRequireDefault(require("../../util/postIframeForm"
10
10
  var _useUpdateData = _interopRequireDefault(require("./utils/useUpdateData"));
11
11
  var _url = require("../../util/url");
12
12
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
- 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); }
14
- 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; }
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
+ 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
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); }
16
16
  const HostIframe = ({
17
17
  iFrameProps,
@@ -39,10 +39,9 @@ const HostIframe = ({
39
39
  if (!eventTarget.current) {
40
40
  eventTarget.current = global.document ? document.createElement('div') : undefined; // global.EventTarget ? new EventTarget() : undefined
41
41
  }
42
-
43
42
  const setHeight = value => {
44
43
  if (ref.current) {
45
- ref.current.height = `${value}px`;
44
+ ref.current.style.height = `${value}px`;
46
45
  }
47
46
  };
48
47
 
@@ -134,5 +133,4 @@ const HostIframe = ({
134
133
  src: postForm ? undefined : (0, _url.replaceStagingUrl)(preventStagingReplacement, src, environment.buildEnvironment)
135
134
  }));
136
135
  };
137
- var _default = HostIframe;
138
- exports.default = _default;
136
+ var _default = exports.default = HostIframe;
@@ -17,5 +17,4 @@ const useUpdateData = (target, type, value) => {
17
17
  }
18
18
  }, [target, type, value]);
19
19
  };
20
- var _default = useUpdateData;
21
- exports.default = _default;
20
+ var _default = exports.default = useUpdateData;
@@ -5,36 +5,20 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
- var _useDynamicScript = _interopRequireDefault(require("./utils/useDynamicScript"));
9
8
  var _loadComponent = _interopRequireDefault(require("./utils/loadComponent"));
10
9
  var _url = require("../../util/url");
11
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
- 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); }
13
- 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; }
11
+ 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); }
12
+ 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; }
14
13
  const System = ({
15
14
  system,
16
15
  fallback,
17
16
  ...props
18
17
  }) => {
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));
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, {
18
+ 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]);
19
+ return /*#__PURE__*/_react.default.createElement(_react.default.Suspense, {
36
20
  fallback: fallback || ''
37
- }, /*#__PURE__*/_react.default.createElement(Component, props)) : fallback;
21
+ }, /*#__PURE__*/_react.default.createElement(Component, props));
38
22
  };
39
23
  const ModuleHost = ({
40
24
  system,
@@ -80,7 +64,8 @@ const ModuleHost = ({
80
64
  system: {
81
65
  scope: system.scope,
82
66
  url: (0, _url.replaceStagingUrl)(preventStagingReplacement, system.url, environment.buildEnvironment),
83
- module: system.module
67
+ module: system.module,
68
+ preventSingleton: system.preventSingleton
84
69
  },
85
70
  data: initialData,
86
71
  functions: functions,
@@ -88,5 +73,4 @@ const ModuleHost = ({
88
73
  isModule: true
89
74
  }));
90
75
  };
91
- var _default = ModuleHost;
92
- exports.default = _default;
76
+ var _default = exports.default = ModuleHost;
@@ -6,56 +6,53 @@ 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 _useDynamicScript = require("./useDynamicScript");
9
+ var _runtime = require("@module-federation/runtime");
10
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
- /* eslint-disable */
12
- // @ts-nocheck
13
-
14
- let instances = {};
15
- function loadComponent(scope, module, url, skipCompatMode = false) {
16
- return async () => {
17
- // Initializes the shared scope. Fills it with known provided modules from this build and all remotes
18
- // eslint-disable-next-line no-undef
19
- await __webpack_init_sharing__('default');
20
- const {
21
- container
22
- } = window[scope + "_list"].find(x => x.url === url); // or get the container somewhere else
23
- // Initialize the container, it may provide shared modules
24
- // eslint-disable-next-line no-undef
25
- await container.init(__webpack_share_scopes__.default);
26
- const factory = await container.get(module);
27
- _useDynamicScript.semaphore[scope].release();
28
- let ModuleMap = instances[`${scope}__${module}`];
29
- let Module;
30
- if (!ModuleMap) {
31
- ModuleMap = {};
32
- instances[`${scope}__${module}`] = ModuleMap;
33
- }
34
- if (Object.keys(ModuleMap).length > 0) {
35
- const newModule = factory();
36
- Module = ModuleMap[`${newModule.default.buildEnv}__${newModule.default.appVersion}`];
37
- if (!Module) {
38
- Module = newModule;
39
- ModuleMap[`${newModule.default.buildEnv}__${newModule.default.appVersion}`] = newModule;
40
- }
41
- } else {
42
- Module = factory();
43
- ModuleMap[`${Module.default.buildEnv}__${Module.default.appVersion}`] = Module;
44
- }
45
- if (skipCompatMode) return Module;
46
- const hostVersion = _semver.default.minVersion(_react.default.version);
47
- const {
48
- requiredVersion,
49
- environment
50
- } = Module.default;
51
- const matchReactVersion = requiredVersion && _semver.default.satisfies(hostVersion, requiredVersion);
52
- if (!matchReactVersion || environment !== 'production') {
53
- return {
54
- default: Module.default.CompatComponent
55
- };
56
- }
57
- return {
58
- default: Module.default.Component
59
- };
60
- };
11
+ const registeredScopes = {};
12
+ const dynamicMap = {};
13
+ 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(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
+ // @ts-expect-error
42
+ const webpackShareScopes = __webpack_share_scopes__.default;
43
+ const matchReactVersion = requiredVersion && _semver.default.satisfies(hostVersion, requiredVersion) && !Object.keys(webpackShareScopes.react).some(version => {
44
+ return _semver.default.gt(version, hostVersion) && _semver.default.satisfies(version, requiredVersion) || scope === webpackShareScopes.react[version].from.split('-').join('_');
45
+ });
46
+ if (!matchReactVersion || environment !== 'production' || process.env.NODE_ENV === 'development') {
47
+ return {
48
+ default: Module.default.CompatComponent
49
+ };
50
+ }
51
+ return {
52
+ default: Module.default.Component
53
+ };
54
+ });
55
+ });
56
+ }
57
+ return dynamicMap[scope][module];
61
58
  }