@intlayer/editor-react 7.0.8 → 7.0.9-canary.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.
Files changed (145) hide show
  1. package/README.md +6 -5
  2. package/dist/cjs/CommunicatorContext.cjs +2 -2
  3. package/dist/cjs/CommunicatorContext.cjs.map +1 -1
  4. package/dist/cjs/config/dist/esm/_virtual/rolldown_runtime.cjs +10 -0
  5. package/dist/cjs/config/dist/esm/_virtual/rolldown_runtime.cjs.map +1 -0
  6. package/dist/cjs/config/dist/esm/built.cjs +8 -0
  7. package/dist/cjs/config/dist/esm/built.cjs.map +1 -0
  8. package/dist/cjs/config/dist/esm/configFile/buildConfigurationFields.cjs +119 -0
  9. package/dist/cjs/config/dist/esm/configFile/buildConfigurationFields.cjs.map +1 -0
  10. package/dist/cjs/config/dist/esm/configFile/getConfiguration.cjs +69 -0
  11. package/dist/cjs/config/dist/esm/configFile/getConfiguration.cjs.map +1 -0
  12. package/dist/cjs/config/dist/esm/configFile/loadConfigurationFile.cjs +26 -0
  13. package/dist/cjs/config/dist/esm/configFile/loadConfigurationFile.cjs.map +1 -0
  14. package/dist/cjs/config/dist/esm/configFile/searchConfigurationFile.cjs +51 -0
  15. package/dist/cjs/config/dist/esm/configFile/searchConfigurationFile.cjs.map +1 -0
  16. package/dist/cjs/config/dist/esm/defaultValues/build.cjs +15 -0
  17. package/dist/cjs/config/dist/esm/defaultValues/build.cjs.map +1 -0
  18. package/dist/cjs/config/dist/esm/defaultValues/content.cjs +54 -0
  19. package/dist/cjs/config/dist/esm/defaultValues/content.cjs.map +1 -0
  20. package/dist/cjs/config/dist/esm/defaultValues/dictionary.cjs +7 -0
  21. package/dist/cjs/config/dist/esm/defaultValues/dictionary.cjs.map +1 -0
  22. package/dist/cjs/config/dist/esm/defaultValues/editor.cjs +23 -0
  23. package/dist/cjs/config/dist/esm/defaultValues/editor.cjs.map +1 -0
  24. package/dist/cjs/config/dist/esm/defaultValues/internationalization.cjs +14 -0
  25. package/dist/cjs/config/dist/esm/defaultValues/internationalization.cjs.map +1 -0
  26. package/dist/cjs/config/dist/esm/defaultValues/log.cjs +10 -0
  27. package/dist/cjs/config/dist/esm/defaultValues/log.cjs.map +1 -0
  28. package/dist/cjs/config/dist/esm/defaultValues/routing.cjs +11 -0
  29. package/dist/cjs/config/dist/esm/defaultValues/routing.cjs.map +1 -0
  30. package/dist/cjs/config/dist/esm/loadEnvFile.cjs +26 -0
  31. package/dist/cjs/config/dist/esm/loadEnvFile.cjs.map +1 -0
  32. package/dist/cjs/config/dist/esm/loadExternalFile/bundleFile.cjs +23 -0
  33. package/dist/cjs/config/dist/esm/loadExternalFile/bundleFile.cjs.map +1 -0
  34. package/dist/cjs/config/dist/esm/loadExternalFile/loadExternalFile.cjs +47 -0
  35. package/dist/cjs/config/dist/esm/loadExternalFile/loadExternalFile.cjs.map +1 -0
  36. package/dist/cjs/config/dist/esm/loadExternalFile/parseFileContent.cjs +65 -0
  37. package/dist/cjs/config/dist/esm/loadExternalFile/parseFileContent.cjs.map +1 -0
  38. package/dist/cjs/config/dist/esm/loadExternalFile/transpileTSToMJS.cjs +45 -0
  39. package/dist/cjs/config/dist/esm/loadExternalFile/transpileTSToMJS.cjs.map +1 -0
  40. package/dist/cjs/config/dist/esm/logger.cjs +47 -0
  41. package/dist/cjs/config/dist/esm/logger.cjs.map +1 -0
  42. package/dist/cjs/config/dist/esm/types/dist/esm/_virtual/rolldown_runtime.cjs +15 -0
  43. package/dist/cjs/config/dist/esm/types/dist/esm/_virtual/rolldown_runtime.cjs.map +1 -0
  44. package/dist/cjs/config/dist/esm/types/dist/esm/locales.cjs +1128 -0
  45. package/dist/cjs/config/dist/esm/types/dist/esm/locales.cjs.map +1 -0
  46. package/dist/cjs/config/dist/esm/utils/ESMxCJSHelpers.cjs +27 -0
  47. package/dist/cjs/config/dist/esm/utils/ESMxCJSHelpers.cjs.map +1 -0
  48. package/dist/cjs/config/dist/esm/utils/cache.cjs +261 -0
  49. package/dist/cjs/config/dist/esm/utils/cache.cjs.map +1 -0
  50. package/dist/cjs/config/dist/esm/utils/getPackageJsonPath.cjs +34 -0
  51. package/dist/cjs/config/dist/esm/utils/getPackageJsonPath.cjs.map +1 -0
  52. package/dist/cjs/config/dist/esm/utils/normalizePath.cjs +17 -0
  53. package/dist/cjs/config/dist/esm/utils/normalizePath.cjs.map +1 -0
  54. package/dist/cjs/core/dist/esm/dictionaryManipulator/editDictionaryByKeyPath.cjs +60 -0
  55. package/dist/cjs/core/dist/esm/dictionaryManipulator/editDictionaryByKeyPath.cjs.map +1 -0
  56. package/dist/cjs/core/dist/esm/dictionaryManipulator/getContentNodeByKeyPath.cjs +17 -0
  57. package/dist/cjs/core/dist/esm/dictionaryManipulator/getContentNodeByKeyPath.cjs.map +1 -0
  58. package/dist/cjs/core/dist/esm/dictionaryManipulator/renameContentNodeByKeyPath.cjs +38 -0
  59. package/dist/cjs/core/dist/esm/dictionaryManipulator/renameContentNodeByKeyPath.cjs.map +1 -0
  60. package/dist/cjs/core/dist/esm/types/dist/esm/nodeType.cjs +25 -0
  61. package/dist/cjs/core/dist/esm/types/dist/esm/nodeType.cjs.map +1 -0
  62. package/dist/cjs/editor/dist/esm/compareUrls.cjs +39 -0
  63. package/dist/cjs/editor/dist/esm/compareUrls.cjs.map +1 -0
  64. package/dist/cjs/editor/dist/esm/mergeIframeClick.cjs +22 -0
  65. package/dist/cjs/editor/dist/esm/mergeIframeClick.cjs.map +1 -0
  66. package/dist/cjs/editor/dist/esm/messagesKeys.cjs +19 -0
  67. package/dist/cjs/editor/dist/esm/messagesKeys.cjs.map +1 -0
  68. package/dist/cjs/types/dist/esm/nodeType.cjs +25 -0
  69. package/dist/cjs/types/dist/esm/nodeType.cjs.map +1 -0
  70. package/dist/esm/CommunicatorContext.mjs +2 -2
  71. package/dist/esm/CommunicatorContext.mjs.map +1 -1
  72. package/dist/esm/_virtual/rolldown_runtime.mjs +8 -0
  73. package/dist/esm/config/dist/esm/_virtual/rolldown_runtime.mjs +11 -0
  74. package/dist/esm/config/dist/esm/_virtual/rolldown_runtime.mjs.map +1 -0
  75. package/dist/esm/config/dist/esm/built.mjs +8 -0
  76. package/dist/esm/config/dist/esm/built.mjs.map +1 -0
  77. package/dist/esm/config/dist/esm/configFile/buildConfigurationFields.mjs +118 -0
  78. package/dist/esm/config/dist/esm/configFile/buildConfigurationFields.mjs.map +1 -0
  79. package/dist/esm/config/dist/esm/configFile/getConfiguration.mjs +67 -0
  80. package/dist/esm/config/dist/esm/configFile/getConfiguration.mjs.map +1 -0
  81. package/dist/esm/config/dist/esm/configFile/loadConfigurationFile.mjs +26 -0
  82. package/dist/esm/config/dist/esm/configFile/loadConfigurationFile.mjs.map +1 -0
  83. package/dist/esm/config/dist/esm/configFile/searchConfigurationFile.mjs +50 -0
  84. package/dist/esm/config/dist/esm/configFile/searchConfigurationFile.mjs.map +1 -0
  85. package/dist/esm/config/dist/esm/defaultValues/build.mjs +10 -0
  86. package/dist/esm/config/dist/esm/defaultValues/build.mjs.map +1 -0
  87. package/dist/esm/config/dist/esm/defaultValues/content.mjs +40 -0
  88. package/dist/esm/config/dist/esm/defaultValues/content.mjs.map +1 -0
  89. package/dist/esm/config/dist/esm/defaultValues/dictionary.mjs +6 -0
  90. package/dist/esm/config/dist/esm/defaultValues/dictionary.mjs.map +1 -0
  91. package/dist/esm/config/dist/esm/defaultValues/editor.mjs +14 -0
  92. package/dist/esm/config/dist/esm/defaultValues/editor.mjs.map +1 -0
  93. package/dist/esm/config/dist/esm/defaultValues/internationalization.mjs +11 -0
  94. package/dist/esm/config/dist/esm/defaultValues/internationalization.mjs.map +1 -0
  95. package/dist/esm/config/dist/esm/defaultValues/log.mjs +9 -0
  96. package/dist/esm/config/dist/esm/defaultValues/log.mjs.map +1 -0
  97. package/dist/esm/config/dist/esm/defaultValues/routing.mjs +8 -0
  98. package/dist/esm/config/dist/esm/defaultValues/routing.mjs.map +1 -0
  99. package/dist/esm/config/dist/esm/loadEnvFile.mjs +24 -0
  100. package/dist/esm/config/dist/esm/loadEnvFile.mjs.map +1 -0
  101. package/dist/esm/config/dist/esm/loadExternalFile/bundleFile.mjs +23 -0
  102. package/dist/esm/config/dist/esm/loadExternalFile/bundleFile.mjs.map +1 -0
  103. package/dist/esm/config/dist/esm/loadExternalFile/loadExternalFile.mjs +47 -0
  104. package/dist/esm/config/dist/esm/loadExternalFile/loadExternalFile.mjs.map +1 -0
  105. package/dist/esm/config/dist/esm/loadExternalFile/parseFileContent.mjs +63 -0
  106. package/dist/esm/config/dist/esm/loadExternalFile/parseFileContent.mjs.map +1 -0
  107. package/dist/esm/config/dist/esm/loadExternalFile/transpileTSToMJS.mjs +44 -0
  108. package/dist/esm/config/dist/esm/loadExternalFile/transpileTSToMJS.mjs.map +1 -0
  109. package/dist/esm/config/dist/esm/logger.mjs +45 -0
  110. package/dist/esm/config/dist/esm/logger.mjs.map +1 -0
  111. package/dist/esm/config/dist/esm/types/dist/esm/_virtual/rolldown_runtime.mjs +14 -0
  112. package/dist/esm/config/dist/esm/types/dist/esm/_virtual/rolldown_runtime.mjs.map +1 -0
  113. package/dist/esm/config/dist/esm/types/dist/esm/locales.mjs +1128 -0
  114. package/dist/esm/config/dist/esm/types/dist/esm/locales.mjs.map +1 -0
  115. package/dist/esm/config/dist/esm/utils/ESMxCJSHelpers.mjs +25 -0
  116. package/dist/esm/config/dist/esm/utils/ESMxCJSHelpers.mjs.map +1 -0
  117. package/dist/esm/config/dist/esm/utils/cache.mjs +263 -0
  118. package/dist/esm/config/dist/esm/utils/cache.mjs.map +1 -0
  119. package/dist/esm/config/dist/esm/utils/getPackageJsonPath.mjs +33 -0
  120. package/dist/esm/config/dist/esm/utils/getPackageJsonPath.mjs.map +1 -0
  121. package/dist/esm/config/dist/esm/utils/normalizePath.mjs +16 -0
  122. package/dist/esm/config/dist/esm/utils/normalizePath.mjs.map +1 -0
  123. package/dist/esm/core/dist/esm/dictionaryManipulator/editDictionaryByKeyPath.mjs +60 -0
  124. package/dist/esm/core/dist/esm/dictionaryManipulator/editDictionaryByKeyPath.mjs.map +1 -0
  125. package/dist/esm/core/dist/esm/dictionaryManipulator/getContentNodeByKeyPath.mjs +17 -0
  126. package/dist/esm/core/dist/esm/dictionaryManipulator/getContentNodeByKeyPath.mjs.map +1 -0
  127. package/dist/esm/core/dist/esm/dictionaryManipulator/renameContentNodeByKeyPath.mjs +38 -0
  128. package/dist/esm/core/dist/esm/dictionaryManipulator/renameContentNodeByKeyPath.mjs.map +1 -0
  129. package/dist/esm/core/dist/esm/types/dist/esm/nodeType.mjs +24 -0
  130. package/dist/esm/core/dist/esm/types/dist/esm/nodeType.mjs.map +1 -0
  131. package/dist/esm/editor/dist/esm/compareUrls.mjs +38 -0
  132. package/dist/esm/editor/dist/esm/compareUrls.mjs.map +1 -0
  133. package/dist/esm/editor/dist/esm/mergeIframeClick.mjs +21 -0
  134. package/dist/esm/editor/dist/esm/mergeIframeClick.mjs.map +1 -0
  135. package/dist/esm/editor/dist/esm/messagesKeys.mjs +18 -0
  136. package/dist/esm/editor/dist/esm/messagesKeys.mjs.map +1 -0
  137. package/dist/esm/types/dist/esm/nodeType.mjs +24 -0
  138. package/dist/esm/types/dist/esm/nodeType.mjs.map +1 -0
  139. package/dist/types/CommunicatorContext.d.ts.map +1 -1
  140. package/dist/types/ConfigurationContext.d.ts +2 -2
  141. package/dist/types/EditorEnabledContext.d.ts +2 -2
  142. package/dist/types/useCrossURLPathState.d.ts +3 -3
  143. package/dist/types/useEditorLocale.d.ts +2 -2
  144. package/dist/types/useFocusUnmergedDictionary.d.ts +2 -2
  145. package/package.json +19 -17
@@ -0,0 +1,38 @@
1
+ import { NodeType } from "../types/dist/esm/nodeType.mjs";
2
+
3
+ //#region ../core/dist/esm/dictionaryManipulator/renameContentNodeByKeyPath.mjs
4
+ const renameContentNodeByKeyPath = (dictionaryContent, newKey, keyPath) => {
5
+ let currentValue = dictionaryContent;
6
+ let parentValue = null;
7
+ let lastKey = null;
8
+ for (const keyObj of keyPath) {
9
+ parentValue = currentValue;
10
+ if (keyObj.type === NodeType.Object || keyObj.type === NodeType.Array) {
11
+ lastKey = keyObj.key;
12
+ currentValue = currentValue[keyObj.key];
13
+ }
14
+ if (keyObj.type === NodeType.Translation || keyObj.type === NodeType.Enumeration || keyObj.type === NodeType.Condition) {
15
+ lastKey = keyObj.type;
16
+ currentValue = currentValue[keyObj.type][keyObj.key];
17
+ }
18
+ if (keyObj.type === NodeType.Markdown || keyObj.type === NodeType.ReactNode || keyObj.type === NodeType.Insertion || keyObj.type === NodeType.File) {
19
+ lastKey = keyObj.type;
20
+ currentValue = currentValue[keyObj.type];
21
+ }
22
+ }
23
+ if (parentValue && lastKey !== null) if (Array.isArray(parentValue)) parentValue[lastKey] = currentValue;
24
+ else {
25
+ const newParentValue = {};
26
+ for (const key of Object.keys(parentValue)) if (key === lastKey && typeof newKey !== "undefined") newParentValue[newKey] = currentValue;
27
+ else newParentValue[key] = parentValue[key];
28
+ Object.keys(parentValue).forEach((key) => {
29
+ delete parentValue[key];
30
+ });
31
+ Object.assign(parentValue, newParentValue);
32
+ }
33
+ return dictionaryContent;
34
+ };
35
+
36
+ //#endregion
37
+ export { renameContentNodeByKeyPath };
38
+ //# sourceMappingURL=renameContentNodeByKeyPath.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"renameContentNodeByKeyPath.mjs","names":[],"sources":["../../../../../../../core/dist/esm/dictionaryManipulator/renameContentNodeByKeyPath.mjs"],"sourcesContent":["import { NodeType } from \"../types/dist/esm/nodeType.mjs\";\n\n//#region src/dictionaryManipulator/renameContentNodeByKeyPath.ts\nconst renameContentNodeByKeyPath = (dictionaryContent, newKey, keyPath) => {\n\tlet currentValue = dictionaryContent;\n\tlet parentValue = null;\n\tlet lastKey = null;\n\tfor (const keyObj of keyPath) {\n\t\tparentValue = currentValue;\n\t\tif (keyObj.type === NodeType.Object || keyObj.type === NodeType.Array) {\n\t\t\tlastKey = keyObj.key;\n\t\t\tcurrentValue = currentValue[keyObj.key];\n\t\t}\n\t\tif (keyObj.type === NodeType.Translation || keyObj.type === NodeType.Enumeration || keyObj.type === NodeType.Condition) {\n\t\t\tlastKey = keyObj.type;\n\t\t\tcurrentValue = currentValue[keyObj.type][keyObj.key];\n\t\t}\n\t\tif (keyObj.type === NodeType.Markdown || keyObj.type === NodeType.ReactNode || keyObj.type === NodeType.Insertion || keyObj.type === NodeType.File) {\n\t\t\tlastKey = keyObj.type;\n\t\t\tcurrentValue = currentValue[keyObj.type];\n\t\t}\n\t}\n\tif (parentValue && lastKey !== null) if (Array.isArray(parentValue)) parentValue[lastKey] = currentValue;\n\telse {\n\t\tconst newParentValue = {};\n\t\tfor (const key of Object.keys(parentValue)) if (key === lastKey && typeof newKey !== \"undefined\") newParentValue[newKey] = currentValue;\n\t\telse newParentValue[key] = parentValue[key];\n\t\tObject.keys(parentValue).forEach((key) => {\n\t\t\tdelete parentValue[key];\n\t\t});\n\t\tObject.assign(parentValue, newParentValue);\n\t}\n\treturn dictionaryContent;\n};\n\n//#endregion\nexport { renameContentNodeByKeyPath };\n//# sourceMappingURL=renameContentNodeByKeyPath.mjs.map"],"mappings":";;;AAGA,MAAM,8BAA8B,mBAAmB,QAAQ,YAAY;CAC1E,IAAI,eAAe;CACnB,IAAI,cAAc;CAClB,IAAI,UAAU;AACd,MAAK,MAAM,UAAU,SAAS;AAC7B,gBAAc;AACd,MAAI,OAAO,SAAS,SAAS,UAAU,OAAO,SAAS,SAAS,OAAO;AACtE,aAAU,OAAO;AACjB,kBAAe,aAAa,OAAO;;AAEpC,MAAI,OAAO,SAAS,SAAS,eAAe,OAAO,SAAS,SAAS,eAAe,OAAO,SAAS,SAAS,WAAW;AACvH,aAAU,OAAO;AACjB,kBAAe,aAAa,OAAO,MAAM,OAAO;;AAEjD,MAAI,OAAO,SAAS,SAAS,YAAY,OAAO,SAAS,SAAS,aAAa,OAAO,SAAS,SAAS,aAAa,OAAO,SAAS,SAAS,MAAM;AACnJ,aAAU,OAAO;AACjB,kBAAe,aAAa,OAAO;;;AAGrC,KAAI,eAAe,YAAY,KAAM,KAAI,MAAM,QAAQ,YAAY,CAAE,aAAY,WAAW;MACvF;EACJ,MAAM,iBAAiB,EAAE;AACzB,OAAK,MAAM,OAAO,OAAO,KAAK,YAAY,CAAE,KAAI,QAAQ,WAAW,OAAO,WAAW,YAAa,gBAAe,UAAU;MACtH,gBAAe,OAAO,YAAY;AACvC,SAAO,KAAK,YAAY,CAAC,SAAS,QAAQ;AACzC,UAAO,YAAY;IAClB;AACF,SAAO,OAAO,aAAa,eAAe;;AAE3C,QAAO"}
@@ -0,0 +1,24 @@
1
+ //#region ../core/dist/esm/types/dist/esm/nodeType.mjs
2
+ let NodeType = /* @__PURE__ */ function(NodeType$1) {
3
+ NodeType$1["Translation"] = "translation";
4
+ NodeType$1["Enumeration"] = "enumeration";
5
+ NodeType$1["Condition"] = "condition";
6
+ NodeType$1["Insertion"] = "insertion";
7
+ NodeType$1["File"] = "file";
8
+ NodeType$1["Object"] = "object";
9
+ NodeType$1["Array"] = "array";
10
+ NodeType$1["Nested"] = "nested";
11
+ NodeType$1["ReactNode"] = "reactNode";
12
+ NodeType$1["Markdown"] = "markdown";
13
+ NodeType$1["Text"] = "text";
14
+ NodeType$1["Number"] = "number";
15
+ NodeType$1["Boolean"] = "boolean";
16
+ NodeType$1["Gender"] = "gender";
17
+ NodeType$1["Null"] = "null";
18
+ NodeType$1["Unknown"] = "unknown";
19
+ return NodeType$1;
20
+ }({});
21
+
22
+ //#endregion
23
+ export { NodeType };
24
+ //# sourceMappingURL=nodeType.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nodeType.mjs","names":[],"sources":["../../../../../../../../../core/dist/esm/types/dist/esm/nodeType.mjs"],"sourcesContent":["//#region ../types/dist/esm/nodeType.mjs\nlet NodeType = /* @__PURE__ */ function(NodeType$1) {\n\tNodeType$1[\"Translation\"] = \"translation\";\n\tNodeType$1[\"Enumeration\"] = \"enumeration\";\n\tNodeType$1[\"Condition\"] = \"condition\";\n\tNodeType$1[\"Insertion\"] = \"insertion\";\n\tNodeType$1[\"File\"] = \"file\";\n\tNodeType$1[\"Object\"] = \"object\";\n\tNodeType$1[\"Array\"] = \"array\";\n\tNodeType$1[\"Nested\"] = \"nested\";\n\tNodeType$1[\"ReactNode\"] = \"reactNode\";\n\tNodeType$1[\"Markdown\"] = \"markdown\";\n\tNodeType$1[\"Text\"] = \"text\";\n\tNodeType$1[\"Number\"] = \"number\";\n\tNodeType$1[\"Boolean\"] = \"boolean\";\n\tNodeType$1[\"Gender\"] = \"gender\";\n\tNodeType$1[\"Null\"] = \"null\";\n\tNodeType$1[\"Unknown\"] = \"unknown\";\n\treturn NodeType$1;\n}({});\nconst formatNodeType = (nodeType, content, additionalAttributes) => ({\n\t...additionalAttributes,\n\tnodeType,\n\t[nodeType]: content\n});\n\n//#endregion\nexport { NodeType, formatNodeType };\n//# sourceMappingURL=nodeType.mjs.map"],"mappings":";AACA,IAAI,WAA2B,yBAAS,YAAY;AACnD,YAAW,iBAAiB;AAC5B,YAAW,iBAAiB;AAC5B,YAAW,eAAe;AAC1B,YAAW,eAAe;AAC1B,YAAW,UAAU;AACrB,YAAW,YAAY;AACvB,YAAW,WAAW;AACtB,YAAW,YAAY;AACvB,YAAW,eAAe;AAC1B,YAAW,cAAc;AACzB,YAAW,UAAU;AACrB,YAAW,YAAY;AACvB,YAAW,aAAa;AACxB,YAAW,YAAY;AACvB,YAAW,UAAU;AACrB,YAAW,aAAa;AACxB,QAAO;EACN,EAAE,CAAC"}
@@ -0,0 +1,38 @@
1
+ //#region ../editor/dist/esm/compareUrls.mjs
2
+ /**
3
+ * Compare two URLs for equality.
4
+ * This function is used to determine if a message originates from the same origin.
5
+ *
6
+ * ```js
7
+ * // Example usage
8
+ * console.log(compareUrls("http://localhost:5173/", "http://localhost:5173")); // true
9
+ * console.log(compareUrls("http://localhost:5173", "http://localhost:5173?myParam=true")); // true
10
+ * console.log(compareUrls("http://localhost:5173/subpath", "http://localhost:5173")); // true
11
+ * console.log(compareUrls("http://localhost:5172", "http://localhost:5173")); // false
12
+ * ```
13
+ *
14
+ * @param url1 - The first URL to compare.
15
+ * @param url2 - The second URL to compare.
16
+ * @returns Whether the two URLs are equal.
17
+ */
18
+ const compareUrls = (url1, url2) => {
19
+ try {
20
+ const parsedUrl1 = new URL(url1);
21
+ const parsedUrl2 = new URL(url2);
22
+ if (parsedUrl1.protocol !== parsedUrl2.protocol || parsedUrl1.hostname !== parsedUrl2.hostname || parsedUrl1.port !== parsedUrl2.port) return false;
23
+ const path1 = parsedUrl1.pathname.replace(/\/$/, "");
24
+ const path2 = parsedUrl2.pathname.replace(/\/$/, "");
25
+ if (path1 !== "" && path2 !== "" && path1 !== path2) return false;
26
+ return true;
27
+ } catch (error) {
28
+ console.error("Invalid URL(s)", error, {
29
+ url1,
30
+ url2
31
+ });
32
+ return false;
33
+ }
34
+ };
35
+
36
+ //#endregion
37
+ export { compareUrls };
38
+ //# sourceMappingURL=compareUrls.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compareUrls.mjs","names":[],"sources":["../../../../../../editor/dist/esm/compareUrls.mjs"],"sourcesContent":["//#region src/compareUrls.ts\n/**\n* Compare two URLs for equality.\n* This function is used to determine if a message originates from the same origin.\n*\n* ```js\n* // Example usage\n* console.log(compareUrls(\"http://localhost:5173/\", \"http://localhost:5173\")); // true\n* console.log(compareUrls(\"http://localhost:5173\", \"http://localhost:5173?myParam=true\")); // true\n* console.log(compareUrls(\"http://localhost:5173/subpath\", \"http://localhost:5173\")); // true\n* console.log(compareUrls(\"http://localhost:5172\", \"http://localhost:5173\")); // false\n* ```\n*\n* @param url1 - The first URL to compare.\n* @param url2 - The second URL to compare.\n* @returns Whether the two URLs are equal.\n*/\nconst compareUrls = (url1, url2) => {\n\ttry {\n\t\tconst parsedUrl1 = new URL(url1);\n\t\tconst parsedUrl2 = new URL(url2);\n\t\tif (parsedUrl1.protocol !== parsedUrl2.protocol || parsedUrl1.hostname !== parsedUrl2.hostname || parsedUrl1.port !== parsedUrl2.port) return false;\n\t\tconst path1 = parsedUrl1.pathname.replace(/\\/$/, \"\");\n\t\tconst path2 = parsedUrl2.pathname.replace(/\\/$/, \"\");\n\t\tif (path1 !== \"\" && path2 !== \"\" && path1 !== path2) return false;\n\t\treturn true;\n\t} catch (error) {\n\t\tconsole.error(\"Invalid URL(s)\", error, {\n\t\t\turl1,\n\t\t\turl2\n\t\t});\n\t\treturn false;\n\t}\n};\n\n//#endregion\nexport { compareUrls };\n//# sourceMappingURL=compareUrls.mjs.map"],"mappings":";;;;;;;;;;;;;;;;;AAiBA,MAAM,eAAe,MAAM,SAAS;AACnC,KAAI;EACH,MAAM,aAAa,IAAI,IAAI,KAAK;EAChC,MAAM,aAAa,IAAI,IAAI,KAAK;AAChC,MAAI,WAAW,aAAa,WAAW,YAAY,WAAW,aAAa,WAAW,YAAY,WAAW,SAAS,WAAW,KAAM,QAAO;EAC9I,MAAM,QAAQ,WAAW,SAAS,QAAQ,OAAO,GAAG;EACpD,MAAM,QAAQ,WAAW,SAAS,QAAQ,OAAO,GAAG;AACpD,MAAI,UAAU,MAAM,UAAU,MAAM,UAAU,MAAO,QAAO;AAC5D,SAAO;UACC,OAAO;AACf,UAAQ,MAAM,kBAAkB,OAAO;GACtC;GACA;GACA,CAAC;AACF,SAAO"}
@@ -0,0 +1,21 @@
1
+ //#region ../editor/dist/esm/mergeIframeClick.mjs
2
+ const mergeIframeClick = (event) => {
3
+ const simulatedMouseDownEvent = new MouseEvent("mousedown", {
4
+ bubbles: true,
5
+ cancelable: true,
6
+ view: window
7
+ });
8
+ const simulatedClickEvent = new MouseEvent("click", {
9
+ bubbles: true,
10
+ cancelable: true,
11
+ view: window
12
+ });
13
+ Object.assign(simulatedClickEvent, { iframeData: event });
14
+ Object.assign(simulatedMouseDownEvent, { iframeData: event });
15
+ window.dispatchEvent(simulatedClickEvent);
16
+ window.dispatchEvent(simulatedMouseDownEvent);
17
+ };
18
+
19
+ //#endregion
20
+ export { mergeIframeClick };
21
+ //# sourceMappingURL=mergeIframeClick.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mergeIframeClick.mjs","names":[],"sources":["../../../../../../editor/dist/esm/mergeIframeClick.mjs"],"sourcesContent":["//#region src/mergeIframeClick.ts\nconst mergeIframeClick = (event) => {\n\tconst simulatedMouseDownEvent = new MouseEvent(\"mousedown\", {\n\t\tbubbles: true,\n\t\tcancelable: true,\n\t\tview: window\n\t});\n\tconst simulatedClickEvent = new MouseEvent(\"click\", {\n\t\tbubbles: true,\n\t\tcancelable: true,\n\t\tview: window\n\t});\n\tObject.assign(simulatedClickEvent, { iframeData: event });\n\tObject.assign(simulatedMouseDownEvent, { iframeData: event });\n\twindow.dispatchEvent(simulatedClickEvent);\n\twindow.dispatchEvent(simulatedMouseDownEvent);\n};\n\n//#endregion\nexport { mergeIframeClick };\n//# sourceMappingURL=mergeIframeClick.mjs.map"],"mappings":";AACA,MAAM,oBAAoB,UAAU;CACnC,MAAM,0BAA0B,IAAI,WAAW,aAAa;EAC3D,SAAS;EACT,YAAY;EACZ,MAAM;EACN,CAAC;CACF,MAAM,sBAAsB,IAAI,WAAW,SAAS;EACnD,SAAS;EACT,YAAY;EACZ,MAAM;EACN,CAAC;AACF,QAAO,OAAO,qBAAqB,EAAE,YAAY,OAAO,CAAC;AACzD,QAAO,OAAO,yBAAyB,EAAE,YAAY,OAAO,CAAC;AAC7D,QAAO,cAAc,oBAAoB;AACzC,QAAO,cAAc,wBAAwB"}
@@ -0,0 +1,18 @@
1
+ //#region ../editor/dist/esm/messagesKeys.mjs
2
+ let MessageKey = /* @__PURE__ */ function(MessageKey$1) {
3
+ MessageKey$1["INTLAYER_CONFIGURATION"] = "INTLAYER_CONFIGURATION";
4
+ MessageKey$1["INTLAYER_CURRENT_LOCALE"] = "INTLAYER_CURRENT_LOCALE";
5
+ MessageKey$1["INTLAYER_EDITOR_ENABLED"] = "INTLAYER_EDITOR_ENABLED";
6
+ MessageKey$1["INTLAYER_URL_CHANGE"] = "INTLAYER_URL_CHANGE";
7
+ MessageKey$1["INTLAYER_HOVERED_CONTENT_CHANGED"] = "INTLAYER_HOVERED_CONTENT_CHANGED";
8
+ MessageKey$1["INTLAYER_FOCUSED_CONTENT_CHANGED"] = "INTLAYER_FOCUSED_CONTENT_CHANGED";
9
+ MessageKey$1["INTLAYER_LOCALE_DICTIONARIES_CHANGED"] = "INTLAYER_LOCALE_DICTIONARIES_CHANGED";
10
+ MessageKey$1["INTLAYER_DISTANT_DICTIONARIES_CHANGED"] = "INTLAYER_DISTANT_DICTIONARIES_CHANGED";
11
+ MessageKey$1["INTLAYER_EDITED_CONTENT_CHANGED"] = "INTLAYER_EDITED_CONTENT_CHANGED";
12
+ MessageKey$1["INTLAYER_IFRAME_CLICKED"] = "INTLAYER_IFRAME_CLICKED";
13
+ return MessageKey$1;
14
+ }({});
15
+
16
+ //#endregion
17
+ export { MessageKey };
18
+ //# sourceMappingURL=messagesKeys.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messagesKeys.mjs","names":[],"sources":["../../../../../../editor/dist/esm/messagesKeys.mjs"],"sourcesContent":["//#region src/messagesKeys.ts\nlet MessageKey = /* @__PURE__ */ function(MessageKey$1) {\n\tMessageKey$1[\"INTLAYER_CONFIGURATION\"] = \"INTLAYER_CONFIGURATION\";\n\tMessageKey$1[\"INTLAYER_CURRENT_LOCALE\"] = \"INTLAYER_CURRENT_LOCALE\";\n\tMessageKey$1[\"INTLAYER_EDITOR_ENABLED\"] = \"INTLAYER_EDITOR_ENABLED\";\n\tMessageKey$1[\"INTLAYER_URL_CHANGE\"] = \"INTLAYER_URL_CHANGE\";\n\tMessageKey$1[\"INTLAYER_HOVERED_CONTENT_CHANGED\"] = \"INTLAYER_HOVERED_CONTENT_CHANGED\";\n\tMessageKey$1[\"INTLAYER_FOCUSED_CONTENT_CHANGED\"] = \"INTLAYER_FOCUSED_CONTENT_CHANGED\";\n\tMessageKey$1[\"INTLAYER_LOCALE_DICTIONARIES_CHANGED\"] = \"INTLAYER_LOCALE_DICTIONARIES_CHANGED\";\n\tMessageKey$1[\"INTLAYER_DISTANT_DICTIONARIES_CHANGED\"] = \"INTLAYER_DISTANT_DICTIONARIES_CHANGED\";\n\tMessageKey$1[\"INTLAYER_EDITED_CONTENT_CHANGED\"] = \"INTLAYER_EDITED_CONTENT_CHANGED\";\n\tMessageKey$1[\"INTLAYER_IFRAME_CLICKED\"] = \"INTLAYER_IFRAME_CLICKED\";\n\treturn MessageKey$1;\n}({});\n\n//#endregion\nexport { MessageKey };\n//# sourceMappingURL=messagesKeys.mjs.map"],"mappings":";AACA,IAAI,aAA6B,yBAAS,cAAc;AACvD,cAAa,4BAA4B;AACzC,cAAa,6BAA6B;AAC1C,cAAa,6BAA6B;AAC1C,cAAa,yBAAyB;AACtC,cAAa,sCAAsC;AACnD,cAAa,sCAAsC;AACnD,cAAa,0CAA0C;AACvD,cAAa,2CAA2C;AACxD,cAAa,qCAAqC;AAClD,cAAa,6BAA6B;AAC1C,QAAO;EACN,EAAE,CAAC"}
@@ -0,0 +1,24 @@
1
+ //#region ../types/dist/esm/nodeType.mjs
2
+ let NodeType = /* @__PURE__ */ function(NodeType$1) {
3
+ NodeType$1["Translation"] = "translation";
4
+ NodeType$1["Enumeration"] = "enumeration";
5
+ NodeType$1["Condition"] = "condition";
6
+ NodeType$1["Insertion"] = "insertion";
7
+ NodeType$1["File"] = "file";
8
+ NodeType$1["Object"] = "object";
9
+ NodeType$1["Array"] = "array";
10
+ NodeType$1["Nested"] = "nested";
11
+ NodeType$1["ReactNode"] = "reactNode";
12
+ NodeType$1["Markdown"] = "markdown";
13
+ NodeType$1["Text"] = "text";
14
+ NodeType$1["Number"] = "number";
15
+ NodeType$1["Boolean"] = "boolean";
16
+ NodeType$1["Gender"] = "gender";
17
+ NodeType$1["Null"] = "null";
18
+ NodeType$1["Unknown"] = "unknown";
19
+ return NodeType$1;
20
+ }({});
21
+
22
+ //#endregion
23
+ export { NodeType };
24
+ //# sourceMappingURL=nodeType.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nodeType.mjs","names":[],"sources":["../../../../../../types/dist/esm/nodeType.mjs"],"sourcesContent":["//#region src/nodeType.ts\nlet NodeType = /* @__PURE__ */ function(NodeType$1) {\n\tNodeType$1[\"Translation\"] = \"translation\";\n\tNodeType$1[\"Enumeration\"] = \"enumeration\";\n\tNodeType$1[\"Condition\"] = \"condition\";\n\tNodeType$1[\"Insertion\"] = \"insertion\";\n\tNodeType$1[\"File\"] = \"file\";\n\tNodeType$1[\"Object\"] = \"object\";\n\tNodeType$1[\"Array\"] = \"array\";\n\tNodeType$1[\"Nested\"] = \"nested\";\n\tNodeType$1[\"ReactNode\"] = \"reactNode\";\n\tNodeType$1[\"Markdown\"] = \"markdown\";\n\tNodeType$1[\"Text\"] = \"text\";\n\tNodeType$1[\"Number\"] = \"number\";\n\tNodeType$1[\"Boolean\"] = \"boolean\";\n\tNodeType$1[\"Gender\"] = \"gender\";\n\tNodeType$1[\"Null\"] = \"null\";\n\tNodeType$1[\"Unknown\"] = \"unknown\";\n\treturn NodeType$1;\n}({});\nconst formatNodeType = (nodeType, content, additionalAttributes) => ({\n\t...additionalAttributes,\n\tnodeType,\n\t[nodeType]: content\n});\n\n//#endregion\nexport { NodeType, formatNodeType };\n//# sourceMappingURL=nodeType.mjs.map"],"mappings":";AACA,IAAI,WAA2B,yBAAS,YAAY;AACnD,YAAW,iBAAiB;AAC5B,YAAW,iBAAiB;AAC5B,YAAW,eAAe;AAC1B,YAAW,eAAe;AAC1B,YAAW,UAAU;AACrB,YAAW,YAAY;AACvB,YAAW,WAAW;AACtB,YAAW,YAAY;AACvB,YAAW,eAAe;AAC1B,YAAW,cAAc;AACzB,YAAW,UAAU;AACrB,YAAW,YAAY;AACvB,YAAW,aAAa;AACxB,YAAW,YAAY;AACvB,YAAW,UAAU;AACrB,YAAW,aAAa;AACxB,QAAO;EACN,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"CommunicatorContext.d.ts","names":[],"sources":["../../src/CommunicatorContext.tsx"],"sourcesContent":[],"mappings":";;;KAaY,0BAAA;sBACU,MAAA,CAAO;EADjB,cAAA,CAAA,EAAA,MAAA,EAAA;EAkBA,QAAA,EAAA,MAAA;CACL;AAAL,KADU,yBAAA,GAA4B,iBACtC,CAAA,IAAA,CAAK,0BAAL,EAAA,UAAA,CAAA,CAAA;AADsC,cAI3B,oBAJ2B,EAIL,EAJK,CAIF,yBAJE,CAAA;AAAiB,cAwB5C,eAxB4C,EAAA,GAAA,GAwB7B,0BAxB6B"}
1
+ {"version":3,"file":"CommunicatorContext.d.ts","names":[],"sources":["../../src/CommunicatorContext.tsx"],"sourcesContent":[],"mappings":";;;KAcY,0BAAA;sBACU,MAAA,CAAO;EADjB,cAAA,CAAA,EAAA,MAAA,EAAA;EAkBA,QAAA,EAAA,MAAA;CACL;AAAL,KADU,yBAAA,GAA4B,iBACtC,CAAA,IAAA,CAAK,0BAAL,EAAA,UAAA,CAAA,CAAA;AADsC,cAI3B,oBAJ2B,EAIL,EAJK,CAIF,yBAJE,CAAA;AAAiB,cAwB5C,eAxB4C,EAAA,GAAA,GAwB7B,0BAxB6B"}
@@ -1,9 +1,9 @@
1
- import * as react1 from "react";
1
+ import * as react9 from "react";
2
2
  import { FC, PropsWithChildren } from "react";
3
3
  import { IntlayerConfig } from "@intlayer/types";
4
4
 
5
5
  //#region src/ConfigurationContext.d.ts
6
- declare const useConfigurationState: () => [IntlayerConfig, react1.Dispatch<react1.SetStateAction<IntlayerConfig>>, () => void];
6
+ declare const useConfigurationState: () => [IntlayerConfig, react9.Dispatch<react9.SetStateAction<IntlayerConfig>>, () => void];
7
7
  type ConfigurationProviderProps = {
8
8
  configuration?: IntlayerConfig;
9
9
  };
@@ -1,12 +1,12 @@
1
1
  import { CrossFrameStateOptions } from "./useCrossFrameState.js";
2
- import * as react0 from "react";
2
+ import * as react7 from "react";
3
3
  import { FC, PropsWithChildren } from "react";
4
4
 
5
5
  //#region src/EditorEnabledContext.d.ts
6
6
  type EditorEnabledStateProps = {
7
7
  enabled: boolean;
8
8
  };
9
- declare const useEditorEnabledState: (options?: CrossFrameStateOptions) => [boolean, react0.Dispatch<react0.SetStateAction<boolean>>, () => void];
9
+ declare const useEditorEnabledState: (options?: CrossFrameStateOptions) => [boolean, react7.Dispatch<react7.SetStateAction<boolean>>, () => void];
10
10
  declare const usePostEditorEnabledState: <S>(onEventTriggered?: (data: S) => void) => (data?: S) => void;
11
11
  declare const useGetEditorEnabledState: <S>(onEventTriggered?: (data: S) => void) => (data?: S) => void;
12
12
  declare const EditorEnabledProvider: FC<PropsWithChildren>;
@@ -1,9 +1,9 @@
1
1
  import { CrossFrameStateOptions } from "./useCrossFrameState.js";
2
- import * as react7 from "react";
2
+ import * as react0 from "react";
3
3
 
4
4
  //#region src/useCrossURLPathState.d.ts
5
- declare const useCrossURLPathState: (initialState?: string, options?: CrossFrameStateOptions) => [string, react7.Dispatch<react7.SetStateAction<string>>, () => void];
6
- declare const useCrossURLPathSetter: (initialState?: string) => [string, react7.Dispatch<react7.SetStateAction<string>>, () => void];
5
+ declare const useCrossURLPathState: (initialState?: string, options?: CrossFrameStateOptions) => [string, react0.Dispatch<react0.SetStateAction<string>>, () => void];
6
+ declare const useCrossURLPathSetter: (initialState?: string) => [string, react0.Dispatch<react0.SetStateAction<string>>, () => void];
7
7
  //#endregion
8
8
  export { useCrossURLPathSetter, useCrossURLPathState };
9
9
  //# sourceMappingURL=useCrossURLPathState.d.ts.map
@@ -1,9 +1,9 @@
1
- import * as react3 from "react";
1
+ import * as react5 from "react";
2
2
  import { Locale } from "@intlayer/types";
3
3
 
4
4
  //#region src/useEditorLocale.d.ts
5
5
  declare const useEditorLocale: () => Locale;
6
- declare const useSetEditorLocale: () => [Locale, react3.Dispatch<react3.SetStateAction<Locale>>, () => void];
6
+ declare const useSetEditorLocale: () => [Locale, react5.Dispatch<react5.SetStateAction<Locale>>, () => void];
7
7
  //#endregion
8
8
  export { useEditorLocale, useSetEditorLocale };
9
9
  //# sourceMappingURL=useEditorLocale.d.ts.map
@@ -1,11 +1,11 @@
1
1
  import { FileContent } from "./FocusDictionaryContext.js";
2
- import * as react5 from "react";
2
+ import * as react3 from "react";
3
3
  import { KeyPath } from "@intlayer/types";
4
4
 
5
5
  //#region src/useFocusUnmergedDictionary.d.ts
6
6
  declare const useFocusUnmergedDictionary: () => {
7
7
  focusedContent: FileContent;
8
- setFocusedContent: react5.Dispatch<react5.SetStateAction<FileContent>>;
8
+ setFocusedContent: react3.Dispatch<react3.SetStateAction<FileContent>>;
9
9
  setFocusedContentKeyPath: (keyPath: KeyPath[]) => void;
10
10
  };
11
11
  //#endregion
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@intlayer/editor-react",
3
- "version": "7.0.8",
3
+ "version": "7.0.9-canary.2",
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": [
@@ -62,37 +62,39 @@
62
62
  "lint:fix": "biome lint --write .",
63
63
  "process-files": "ts-node src/transpiler/processFilesCLI.ts --dir $npm_config_dir --extension $npm_config_extension --no-node-snapshot",
64
64
  "prepublish": "cp -f ../../../README.md ./README.md",
65
+ "publish": "bun publish --access public || true",
66
+ "publish:canary": "bun publish --tag canary --access public || true",
67
+ "publish:latest": "bun publish --tag latest --access public || true",
65
68
  "test": "vitest run",
66
69
  "test:watch": "vitest",
67
70
  "typecheck": "tsc --noEmit --project tsconfig.types.json"
68
71
  },
69
72
  "dependencies": {
70
- "@intlayer/config": "7.0.8",
71
- "@intlayer/core": "7.0.8",
72
- "@intlayer/editor": "7.0.8",
73
- "@intlayer/types": "7.0.8",
74
- "@intlayer/unmerged-dictionaries-entry": "7.0.8",
75
- "uuid": "13.0.0"
73
+ "@intlayer/config": "7.0.9-canary.2",
74
+ "@intlayer/core": "7.0.9-canary.2",
75
+ "@intlayer/editor": "7.0.9-canary.2",
76
+ "@intlayer/types": "7.0.9-canary.2",
77
+ "@intlayer/unmerged-dictionaries-entry": "7.0.9-canary.2"
76
78
  },
77
79
  "devDependencies": {
78
- "@types/node": "24.10.0",
80
+ "@types/node": "24.10.1",
79
81
  "@types/react": ">=16.0.0",
80
82
  "@types/react-dom": ">=16.0.0",
81
- "@utils/ts-config": "7.0.8",
82
- "@utils/ts-config-types": "7.0.8",
83
- "@utils/tsdown-config": "7.0.8",
83
+ "@utils/ts-config": "1.0.4",
84
+ "@utils/ts-config-types": "1.0.4",
85
+ "@utils/tsdown-config": "1.0.4",
84
86
  "react": ">=16.0.0",
85
87
  "react-dom": ">=16.0.0",
86
88
  "rimraf": "6.1.0",
87
- "tsdown": "0.16.0",
89
+ "tsdown": "0.16.4",
88
90
  "typescript": "5.9.3",
89
- "vitest": "4.0.7"
91
+ "vitest": "4.0.8"
90
92
  },
91
93
  "peerDependencies": {
92
- "@intlayer/config": "7.0.8",
93
- "@intlayer/core": "7.0.8",
94
- "@intlayer/types": "7.0.8",
95
- "@intlayer/unmerged-dictionaries-entry": "7.0.8",
94
+ "@intlayer/config": "7.0.9-canary.2",
95
+ "@intlayer/core": "7.0.9-canary.2",
96
+ "@intlayer/types": "7.0.9-canary.2",
97
+ "@intlayer/unmerged-dictionaries-entry": "7.0.9-canary.2",
96
98
  "react": ">=16.0.0",
97
99
  "react-dom": ">=16.0.0"
98
100
  },