chayns-api 1.0.1 → 1.0.2
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.
- package/dist/cjs/calls/dialogs/alert.js +0 -2
- package/dist/cjs/calls/dialogs/chaynsDialog.js +2 -8
- package/dist/cjs/calls/dialogs/close.js +0 -2
- package/dist/cjs/calls/dialogs/communication.js +1 -16
- package/dist/cjs/calls/dialogs/confirm.js +0 -4
- package/dist/cjs/calls/dialogs/date.js +36 -53
- package/dist/cjs/calls/dialogs/dropUpAlert.js +0 -3
- package/dist/cjs/calls/dialogs/fileSelect.js +0 -10
- package/dist/cjs/calls/dialogs/iFrame.js +0 -8
- package/dist/cjs/calls/dialogs/index.js +0 -27
- package/dist/cjs/calls/dialogs/input.js +0 -6
- package/dist/cjs/calls/dialogs/mediaSelect.js +0 -7
- package/dist/cjs/calls/dialogs/open.js +0 -2
- package/dist/cjs/calls/dialogs/select.js +0 -9
- package/dist/cjs/calls/dialogs/signature.js +0 -5
- package/dist/cjs/calls/dialogs/toast.js +0 -3
- package/dist/cjs/calls/dialogs/utils/callback.js +0 -2
- package/dist/cjs/calls/dialogs/utils/environment.js +10 -0
- package/dist/cjs/calls/dialogs/utils/is.js +0 -4
- package/dist/cjs/calls/getUserInfo.js +0 -11
- package/dist/cjs/calls/index.js +3 -155
- package/dist/cjs/calls/sendMessage.js +0 -26
- package/dist/cjs/calls/visibilityChangeListener.js +1 -12
- package/dist/cjs/components/ChaynsContext.js +2 -4
- package/dist/cjs/components/ChaynsProvider.js +6 -28
- package/dist/cjs/components/WaitUntil.js +0 -5
- package/dist/cjs/components/withCompatMode.js +1 -16
- package/dist/cjs/helper/apiListenerHelper.js +0 -9
- package/dist/cjs/hooks/geoLocationListener.js +2 -11
- package/dist/cjs/hooks/index.js +6 -16
- package/dist/cjs/hooks/scrollListener.js +4 -23
- package/dist/cjs/hooks/useAccessToken.js +0 -5
- package/dist/cjs/hooks/useCurrentPage.js +0 -4
- package/dist/cjs/hooks/useCustomData.js +0 -4
- package/dist/cjs/hooks/useDevice.js +0 -4
- package/dist/cjs/hooks/useEnvironment.js +0 -4
- package/dist/cjs/hooks/useFunctions.js +0 -4
- package/dist/cjs/hooks/useIsAdminMode.js +0 -5
- package/dist/cjs/hooks/useLanguage.js +0 -4
- package/dist/cjs/hooks/usePages.js +22 -14
- package/dist/cjs/hooks/useParameters.js +0 -4
- package/dist/cjs/hooks/useSite.js +0 -4
- package/dist/cjs/hooks/useUser.js +0 -5
- package/dist/cjs/hooks/useValues.js +0 -4
- package/dist/cjs/hooks/windowMetricsListener.js +2 -12
- package/dist/cjs/host/ChaynsHost.js +0 -10
- package/dist/cjs/host/iframe/HostIframe.js +23 -30
- package/dist/cjs/host/iframe/utils/useUpdateData.js +0 -3
- package/dist/cjs/host/module/ModuleHost.js +3 -13
- package/dist/cjs/host/{HostIframe.js → module/PagemakerFrame.js} +23 -75
- package/dist/cjs/host/module/utils/loadComponent.js +1 -18
- package/dist/cjs/host/module/utils/useDynamicScript.js +0 -18
- package/dist/cjs/index.js +0 -19
- package/dist/cjs/types/IChaynsReact.js +27 -48
- package/dist/cjs/util/appCall.js +1 -4
- package/dist/cjs/util/deviceHelper.js +4 -21
- package/dist/cjs/util/heightHelper.js +0 -9
- package/dist/cjs/util/postIframeForm.js +0 -5
- package/dist/cjs/wrapper/AppWrapper.js +318 -159
- package/dist/cjs/wrapper/FrameWrapper.js +215 -248
- package/dist/cjs/wrapper/ModuleFederationWrapper.js +2 -27
- package/dist/cjs/wrapper/SsrWrapper.js +0 -8
- package/dist/esm/calls/dialogs/alert.js +4 -4
- package/dist/esm/calls/dialogs/chaynsDialog.js +7 -11
- package/dist/esm/calls/dialogs/communication.js +15 -26
- package/dist/esm/calls/dialogs/confirm.js +5 -8
- package/dist/esm/calls/dialogs/date.js +85 -94
- package/dist/esm/calls/dialogs/dropUpAlert.js +1 -1
- package/dist/esm/calls/dialogs/fileSelect.js +23 -62
- package/dist/esm/calls/dialogs/iFrame.js +7 -10
- package/dist/esm/calls/dialogs/input.js +2 -5
- package/dist/esm/calls/dialogs/mediaSelect.js +18 -55
- package/dist/esm/calls/dialogs/open.js +2 -2
- package/dist/esm/calls/dialogs/select.js +5 -9
- package/dist/esm/calls/dialogs/signature.js +0 -2
- package/dist/esm/calls/dialogs/toast.js +6 -11
- package/dist/esm/calls/dialogs/utils/callback.js +3 -5
- package/dist/esm/calls/dialogs/utils/environment.js +3 -0
- package/dist/esm/calls/dialogs/utils/is.js +1 -3
- package/dist/esm/calls/getUserInfo.js +32 -92
- package/dist/esm/calls/index.js +124 -276
- package/dist/esm/calls/sendMessage.js +91 -221
- package/dist/esm/calls/visibilityChangeListener.js +10 -15
- package/dist/esm/components/ChaynsContext.js +3 -3
- package/dist/esm/components/ChaynsProvider.js +45 -86
- package/dist/esm/components/WaitUntil.js +21 -86
- package/dist/esm/components/withCompatMode.js +35 -77
- package/dist/esm/helper/apiListenerHelper.js +10 -15
- package/dist/esm/hooks/geoLocationListener.js +20 -46
- package/dist/esm/hooks/index.js +1 -1
- package/dist/esm/hooks/scrollListener.js +50 -86
- package/dist/esm/hooks/useAccessToken.js +6 -28
- package/dist/esm/hooks/useCurrentPage.js +2 -6
- package/dist/esm/hooks/useCustomData.js +2 -6
- package/dist/esm/hooks/useDevice.js +1 -6
- package/dist/esm/hooks/useEnvironment.js +1 -6
- package/dist/esm/hooks/useFunctions.js +2 -5
- package/dist/esm/hooks/useIsAdminMode.js +2 -6
- package/dist/esm/hooks/useLanguage.js +1 -6
- package/dist/esm/hooks/usePages.js +34 -27
- package/dist/esm/hooks/useParameters.js +1 -6
- package/dist/esm/hooks/useSite.js +1 -6
- package/dist/esm/hooks/useUser.js +1 -7
- package/dist/esm/hooks/useValues.js +2 -5
- package/dist/esm/hooks/windowMetricsListener.js +18 -44
- package/dist/esm/host/ChaynsHost.js +22 -29
- package/dist/esm/host/iframe/HostIframe.js +86 -142
- package/dist/esm/host/iframe/utils/useUpdateData.js +4 -6
- package/dist/esm/host/module/ModuleHost.js +42 -49
- package/dist/esm/host/module/PagemakerFrame.js +97 -0
- package/dist/esm/host/module/utils/loadComponent.js +47 -85
- package/dist/esm/host/module/utils/useDynamicScript.js +27 -74
- package/dist/esm/types/IChaynsReact.js +37 -61
- package/dist/esm/util/appCall.js +2 -4
- package/dist/esm/util/deviceHelper.js +12 -36
- package/dist/esm/util/heightHelper.js +10 -13
- package/dist/esm/util/postIframeForm.js +25 -57
- package/dist/esm/wrapper/AppWrapper.js +380 -781
- package/dist/esm/wrapper/FrameWrapper.js +258 -1509
- package/dist/esm/wrapper/ModuleFederationWrapper.js +47 -284
- package/dist/esm/wrapper/SsrWrapper.js +19 -65
- package/dist/types/calls/dialogs/confirm.d.ts +1 -1
- package/dist/types/calls/dialogs/date.d.ts +4 -4
- package/dist/types/calls/dialogs/dropUpAlert.d.ts +1 -1
- package/dist/types/calls/dialogs/fileSelect.d.ts +1 -1
- package/dist/types/calls/dialogs/iFrame.d.ts +1 -1
- package/dist/types/calls/dialogs/input.d.ts +1 -1
- package/dist/types/calls/dialogs/mediaSelect.d.ts +1 -1
- package/dist/types/calls/dialogs/signature.d.ts +1 -1
- package/dist/types/calls/dialogs/utils/environment.d.ts +3 -0
- package/dist/types/calls/index.d.ts +0 -6
- package/dist/types/components/ChaynsProvider.d.ts +1 -1
- package/dist/types/components/WaitUntil.d.ts +1 -1
- package/dist/types/components/withCompatMode.d.ts +1 -1
- package/dist/types/hooks/index.d.ts +1 -1
- package/dist/types/hooks/useAccessToken.d.ts +1 -1
- package/dist/types/hooks/usePages.d.ts +4 -0
- package/dist/types/host/ChaynsHost.d.ts +1 -1
- package/dist/types/host/iframe/HostIframe.d.ts +1 -1
- package/dist/types/host/module/ModuleHost.d.ts +2 -2
- package/dist/types/host/{HostIframe.d.ts → module/PagemakerFrame.d.ts} +7 -5
- package/dist/types/types/IChaynsReact.d.ts +55 -24
- package/dist/types/util/deviceHelper.d.ts +2 -2
- package/dist/types/wrapper/AppWrapper.d.ts +6 -4
- package/package.json +1 -1
- package/dist/cjs/bootstrap.js +0 -11
- package/dist/cjs/calls/abstractApiListener.js +0 -40
- package/dist/cjs/calls/apiEventListener.js +0 -40
- package/dist/cjs/calls/setVisibilityChangeListener.js +0 -1
- package/dist/cjs/calls/windowMetricsListener.js +0 -18
- package/dist/cjs/components/App.js +0 -32
- package/dist/cjs/components/App.spec.js +0 -16
- package/dist/cjs/components/Button.js +0 -32
- package/dist/cjs/components/ChaynsProviderExposed.js +0 -16
- package/dist/cjs/components/TestProvider.js +0 -236
- package/dist/cjs/components/Title.js +0 -162
- package/dist/cjs/functions/addApiListener.js +0 -37
- package/dist/cjs/functions/addGeoLocationListener.js +0 -26
- package/dist/cjs/functions/addScrollListener.js +0 -26
- package/dist/cjs/functions/addWindowMetricsListener.js +0 -37
- package/dist/cjs/helper/cssLoader.js +0 -28
- package/dist/cjs/hooks/addGeoLocationListener.js +0 -26
- package/dist/cjs/hooks/addScrollListener.js +0 -26
- package/dist/cjs/hooks/addWindowMetricsListener.js +0 -37
- package/dist/cjs/hooks/geoLocation.js +0 -48
- package/dist/cjs/hooks/useAddGeoLocationListener.js +0 -26
- package/dist/cjs/hooks/useAddScrollListener.js +0 -48
- package/dist/cjs/hooks/useAddWindowMetricsListener.js +0 -45
- package/dist/cjs/hooks/useAdddScrollListener.js +0 -26
- package/dist/cjs/hooks/windowMetrics.js +0 -45
- package/dist/cjs/host/ModuleHost.js +0 -11
- package/dist/cjs/host/module/utils.js +0 -25
- package/dist/cjs/index.example.js +0 -7
- package/dist/cjs/index2.js +0 -64
- package/dist/cjs/types/DynamicImport.d.js +0 -5
- package/dist/cjs/types/chayns-components.d.js +0 -1
- package/dist/cjs/types/chayns-logger.d.js +0 -1
- package/dist/cjs/types/chayns.d.js +0 -1
- package/dist/cjs/types/tobit-websocket-service-client.d.js +0 -1
- package/dist/cjs/types/toolkit-types.d.js +0 -1
- package/dist/cjs/util/useFunctionsContext.js +0 -16
- package/dist/cjs/util/useIsAdminMode.js +0 -18
- package/dist/cjs/util/useUser.js +0 -16
- package/dist/esm/bootstrap.js +0 -4
- package/dist/esm/components/App.js +0 -35
- package/dist/esm/components/App.spec.js +0 -9
- package/dist/esm/components/Button.js +0 -34
- package/dist/esm/components/ChaynsProviderExposed.js +0 -3
- package/dist/esm/components/TestProvider.js +0 -308
- package/dist/esm/components/Title.js +0 -210
- package/dist/esm/helper/cssLoader.js +0 -21
- package/dist/esm/hooks/useAddGeoLocationListener.js +0 -18
- package/dist/esm/hooks/useAddScrollListener.js +0 -18
- package/dist/esm/hooks/useAddWindowMetricsListener.js +0 -18
- package/dist/esm/host/HostIframe.js +0 -153
- package/dist/esm/index.example.js +0 -1
- package/dist/esm/index2.js +0 -5
- package/dist/esm/types/DynamicImport.d.js +0 -1
- package/dist/esm/types/chayns-components.d.js +0 -0
- package/dist/esm/types/chayns-logger.d.js +0 -0
- package/dist/esm/types/chayns.d.js +0 -0
- package/dist/esm/types/tobit-websocket-service-client.d.js +0 -0
- package/dist/esm/types/toolkit-types.d.js +0 -0
- package/dist/esm/util/useIsAdminMode.js +0 -9
- package/dist/esm/util/useUser.js +0 -7
- package/dist/types/bootstrap.d.ts +0 -1
- package/dist/types/components/App.d.ts +0 -5
- package/dist/types/components/Button.d.ts +0 -8
- package/dist/types/components/ChaynsProviderExposed.d.ts +0 -13
- package/dist/types/components/Title.d.ts +0 -3
- package/dist/types/index.example.d.ts +0 -0
|
@@ -4,14 +4,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.useSite = void 0;
|
|
7
|
-
|
|
8
7
|
var _useContextSelector = require("use-context-selector");
|
|
9
|
-
|
|
10
8
|
var _ChaynsContext = require("../components/ChaynsContext");
|
|
11
|
-
|
|
12
9
|
/**
|
|
13
10
|
* @category Hooks
|
|
14
11
|
*/
|
|
15
12
|
const useSite = () => (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, v => v === null || v === void 0 ? void 0 : v.site);
|
|
16
|
-
|
|
17
13
|
exports.useSite = useSite;
|
|
@@ -4,15 +4,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.useUser = void 0;
|
|
7
|
-
|
|
8
7
|
var _useContextSelector = require("use-context-selector");
|
|
9
|
-
|
|
10
8
|
var _ChaynsContext = require("../components/ChaynsContext");
|
|
11
|
-
|
|
12
9
|
/**
|
|
13
10
|
* @category Hooks
|
|
14
11
|
*/
|
|
15
|
-
// @ts-ignore
|
|
16
12
|
const useUser = () => (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, v => (v === null || v === void 0 ? void 0 : v.user) || {});
|
|
17
|
-
|
|
18
13
|
exports.useUser = useUser;
|
|
@@ -4,11 +4,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.useValues = void 0;
|
|
7
|
-
|
|
8
7
|
var _useContextSelector = require("use-context-selector");
|
|
9
|
-
|
|
10
8
|
var _ChaynsContext = require("../components/ChaynsContext");
|
|
11
|
-
|
|
12
9
|
/**
|
|
13
10
|
* @category Hooks
|
|
14
11
|
*/
|
|
@@ -16,5 +13,4 @@ const useValues = () => {
|
|
|
16
13
|
const t = (0, _useContextSelector.useContextSelector)(_ChaynsContext.ChaynsContext, v => v || {});
|
|
17
14
|
return t;
|
|
18
15
|
};
|
|
19
|
-
|
|
20
16
|
exports.useValues = useValues;
|
|
@@ -4,15 +4,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.useWindowMetricsListener = exports.useWindowMetrics = void 0;
|
|
7
|
-
|
|
8
7
|
var _useContextSelector = require("use-context-selector");
|
|
9
|
-
|
|
10
8
|
var _react = require("react");
|
|
11
|
-
|
|
12
9
|
var _ChaynsContext = require("../components/ChaynsContext");
|
|
13
|
-
|
|
14
10
|
var _IChaynsReact = require("../types/IChaynsReact");
|
|
15
|
-
|
|
16
11
|
/**
|
|
17
12
|
* @category Hooks
|
|
18
13
|
*/
|
|
@@ -24,18 +19,15 @@ const useWindowMetricsListener = () => {
|
|
|
24
19
|
promiseRef.current = addListener(callback);
|
|
25
20
|
return () => {
|
|
26
21
|
var _promiseRef$current;
|
|
27
|
-
|
|
28
22
|
void ((_promiseRef$current = promiseRef.current) === null || _promiseRef$current === void 0 ? void 0 : _promiseRef$current.then(removeListener));
|
|
29
|
-
};
|
|
23
|
+
};
|
|
24
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
30
25
|
}, []);
|
|
31
26
|
};
|
|
32
27
|
/**
|
|
33
28
|
* @category Hooks
|
|
34
29
|
*/
|
|
35
|
-
|
|
36
|
-
|
|
37
30
|
exports.useWindowMetricsListener = useWindowMetricsListener;
|
|
38
|
-
|
|
39
31
|
const useWindowMetrics = ({
|
|
40
32
|
enabled = true
|
|
41
33
|
} = {}) => {
|
|
@@ -56,7 +48,6 @@ const useWindowMetrics = ({
|
|
|
56
48
|
setValue(v);
|
|
57
49
|
});
|
|
58
50
|
}
|
|
59
|
-
|
|
60
51
|
return undefined;
|
|
61
52
|
}, [enabled, addListener]);
|
|
62
53
|
(0, _react.useEffect)(() => {
|
|
@@ -64,5 +55,4 @@ const useWindowMetrics = ({
|
|
|
64
55
|
}, [getWindowMetrics]);
|
|
65
56
|
return value;
|
|
66
57
|
};
|
|
67
|
-
|
|
68
58
|
exports.useWindowMetrics = useWindowMetrics;
|
|
@@ -4,15 +4,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _react = _interopRequireDefault(require("react"));
|
|
9
|
-
|
|
10
8
|
var _HostIframe = _interopRequireDefault(require("./iframe/HostIframe"));
|
|
11
|
-
|
|
12
9
|
var _ModuleHost = _interopRequireDefault(require("./module/ModuleHost"));
|
|
13
|
-
|
|
14
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
-
|
|
16
11
|
const ChaynsHost = ({
|
|
17
12
|
type,
|
|
18
13
|
iFrameProps,
|
|
@@ -52,7 +47,6 @@ const ChaynsHost = ({
|
|
|
52
47
|
environment: environment,
|
|
53
48
|
customData: customData
|
|
54
49
|
});
|
|
55
|
-
|
|
56
50
|
case 'client-module':
|
|
57
51
|
return /*#__PURE__*/_react.default.createElement(_ModuleHost.default, {
|
|
58
52
|
system: system,
|
|
@@ -69,7 +63,6 @@ const ChaynsHost = ({
|
|
|
69
63
|
customData: customData,
|
|
70
64
|
environment: environment
|
|
71
65
|
});
|
|
72
|
-
|
|
73
66
|
case 'server-iframe':
|
|
74
67
|
return /*#__PURE__*/_react.default.createElement(_HostIframe.default, {
|
|
75
68
|
iFrameRef: iFrameRef,
|
|
@@ -88,7 +81,6 @@ const ChaynsHost = ({
|
|
|
88
81
|
environment: environment,
|
|
89
82
|
customData: customData
|
|
90
83
|
});
|
|
91
|
-
|
|
92
84
|
case 'server-module':
|
|
93
85
|
return /*#__PURE__*/_react.default.createElement(_ModuleHost.default, {
|
|
94
86
|
system: system,
|
|
@@ -104,11 +96,9 @@ const ChaynsHost = ({
|
|
|
104
96
|
customData: customData,
|
|
105
97
|
environment: environment
|
|
106
98
|
}, children);
|
|
107
|
-
|
|
108
99
|
default:
|
|
109
100
|
return null;
|
|
110
101
|
}
|
|
111
102
|
};
|
|
112
|
-
|
|
113
103
|
var _default = ChaynsHost;
|
|
114
104
|
exports.default = _default;
|
|
@@ -4,23 +4,14 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
-
|
|
10
8
|
var comlink = _interopRequireWildcard(require("comlink"));
|
|
11
|
-
|
|
12
9
|
var _postIframeForm = _interopRequireDefault(require("../../util/postIframeForm"));
|
|
13
|
-
|
|
14
10
|
var _useUpdateData = _interopRequireDefault(require("./utils/useUpdateData"));
|
|
15
|
-
|
|
16
11
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
-
|
|
18
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); }
|
|
19
|
-
|
|
20
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; }
|
|
21
|
-
|
|
22
|
-
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); }
|
|
23
|
-
|
|
14
|
+
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); }
|
|
24
15
|
const HostIframe = ({
|
|
25
16
|
iFrameProps,
|
|
26
17
|
src,
|
|
@@ -42,7 +33,6 @@ const HostIframe = ({
|
|
|
42
33
|
const eventTarget = (0, _react.useRef)();
|
|
43
34
|
const ref = (0, _react.useRef)();
|
|
44
35
|
const currentDataRef = (0, _react.useRef)();
|
|
45
|
-
|
|
46
36
|
if (!eventTarget.current) {
|
|
47
37
|
eventTarget.current = global.document ? document.createElement('div') : undefined; // global.EventTarget ? new EventTarget() : undefined
|
|
48
38
|
}
|
|
@@ -51,9 +41,9 @@ const HostIframe = ({
|
|
|
51
41
|
if (ref.current) {
|
|
52
42
|
ref.current.height = `${value}px`;
|
|
53
43
|
}
|
|
54
|
-
};
|
|
55
|
-
|
|
44
|
+
};
|
|
56
45
|
|
|
46
|
+
// region initialData
|
|
57
47
|
const initialData = {
|
|
58
48
|
site,
|
|
59
49
|
isAdminModeActive,
|
|
@@ -65,33 +55,36 @@ const HostIframe = ({
|
|
|
65
55
|
parameters,
|
|
66
56
|
environment,
|
|
67
57
|
customData
|
|
68
|
-
};
|
|
58
|
+
};
|
|
59
|
+
// endregion
|
|
69
60
|
|
|
70
|
-
currentDataRef.current = initialData;
|
|
61
|
+
currentDataRef.current = initialData;
|
|
71
62
|
|
|
63
|
+
// region postIframeForm
|
|
72
64
|
(0, _react.useEffect)(() => {
|
|
73
65
|
(async () => {
|
|
74
66
|
if (postForm) {
|
|
75
67
|
var _await$functions$getA;
|
|
76
|
-
|
|
77
68
|
const accessToken = (_await$functions$getA = await functions.getAccessToken()) !== null && _await$functions$getA !== void 0 ? _await$functions$getA : {};
|
|
78
|
-
void (0, _postIframeForm.default)(src, JSON.stringify({
|
|
69
|
+
void (0, _postIframeForm.default)(src, JSON.stringify({
|
|
70
|
+
...initialData,
|
|
79
71
|
pages: undefined,
|
|
80
72
|
...accessToken
|
|
81
73
|
}), 'chayns', iFrameProps.name);
|
|
82
74
|
}
|
|
83
|
-
})();
|
|
75
|
+
})();
|
|
76
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
77
|
+
}, []);
|
|
78
|
+
// endregion
|
|
84
79
|
|
|
85
|
-
}, []); // endregion
|
|
86
80
|
// region expose data and functions to iframe
|
|
87
|
-
|
|
88
81
|
(0, _react.useEffect)(() => {
|
|
89
82
|
var _ref$current;
|
|
90
|
-
|
|
91
83
|
if ((_ref$current = ref.current) !== null && _ref$current !== void 0 && _ref$current.contentWindow) {
|
|
92
84
|
const obj = {
|
|
93
85
|
[iFrameProps.name]: {
|
|
94
|
-
functions: {
|
|
86
|
+
functions: {
|
|
87
|
+
...functions,
|
|
95
88
|
setHeight
|
|
96
89
|
},
|
|
97
90
|
addDataListener: cb => {
|
|
@@ -101,17 +94,18 @@ const HostIframe = ({
|
|
|
101
94
|
}
|
|
102
95
|
};
|
|
103
96
|
comlink.expose(obj, comlink.windowEndpoint(ref.current.contentWindow));
|
|
104
|
-
ref.current.contentWindow.postMessage('chayns-api-host-ready', '*');
|
|
105
|
-
|
|
97
|
+
ref.current.contentWindow.postMessage('chayns-api-host-ready', '*');
|
|
98
|
+
// https://github.com/GoogleChromeLabs/comlink/pull/469 might be better approach once released
|
|
106
99
|
return () => {
|
|
107
100
|
delete obj[iFrameProps.name];
|
|
108
101
|
};
|
|
109
102
|
}
|
|
103
|
+
return undefined;
|
|
104
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
105
|
+
}, []);
|
|
106
|
+
// endregion
|
|
110
107
|
|
|
111
|
-
return undefined; // eslint-disable-next-line react-hooks/exhaustive-deps
|
|
112
|
-
}, []); // endregion
|
|
113
108
|
// region dispatch data update
|
|
114
|
-
|
|
115
109
|
(0, _useUpdateData.default)(eventTarget.current, 'isAdminModeActive', isAdminModeActive);
|
|
116
110
|
(0, _useUpdateData.default)(eventTarget.current, 'user', user);
|
|
117
111
|
(0, _useUpdateData.default)(eventTarget.current, 'site', site);
|
|
@@ -119,12 +113,12 @@ const HostIframe = ({
|
|
|
119
113
|
(0, _useUpdateData.default)(eventTarget.current, 'language', language);
|
|
120
114
|
(0, _useUpdateData.default)(eventTarget.current, 'parameters', parameters);
|
|
121
115
|
(0, _useUpdateData.default)(eventTarget.current, 'environment', environment);
|
|
122
|
-
(0, _useUpdateData.default)(eventTarget.current, 'customData', customData);
|
|
116
|
+
(0, _useUpdateData.default)(eventTarget.current, 'customData', customData);
|
|
117
|
+
// endregion
|
|
123
118
|
|
|
124
119
|
return /*#__PURE__*/_react.default.createElement("iframe", _extends({
|
|
125
120
|
ref: r => {
|
|
126
121
|
ref.current = r;
|
|
127
|
-
|
|
128
122
|
if (iFrameRef) {
|
|
129
123
|
// eslint-disable-next-line no-param-reassign
|
|
130
124
|
iFrameRef.current = r;
|
|
@@ -135,6 +129,5 @@ const HostIframe = ({
|
|
|
135
129
|
src: postForm ? undefined : src
|
|
136
130
|
}));
|
|
137
131
|
};
|
|
138
|
-
|
|
139
132
|
var _default = HostIframe;
|
|
140
133
|
exports.default = _default;
|
|
@@ -4,9 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _react = require("react");
|
|
9
|
-
|
|
10
8
|
const useUpdateData = (target, type, value) => {
|
|
11
9
|
(0, _react.useEffect)(() => {
|
|
12
10
|
if (target) {
|
|
@@ -19,6 +17,5 @@ const useUpdateData = (target, type, value) => {
|
|
|
19
17
|
}
|
|
20
18
|
}, [target, type, value]);
|
|
21
19
|
};
|
|
22
|
-
|
|
23
20
|
var _default = useUpdateData;
|
|
24
21
|
exports.default = _default;
|
|
@@ -4,19 +4,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
-
|
|
10
8
|
var _useDynamicScript = _interopRequireDefault(require("./utils/useDynamicScript"));
|
|
11
|
-
|
|
12
9
|
var _loadComponent = _interopRequireDefault(require("./utils/loadComponent"));
|
|
13
|
-
|
|
14
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
-
|
|
16
11
|
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); }
|
|
17
|
-
|
|
18
12
|
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; }
|
|
19
|
-
|
|
20
13
|
const System = ({
|
|
21
14
|
system,
|
|
22
15
|
fallback,
|
|
@@ -34,15 +27,14 @@ const System = ({
|
|
|
34
27
|
if (!system || !ready || failed) {
|
|
35
28
|
return null;
|
|
36
29
|
}
|
|
37
|
-
|
|
38
30
|
return /*#__PURE__*/_react.default.lazy((0, _loadComponent.default)(system.scope, system.module, system.url));
|
|
31
|
+
|
|
39
32
|
/* eslint-disable react-hooks/exhaustive-deps */
|
|
40
33
|
}, [system === null || system === void 0 ? void 0 : system.scope, ready, system === null || system === void 0 ? void 0 : system.url]);
|
|
41
34
|
return Component ? /*#__PURE__*/_react.default.createElement(_react.default.Suspense, {
|
|
42
35
|
fallback: fallback || ''
|
|
43
36
|
}, /*#__PURE__*/_react.default.createElement(Component, props)) : fallback;
|
|
44
37
|
};
|
|
45
|
-
|
|
46
38
|
const ModuleHost = ({
|
|
47
39
|
system,
|
|
48
40
|
children = null,
|
|
@@ -71,11 +63,10 @@ const ModuleHost = ({
|
|
|
71
63
|
customData,
|
|
72
64
|
environment
|
|
73
65
|
};
|
|
74
|
-
|
|
75
66
|
if (user) {
|
|
76
67
|
initialData.user = user;
|
|
77
|
-
}
|
|
78
|
-
|
|
68
|
+
}
|
|
69
|
+
// endregion
|
|
79
70
|
|
|
80
71
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
81
72
|
className: "module-css"
|
|
@@ -87,6 +78,5 @@ const ModuleHost = ({
|
|
|
87
78
|
isModule: true
|
|
88
79
|
}));
|
|
89
80
|
};
|
|
90
|
-
|
|
91
81
|
var _default = ModuleHost;
|
|
92
82
|
exports.default = _default;
|
|
@@ -5,11 +5,11 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
|
|
8
|
-
var _react =
|
|
8
|
+
var _react = require("react");
|
|
9
9
|
|
|
10
10
|
var comlink = _interopRequireWildcard(require("comlink"));
|
|
11
11
|
|
|
12
|
-
var
|
|
12
|
+
var _useUpdateData = _interopRequireDefault(require("../iframe/utils/useUpdateData"));
|
|
13
13
|
|
|
14
14
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
15
|
|
|
@@ -17,12 +17,10 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
17
17
|
|
|
18
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; }
|
|
19
19
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
const HostIframe = ({
|
|
20
|
+
const PagemakerFrame = ({
|
|
23
21
|
iFrameProps,
|
|
24
|
-
src,
|
|
25
22
|
postForm = false,
|
|
23
|
+
children,
|
|
26
24
|
iFrameRef,
|
|
27
25
|
// shallow data
|
|
28
26
|
pages,
|
|
@@ -31,14 +29,17 @@ const HostIframe = ({
|
|
|
31
29
|
user,
|
|
32
30
|
currentPage,
|
|
33
31
|
functions,
|
|
34
|
-
device
|
|
32
|
+
device,
|
|
33
|
+
language,
|
|
34
|
+
parameters,
|
|
35
|
+
environment
|
|
35
36
|
}) => {
|
|
36
37
|
const eventTarget = (0, _react.useRef)();
|
|
37
38
|
const ref = (0, _react.useRef)();
|
|
38
39
|
const currentDataRef = (0, _react.useRef)();
|
|
39
40
|
|
|
40
41
|
if (!eventTarget.current) {
|
|
41
|
-
eventTarget.current = global.EventTarget ? new EventTarget() : undefined
|
|
42
|
+
eventTarget.current = global.document ? document.createElement('div') : undefined; // global.EventTarget ? new EventTarget() : undefined
|
|
42
43
|
}
|
|
43
44
|
|
|
44
45
|
const setHeight = value => {
|
|
@@ -54,20 +55,13 @@ const HostIframe = ({
|
|
|
54
55
|
pages,
|
|
55
56
|
currentPage,
|
|
56
57
|
device,
|
|
57
|
-
user
|
|
58
|
+
user,
|
|
59
|
+
language,
|
|
60
|
+
parameters,
|
|
61
|
+
environment
|
|
58
62
|
}; // endregion
|
|
59
63
|
|
|
60
|
-
currentDataRef.current = initialData;
|
|
61
|
-
|
|
62
|
-
(0, _react.useEffect)(() => {
|
|
63
|
-
if (postForm) {
|
|
64
|
-
void (0, _postIframeForm.default)(src, JSON.stringify({ ...initialData,
|
|
65
|
-
pages: undefined
|
|
66
|
-
}), 'chayns', iFrameProps.name);
|
|
67
|
-
} // eslint-disable-next-line react-hooks/exhaustive-deps
|
|
68
|
-
|
|
69
|
-
}, []); // endregion
|
|
70
|
-
|
|
64
|
+
currentDataRef.current = initialData;
|
|
71
65
|
console.debug('functions', functions); // region expose data and functions to iframe
|
|
72
66
|
|
|
73
67
|
(0, _react.useEffect)(() => {
|
|
@@ -97,61 +91,15 @@ const HostIframe = ({
|
|
|
97
91
|
}, []); // endregion
|
|
98
92
|
// region dispatch data update
|
|
99
93
|
|
|
100
|
-
(0,
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
}
|
|
109
|
-
}, [isAdminModeActive]);
|
|
110
|
-
(0, _react.useEffect)(() => {
|
|
111
|
-
if (eventTarget.current) {
|
|
112
|
-
eventTarget.current.dispatchEvent(new CustomEvent('data_update', {
|
|
113
|
-
detail: {
|
|
114
|
-
type: 'user',
|
|
115
|
-
value: user
|
|
116
|
-
}
|
|
117
|
-
}));
|
|
118
|
-
}
|
|
119
|
-
}, [user]);
|
|
120
|
-
(0, _react.useEffect)(() => {
|
|
121
|
-
if (eventTarget.current) {
|
|
122
|
-
eventTarget.current.dispatchEvent(new CustomEvent('data_update', {
|
|
123
|
-
detail: {
|
|
124
|
-
type: 'site',
|
|
125
|
-
value: site
|
|
126
|
-
}
|
|
127
|
-
}));
|
|
128
|
-
}
|
|
129
|
-
}, [site]);
|
|
130
|
-
(0, _react.useEffect)(() => {
|
|
131
|
-
if (eventTarget.current) {
|
|
132
|
-
eventTarget.current.dispatchEvent(new CustomEvent('data_update', {
|
|
133
|
-
detail: {
|
|
134
|
-
type: 'pages',
|
|
135
|
-
value: pages
|
|
136
|
-
}
|
|
137
|
-
}));
|
|
138
|
-
}
|
|
139
|
-
}, [pages]); // endregion
|
|
140
|
-
|
|
141
|
-
return /*#__PURE__*/_react.default.createElement("iframe", _extends({
|
|
142
|
-
ref: r => {
|
|
143
|
-
ref.current = r;
|
|
144
|
-
|
|
145
|
-
if (iFrameRef) {
|
|
146
|
-
// eslint-disable-next-line no-param-reassign
|
|
147
|
-
iFrameRef.current = r;
|
|
148
|
-
}
|
|
149
|
-
},
|
|
150
|
-
title: " "
|
|
151
|
-
}, iFrameProps, {
|
|
152
|
-
src: postForm ? undefined : src
|
|
153
|
-
}));
|
|
94
|
+
(0, _useUpdateData.default)(eventTarget.current, 'isAdminModeActive', isAdminModeActive);
|
|
95
|
+
(0, _useUpdateData.default)(eventTarget.current, 'user', user);
|
|
96
|
+
(0, _useUpdateData.default)(eventTarget.current, 'site', site);
|
|
97
|
+
(0, _useUpdateData.default)(eventTarget.current, 'pages', pages);
|
|
98
|
+
(0, _useUpdateData.default)(eventTarget.current, 'language', language);
|
|
99
|
+
(0, _useUpdateData.default)(eventTarget.current, 'parameters', parameters); // endregion
|
|
100
|
+
|
|
101
|
+
return children;
|
|
154
102
|
};
|
|
155
103
|
|
|
156
|
-
var _default =
|
|
104
|
+
var _default = PagemakerFrame;
|
|
157
105
|
exports.default = _default;
|
|
@@ -4,19 +4,14 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = loadComponent;
|
|
7
|
-
|
|
8
7
|
var _semver = _interopRequireDefault(require("semver"));
|
|
9
|
-
|
|
10
8
|
var _react = _interopRequireDefault(require("react"));
|
|
11
|
-
|
|
12
9
|
var _useDynamicScript = require("./useDynamicScript");
|
|
13
|
-
|
|
14
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
-
|
|
16
11
|
/* eslint-disable */
|
|
17
12
|
// @ts-nocheck
|
|
18
|
-
let instances = {};
|
|
19
13
|
|
|
14
|
+
let instances = {};
|
|
20
15
|
function loadComponent(scope, module, url, skipCompatMode = false) {
|
|
21
16
|
return async () => {
|
|
22
17
|
// Initializes the shared scope. Fills it with known provided modules from this build and all remotes
|
|
@@ -27,24 +22,18 @@ function loadComponent(scope, module, url, skipCompatMode = false) {
|
|
|
27
22
|
} = window[scope + "_list"].find(x => x.url === url); // or get the container somewhere else
|
|
28
23
|
// Initialize the container, it may provide shared modules
|
|
29
24
|
// eslint-disable-next-line no-undef
|
|
30
|
-
|
|
31
25
|
await container.init(__webpack_share_scopes__.default);
|
|
32
26
|
const factory = await container.get(module);
|
|
33
|
-
|
|
34
27
|
_useDynamicScript.semaphore[scope].release();
|
|
35
|
-
|
|
36
28
|
let ModuleMap = instances[`${scope}__${module}`];
|
|
37
29
|
let Module;
|
|
38
|
-
|
|
39
30
|
if (!ModuleMap) {
|
|
40
31
|
ModuleMap = {};
|
|
41
32
|
instances[`${scope}__${module}`] = ModuleMap;
|
|
42
33
|
}
|
|
43
|
-
|
|
44
34
|
if (Object.keys(ModuleMap).length > 0) {
|
|
45
35
|
const newModule = factory();
|
|
46
36
|
Module = ModuleMap[`${newModule.default.buildEnv}__${newModule.default.appVersion}`];
|
|
47
|
-
|
|
48
37
|
if (!Module) {
|
|
49
38
|
Module = newModule;
|
|
50
39
|
ModuleMap[`${newModule.default.buildEnv}__${newModule.default.appVersion}`] = newModule;
|
|
@@ -53,24 +42,18 @@ function loadComponent(scope, module, url, skipCompatMode = false) {
|
|
|
53
42
|
Module = factory();
|
|
54
43
|
ModuleMap[`${Module.default.buildEnv}__${Module.default.appVersion}`] = Module;
|
|
55
44
|
}
|
|
56
|
-
|
|
57
45
|
if (skipCompatMode) return Module;
|
|
58
|
-
|
|
59
46
|
const hostVersion = _semver.default.minVersion(_react.default.version);
|
|
60
|
-
|
|
61
47
|
const {
|
|
62
48
|
requiredVersion,
|
|
63
49
|
environment
|
|
64
50
|
} = Module.default;
|
|
65
|
-
|
|
66
51
|
const matchReactVersion = requiredVersion && _semver.default.satisfies(hostVersion, requiredVersion);
|
|
67
|
-
|
|
68
52
|
if (!matchReactVersion || environment !== 'production') {
|
|
69
53
|
return {
|
|
70
54
|
default: Module.default.CompatComponent
|
|
71
55
|
};
|
|
72
56
|
}
|
|
73
|
-
|
|
74
57
|
return {
|
|
75
58
|
default: Module.default.Component
|
|
76
59
|
};
|
|
@@ -4,44 +4,31 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.semaphore = exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
-
|
|
10
8
|
var _semaphoreAsyncAwait = _interopRequireDefault(require("semaphore-async-await"));
|
|
11
|
-
|
|
12
9
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
|
|
14
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); }
|
|
15
|
-
|
|
16
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; }
|
|
17
|
-
|
|
18
12
|
const semaphore = {};
|
|
19
13
|
exports.semaphore = semaphore;
|
|
20
|
-
|
|
21
14
|
const useDynamicScript = args => {
|
|
22
15
|
const [ready, setReady] = _react.default.useState(false);
|
|
23
|
-
|
|
24
16
|
const [failed, setFailed] = _react.default.useState(false);
|
|
25
|
-
|
|
26
17
|
(0, _react.useEffect)(() => {
|
|
27
18
|
if (!args.url) {
|
|
28
19
|
return undefined;
|
|
29
20
|
}
|
|
30
|
-
|
|
31
21
|
const element = document.createElement('script');
|
|
32
22
|
element.src = args.url;
|
|
33
23
|
element.type = 'text/javascript';
|
|
34
24
|
element.async = true;
|
|
35
25
|
setReady(false);
|
|
36
26
|
setFailed(false);
|
|
37
|
-
|
|
38
27
|
if (!(args.scope in semaphore)) {
|
|
39
28
|
semaphore[args.scope] = new _semaphoreAsyncAwait.default(1);
|
|
40
29
|
}
|
|
41
|
-
|
|
42
30
|
(async () => {
|
|
43
31
|
await semaphore[args.scope].acquire();
|
|
44
|
-
|
|
45
32
|
element.onload = () => {
|
|
46
33
|
setReady(true);
|
|
47
34
|
const listKey = args.scope + "_list";
|
|
@@ -52,18 +39,14 @@ const useDynamicScript = args => {
|
|
|
52
39
|
});
|
|
53
40
|
window[args.scope] = null;
|
|
54
41
|
};
|
|
55
|
-
|
|
56
42
|
element.onerror = () => {
|
|
57
43
|
setReady(false);
|
|
58
44
|
setFailed(true);
|
|
59
45
|
};
|
|
60
|
-
|
|
61
46
|
document.head.appendChild(element);
|
|
62
47
|
})();
|
|
63
|
-
|
|
64
48
|
return () => {
|
|
65
49
|
semaphore[args.scope].release();
|
|
66
|
-
|
|
67
50
|
if (document.head.contains(element)) {
|
|
68
51
|
document.head.removeChild(element);
|
|
69
52
|
}
|
|
@@ -74,6 +57,5 @@ const useDynamicScript = args => {
|
|
|
74
57
|
failed
|
|
75
58
|
};
|
|
76
59
|
};
|
|
77
|
-
|
|
78
60
|
var _default = useDynamicScript;
|
|
79
61
|
exports.default = _default;
|