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
@@ -0,0 +1,162 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var _react = _interopRequireWildcard(require("react"));
9
+
10
+ var _useContextSelector = require("use-context-selector");
11
+
12
+ var _useUser = require("../hooks/useUser");
13
+
14
+ var _useIsAdminMode = require("../hooks/useIsAdminMode");
15
+
16
+ var _scrollListener = require("../hooks/scrollListener");
17
+
18
+ var _windowMetricsListener = require("../hooks/windowMetricsListener");
19
+
20
+ var _ChaynsContext = require("./ChaynsContext");
21
+
22
+ var _ChaynsHost = _interopRequireDefault(require("../host/ChaynsHost"));
23
+
24
+ var _index = require("../index");
25
+
26
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
27
+
28
+ 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); }
29
+
30
+ 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; }
31
+
32
+ function _extends() { _extends = Object.assign || 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); }
33
+
34
+ const FirstName = /*#__PURE__*/_react.default.memo(() => {
35
+ const user = (0, _useUser.useUser)();
36
+ console.debug('render first name', user);
37
+ return /*#__PURE__*/_react.default.createElement("div", {
38
+ className: "firstname"
39
+ }, "FirstName: ", user === null || user === void 0 ? void 0 : user.firstName);
40
+ });
41
+
42
+ const Title = () => {
43
+ var _URLSearchParams$get;
44
+
45
+ const isAdminModeActive = (0, _useIsAdminMode.useIsAdminMode)();
46
+ const ref = (0, _react.useRef)(null); // const addScrollListener = useScrollListener();
47
+ //const { value } = useGeoLocation({ timeout: 1000, enabled: true, silent: true });
48
+
49
+ const {
50
+ scrollY
51
+ } = (0, _scrollListener.useScrollPosition)({
52
+ enabled: true,
53
+ throttle: 100
54
+ }); // const addGeoLocationListener = useGeoLocationListener();
55
+ // const addWindowMetricsListener = useWindowMetricsListener();
56
+
57
+ const offsetTop = (0, _scrollListener.useScrollOffsetTop)();
58
+ const offsetBottom = (0, _scrollListener.useScrollOffsetBottom)();
59
+ const values = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, s => s);
60
+ const functions = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, s => s);
61
+ const login = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, s => s.login);
62
+ const logout = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, s => s.logout); // const [windowMetrics, setWindowMetrics] = useState(null);
63
+
64
+ const windowMetrics = (0, _windowMetricsListener.useWindowMetrics)();
65
+ console.log('offsetTop', offsetTop, offsetBottom, windowMetrics);
66
+ const [testHeight, setTestHeight] = (0, _react.useState)(10);
67
+ (0, _react.useEffect)(() => {
68
+ const promise = (0, _index.addScrollListener)({}, r => console.log('add scroll', r));
69
+ return () => {
70
+ void (promise === null || promise === void 0 ? void 0 : promise.then(id => {
71
+ console.log('remove scroll', id);
72
+ return (0, _index.removeScrollListener)(id);
73
+ }));
74
+ };
75
+ }, []); // useEffect(() => addScrollListener({ throttle: 200 }, (ev) => {
76
+ // console.log('scroll', ev)
77
+ // setWindowMetrics(ev.windowMetrics);
78
+ // }), [addScrollListener]);
79
+ //
80
+ // useEffect(() => addGeoLocationListener({ silent: true }, (ev) => {
81
+ // console.log('geo location', ev);
82
+ // }), [addGeoLocationListener])
83
+ //
84
+ // useEffect(() => addWindowMetricsListener((ev) => {
85
+ // console.log('window metrics', ev);
86
+ // setWindowMetrics(ev);
87
+ // }), [addWindowMetricsListener]);
88
+ // console.debug('render title', scrollPosition);
89
+
90
+ const src = (0, _react.useRef)();
91
+ const depth = global.location ? Number.parseInt((_URLSearchParams$get = new URLSearchParams(window.location.search).get('depth')) !== null && _URLSearchParams$get !== void 0 ? _URLSearchParams$get : '1', 10) : 1;
92
+
93
+ if (!src.current) {
94
+ src.current = `https://w-hn-laptop.tobit.ag:8082?depth=${depth + 1}`; // src.current = 'https://tapp01.tobit.com/Tapps/Chaynsnet/landingpage_2020/v4/index.html?isWidget=true';
95
+ }
96
+
97
+ const maxDepth = 2;
98
+ return /*#__PURE__*/_react.default.createElement("div", {
99
+ className: "chayns-api"
100
+ }, /*#__PURE__*/_react.default.createElement(FirstName, null), /*#__PURE__*/_react.default.createElement("button", {
101
+ id: "login-button",
102
+ type: "button",
103
+ onClick: () => login({
104
+ ignoreAuthenticated: false
105
+ }, () => {}, () => {})
106
+ }, "Login"), /*#__PURE__*/_react.default.createElement("button", {
107
+ type: "button",
108
+ onClick: logout
109
+ }, "Logout"), /*#__PURE__*/_react.default.createElement("div", null, "AdminMode active: ", isAdminModeActive ? 'true' : 'false'), depth < maxDepth && /*#__PURE__*/_react.default.createElement(_ChaynsHost.default, _extends({}, values, {
110
+ iFrameRef: ref,
111
+ src: src.current,
112
+ iFrameProps: {
113
+ name: `CustomPluginIframe${depth}`,
114
+ style: {
115
+ border: 0,
116
+ width: '100%'
117
+ },
118
+ height: 1
119
+ },
120
+ functions: { ...functions,
121
+ getWindowMetrics: async () => {
122
+ const v = await functions.getWindowMetrics();
123
+ return { ...v,
124
+ offsetTop: v.offsetTop + (ref.current ? ref.current.getBoundingClientRect().top : 0)
125
+ };
126
+ },
127
+ addWindowMetricsListener: cb => functions.addWindowMetricsListener(result => cb({ ...result,
128
+ offsetTop: result.offsetTop + (ref.current ? ref.current.getBoundingClientRect().top : 0)
129
+ }))
130
+ },
131
+ type: "client-iframe"
132
+ })), /*#__PURE__*/_react.default.createElement("div", {
133
+ style: {
134
+ position: 'absolute',
135
+ top: offsetTop,
136
+ color: 'green',
137
+ backgroundColor: 'white'
138
+ }
139
+ }, "456"), /*#__PURE__*/_react.default.createElement("div", {
140
+ style: {
141
+ position: 'absolute',
142
+ top: Math.min(offsetBottom, window.innerHeight) - 25,
143
+ right: 20,
144
+ color: 'red',
145
+ backgroundColor: 'white'
146
+ }
147
+ }, "123"), /*#__PURE__*/_react.default.createElement("button", {
148
+ type: "button",
149
+ onClick: () => setTestHeight(testHeight + 100)
150
+ }, "Increase height"), /*#__PURE__*/_react.default.createElement("div", {
151
+ className: "nice",
152
+ style: {
153
+ height: testHeight
154
+ }
155
+ }), /*#__PURE__*/_react.default.createElement("button", {
156
+ onClick: () => setTestHeight(Math.max(0, testHeight - 100))
157
+ }, "Reduce height"));
158
+ };
159
+
160
+ var _default = /*#__PURE__*/_react.default.memo(Title);
161
+
162
+ exports.default = _default;
@@ -4,10 +4,13 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.WaitUntil = void 0;
7
+
7
8
  var _react = require("react");
9
+
8
10
  const handleTasks = async tasks => {
9
11
  for (let i = 0; i < tasks.length; i++) {
10
12
  const task = tasks[i];
13
+
11
14
  if (Array.isArray(task)) {
12
15
  // eslint-disable-next-line no-await-in-loop
13
16
  await Promise.allSettled(task.map(t => Array.isArray(t) ? handleTasks(t) : typeof t === 'function' ? t() : t));
@@ -17,6 +20,7 @@ const handleTasks = async tasks => {
17
20
  }
18
21
  }
19
22
  };
23
+
20
24
  const WaitUntil = ({
21
25
  tasks,
22
26
  children,
@@ -28,4 +32,5 @@ const WaitUntil = ({
28
32
  mounted.current = true;
29
33
  return loaded ? children : loadingComponent;
30
34
  };
35
+
31
36
  exports.WaitUntil = WaitUntil;
@@ -4,40 +4,54 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.withCompatMode = void 0;
7
+
7
8
  var _react = _interopRequireWildcard(require("react"));
9
+
8
10
  var _reactDom = _interopRequireDefault(require("react-dom"));
11
+
9
12
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
+
10
14
  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); }
15
+
11
16
  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); }
17
+
18
+ function _extends() { _extends = Object.assign || 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); }
19
+
13
20
  const withCompatMode = Component => {
14
21
  class CompatComponent extends _react.PureComponent {
15
22
  constructor(props) {
16
23
  super(props);
17
24
  this.ref = /*#__PURE__*/_react.default.createRef();
18
25
  }
26
+
19
27
  componentDidMount() {
20
28
  const {
21
29
  innerRef
22
30
  } = this.props;
31
+
23
32
  _reactDom.default.render( /*#__PURE__*/_react.default.createElement(Component, _extends({}, this.props, {
24
33
  ref: innerRef
25
34
  })), this.ref.current);
26
35
  }
36
+
27
37
  componentDidUpdate() {
28
38
  const {
29
39
  innerRef
30
40
  } = this.props;
41
+
31
42
  _reactDom.default.render( /*#__PURE__*/_react.default.createElement(Component, _extends({}, this.props, {
32
43
  ref: innerRef
33
44
  })), this.ref.current);
34
45
  }
46
+
35
47
  render() {
36
48
  return /*#__PURE__*/_react.default.createElement("div", {
37
49
  ref: this.ref
38
50
  });
39
51
  }
52
+
40
53
  }
54
+
41
55
  return {
42
56
  Component: /*#__PURE__*/_react.default.forwardRef((props, ref) => /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(Component, _extends({}, props, {
43
57
  innerRef: ref
@@ -52,4 +66,5 @@ const withCompatMode = Component => {
52
66
  appVersion: process.env.VERSION
53
67
  };
54
68
  };
69
+
55
70
  exports.withCompatMode = withCompatMode;
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useAddApiListener = exports.ApiListener = 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
+ let ApiListener;
15
+ exports.ApiListener = ApiListener;
16
+
17
+ (function (ApiListener) {
18
+ ApiListener["GeoLocation"] = "GeoLocation";
19
+ ApiListener["Scroll"] = "Scroll";
20
+ ApiListener["WindowMetrics"] = "WindowMetrics";
21
+ })(ApiListener || (exports.ApiListener = ApiListener = {}));
22
+
23
+ const useAddApiListener = type => {
24
+ const addFunctionName = `add${type}Listener`;
25
+ const removeFunctionName = `remove${type}Listener`;
26
+ const addListener = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, v => v === null || v === void 0 ? void 0 : v[addFunctionName]);
27
+ const removeListener = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, v => v === null || v === void 0 ? void 0 : v[removeFunctionName]);
28
+ let promise;
29
+ return (0, _react.useCallback)((...args) => {
30
+ promise = addListener(...args);
31
+ return () => {
32
+ promise.then(removeListener);
33
+ };
34
+ }, []);
35
+ };
36
+
37
+ exports.useAddApiListener = useAddApiListener;
@@ -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,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;
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useAddApiListener = exports.ApiListener = 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
+ let ApiListener;
15
+ exports.ApiListener = ApiListener;
16
+
17
+ (function (ApiListener) {
18
+ ApiListener["GeoLocation"] = "GeoLocation";
19
+ ApiListener["Scroll"] = "Scroll";
20
+ ApiListener["WindowMetrics"] = "WindowMetrics";
21
+ })(ApiListener || (exports.ApiListener = ApiListener = {}));
22
+
23
+ const useAddApiListener = type => {
24
+ const addFunctionName = `add${type}Listener`;
25
+ const removeFunctionName = `remove${type}Listener`;
26
+ const addListener = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, v => v === null || v === void 0 ? void 0 : v[addFunctionName]);
27
+ const removeListener = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, v => v === null || v === void 0 ? void 0 : v[removeFunctionName]);
28
+ let promise;
29
+ return (0, _react.useCallback)((...args) => {
30
+ promise = addListener(...args);
31
+ return () => {
32
+ promise.then(removeListener);
33
+ };
34
+ }, []);
35
+ };
36
+
37
+ exports.useAddApiListener = useAddApiListener;
@@ -6,11 +6,14 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.removeApiListener = exports.dispatchApiEvent = exports.addApiListener = void 0;
7
7
  const listenerMapping = {};
8
8
  let counter = 0;
9
+
9
10
  const addApiListener = (key, callback) => {
10
11
  const id = ++counter;
12
+
11
13
  if (!listenerMapping[key]) {
12
14
  listenerMapping[key] = {};
13
15
  }
16
+
14
17
  const shouldInitialize = Object.keys(listenerMapping[key]).length === 0;
15
18
  listenerMapping[key][counter] = callback;
16
19
  return {
@@ -18,17 +21,23 @@ const addApiListener = (key, callback) => {
18
21
  shouldInitialize
19
22
  };
20
23
  };
24
+
21
25
  exports.addApiListener = addApiListener;
26
+
22
27
  const removeApiListener = (key, id) => {
23
28
  if (listenerMapping[key]) {
24
29
  delete listenerMapping[key][id];
25
30
  }
31
+
26
32
  return Object.keys(listenerMapping[key]).length === 0;
27
33
  };
34
+
28
35
  exports.removeApiListener = removeApiListener;
36
+
29
37
  const dispatchApiEvent = (key, value) => {
30
38
  if (listenerMapping[key]) {
31
39
  Object.values(listenerMapping[key]).forEach(l => l(value));
32
40
  }
33
41
  };
42
+
34
43
  exports.dispatchApiEvent = dispatchApiEvent;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.loadCss = loadCss;
7
+
8
+ function loadCss() {
9
+ const apiUrl = 'https://api.chayns.net/css/';
10
+ const parameters = new URLSearchParams(window.location.search.toLowerCase());
11
+ document.documentElement.style.visibility = 'hidden';
12
+ document.documentElement.style.overflow = 'hidden';
13
+ const head = document.getElementsByTagName('HEAD')[0];
14
+ const link = document.createElement('link');
15
+ link.rel = 'stylesheet';
16
+ link.type = 'text/css';
17
+ link.href = apiUrl + (parameters.get('siteid') || "");
18
+
19
+ link.onload = () => {
20
+ document.documentElement.style.visibility = 'visible';
21
+ };
22
+
23
+ link.onerror = () => {
24
+ document.documentElement.style.visibility = 'visible';
25
+ };
26
+
27
+ head.appendChild(link);
28
+ }
@@ -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,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;
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useAddApiListener = exports.ApiListener = 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
+ let ApiListener;
15
+ exports.ApiListener = ApiListener;
16
+
17
+ (function (ApiListener) {
18
+ ApiListener["GeoLocation"] = "GeoLocation";
19
+ ApiListener["Scroll"] = "Scroll";
20
+ ApiListener["WindowMetrics"] = "WindowMetrics";
21
+ })(ApiListener || (exports.ApiListener = ApiListener = {}));
22
+
23
+ const useAddApiListener = type => {
24
+ const addFunctionName = `add${type}Listener`;
25
+ const removeFunctionName = `remove${type}Listener`;
26
+ const addListener = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, v => v === null || v === void 0 ? void 0 : v[addFunctionName]);
27
+ const removeListener = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, v => v === null || v === void 0 ? void 0 : v[removeFunctionName]);
28
+ let promise;
29
+ return (0, _react.useCallback)((...args) => {
30
+ promise = addListener(...args);
31
+ return () => {
32
+ promise.then(removeListener);
33
+ };
34
+ }, []);
35
+ };
36
+
37
+ exports.useAddApiListener = useAddApiListener;
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useGeoLocationListener = exports.useGeoLocation = 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 useGeoLocationListener = () => {
15
+ const addGeoLocationListener = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, v => v.addGeoLocationListener);
16
+ const removeGeoLocationListener = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsFunctionsContext, v => 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.useGeoLocationListener = useGeoLocationListener;
27
+
28
+ const useGeoLocation = ({
29
+ enabled = true,
30
+ timeout = 0
31
+ } = {}) => {
32
+ const [value, setValue] = (0, _react.useState)(null);
33
+ const addGeoLocationListener = useGeoLocationListener();
34
+ (0, _react.useEffect)(() => {
35
+ if (enabled) {
36
+ return addGeoLocationListener({
37
+ timeout
38
+ }, setValue);
39
+ }
40
+
41
+ return undefined;
42
+ }, [enabled, timeout, addGeoLocationListener]);
43
+ return {
44
+ value
45
+ };
46
+ };
47
+
48
+ exports.useGeoLocation = useGeoLocation;
@@ -4,9 +4,13 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useGeoLocationListener = exports.useGeoLocation = 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
  /**
11
15
  * @category Hooks
12
16
  */
@@ -18,15 +22,18 @@ const useGeoLocationListener = () => {
18
22
  promiseRef.current = addListener(value, callback);
19
23
  return () => {
20
24
  var _promiseRef$current;
25
+
21
26
  void ((_promiseRef$current = promiseRef.current) === null || _promiseRef$current === void 0 ? void 0 : _promiseRef$current.then(removeListener));
22
- };
23
- // eslint-disable-next-line react-hooks/exhaustive-deps
27
+ }; // eslint-disable-next-line react-hooks/exhaustive-deps
24
28
  }, []);
25
29
  };
26
30
  /**
27
31
  * @category Hooks
28
32
  */
33
+
34
+
29
35
  exports.useGeoLocationListener = useGeoLocationListener;
36
+
30
37
  const useGeoLocation = ({
31
38
  enabled = true,
32
39
  timeout = 0,
@@ -41,10 +48,12 @@ const useGeoLocation = ({
41
48
  silent
42
49
  }, setValue);
43
50
  }
51
+
44
52
  return undefined;
45
53
  }, [enabled, timeout, addListener, silent]);
46
54
  return {
47
55
  value
48
56
  };
49
57
  };
58
+
50
59
  exports.useGeoLocation = useGeoLocation;
@@ -135,19 +135,35 @@ Object.defineProperty(exports, "useWindowMetricsListener", {
135
135
  return _windowMetricsListener.useWindowMetricsListener;
136
136
  }
137
137
  });
138
+
138
139
  var _geoLocationListener = require("./geoLocationListener");
140
+
139
141
  var _scrollListener = require("./scrollListener");
142
+
140
143
  var _useIsAdminMode = require("./useIsAdminMode");
144
+
141
145
  var _useUser = require("./useUser");
146
+
142
147
  var _useAccessToken = require("./useAccessToken");
148
+
143
149
  var _windowMetricsListener = require("./windowMetricsListener");
150
+
144
151
  var _useDevice = require("./useDevice");
152
+
145
153
  var _useSite = require("./useSite");
154
+
146
155
  var _useParameters = require("./useParameters");
156
+
147
157
  var _usePages = require("./usePages");
158
+
148
159
  var _useEnvironment = require("./useEnvironment");
160
+
149
161
  var _useLanguage = require("./useLanguage");
162
+
150
163
  var _useValues = require("./useValues");
164
+
151
165
  var _useFunctions = require("./useFunctions");
166
+
152
167
  var _useCurrentPage = require("./useCurrentPage");
168
+
153
169
  var _useCustomData = require("./useCustomData");