@haklex/rich-compose 0.26.5 → 0.27.0

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/README.md CHANGED
@@ -140,6 +140,7 @@ interface RichEditorModule extends RichRendererModule {
140
140
  editRenderers?: Partial<RendererConfig>; // override renderers in editor mode
141
141
  EditorProvider?: ComponentType<{ children: ReactNode }>; // editor-only provider
142
142
  plugins?: ReactNode; // module-owned editor plugins
143
+ nestedEditorPlugins?: ReactNode; // plugins mounted inside LexicalNestedComposer surfaces
143
144
  actions?: ReactNode; // module-owned action UI
144
145
  }
145
146
  ```
@@ -1 +1 @@
1
- {"version":3,"file":"compose-editor.d.ts","sourceRoot":"","sources":["../../src/core/compose-editor.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,eAAe,EAErB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,KAAK,aAAa,EAAwD,MAAM,OAAO,CAAC;AAKjG,OAAO,KAAK,EAAE,oBAAoB,EAAoB,MAAM,SAAS,CAAC;AAwCtE,wBAAgB,aAAa,CAAC,IAAI,EAAE,oBAAoB,GAAG,aAAa,CAAC,eAAe,CAAC,CA2ExF"}
1
+ {"version":3,"file":"compose-editor.d.ts","sourceRoot":"","sources":["../../src/core/compose-editor.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,eAAe,EAErB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,KAAK,aAAa,EAAwD,MAAM,OAAO,CAAC;AAKjG,OAAO,KAAK,EAAE,oBAAoB,EAAoB,MAAM,SAAS,CAAC;AAwCtE,wBAAgB,aAAa,CAAC,IAAI,EAAE,oBAAoB,GAAG,aAAa,CAAC,eAAe,CAAC,CAiFxF"}
@@ -24,6 +24,7 @@ export interface RichEditorModule extends RichRendererModule {
24
24
  children: ReactNode;
25
25
  }>;
26
26
  editRenderers?: Partial<RendererConfig>;
27
+ nestedEditorPlugins?: ReactNode;
27
28
  plugins?: ReactNode;
28
29
  }
29
30
  export interface ComposeRendererOptions {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpF,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AACzE,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAErE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEpE,MAAM,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC;AAE/C,MAAM,WAAW,kBAAkB;IACjC,aAAa,CAAC,EAAE,OAAO,CAAC;SACrB,CAAC,IAAI,WAAW,GAAG,MAAM,OAAO,CAAC;YAAE,OAAO,EAAE,WAAW,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAA;SAAE,CAAC;KAC/E,CAAC,CAAC;IACH,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;IAC7B,QAAQ,CAAC,EAAE,aAAa,CAAC;QAAE,QAAQ,EAAE,SAAS,CAAA;KAAE,CAAC,CAAC;IAClD,SAAS,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IACpC,WAAW,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;CACvD;AAED,MAAM,WAAW,gBAAiB,SAAQ,kBAAkB;IAC1D,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;IACjC,cAAc,CAAC,EAAE,aAAa,CAAC;QAAE,QAAQ,EAAE,SAAS,CAAA;KAAE,CAAC,CAAC;IACxD,aAAa,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IACxC,OAAO,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,sBAAsB;IACrC,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IAC3D,OAAO,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IACpC,MAAM,CAAC,EAAE,kBAAkB,EAAE,CAAC;CAC/B;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IACpC,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,KAAK,EAAE,qBAAqB,CAAC;IAC7B,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAC7B"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpF,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AACzE,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAErE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEpE,MAAM,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC;AAE/C,MAAM,WAAW,kBAAkB;IACjC,aAAa,CAAC,EAAE,OAAO,CAAC;SACrB,CAAC,IAAI,WAAW,GAAG,MAAM,OAAO,CAAC;YAAE,OAAO,EAAE,WAAW,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAA;SAAE,CAAC;KAC/E,CAAC,CAAC;IACH,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;IAC7B,QAAQ,CAAC,EAAE,aAAa,CAAC;QAAE,QAAQ,EAAE,SAAS,CAAA;KAAE,CAAC,CAAC;IAClD,SAAS,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IACpC,WAAW,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;CACvD;AAED,MAAM,WAAW,gBAAiB,SAAQ,kBAAkB;IAC1D,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;IACjC,cAAc,CAAC,EAAE,aAAa,CAAC;QAAE,QAAQ,EAAE,SAAS,CAAA;KAAE,CAAC,CAAC;IACxD,aAAa,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IACxC,mBAAmB,CAAC,EAAE,SAAS,CAAC;IAChC,OAAO,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,sBAAsB;IACrC,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IAC3D,OAAO,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IACpC,MAAM,CAAC,EAAE,kBAAkB,EAAE,CAAC;CAC/B;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IACpC,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,KAAK,EAAE,qBAAqB,CAAC;IAC7B,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAC7B"}
package/dist/index.mjs CHANGED
@@ -2,7 +2,7 @@ import { a as RichRenderer, i as mergeModules, n as wrapLazy, r as dedupNodes, t
2
2
  import { t as defineConfigurableModule } from "./configurable-module-Bur4JaI3.js";
3
3
  import { Fragment, memo, useCallback, useMemo } from "react";
4
4
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
5
- import { NestedContentRendererProvider, RichEditor } from "@haklex/rich-editor";
5
+ import { NestedContentRendererProvider, NestedEditorPluginsProvider, RichEditor } from "@haklex/rich-editor";
6
6
  //#region src/core/compose-editor.tsx
7
7
  function mergeSyncRenderers(modules) {
8
8
  const out = {};
@@ -46,9 +46,11 @@ function composeEditor(opts) {
46
46
  const ComposedEditorProviders = composeProviders(merged, "EditorProvider");
47
47
  const modulePlugins = [];
48
48
  const moduleActions = [];
49
+ const nestedEditorPlugins = [];
49
50
  for (const m of merged) {
50
51
  if (m.plugins) modulePlugins.push(/* @__PURE__ */ jsx(Fragment, { children: m.plugins }, `p:${m.name}`));
51
52
  if (m.actions) moduleActions.push(/* @__PURE__ */ jsx(Fragment, { children: m.actions }, `a:${m.name}`));
53
+ if (m.nestedEditorPlugins) nestedEditorPlugins.push(/* @__PURE__ */ jsx(Fragment, { children: m.nestedEditorPlugins }, `nep:${m.name}`));
52
54
  }
53
55
  const NestedRenderer = composeRenderer({
54
56
  preset: opts.preset,
@@ -65,15 +67,18 @@ function composeEditor(opts) {
65
67
  value,
66
68
  variant: overrideVariant ?? variant
67
69
  }), [theme, variant]),
68
- children: /* @__PURE__ */ jsx(ComposedProviders, { children: /* @__PURE__ */ jsx(ComposedEditorProviders, { children: /* @__PURE__ */ jsxs(RichEditor, {
69
- ...rest,
70
- extraNodes: mergedExtraNodes,
71
- rendererConfig: finalConfig,
72
- theme,
73
- variant,
74
- actions: /* @__PURE__ */ jsxs(Fragment$1, { children: [moduleActions, actions] }),
75
- children: [modulePlugins, children]
76
- }) }) })
70
+ children: /* @__PURE__ */ jsx(NestedEditorPluginsProvider, {
71
+ plugins: nestedEditorPlugins,
72
+ children: /* @__PURE__ */ jsx(ComposedProviders, { children: /* @__PURE__ */ jsx(ComposedEditorProviders, { children: /* @__PURE__ */ jsxs(RichEditor, {
73
+ ...rest,
74
+ extraNodes: mergedExtraNodes,
75
+ rendererConfig: finalConfig,
76
+ theme,
77
+ variant,
78
+ actions: /* @__PURE__ */ jsxs(Fragment$1, { children: [moduleActions, actions] }),
79
+ children: [modulePlugins, children]
80
+ }) }) })
81
+ })
77
82
  });
78
83
  }
79
84
  ComposedEditor.displayName = "ComposedEditor";
@@ -3066,7 +3066,12 @@
3066
3066
  width: 60px;
3067
3067
  }
3068
3068
  .gxfui1v {
3069
+ display: block;
3070
+ width: 100%;
3071
+ max-width: 100%;
3072
+ min-width: 0;
3069
3073
  overflow-x: auto;
3074
+ overscroll-behavior-x: contain;
3070
3075
  }
3071
3076
  .gxfui1w {
3072
3077
  border: none;
@@ -4244,7 +4249,12 @@ figure.rich-image[data-layout="float-right"] {
4244
4249
  opacity: 1;
4245
4250
  pointer-events: auto;
4246
4251
  }.icqzyn0 {
4252
+ display: block;
4253
+ width: 100%;
4254
+ max-width: 100%;
4255
+ min-width: 0;
4247
4256
  overflow-x: auto;
4257
+ overscroll-behavior-x: contain;
4248
4258
  }
4249
4259
  .icqzyn1 {
4250
4260
  width: 100%;