@intlayer/editor-react 9.5.11 → 9.5.12
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/ConfigurationContext.cjs +10 -39
- package/dist/cjs/ConfigurationContext.cjs.map +1 -1
- package/dist/cjs/EditedContentContext.cjs +0 -17
- package/dist/cjs/EditedContentContext.cjs.map +1 -1
- package/dist/cjs/EditorEnabledContext.cjs +0 -32
- package/dist/cjs/EditorEnabledContext.cjs.map +1 -1
- package/dist/cjs/FocusDictionaryContext.cjs +11 -59
- package/dist/cjs/FocusDictionaryContext.cjs.map +1 -1
- package/dist/cjs/index.cjs +4 -20
- package/dist/cjs/useCrossFrameState.cjs +5 -50
- package/dist/cjs/useCrossFrameState.cjs.map +1 -1
- package/dist/cjs/useCrossURLPathState.cjs +4 -8
- package/dist/cjs/useCrossURLPathState.cjs.map +1 -1
- package/dist/cjs/useEditedContentPersistence.cjs +33 -0
- package/dist/cjs/useEditedContentPersistence.cjs.map +1 -0
- package/dist/cjs/useEditorLocale.cjs +0 -5
- package/dist/cjs/useEditorLocale.cjs.map +1 -1
- package/dist/esm/ConfigurationContext.mjs +12 -39
- package/dist/esm/ConfigurationContext.mjs.map +1 -1
- package/dist/esm/EditedContentContext.mjs +1 -16
- package/dist/esm/EditedContentContext.mjs.map +1 -1
- package/dist/esm/EditorEnabledContext.mjs +1 -30
- package/dist/esm/EditorEnabledContext.mjs.map +1 -1
- package/dist/esm/FocusDictionaryContext.mjs +13 -57
- package/dist/esm/FocusDictionaryContext.mjs.map +1 -1
- package/dist/esm/index.mjs +8 -10
- package/dist/esm/useCrossFrameState.mjs +6 -51
- package/dist/esm/useCrossFrameState.mjs.map +1 -1
- package/dist/esm/useCrossURLPathState.mjs +5 -8
- package/dist/esm/useCrossURLPathState.mjs.map +1 -1
- package/dist/esm/useEditedContentPersistence.mjs +32 -0
- package/dist/esm/useEditedContentPersistence.mjs.map +1 -0
- package/dist/esm/useEditorLocale.mjs +1 -5
- package/dist/esm/useEditorLocale.mjs.map +1 -1
- package/dist/types/ConfigurationContext.d.ts +3 -6
- package/dist/types/ConfigurationContext.d.ts.map +1 -1
- package/dist/types/EditedContentContext.d.ts +0 -6
- package/dist/types/EditedContentContext.d.ts.map +1 -1
- package/dist/types/EditorEnabledContext.d.ts +0 -11
- package/dist/types/EditorEnabledContext.d.ts.map +1 -1
- package/dist/types/FocusDictionaryContext.d.ts +6 -7
- package/dist/types/FocusDictionaryContext.d.ts.map +1 -1
- package/dist/types/index.d.ts +9 -11
- package/dist/types/useCrossFrameState.d.ts +2 -7
- package/dist/types/useCrossFrameState.d.ts.map +1 -1
- package/dist/types/useCrossURLPathState.d.ts +4 -3
- package/dist/types/useCrossURLPathState.d.ts.map +1 -1
- package/dist/types/useEditedContentPersistence.d.ts +8 -0
- package/dist/types/useEditedContentPersistence.d.ts.map +1 -0
- package/dist/types/useEditorLocale.d.ts +0 -1
- package/dist/types/useEditorLocale.d.ts.map +1 -1
- package/package.json +5 -5
- package/dist/cjs/CommunicatorContext.cjs +0 -20
- package/dist/cjs/CommunicatorContext.cjs.map +0 -1
- package/dist/cjs/_virtual/_rolldown/runtime.cjs +0 -28
- package/dist/cjs/useCrossFrameMessageListener.cjs +0 -31
- package/dist/cjs/useCrossFrameMessageListener.cjs.map +0 -1
- package/dist/cjs/useIframeClickInterceptor.cjs +0 -28
- package/dist/cjs/useIframeClickInterceptor.cjs.map +0 -1
- package/dist/esm/CommunicatorContext.mjs +0 -19
- package/dist/esm/CommunicatorContext.mjs.map +0 -1
- package/dist/esm/useCrossFrameMessageListener.mjs +0 -30
- package/dist/esm/useCrossFrameMessageListener.mjs.map +0 -1
- package/dist/esm/useIframeClickInterceptor.mjs +0 -26
- package/dist/esm/useIframeClickInterceptor.mjs.map +0 -1
- package/dist/types/CommunicatorContext.d.ts +0 -14
- package/dist/types/CommunicatorContext.d.ts.map +0 -1
- package/dist/types/useCrossFrameMessageListener.d.ts +0 -11
- package/dist/types/useCrossFrameMessageListener.d.ts.map +0 -1
- package/dist/types/useIframeClickInterceptor.d.ts +0 -15
- package/dist/types/useIframeClickInterceptor.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCrossFrameState.d.ts","names":[],"sources":["../../src/useCrossFrameState.tsx"],"mappings":"
|
|
1
|
+
{"version":3,"file":"useCrossFrameState.d.ts","names":[],"sources":["../../src/useCrossFrameState.tsx"],"mappings":";;;;;qBASa,qBAAsB,OAAK,QAC9B,cAAY,cACN,UACb"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { CrossFrameStateOptions } from "./useCrossFrameState.js";
|
|
2
1
|
//#region src/useCrossURLPathState.d.ts
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
/**
|
|
3
|
+
* Returns the path currently displayed by the client application.
|
|
4
|
+
*/
|
|
5
|
+
export declare const useCrossURLPathState: () => string | undefined;
|
|
5
6
|
//#endregion
|
|
6
7
|
//# sourceMappingURL=useCrossURLPathState.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCrossURLPathState.d.ts","names":[],"sources":["../../src/useCrossURLPathState.tsx"],"mappings":"
|
|
1
|
+
{"version":3,"file":"useCrossURLPathState.d.ts","names":[],"sources":["../../src/useCrossURLPathState.tsx"],"mappings":";;;;qBAQa"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
//#region src/useEditedContentPersistence.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* Persists the edited content in localStorage, and restores it on mount so
|
|
4
|
+
* unsaved edits survive a page reload.
|
|
5
|
+
*/
|
|
6
|
+
export declare const useEditedContentPersistence: () => void;
|
|
7
|
+
//#endregion
|
|
8
|
+
//# sourceMappingURL=useEditedContentPersistence.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useEditedContentPersistence.d.ts","names":[],"sources":["../../src/useEditedContentPersistence.tsx"],"mappings":";;;;;qBAWa"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Locale } from "@intlayer/types/allLocales";
|
|
2
2
|
//#region src/useEditorLocale.d.ts
|
|
3
3
|
export declare const useEditorLocale: () => Locale | undefined;
|
|
4
|
-
export declare const useSetEditorLocale: () => (locale: Locale) => void;
|
|
5
4
|
//#endregion
|
|
6
5
|
//# sourceMappingURL=useEditorLocale.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useEditorLocale.d.ts","names":[],"sources":["../../src/useEditorLocale.tsx"],"mappings":";;qBAMa,uBAAsB
|
|
1
|
+
{"version":3,"file":"useEditorLocale.d.ts","names":[],"sources":["../../src/useEditorLocale.tsx"],"mappings":";;qBAMa,uBAAsB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@intlayer/editor-react",
|
|
3
|
-
"version": "9.5.
|
|
3
|
+
"version": "9.5.12",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Provides the states, contexts, hooks and components to interact with the Intlayer editor for a React application",
|
|
6
6
|
"keywords": [
|
|
@@ -71,10 +71,10 @@
|
|
|
71
71
|
"typecheck": "tsc --noEmit --project tsconfig.types.json"
|
|
72
72
|
},
|
|
73
73
|
"dependencies": {
|
|
74
|
-
"@intlayer/config": "9.5.
|
|
75
|
-
"@intlayer/core": "9.5.
|
|
76
|
-
"@intlayer/editor": "9.5.
|
|
77
|
-
"@intlayer/types": "9.5.
|
|
74
|
+
"@intlayer/config": "9.5.12",
|
|
75
|
+
"@intlayer/core": "9.5.12",
|
|
76
|
+
"@intlayer/editor": "9.5.12",
|
|
77
|
+
"@intlayer/types": "9.5.12"
|
|
78
78
|
},
|
|
79
79
|
"devDependencies": {
|
|
80
80
|
"@types/node": "^22",
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
'use client';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
-
const require_EditorStateContext = require('./EditorStateContext.cjs');
|
|
5
|
-
|
|
6
|
-
//#region src/CommunicatorContext.tsx
|
|
7
|
-
/**
|
|
8
|
-
* Returns the communicator API backed by the shared EditorStateManager messenger.
|
|
9
|
-
*/
|
|
10
|
-
const useCommunicator = () => {
|
|
11
|
-
const manager = require_EditorStateContext.useEditorStateManager();
|
|
12
|
-
return {
|
|
13
|
-
postMessage: (payload) => manager?.messenger.send(payload.type, payload.data),
|
|
14
|
-
senderId: manager?.messenger.senderId ?? ""
|
|
15
|
-
};
|
|
16
|
-
};
|
|
17
|
-
|
|
18
|
-
//#endregion
|
|
19
|
-
exports.useCommunicator = useCommunicator;
|
|
20
|
-
//# sourceMappingURL=CommunicatorContext.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CommunicatorContext.cjs","names":["useEditorStateManager"],"sources":["../../src/CommunicatorContext.tsx"],"sourcesContent":["'use client';\n\nimport type { MessagePayload } from '@intlayer/editor';\nimport { useEditorStateManager } from './EditorStateContext';\n\nexport type UseCrossPlatformStateProps = {\n postMessage: (payload: MessagePayload) => void;\n allowedOrigins?: string[];\n senderId: string;\n};\n\n/**\n * Returns the communicator API backed by the shared EditorStateManager messenger.\n */\nexport const useCommunicator = (): UseCrossPlatformStateProps => {\n const manager = useEditorStateManager();\n\n return {\n postMessage: (payload: MessagePayload) =>\n manager?.messenger.send(payload.type, payload.data),\n senderId: manager?.messenger.senderId ?? '',\n };\n};\n\n// Re-export type for backward compatibility\nexport type { MessengerConfig } from '@intlayer/editor';\n"],"mappings":";;;;;;;;;AAcA,MAAa,wBAAoD;CAC/D,MAAM,UAAUA,iDAAsB;CAEtC,OAAO;EACL,cAAc,YACZ,SAAS,UAAU,KAAK,QAAQ,MAAM,QAAQ,IAAI;EACpD,UAAU,SAAS,UAAU,YAAY;CAC3C;AACF"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
//#region \0rolldown/runtime.js
|
|
2
|
-
var __create = Object.create;
|
|
3
|
-
var __defProp = Object.defineProperty;
|
|
4
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
-
var __copyProps = (to, from, except, desc) => {
|
|
9
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
10
|
-
for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
|
|
11
|
-
key = keys[i];
|
|
12
|
-
if (!__hasOwnProp.call(to, key) && key !== except) {
|
|
13
|
-
__defProp(to, key, {
|
|
14
|
-
get: ((k) => from[k]).bind(null, key),
|
|
15
|
-
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
16
|
-
});
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
return to;
|
|
21
|
-
};
|
|
22
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule || !__hasOwnProp.call(mod, "default") ? __defProp(target, "default", {
|
|
23
|
-
value: mod,
|
|
24
|
-
enumerable: true
|
|
25
|
-
}) : target, mod));
|
|
26
|
-
|
|
27
|
-
//#endregion
|
|
28
|
-
exports.__toESM = __toESM;
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
'use client';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
-
const require_EditorStateContext = require('./EditorStateContext.cjs');
|
|
5
|
-
let react = require("react");
|
|
6
|
-
|
|
7
|
-
//#region src/useCrossFrameMessageListener.tsx
|
|
8
|
-
/**
|
|
9
|
-
* Listens for cross-frame messages of the specified type and calls the callback.
|
|
10
|
-
* Returns a function to manually send a message of the same type.
|
|
11
|
-
*
|
|
12
|
-
* Backed by CrossFrameMessenger from EditorStateManager.
|
|
13
|
-
*/
|
|
14
|
-
const useCrossFrameMessageListener = (key, onEventTriggered, revalidator) => {
|
|
15
|
-
const manager = require_EditorStateContext.useEditorStateManager();
|
|
16
|
-
(0, react.useEffect)(() => {
|
|
17
|
-
if (!onEventTriggered) return;
|
|
18
|
-
return manager?.messenger.subscribe(key, onEventTriggered);
|
|
19
|
-
}, [
|
|
20
|
-
manager,
|
|
21
|
-
key,
|
|
22
|
-
revalidator
|
|
23
|
-
]);
|
|
24
|
-
return (data) => {
|
|
25
|
-
manager?.messenger.send(key, data);
|
|
26
|
-
};
|
|
27
|
-
};
|
|
28
|
-
|
|
29
|
-
//#endregion
|
|
30
|
-
exports.useCrossFrameMessageListener = useCrossFrameMessageListener;
|
|
31
|
-
//# sourceMappingURL=useCrossFrameMessageListener.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useCrossFrameMessageListener.cjs","names":["useEditorStateManager"],"sources":["../../src/useCrossFrameMessageListener.tsx"],"sourcesContent":["'use client';\n\nimport type { MessageKey } from '@intlayer/editor';\nimport { useEffect } from 'react';\nimport { useEditorStateManager } from './EditorStateContext';\n\n/**\n * Listens for cross-frame messages of the specified type and calls the callback.\n * Returns a function to manually send a message of the same type.\n *\n * Backed by CrossFrameMessenger from EditorStateManager.\n */\nexport const useCrossFrameMessageListener = <S,>(\n key: `${MessageKey}` | `${MessageKey}/post` | `${MessageKey}/get`,\n onEventTriggered?: (data: S) => void,\n revalidator?: any\n) => {\n const manager = useEditorStateManager();\n\n useEffect(() => {\n if (!onEventTriggered) return;\n return manager?.messenger.subscribe<S>(key, onEventTriggered);\n }, [manager, key, revalidator]);\n\n return (data?: S) => {\n manager?.messenger.send(key, data);\n };\n};\n"],"mappings":";;;;;;;;;;;;;AAYA,MAAa,gCACX,KACA,kBACA,gBACG;CACH,MAAM,UAAUA,iDAAsB;CAEtC,2BAAgB;EACd,IAAI,CAAC,kBAAkB;EACvB,OAAO,SAAS,UAAU,UAAa,KAAK,gBAAgB;CAC9D,GAAG;EAAC;EAAS;EAAK;CAAW,CAAC;CAE9B,QAAQ,SAAa;EACnB,SAAS,UAAU,KAAK,KAAK,IAAI;CACnC;AACF"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
'use client';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
-
const require_useCrossFrameMessageListener = require('./useCrossFrameMessageListener.cjs');
|
|
5
|
-
let _intlayer_editor = require("@intlayer/editor");
|
|
6
|
-
|
|
7
|
-
//#region src/useIframeClickInterceptor.tsx
|
|
8
|
-
/**
|
|
9
|
-
* Broadcasts mousedown events from within an iframe to the parent frame.
|
|
10
|
-
* Called in the client application (inside the iframe).
|
|
11
|
-
* Note: EditorStateManager.start() already sets this up in client mode.
|
|
12
|
-
* This hook exists for explicit / standalone use cases.
|
|
13
|
-
*/
|
|
14
|
-
const useIframeClickInterceptor = () => {
|
|
15
|
-
require_useCrossFrameMessageListener.useCrossFrameMessageListener(_intlayer_editor.MessageKey.INTLAYER_IFRAME_CLICKED);
|
|
16
|
-
};
|
|
17
|
-
/**
|
|
18
|
-
* Merges received iframe click events into the parent's DOM event stream.
|
|
19
|
-
* Called in the editor (parent frame).
|
|
20
|
-
*/
|
|
21
|
-
const useIframeClickMerger = () => {
|
|
22
|
-
require_useCrossFrameMessageListener.useCrossFrameMessageListener(_intlayer_editor.MessageKey.INTLAYER_IFRAME_CLICKED, _intlayer_editor.mergeIframeClick);
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
//#endregion
|
|
26
|
-
exports.useIframeClickInterceptor = useIframeClickInterceptor;
|
|
27
|
-
exports.useIframeClickMerger = useIframeClickMerger;
|
|
28
|
-
//# sourceMappingURL=useIframeClickInterceptor.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useIframeClickInterceptor.cjs","names":["MessageKey","mergeIframeClick"],"sources":["../../src/useIframeClickInterceptor.tsx"],"sourcesContent":["'use client';\n\nimport { MessageKey, mergeIframeClick } from '@intlayer/editor';\nimport { useCrossFrameMessageListener } from './useCrossFrameMessageListener';\n\n/**\n * Broadcasts mousedown events from within an iframe to the parent frame.\n * Called in the client application (inside the iframe).\n * Note: EditorStateManager.start() already sets this up in client mode.\n * This hook exists for explicit / standalone use cases.\n */\nexport const useIframeClickInterceptor = () => {\n useCrossFrameMessageListener<undefined>(MessageKey.INTLAYER_IFRAME_CLICKED);\n};\n\n/**\n * Merges received iframe click events into the parent's DOM event stream.\n * Called in the editor (parent frame).\n */\nexport const useIframeClickMerger = () => {\n useCrossFrameMessageListener<MessageEvent>(\n MessageKey.INTLAYER_IFRAME_CLICKED,\n mergeIframeClick\n );\n};\n"],"mappings":";;;;;;;;;;;;;AAWA,MAAa,kCAAkC;CAC7C,kEAAwCA,4BAAW,uBAAuB;AAC5E;;;;;AAMA,MAAa,6BAA6B;CACxC,kEACEA,4BAAW,yBACXC,iCACF;AACF"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
'use client';
|
|
2
|
-
|
|
3
|
-
import { useEditorStateManager } from "./EditorStateContext.mjs";
|
|
4
|
-
|
|
5
|
-
//#region src/CommunicatorContext.tsx
|
|
6
|
-
/**
|
|
7
|
-
* Returns the communicator API backed by the shared EditorStateManager messenger.
|
|
8
|
-
*/
|
|
9
|
-
const useCommunicator = () => {
|
|
10
|
-
const manager = useEditorStateManager();
|
|
11
|
-
return {
|
|
12
|
-
postMessage: (payload) => manager?.messenger.send(payload.type, payload.data),
|
|
13
|
-
senderId: manager?.messenger.senderId ?? ""
|
|
14
|
-
};
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
//#endregion
|
|
18
|
-
export { useCommunicator };
|
|
19
|
-
//# sourceMappingURL=CommunicatorContext.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CommunicatorContext.mjs","names":[],"sources":["../../src/CommunicatorContext.tsx"],"sourcesContent":["'use client';\n\nimport type { MessagePayload } from '@intlayer/editor';\nimport { useEditorStateManager } from './EditorStateContext';\n\nexport type UseCrossPlatformStateProps = {\n postMessage: (payload: MessagePayload) => void;\n allowedOrigins?: string[];\n senderId: string;\n};\n\n/**\n * Returns the communicator API backed by the shared EditorStateManager messenger.\n */\nexport const useCommunicator = (): UseCrossPlatformStateProps => {\n const manager = useEditorStateManager();\n\n return {\n postMessage: (payload: MessagePayload) =>\n manager?.messenger.send(payload.type, payload.data),\n senderId: manager?.messenger.senderId ?? '',\n };\n};\n\n// Re-export type for backward compatibility\nexport type { MessengerConfig } from '@intlayer/editor';\n"],"mappings":";;;;;;;;AAcA,MAAa,wBAAoD;CAC/D,MAAM,UAAU,sBAAsB;CAEtC,OAAO;EACL,cAAc,YACZ,SAAS,UAAU,KAAK,QAAQ,MAAM,QAAQ,IAAI;EACpD,UAAU,SAAS,UAAU,YAAY;CAC3C;AACF"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
'use client';
|
|
2
|
-
|
|
3
|
-
import { useEditorStateManager } from "./EditorStateContext.mjs";
|
|
4
|
-
import { useEffect } from "react";
|
|
5
|
-
|
|
6
|
-
//#region src/useCrossFrameMessageListener.tsx
|
|
7
|
-
/**
|
|
8
|
-
* Listens for cross-frame messages of the specified type and calls the callback.
|
|
9
|
-
* Returns a function to manually send a message of the same type.
|
|
10
|
-
*
|
|
11
|
-
* Backed by CrossFrameMessenger from EditorStateManager.
|
|
12
|
-
*/
|
|
13
|
-
const useCrossFrameMessageListener = (key, onEventTriggered, revalidator) => {
|
|
14
|
-
const manager = useEditorStateManager();
|
|
15
|
-
useEffect(() => {
|
|
16
|
-
if (!onEventTriggered) return;
|
|
17
|
-
return manager?.messenger.subscribe(key, onEventTriggered);
|
|
18
|
-
}, [
|
|
19
|
-
manager,
|
|
20
|
-
key,
|
|
21
|
-
revalidator
|
|
22
|
-
]);
|
|
23
|
-
return (data) => {
|
|
24
|
-
manager?.messenger.send(key, data);
|
|
25
|
-
};
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
//#endregion
|
|
29
|
-
export { useCrossFrameMessageListener };
|
|
30
|
-
//# sourceMappingURL=useCrossFrameMessageListener.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useCrossFrameMessageListener.mjs","names":[],"sources":["../../src/useCrossFrameMessageListener.tsx"],"sourcesContent":["'use client';\n\nimport type { MessageKey } from '@intlayer/editor';\nimport { useEffect } from 'react';\nimport { useEditorStateManager } from './EditorStateContext';\n\n/**\n * Listens for cross-frame messages of the specified type and calls the callback.\n * Returns a function to manually send a message of the same type.\n *\n * Backed by CrossFrameMessenger from EditorStateManager.\n */\nexport const useCrossFrameMessageListener = <S,>(\n key: `${MessageKey}` | `${MessageKey}/post` | `${MessageKey}/get`,\n onEventTriggered?: (data: S) => void,\n revalidator?: any\n) => {\n const manager = useEditorStateManager();\n\n useEffect(() => {\n if (!onEventTriggered) return;\n return manager?.messenger.subscribe<S>(key, onEventTriggered);\n }, [manager, key, revalidator]);\n\n return (data?: S) => {\n manager?.messenger.send(key, data);\n };\n};\n"],"mappings":";;;;;;;;;;;;AAYA,MAAa,gCACX,KACA,kBACA,gBACG;CACH,MAAM,UAAU,sBAAsB;CAEtC,gBAAgB;EACd,IAAI,CAAC,kBAAkB;EACvB,OAAO,SAAS,UAAU,UAAa,KAAK,gBAAgB;CAC9D,GAAG;EAAC;EAAS;EAAK;CAAW,CAAC;CAE9B,QAAQ,SAAa;EACnB,SAAS,UAAU,KAAK,KAAK,IAAI;CACnC;AACF"}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
'use client';
|
|
2
|
-
|
|
3
|
-
import { useCrossFrameMessageListener } from "./useCrossFrameMessageListener.mjs";
|
|
4
|
-
import { MessageKey, mergeIframeClick } from "@intlayer/editor";
|
|
5
|
-
|
|
6
|
-
//#region src/useIframeClickInterceptor.tsx
|
|
7
|
-
/**
|
|
8
|
-
* Broadcasts mousedown events from within an iframe to the parent frame.
|
|
9
|
-
* Called in the client application (inside the iframe).
|
|
10
|
-
* Note: EditorStateManager.start() already sets this up in client mode.
|
|
11
|
-
* This hook exists for explicit / standalone use cases.
|
|
12
|
-
*/
|
|
13
|
-
const useIframeClickInterceptor = () => {
|
|
14
|
-
useCrossFrameMessageListener(MessageKey.INTLAYER_IFRAME_CLICKED);
|
|
15
|
-
};
|
|
16
|
-
/**
|
|
17
|
-
* Merges received iframe click events into the parent's DOM event stream.
|
|
18
|
-
* Called in the editor (parent frame).
|
|
19
|
-
*/
|
|
20
|
-
const useIframeClickMerger = () => {
|
|
21
|
-
useCrossFrameMessageListener(MessageKey.INTLAYER_IFRAME_CLICKED, mergeIframeClick);
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
//#endregion
|
|
25
|
-
export { useIframeClickInterceptor, useIframeClickMerger };
|
|
26
|
-
//# sourceMappingURL=useIframeClickInterceptor.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useIframeClickInterceptor.mjs","names":[],"sources":["../../src/useIframeClickInterceptor.tsx"],"sourcesContent":["'use client';\n\nimport { MessageKey, mergeIframeClick } from '@intlayer/editor';\nimport { useCrossFrameMessageListener } from './useCrossFrameMessageListener';\n\n/**\n * Broadcasts mousedown events from within an iframe to the parent frame.\n * Called in the client application (inside the iframe).\n * Note: EditorStateManager.start() already sets this up in client mode.\n * This hook exists for explicit / standalone use cases.\n */\nexport const useIframeClickInterceptor = () => {\n useCrossFrameMessageListener<undefined>(MessageKey.INTLAYER_IFRAME_CLICKED);\n};\n\n/**\n * Merges received iframe click events into the parent's DOM event stream.\n * Called in the editor (parent frame).\n */\nexport const useIframeClickMerger = () => {\n useCrossFrameMessageListener<MessageEvent>(\n MessageKey.INTLAYER_IFRAME_CLICKED,\n mergeIframeClick\n );\n};\n"],"mappings":";;;;;;;;;;;;AAWA,MAAa,kCAAkC;CAC7C,6BAAwC,WAAW,uBAAuB;AAC5E;;;;;AAMA,MAAa,6BAA6B;CACxC,6BACE,WAAW,yBACX,gBACF;AACF"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { MessagePayload, MessengerConfig } from "@intlayer/editor";
|
|
2
|
-
//#region src/CommunicatorContext.d.ts
|
|
3
|
-
export type UseCrossPlatformStateProps = {
|
|
4
|
-
postMessage: (payload: MessagePayload) => void;
|
|
5
|
-
allowedOrigins?: string[];
|
|
6
|
-
senderId: string;
|
|
7
|
-
};
|
|
8
|
-
/**
|
|
9
|
-
* Returns the communicator API backed by the shared EditorStateManager messenger.
|
|
10
|
-
*/
|
|
11
|
-
export declare const useCommunicator: () => UseCrossPlatformStateProps;
|
|
12
|
-
//#endregion
|
|
13
|
-
export type { MessengerConfig };
|
|
14
|
-
//# sourceMappingURL=CommunicatorContext.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CommunicatorContext.d.ts","names":[],"sources":["../../src/CommunicatorContext.tsx"],"mappings":";;YAKY;EACV,cAAc,SAAS;EACvB;EACA;;;;;qBAMW,uBAAsB"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { MessageKey } from "@intlayer/editor";
|
|
2
|
-
//#region src/useCrossFrameMessageListener.d.ts
|
|
3
|
-
/**
|
|
4
|
-
* Listens for cross-frame messages of the specified type and calls the callback.
|
|
5
|
-
* Returns a function to manually send a message of the same type.
|
|
6
|
-
*
|
|
7
|
-
* Backed by CrossFrameMessenger from EditorStateManager.
|
|
8
|
-
*/
|
|
9
|
-
export declare const useCrossFrameMessageListener: <S>(key: `${MessageKey}` | `${MessageKey}/post` | `${MessageKey}/get`, onEventTriggered?: (data: S) => void, revalidator?: any) => (data?: S) => void;
|
|
10
|
-
//#endregion
|
|
11
|
-
//# sourceMappingURL=useCrossFrameMessageListener.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useCrossFrameMessageListener.d.ts","names":[],"sources":["../../src/useCrossFrameMessageListener.tsx"],"mappings":";;;;;;;;qBAYa,+BAAgC,GAAC,QACpC,kBAAkB,uBAAuB,kBAAgB,oBAC7C,MAAM,YAAU,uBACnB,OASF"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
//#region src/useIframeClickInterceptor.d.ts
|
|
2
|
-
/**
|
|
3
|
-
* Broadcasts mousedown events from within an iframe to the parent frame.
|
|
4
|
-
* Called in the client application (inside the iframe).
|
|
5
|
-
* Note: EditorStateManager.start() already sets this up in client mode.
|
|
6
|
-
* This hook exists for explicit / standalone use cases.
|
|
7
|
-
*/
|
|
8
|
-
export declare const useIframeClickInterceptor: () => void;
|
|
9
|
-
/**
|
|
10
|
-
* Merges received iframe click events into the parent's DOM event stream.
|
|
11
|
-
* Called in the editor (parent frame).
|
|
12
|
-
*/
|
|
13
|
-
export declare const useIframeClickMerger: () => void;
|
|
14
|
-
//#endregion
|
|
15
|
-
//# sourceMappingURL=useIframeClickInterceptor.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useIframeClickInterceptor.d.ts","names":[],"sources":["../../src/useIframeClickInterceptor.tsx"],"mappings":";;;;;;;qBAWa;;;;;qBAQA"}
|