@storyblok/react 6.1.10 → 7.0.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/dist/core/create-default-blok.js +1 -0
- package/dist/core/create-default-blok.mjs +15 -0
- package/dist/core/create-storyblok-richtext.js +1 -0
- package/dist/core/create-storyblok-richtext.mjs +26 -0
- package/dist/core/init.js +1 -1
- package/dist/core/init.mjs +10 -7
- package/dist/core/rich-text-renderer.js +1 -0
- package/dist/core/rich-text-renderer.mjs +106 -0
- package/dist/index.d.ts +72 -45
- package/dist/index.js +1 -1
- package/dist/index.mjs +46 -48
- package/dist/richtext.js +1 -1
- package/dist/richtext.mjs +11 -5
- package/dist/rsc.d.ts +68 -44
- package/dist/rsc.js +1 -1
- package/dist/rsc.mjs +26 -30
- package/dist/server/richtext.js +1 -1
- package/dist/server/richtext.mjs +11 -5
- package/dist/server/server-storyblok-richtext.js +1 -0
- package/dist/server/server-storyblok-richtext.mjs +6 -0
- package/dist/ssr.d.ts +68 -40
- package/dist/ssr.js +1 -1
- package/dist/ssr.mjs +27 -30
- package/dist/storyblok-rich-text.js +1 -1
- package/dist/storyblok-rich-text.mjs +4 -13
- package/package.json +4 -3
- package/dist/core/richtext-hoc.js +0 -1
- package/dist/core/richtext-hoc.mjs +0 -33
- package/dist/server/server-storyblok-richtext-component.js +0 -1
- package/dist/server/server-storyblok-richtext-component.mjs +0 -17
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react/jsx-runtime");function i(r){return function({attrs:e}){return Array.isArray(e==null?void 0:e.body)?e.body.map((u,n)=>o.jsx(r,{blok:u},u._uid||n)):null}}exports.createDefaultBlok=i;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { jsx as o } from "react/jsx-runtime";
|
|
2
|
+
function l(e) {
|
|
3
|
+
return function({ attrs: r }) {
|
|
4
|
+
return Array.isArray(r == null ? void 0 : r.body) ? r.body.map((u, n) => /* @__PURE__ */ o(
|
|
5
|
+
e,
|
|
6
|
+
{
|
|
7
|
+
blok: u
|
|
8
|
+
},
|
|
9
|
+
u._uid || n
|
|
10
|
+
)) : null;
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
export {
|
|
14
|
+
l as createDefaultBlok
|
|
15
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react/jsx-runtime"),s=require("./rich-text-renderer.js");require("@storyblok/richtext");const a=require("./create-default-blok.js");function d(t){const r=a.createDefaultBlok(t);return function({document:n,optimizeImage:o,components:c,wrapper:i=!0,...u}){const e=s.createRichTextRenderer({optimizeImage:o,components:{blok:r,...c}})(n);return i?l.jsx("div",{...u,children:e}):e}}exports.createStoryblokRichText=d;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { jsx as l } from "react/jsx-runtime";
|
|
2
|
+
import { createRichTextRenderer as m } from "./rich-text-renderer.mjs";
|
|
3
|
+
import "@storyblok/richtext";
|
|
4
|
+
import { createDefaultBlok as u } from "./create-default-blok.mjs";
|
|
5
|
+
function h(t) {
|
|
6
|
+
const e = u(t);
|
|
7
|
+
return function({
|
|
8
|
+
document: o,
|
|
9
|
+
optimizeImage: n,
|
|
10
|
+
components: c,
|
|
11
|
+
wrapper: i = !0,
|
|
12
|
+
...f
|
|
13
|
+
}) {
|
|
14
|
+
const r = m({
|
|
15
|
+
optimizeImage: n,
|
|
16
|
+
components: {
|
|
17
|
+
blok: e,
|
|
18
|
+
...c
|
|
19
|
+
}
|
|
20
|
+
})(o);
|
|
21
|
+
return i ? /* @__PURE__ */ l("div", { ...f, children: r }) : r;
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
export {
|
|
25
|
+
h as createStoryblokRichText
|
|
26
|
+
};
|
package/dist/core/init.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("@storyblok/js"),e=require("./state.js"),l=(t={})=>{const n=e.getStoryblokApiInstance();if(n)return()=>n;const{storyblokApi:a}=o.storyblokInit(t);return e.setStoryblokApiInstance(a),t.components&&e.setComponents(t.components),t.enableFallbackComponent!==void 0&&e.setEnableFallbackComponent(t.enableFallbackComponent),t.customFallbackComponent&&e.setCustomFallbackComponent(t.customFallbackComponent),()=>a};Object.defineProperty(exports,"apiPlugin",{enumerable:!0,get:()=>o.apiPlugin});Object.defineProperty(exports,"storyblokEditable",{enumerable:!0,get:()=>o.storyblokEditable});exports.getComponent=e.getComponent;exports.getCustomFallbackComponent=e.getCustomFallbackComponent;exports.getEnableFallbackComponent=e.getEnableFallbackComponent;exports.setComponents=e.setComponents;exports.storyblokInit=l;
|
package/dist/core/init.mjs
CHANGED
|
@@ -1,17 +1,20 @@
|
|
|
1
1
|
import { storyblokInit as n } from "@storyblok/js";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { apiPlugin as f, storyblokEditable as F } from "@storyblok/js";
|
|
3
|
+
import { setComponents as a, setEnableFallbackComponent as l, setCustomFallbackComponent as m, setStoryblokApiInstance as b, getStoryblokApiInstance as r } from "./state.mjs";
|
|
4
|
+
import { getComponent as i, getCustomFallbackComponent as I, getEnableFallbackComponent as x } from "./state.mjs";
|
|
4
5
|
const k = (o = {}) => {
|
|
5
|
-
const t =
|
|
6
|
+
const t = r();
|
|
6
7
|
if (t)
|
|
7
8
|
return () => t;
|
|
8
9
|
const { storyblokApi: e } = n(o);
|
|
9
|
-
return b(e), o.components && a(o.components), o.enableFallbackComponent !== void 0 &&
|
|
10
|
+
return b(e), o.components && a(o.components), o.enableFallbackComponent !== void 0 && l(o.enableFallbackComponent), o.customFallbackComponent && m(o.customFallbackComponent), () => e;
|
|
10
11
|
};
|
|
11
12
|
export {
|
|
12
|
-
f as
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
f as apiPlugin,
|
|
14
|
+
i as getComponent,
|
|
15
|
+
I as getCustomFallbackComponent,
|
|
16
|
+
x as getEnableFallbackComponent,
|
|
15
17
|
a as setComponents,
|
|
18
|
+
F as storyblokEditable,
|
|
16
19
|
k as storyblokInit
|
|
17
20
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("react/jsx-runtime"),i=require("@storyblok/richtext"),o=require("react");function y(t,e){return e==null?void 0:e[t]}const p={class:"className"};function C(t){return function(c){const r=i.normalizeNodes(c,!0);return r!=null&&r.length?g(r,t):null}}function g(t,e){return i.groupLinkNodes(t).map((r,n)=>r.linkMark?T(r.nodes,r.linkMark,e,r._key||n):x(r.nodes[0],e,r._key||n))}function T(t,e,c,r){const n=t.map((l,a)=>{const m=l,h=i.getInnerMarks(l);return b(m,h,c,l._key||a)}),s=y(e.type,c.components);if(s)return f.jsx(s,{...e,children:n},r);const u=i.resolveTag(e);return u?o.createElement(u,{key:r,...i.processAttrs(e.type,e.attrs,p)},n):f.jsx(o.Fragment,{children:n},r)}function x(t,e,c){if(t.type==="text")return A(t,e,c);const r=y(t.type,e.components);if(r)return f.jsx(r,{...t,context:e,children:t.content?g(t.content,e):null},c);const n=i.resolveTag(t);if(!n)return t.content?g(t.content,e):null;if(t.type==="image"&&e.optimizeImage)return R(t,e,c);const s=i.processAttrs(t.type,t.attrs,p);if(i.isSelfClosing(n))return o.createElement(n,{key:c,...s});if(t.type==="table")return S(t,e,c,n,s);const u=i.getStaticChildren(t);if(u){const l=t.content?g(t.content,e):null,a=d(t.type,u,t.attrs,l);return o.createElement(n,{key:c},a)}return o.createElement(n,{key:c,...s},t.content?g(t.content,e):null)}function R(t,e,c){const r=t.attrs,n=r==null?void 0:r.src;if(!n)return null;const{src:s,attrs:u}=i.buildStoryblokImage(n,e.optimizeImage),l=i.processAttrs("image",{...r,src:s,...u},p);return f.jsx("img",{...l},c)}function S(t,e,c,r,n){const{headerRows:s,bodyRows:u}=i.splitTableRows(t.content),l=[];return s.length>0&&l.push(f.jsx("thead",{children:s.map((a,m)=>x(a,e,a._key||m))},"thead")),u.length>0&&l.push(f.jsx("tbody",{children:u.map((a,m)=>x(a,e,a._key||m))},"tbody")),o.createElement(r,{key:c,...n},l)}function d(t,e,c,r){return e.map((n,s)=>{const{tag:u,children:l,attrs:a}=n,m={...a,...c},h=i.processAttrs(t,m,p);if(i.isSelfClosing(u))return o.createElement(u,{key:s,...h});const j=l?d(t,l,c,r):r;return o.createElement(u,{key:s,...h},j)})}function A(t,e,c){return b(t,t.marks,e,c)}function b(t,e,c,r){let n=t.text;if(e!=null&&e.length)for(const s of e)n=E(n,s,c);return f.jsx(o.Fragment,{children:n},r)}function E(t,e,c){const r=y(e.type,c.components);if(r)return f.jsx(r,{...e,children:t});const n=i.resolveTag(e);if(!n)return t;const s=i.processAttrs(e.type,e.attrs,p);return o.createElement(n,s,t)}exports.createRichTextRenderer=C;
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { jsx as o } from "react/jsx-runtime";
|
|
2
|
+
import { normalizeNodes as R, groupLinkNodes as S, getInnerMarks as T, resolveTag as d, processAttrs as p, isSelfClosing as x, getStaticChildren as z, buildStoryblokImage as _, splitTableRows as A } from "@storyblok/richtext";
|
|
3
|
+
import a from "react";
|
|
4
|
+
function b(t, e) {
|
|
5
|
+
return e == null ? void 0 : e[t];
|
|
6
|
+
}
|
|
7
|
+
const g = {
|
|
8
|
+
class: "className"
|
|
9
|
+
};
|
|
10
|
+
function O(t) {
|
|
11
|
+
return function(c) {
|
|
12
|
+
const r = R(c, !0);
|
|
13
|
+
return r != null && r.length ? m(r, t) : null;
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
function m(t, e) {
|
|
17
|
+
return S(t).map((r, n) => r.linkMark ? I(r.nodes, r.linkMark, e, r._key || n) : y(r.nodes[0], e, r._key || n));
|
|
18
|
+
}
|
|
19
|
+
function I(t, e, c, r) {
|
|
20
|
+
const n = t.map((i, l) => {
|
|
21
|
+
const f = i, h = T(i);
|
|
22
|
+
return E(f, h, c, i._key || l);
|
|
23
|
+
}), s = b(e.type, c.components);
|
|
24
|
+
if (s)
|
|
25
|
+
return /* @__PURE__ */ o(s, { ...e, children: n }, r);
|
|
26
|
+
const u = d(e);
|
|
27
|
+
return u ? a.createElement(u, { key: r, ...p(e.type, e.attrs, g) }, n) : /* @__PURE__ */ o(a.Fragment, { children: n }, r);
|
|
28
|
+
}
|
|
29
|
+
function y(t, e, c) {
|
|
30
|
+
if (t.type === "text")
|
|
31
|
+
return w(t, e, c);
|
|
32
|
+
const r = b(t.type, e.components);
|
|
33
|
+
if (r)
|
|
34
|
+
return /* @__PURE__ */ o(r, { ...t, context: e, children: t.content ? m(t.content, e) : null }, c);
|
|
35
|
+
const n = d(t);
|
|
36
|
+
if (!n)
|
|
37
|
+
return t.content ? m(t.content, e) : null;
|
|
38
|
+
if (t.type === "image" && e.optimizeImage)
|
|
39
|
+
return M(t, e, c);
|
|
40
|
+
const s = p(t.type, t.attrs, g);
|
|
41
|
+
if (x(n))
|
|
42
|
+
return a.createElement(n, { key: c, ...s });
|
|
43
|
+
if (t.type === "table")
|
|
44
|
+
return v(t, e, c, n, s);
|
|
45
|
+
const u = z(t);
|
|
46
|
+
if (u) {
|
|
47
|
+
const i = t.content ? m(t.content, e) : null, l = C(t.type, u, t.attrs, i);
|
|
48
|
+
return a.createElement(n, { key: c }, l);
|
|
49
|
+
}
|
|
50
|
+
return a.createElement(
|
|
51
|
+
n,
|
|
52
|
+
{ key: c, ...s },
|
|
53
|
+
t.content ? m(t.content, e) : null
|
|
54
|
+
);
|
|
55
|
+
}
|
|
56
|
+
function M(t, e, c) {
|
|
57
|
+
const r = t.attrs, n = r == null ? void 0 : r.src;
|
|
58
|
+
if (!n)
|
|
59
|
+
return null;
|
|
60
|
+
const { src: s, attrs: u } = _(n, e.optimizeImage), i = p("image", {
|
|
61
|
+
...r,
|
|
62
|
+
src: s,
|
|
63
|
+
...u
|
|
64
|
+
}, g);
|
|
65
|
+
return /* @__PURE__ */ o("img", { ...i }, c);
|
|
66
|
+
}
|
|
67
|
+
function v(t, e, c, r, n) {
|
|
68
|
+
const { headerRows: s, bodyRows: u } = A(t.content), i = [];
|
|
69
|
+
return s.length > 0 && i.push(
|
|
70
|
+
/* @__PURE__ */ o("thead", { children: s.map((l, f) => y(l, e, l._key || f)) }, "thead")
|
|
71
|
+
), u.length > 0 && i.push(
|
|
72
|
+
/* @__PURE__ */ o("tbody", { children: u.map((l, f) => y(l, e, l._key || f)) }, "tbody")
|
|
73
|
+
), a.createElement(r, { key: c, ...n }, i);
|
|
74
|
+
}
|
|
75
|
+
function C(t, e, c, r) {
|
|
76
|
+
return e.map((n, s) => {
|
|
77
|
+
const { tag: u, children: i, attrs: l } = n, f = { ...l, ...c }, h = p(t, f, g);
|
|
78
|
+
if (x(u))
|
|
79
|
+
return a.createElement(u, { key: s, ...h });
|
|
80
|
+
const N = i ? C(t, i, c, r) : r;
|
|
81
|
+
return a.createElement(u, { key: s, ...h }, N);
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
function w(t, e, c) {
|
|
85
|
+
return E(t, t.marks, e, c);
|
|
86
|
+
}
|
|
87
|
+
function E(t, e, c, r) {
|
|
88
|
+
let n = t.text;
|
|
89
|
+
if (e != null && e.length)
|
|
90
|
+
for (const s of e)
|
|
91
|
+
n = F(n, s, c);
|
|
92
|
+
return /* @__PURE__ */ o(a.Fragment, { children: n }, r);
|
|
93
|
+
}
|
|
94
|
+
function F(t, e, c) {
|
|
95
|
+
const r = b(e.type, c.components);
|
|
96
|
+
if (r)
|
|
97
|
+
return /* @__PURE__ */ o(r, { ...e, children: t });
|
|
98
|
+
const n = d(e);
|
|
99
|
+
if (!n)
|
|
100
|
+
return t;
|
|
101
|
+
const s = p(e.type, e.attrs, g);
|
|
102
|
+
return a.createElement(n, s, t);
|
|
103
|
+
}
|
|
104
|
+
export {
|
|
105
|
+
O as createRichTextRenderer
|
|
106
|
+
};
|
package/dist/index.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { apiPlugin } from '@storyblok/js';
|
|
2
2
|
import { ArrayFn } from '@storyblok/js';
|
|
3
|
-
import { asTag } from '@storyblok/js';
|
|
4
3
|
import { AsyncFn } from '@storyblok/js';
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
4
|
+
import { buildStoryblokImage } from '@storyblok/richtext';
|
|
5
|
+
import { ComponentPropsWithoutRef } from 'react';
|
|
6
|
+
import { ComponentType } from 'react';
|
|
7
7
|
import { default as default_2 } from 'react';
|
|
8
8
|
import { ForwardRefExoticComponent } from 'react';
|
|
9
9
|
import { ISbAlternateObject } from '@storyblok/js';
|
|
@@ -24,43 +24,42 @@ import { ISbStoryData } from '@storyblok/js';
|
|
|
24
24
|
import { ISbStoryParams } from '@storyblok/js';
|
|
25
25
|
import { ISbThrottle } from '@storyblok/js';
|
|
26
26
|
import { loadStoryblokBridge } from '@storyblok/js';
|
|
27
|
-
import { MarkTypes } from '@storyblok/js';
|
|
28
27
|
import { ReactNode } from 'react';
|
|
29
28
|
import { RefAttributes } from 'react';
|
|
30
29
|
import { registerStoryblokBridge } from '@storyblok/js';
|
|
31
|
-
import { renderRichText } from '@storyblok/
|
|
32
|
-
import { richTextResolver } from '@storyblok/js';
|
|
30
|
+
import { renderRichText } from '@storyblok/richtext';
|
|
33
31
|
import { SbBlokData } from '@storyblok/js';
|
|
34
32
|
import { SbBlokKeyDataTypes } from '@storyblok/js';
|
|
33
|
+
import { SbRichTextDoc } from '@storyblok/richtext';
|
|
34
|
+
import { SbRichTextElement } from '@storyblok/richtext';
|
|
35
|
+
import { SbRichTextElementByType } from '@storyblok/richtext';
|
|
36
|
+
import { SbRichTextImageOptions } from '@storyblok/richtext';
|
|
37
|
+
import { SbRichTextInput } from '@storyblok/richtext';
|
|
38
|
+
import { SbRichTextMark } from '@storyblok/richtext';
|
|
39
|
+
import { SbRichTextNode } from '@storyblok/richtext';
|
|
40
|
+
import { SbRichTextProps } from '@storyblok/richtext';
|
|
41
|
+
import { SbRichTextRenderContext } from '@storyblok/richtext';
|
|
42
|
+
import { SbRichTextRendererMap } from '@storyblok/richtext';
|
|
35
43
|
import { SbSDKOptions } from '@storyblok/js';
|
|
44
|
+
import { splitTableRows } from '@storyblok/richtext';
|
|
36
45
|
import { StoryblokBridgeConfigV2 } from '@storyblok/js';
|
|
37
46
|
import { StoryblokBridgeV2 } from '@storyblok/js';
|
|
38
47
|
import { StoryblokClient } from '@storyblok/js';
|
|
39
48
|
import { StoryblokComponentType } from '@storyblok/js';
|
|
40
49
|
import { storyblokEditable } from '@storyblok/js';
|
|
41
|
-
import { StoryblokRichTextDocumentNode } from '@storyblok/richtext';
|
|
42
|
-
import { StoryblokRichTextImageOptimizationOptions } from '@storyblok/js';
|
|
43
|
-
import { StoryblokRichTextNode } from '@storyblok/js';
|
|
44
|
-
import { StoryblokRichTextNode as StoryblokRichTextNode_2 } from '@storyblok/richtext';
|
|
45
|
-
import { StoryblokRichTextNodeTypes } from '@storyblok/js';
|
|
46
|
-
import { StoryblokRichTextOptions } from '@storyblok/js';
|
|
47
|
-
import { StoryblokRichTextOptions as StoryblokRichTextOptions_2 } from '@storyblok/richtext';
|
|
48
|
-
import { TextTypes } from '@storyblok/js';
|
|
49
50
|
import { useStoryblokBridge } from '@storyblok/js';
|
|
50
51
|
|
|
51
52
|
export { apiPlugin }
|
|
52
53
|
|
|
53
54
|
export { ArrayFn }
|
|
54
55
|
|
|
55
|
-
export { asTag }
|
|
56
|
-
|
|
57
56
|
export { AsyncFn }
|
|
58
57
|
|
|
59
|
-
export {
|
|
60
|
-
|
|
61
|
-
export { ComponentBlok }
|
|
58
|
+
export { buildStoryblokImage }
|
|
62
59
|
|
|
63
60
|
/**
|
|
61
|
+
* @deprecated This utility is no longer needed and will be removed in a future release.
|
|
62
|
+
*
|
|
64
63
|
* Recursively converts HTML attributes in a React element tree to their JSX property names.
|
|
65
64
|
*
|
|
66
65
|
* @param {React.ReactElement} element The React element to process.
|
|
@@ -68,6 +67,10 @@ export { ComponentBlok }
|
|
|
68
67
|
*/
|
|
69
68
|
export declare function convertAttributesInElement(element: default_2.ReactElement | default_2.ReactElement[]): default_2.ReactElement | default_2.ReactElement[];
|
|
70
69
|
|
|
70
|
+
export declare function createRichTextRenderer(options: SbReactRichTextRenderContext): (document: SbRichTextInput) => ReactNode | null;
|
|
71
|
+
|
|
72
|
+
declare type DivProps = Omit<ComponentPropsWithoutRef<'div'>, 'children'>;
|
|
73
|
+
|
|
71
74
|
export declare const getComponent: (componentKey: string) => React.ElementType | false;
|
|
72
75
|
|
|
73
76
|
export declare const getCustomFallbackComponent: () => React.ElementType;
|
|
@@ -123,14 +126,10 @@ export declare const isVisualEditor: () => boolean;
|
|
|
123
126
|
|
|
124
127
|
export { loadStoryblokBridge }
|
|
125
128
|
|
|
126
|
-
export { MarkTypes }
|
|
127
|
-
|
|
128
129
|
export { registerStoryblokBridge }
|
|
129
130
|
|
|
130
131
|
export { renderRichText }
|
|
131
132
|
|
|
132
|
-
export { richTextResolver }
|
|
133
|
-
|
|
134
133
|
export { SbBlokData }
|
|
135
134
|
|
|
136
135
|
export { SbBlokKeyDataTypes }
|
|
@@ -139,16 +138,53 @@ export declare interface SbReactComponentsMap {
|
|
|
139
138
|
[key: string]: default_2.ElementType;
|
|
140
139
|
}
|
|
141
140
|
|
|
141
|
+
declare type SbReactRichTextComponent<T extends SbRichTextElement> = ComponentType<SbReactRichTextProps<T>>;
|
|
142
|
+
|
|
143
|
+
export declare type SbReactRichTextComponentMap = {
|
|
144
|
+
[K in SbRichTextElement]?: SbReactRichTextComponent<K>;
|
|
145
|
+
};
|
|
146
|
+
|
|
147
|
+
/**
|
|
148
|
+
* Props type for React richtext node/mark components.
|
|
149
|
+
* Similar to SbRichTextProps but uses ReactNode for children instead of string.
|
|
150
|
+
*/
|
|
151
|
+
export declare type SbReactRichTextProps<T extends SbRichTextElement> = SbRichTextElementByType<SbReactRichTextRenderContext>[T] & {
|
|
152
|
+
children?: ReactNode;
|
|
153
|
+
};
|
|
154
|
+
|
|
155
|
+
export declare interface SbReactRichTextRenderContext {
|
|
156
|
+
optimizeImage?: boolean | SbRichTextImageOptions;
|
|
157
|
+
components?: SbReactRichTextComponentMap;
|
|
158
|
+
}
|
|
159
|
+
|
|
142
160
|
export declare interface SbReactSDKOptions extends SbSDKOptions {
|
|
143
161
|
components?: SbReactComponentsMap;
|
|
144
162
|
enableFallbackComponent?: boolean;
|
|
145
163
|
customFallbackComponent?: default_2.ElementType;
|
|
146
164
|
}
|
|
147
165
|
|
|
166
|
+
export { SbRichTextDoc }
|
|
167
|
+
|
|
168
|
+
export { SbRichTextImageOptions }
|
|
169
|
+
|
|
170
|
+
export { SbRichTextMark }
|
|
171
|
+
|
|
172
|
+
export { SbRichTextNode }
|
|
173
|
+
|
|
174
|
+
export { SbRichTextProps }
|
|
175
|
+
|
|
176
|
+
declare type SbRichTextProps_2 = WrappedProps | UnwrappedProps;
|
|
177
|
+
|
|
178
|
+
export { SbRichTextRenderContext }
|
|
179
|
+
|
|
180
|
+
export { SbRichTextRendererMap }
|
|
181
|
+
|
|
148
182
|
export { SbSDKOptions }
|
|
149
183
|
|
|
150
184
|
export declare const setComponents: (newComponentsMap: SbReactComponentsMap) => Map<string, React.ElementType>;
|
|
151
185
|
|
|
186
|
+
export { splitTableRows }
|
|
187
|
+
|
|
152
188
|
export { StoryblokBridgeConfigV2 }
|
|
153
189
|
|
|
154
190
|
export { StoryblokBridgeV2 }
|
|
@@ -167,25 +203,19 @@ export { storyblokEditable }
|
|
|
167
203
|
|
|
168
204
|
export declare const storyblokInit: (pluginOptions?: SbReactSDKOptions) => (() => StoryblokClient);
|
|
169
205
|
|
|
170
|
-
export declare const StoryblokRichText:
|
|
171
|
-
|
|
172
|
-
export { StoryblokRichTextImageOptimizationOptions }
|
|
173
|
-
|
|
174
|
-
export { StoryblokRichTextNode }
|
|
175
|
-
|
|
176
|
-
export { StoryblokRichTextNodeTypes }
|
|
206
|
+
export declare const StoryblokRichText: ({ document, optimizeImage, components, wrapper, ...rest }: SbRichTextProps_2) => ReactNode;
|
|
177
207
|
|
|
178
|
-
export
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
doc: StoryblokRichTextNode<default_2.ReactElement>;
|
|
182
|
-
tiptapExtensions?: StoryblokRichTextOptions<default_2.ReactElement>['tiptapExtensions'];
|
|
208
|
+
export declare interface StoryblokRichTextProps extends SbReactRichTextRenderContext {
|
|
209
|
+
optimizeImage?: boolean | SbRichTextImageOptions;
|
|
210
|
+
document?: SbRichTextInput;
|
|
183
211
|
}
|
|
184
212
|
|
|
185
|
-
export { TextTypes }
|
|
186
|
-
|
|
187
213
|
export declare type TUseStoryblokState = <T = void>(initialStory: ISbStoryData<T> | null, bridgeOptions?: StoryblokBridgeConfigV2) => ISbStoryData<T> | null;
|
|
188
214
|
|
|
215
|
+
declare type UnwrappedProps = StoryblokRichTextProps & {
|
|
216
|
+
wrapper: false;
|
|
217
|
+
};
|
|
218
|
+
|
|
189
219
|
export declare const useStoryblok: (slug: string, apiOptions?: ISbStoriesParams, bridgeOptions?: StoryblokBridgeConfigV2) => ISbStoryData<ISbComponentType<string> & {
|
|
190
220
|
[index: string]: any;
|
|
191
221
|
}>;
|
|
@@ -196,15 +226,12 @@ export { useStoryblokApi }
|
|
|
196
226
|
|
|
197
227
|
export { useStoryblokBridge }
|
|
198
228
|
|
|
199
|
-
export declare const useStoryblokRichText: (
|
|
200
|
-
render: (node: StoryblokRichTextDocumentNode | StoryblokRichTextNode_2<ReactNode>) => ReactNode;
|
|
201
|
-
};
|
|
202
|
-
|
|
203
|
-
/** @deprecated Use useStoryblokRichText instead */
|
|
204
|
-
export declare const useStoryblokRichTextResolver: (options: StoryblokRichTextOptions_2<React.ReactElement>) => {
|
|
205
|
-
render: (node: StoryblokRichTextDocumentNode | StoryblokRichTextNode_2<ReactNode>) => ReactNode;
|
|
206
|
-
};
|
|
229
|
+
export declare const useStoryblokRichText: (props?: SbReactRichTextRenderContext) => (document: SbRichTextInput) => ReactNode | null;
|
|
207
230
|
|
|
208
231
|
export declare const useStoryblokState: TUseStoryblokState;
|
|
209
232
|
|
|
233
|
+
declare type WrappedProps = StoryblokRichTextProps & DivProps & {
|
|
234
|
+
wrapper?: true;
|
|
235
|
+
};
|
|
236
|
+
|
|
210
237
|
export { }
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const y=require("react"),e=require("@storyblok/js"),S=require("./core/init.js"),l=require("./core/use-storyblok-api.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const y=require("react"),e=require("@storyblok/js"),S=require("./core/init.js"),l=require("./core/use-storyblok-api.js"),m=require("./core/storyblok-component.js"),f=require("./core/use-storyblok-state.js"),p=require("./richtext.js"),R=require("./core/rich-text-renderer.js"),u=require("@storyblok/richtext"),T=require("./storyblok-rich-text.js"),t=require("./utils.js"),n=require("./core/state.js"),h=(b,o={},r={})=>{const[a,c]=y.useState({}),d=typeof window<"u"&&typeof window.storyblokRegisterEvent<"u",i=l.getStoryblokApi();return y.useEffect(()=>{if(!i){console.error("You can't use useStoryblok if you're not loading apiPlugin.");return}async function k(){const{data:s}=await i.get(`cdn/stories/${b}`,o);c(s.story),d&&s.story.id&&e.registerStoryblokBridge(s.story.id,g=>c(g),r)}k()},[b,JSON.stringify(o),i]),i?(r.resolveRelations=r.resolveRelations??o.resolve_relations,r.resolveLinks=r.resolveLinks??o.resolve_links,a):null};Object.defineProperty(exports,"apiPlugin",{enumerable:!0,get:()=>e.apiPlugin});Object.defineProperty(exports,"loadStoryblokBridge",{enumerable:!0,get:()=>e.loadStoryblokBridge});Object.defineProperty(exports,"registerStoryblokBridge",{enumerable:!0,get:()=>e.registerStoryblokBridge});Object.defineProperty(exports,"storyblokEditable",{enumerable:!0,get:()=>e.storyblokEditable});Object.defineProperty(exports,"useStoryblokBridge",{enumerable:!0,get:()=>e.useStoryblokBridge});exports.storyblokInit=S.storyblokInit;exports.getStoryblokApi=l.getStoryblokApi;exports.useStoryblokApi=l.getStoryblokApi;exports.StoryblokComponent=m;exports.useStoryblokState=f.useStoryblokState;exports.useStoryblokRichText=p.useStoryblokRichText;exports.createRichTextRenderer=R.createRichTextRenderer;Object.defineProperty(exports,"buildStoryblokImage",{enumerable:!0,get:()=>u.buildStoryblokImage});Object.defineProperty(exports,"renderRichText",{enumerable:!0,get:()=>u.renderRichText});Object.defineProperty(exports,"splitTableRows",{enumerable:!0,get:()=>u.splitTableRows});exports.StoryblokRichText=T.StoryblokRichText;exports.convertAttributesInElement=t.convertAttributesInElement;exports.isBridgeLoaded=t.isBridgeLoaded;exports.isBrowser=t.isBrowser;exports.isIframe=t.isIframe;exports.isServer=t.isServer;exports.isVisualEditor=t.isVisualEditor;exports.getComponent=n.getComponent;exports.getCustomFallbackComponent=n.getCustomFallbackComponent;exports.getEnableFallbackComponent=n.getEnableFallbackComponent;exports.setComponents=n.setComponents;exports.useStoryblok=h;
|
package/dist/index.mjs
CHANGED
|
@@ -1,17 +1,19 @@
|
|
|
1
|
-
import { useState as f, useEffect as
|
|
1
|
+
import { useState as f, useEffect as m } from "react";
|
|
2
2
|
import { registerStoryblokBridge as u } from "@storyblok/js";
|
|
3
|
-
import {
|
|
4
|
-
import { storyblokInit as
|
|
5
|
-
import { getStoryblokApi as
|
|
6
|
-
import { default as
|
|
7
|
-
import { useStoryblokState as
|
|
8
|
-
import { useStoryblokRichText as
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
3
|
+
import { apiPlugin as x, loadStoryblokBridge as v, registerStoryblokBridge as R, storyblokEditable as w, useStoryblokBridge as B } from "@storyblok/js";
|
|
4
|
+
import { storyblokInit as C } from "./core/init.mjs";
|
|
5
|
+
import { getStoryblokApi as k } from "./core/use-storyblok-api.mjs";
|
|
6
|
+
import { default as I } from "./core/storyblok-component.mjs";
|
|
7
|
+
import { useStoryblokState as h } from "./core/use-storyblok-state.mjs";
|
|
8
|
+
import { useStoryblokRichText as F } from "./richtext.mjs";
|
|
9
|
+
import { createRichTextRenderer as _ } from "./core/rich-text-renderer.mjs";
|
|
10
|
+
import { buildStoryblokImage as N, renderRichText as V, splitTableRows as Y } from "@storyblok/richtext";
|
|
11
|
+
import { StoryblokRichText as j } from "./storyblok-rich-text.mjs";
|
|
12
|
+
import { convertAttributesInElement as z, isBridgeLoaded as D, isBrowser as G, isIframe as H, isServer as K, isVisualEditor as M } from "./utils.mjs";
|
|
13
|
+
import { getComponent as U, getCustomFallbackComponent as W, getEnableFallbackComponent as X, setComponents as Z } from "./core/state.mjs";
|
|
14
|
+
const S = (s, e = {}, o = {}) => {
|
|
15
|
+
const [l, i] = f({}), n = typeof window < "u" && typeof window.storyblokRegisterEvent < "u", t = k();
|
|
16
|
+
return m(() => {
|
|
15
17
|
if (!t) {
|
|
16
18
|
console.error(
|
|
17
19
|
"You can't use useStoryblok if you're not loading apiPlugin."
|
|
@@ -23,45 +25,41 @@ const g = (s, e = {}, o = {}) => {
|
|
|
23
25
|
`cdn/stories/${s}`,
|
|
24
26
|
e
|
|
25
27
|
);
|
|
26
|
-
|
|
28
|
+
i(r.story), n && r.story.id && u(
|
|
27
29
|
r.story.id,
|
|
28
|
-
(y) =>
|
|
30
|
+
(y) => i(y),
|
|
29
31
|
o
|
|
30
32
|
);
|
|
31
33
|
}
|
|
32
34
|
a();
|
|
33
|
-
}, [s, JSON.stringify(e), t]), t ? (o.resolveRelations = o.resolveRelations ?? e.resolve_relations, o.resolveLinks = o.resolveLinks ?? e.resolve_links,
|
|
34
|
-
}
|
|
35
|
+
}, [s, JSON.stringify(e), t]), t ? (o.resolveRelations = o.resolveRelations ?? e.resolve_relations, o.resolveLinks = o.resolveLinks ?? e.resolve_links, l) : null;
|
|
36
|
+
};
|
|
35
37
|
export {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
_ as useStoryblokBridge,
|
|
64
|
-
c as useStoryblokRichText,
|
|
65
|
-
x as useStoryblokRichTextResolver,
|
|
66
|
-
$ as useStoryblokState
|
|
38
|
+
I as StoryblokComponent,
|
|
39
|
+
j as StoryblokRichText,
|
|
40
|
+
x as apiPlugin,
|
|
41
|
+
N as buildStoryblokImage,
|
|
42
|
+
z as convertAttributesInElement,
|
|
43
|
+
_ as createRichTextRenderer,
|
|
44
|
+
U as getComponent,
|
|
45
|
+
W as getCustomFallbackComponent,
|
|
46
|
+
X as getEnableFallbackComponent,
|
|
47
|
+
k as getStoryblokApi,
|
|
48
|
+
D as isBridgeLoaded,
|
|
49
|
+
G as isBrowser,
|
|
50
|
+
H as isIframe,
|
|
51
|
+
K as isServer,
|
|
52
|
+
M as isVisualEditor,
|
|
53
|
+
v as loadStoryblokBridge,
|
|
54
|
+
R as registerStoryblokBridge,
|
|
55
|
+
V as renderRichText,
|
|
56
|
+
Z as setComponents,
|
|
57
|
+
Y as splitTableRows,
|
|
58
|
+
w as storyblokEditable,
|
|
59
|
+
C as storyblokInit,
|
|
60
|
+
S as useStoryblok,
|
|
61
|
+
k as useStoryblokApi,
|
|
62
|
+
B as useStoryblokBridge,
|
|
63
|
+
F as useStoryblokRichText,
|
|
64
|
+
h as useStoryblokState
|
|
67
65
|
};
|
package/dist/richtext.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./core/rich-text-renderer.js");require("@storyblok/richtext");const o=require("./core/storyblok-component.js"),r=require("./core/create-default-blok.js"),c=(e={})=>t.createRichTextRenderer({optimizeImage:e.optimizeImage,components:{blok:r.createDefaultBlok(o),...e.components}});exports.useStoryblokRichText=c;
|
package/dist/richtext.mjs
CHANGED
|
@@ -1,8 +1,14 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { createRichTextRenderer as e } from "./core/rich-text-renderer.mjs";
|
|
2
|
+
import "@storyblok/richtext";
|
|
3
|
+
import t from "./core/storyblok-component.mjs";
|
|
4
|
+
import { createDefaultBlok as r } from "./core/create-default-blok.mjs";
|
|
5
|
+
const c = (o = {}) => e({
|
|
6
|
+
optimizeImage: o.optimizeImage,
|
|
7
|
+
components: {
|
|
8
|
+
blok: r(t),
|
|
9
|
+
...o.components
|
|
10
|
+
}
|
|
5
11
|
});
|
|
6
12
|
export {
|
|
7
|
-
|
|
13
|
+
c as useStoryblokRichText
|
|
8
14
|
};
|