@telperion/messenger 7.6.2 → 7.6.3
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/iframe/message-host.cjs
CHANGED
|
@@ -39,7 +39,7 @@ class IframeMessageHost extends message_host_1.MessageHost {
|
|
|
39
39
|
...message,
|
|
40
40
|
id: messageId,
|
|
41
41
|
};
|
|
42
|
-
source.postMessage(message);
|
|
42
|
+
source.postMessage(message, '*');
|
|
43
43
|
}
|
|
44
44
|
#handler = ({ data, source }) => {
|
|
45
45
|
if (!data || typeof data !== 'object' || !data.path || typeof data.id === 'undefined') {
|
package/iframe/message-host.js
CHANGED
|
@@ -36,7 +36,7 @@ export class IframeMessageHost extends MessageHost {
|
|
|
36
36
|
...message,
|
|
37
37
|
id: messageId,
|
|
38
38
|
};
|
|
39
|
-
source.postMessage(message);
|
|
39
|
+
source.postMessage(message, '*');
|
|
40
40
|
}
|
|
41
41
|
#handler = ({ data, source }) => {
|
|
42
42
|
if (!data || typeof data !== 'object' || !data.path || typeof data.id === 'undefined') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../libs/messenger/src/iframe/message-host.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAG9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,oBAAoB,GAAG,MAAM,CAAC,uCAAuC,CAAC,CAAC;AAC7E,MAAM,YAAY,GAAG,MAAM,CAAC,gCAAgC,CAAC,CAAC;AAC9D,MAAM,QAAQ,GAAG,MAAM,CAAC,4BAA4B,CAAC,CAAC;AACtD,MAAM,OAAO,GAAG,MAAM,CAAC,2BAA2B,CAAC,CAAC;AAEpD,MAAM,OAAO,iBAAkB,SAAQ,WAAW;IAYtC;IAXF,CAAC,QAAQ,CAAC,GAAG,IAAI,OAAO,EAAW,CAAC;IACpC,CAAC,OAAO,CAAC,GAAwC,EAAE,CAAC;IACpD,CAAC,oBAAoB,CAAC,GAAW,SAAS,CAAC;IAEnD,IAAY,CAAC,YAAY,CAAC;QACxB,OAAO,OAAO,IAAI,CAAC,oBAAoB,CAAC,KAAK,UAAU;YACrD,CAAC,CAAE,IAAI,CAAC,oBAAoB,CAAyC,EAAE,IAAI,IAAI;YAC/E,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAsB,IAAI,IAAI,CAAC;IAC9D,CAAC;IAED,YACU,cAAc,oBAAoB,EAC1C,WAAoB;QAEpB,KAAK,EAAE,CAAC;QAHA,gBAAW,GAAX,WAAW,CAAuB;QAK1C,IAAI,CAAC,oBAAoB,CAAC,GAAG,WAAW,CAAC;QAEzC,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAElD,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC/B,CAAC;IAEM,SAAS;QACd,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvD,CAAC;IAES,CAAC,QAAQ,CAAC,CAAC,OAAkC;QACrD,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,GAAG,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACnE,MAAM,CAAC,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,QAAQ,CAAE,CAAC;QAEpE,OAAO,GAAG;YACR,GAAG,OAAO;YACV,EAAE,EAAE,SAAS;SACd,CAAC;QAED,MAAc,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"sources":["../../../../../libs/messenger/src/iframe/message-host.ts"],"names":[],"mappings":"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","file":"message-host.js","sourcesContent":["import { uniqueId } from '@telperion/js-utils';\nimport { Subject } from 'rxjs';\nimport { MessageHost } from '../message-host';\nimport { SuccessfulMessageResponse } from '../message-response.type';\nimport { Message } from '../message.interface';\nimport { CHANNEL_PATH_SPLITTER } from './channel-path-splitter';\nimport { DEFAULT_CHANNEL_NAME } from './default-channel-name';\nimport { SOURCE_ID_SPLITTER } from './source-id-splitter';\nimport { IFrame } from './iframe.type';\nimport { LISTEN, RESPONSE } from '../selectors';\n\nconst OPTIONS_TARGET_FRAME = Symbol('IframeMessageHost Option Target Frame');\nconst TARGET_FRAME = Symbol('IframeMessageHost Target Frame');\nconst REQUESTS = Symbol('IframeMessageHost Requests');\nconst SOURCES = Symbol('IframeMessageHost Sources');\n\nexport class IframeMessageHost extends MessageHost {\n private [REQUESTS] = new Subject<Message>();\n private [SOURCES]: Array<[string, MessageEventSource]> = [];\n private [OPTIONS_TARGET_FRAME]: IFrame = undefined;\n\n private get [TARGET_FRAME](): null | HTMLIFrameElement {\n return typeof this[OPTIONS_TARGET_FRAME] === 'function'\n ? (this[OPTIONS_TARGET_FRAME] as () => HTMLIFrameElement | undefined)() ?? null\n : this[OPTIONS_TARGET_FRAME] as HTMLIFrameElement ?? null;\n }\n\n constructor(\n private channelName = DEFAULT_CHANNEL_NAME,\n targetFrame?: IFrame\n ) {\n super();\n\n this[OPTIONS_TARGET_FRAME] = targetFrame;\n\n window.addEventListener('message', this.#handler);\n\n this[LISTEN](this[REQUESTS]);\n }\n\n public terminate(): void {\n window.removeEventListener('message', this.#handler);\n }\n\n protected [RESPONSE](message: SuccessfulMessageResponse): void {\n const [sourceId, messageId] = message.id.split(SOURCE_ID_SPLITTER);\n const [, source] = this[SOURCES].find(([sId]) => sId === sourceId)!;\n\n message = {\n ...message,\n id: messageId,\n };\n\n (source as any).postMessage(message, '*');\n }\n\n #handler = ({ data, source }: MessageEvent<Message>) => {\n if (!data || typeof data !== 'object' || !data.path || typeof data.id === 'undefined') {\n return;\n }\n\n const targetFrame = this[TARGET_FRAME];\n\n if (targetFrame && targetFrame.contentWindow !== source) {\n return;\n }\n\n const [channel, path] = data.path.split(CHANNEL_PATH_SPLITTER);\n\n if (channel !== this.channelName) {\n return;\n }\n\n if (!this[SOURCES].some(([, s]) => s === source)) {\n this[SOURCES].push([uniqueId('messenger-iframe-source') as string, source!]);\n }\n\n const [sourceId] = this[SOURCES].find(([, s]) => s === source)!;\n this[REQUESTS].next({\n body: targetFrame ? data.body : { data: data.body, sender: source },\n id: `${sourceId}${SOURCE_ID_SPLITTER}${data.id}`,\n path,\n });\n };\n}\n"]}
|