Web: Client: Sdk: Fixed stringify functions for events

This commit is contained in:
Ilya Oleshko 2023-07-14 14:59:46 +03:00
parent 4ffa03b0b5
commit 440ba6a13c
2 changed files with 11 additions and 4 deletions

View File

@ -29,6 +29,7 @@ const Sdk = ({
window.addEventListener("message", handleMessage, false);
return () => {
window.removeEventListener("message", handleMessage, false);
setFrameConfig(null);
};
}, [handleMessage]);
@ -131,10 +132,14 @@ const Sdk = ({
const onClose = useCallback(() => {
frameCallEvent({ event: "onCloseCallback" });
setFrameConfig(null);
}, [frameCallEvent]);
const onCloseCallback = !!frameConfig?.events.onCloseCallback
? {
onClose,
}
: {};
let component;
switch (mode) {
@ -153,13 +158,13 @@ const Sdk = ({
<SelectFileDialog
isPanelVisible={true}
onSelectFile={onSelectFile}
onClose={onClose}
filteredType={selectorType}
withSubfolders={false}
displayType="aside"
embedded={true}
searchParam={frameConfig?.filter.search}
ByExtension
{...onCloseCallback}
/>
);
break;

View File

@ -166,7 +166,9 @@
if (!!this.#iframe.contentWindow) {
this.#iframe.contentWindow.postMessage(
JSON.stringify(mes),
JSON.stringify(mes, (key, value) =>
typeof value === "function" ? value.toString() : value
),
this.config.src
);
}