@storyblok/astro 2.0.3 → 2.0.4
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/storyblok-astro.js +4 -4
- package/dist/storyblok-astro.mjs +109 -111
- package/package.json +2 -2
package/dist/storyblok-astro.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(function(a,
|
|
1
|
+
(function(a,d){typeof exports=="object"&&typeof module<"u"?d(exports):typeof define=="function"&&define.amd?define(["exports"],d):(a=typeof globalThis<"u"?globalThis:a||self,d(a.storyblokAstro={}))})(this,function(a){"use strict";function d(t,e,r){const o="virtual:storyblok-init",n="\0"+o;return{name:"vite-plugin-storyblok-init",async resolveId(s){if(s===o)return n},async load(s){if(s===n)return`
|
|
2
2
|
import { storyblokInit, apiPlugin } from "@storyblok/js";
|
|
3
3
|
const { storyblokApi } = storyblokInit({
|
|
4
4
|
accessToken: "${t}",
|
|
@@ -6,9 +6,9 @@
|
|
|
6
6
|
apiOptions: ${JSON.stringify(r)},
|
|
7
7
|
});
|
|
8
8
|
export const storyblokApiInstance = storyblokApi;
|
|
9
|
-
`}}}const
|
|
9
|
+
`}}}const I=/[\p{Lu}]/u,E=/[\p{Ll}]/u,h=/^[\p{Lu}](?![\p{Lu}])/gu,f=/([\p{Alpha}\p{N}_]|$)/u,g=/[_.\- ]+/,S=new RegExp("^"+g.source),p=new RegExp(g.source+f.source,"gu"),b=new RegExp("\\d+"+f.source,"gu"),C=(t,e,r,o)=>{let n=!1,s=!1,c=!1,u=!1;for(let i=0;i<t.length;i++){const l=t[i];u=i>2?t[i-3]==="-":!0,n&&I.test(l)?(t=t.slice(0,i)+"-"+t.slice(i),n=!1,c=s,s=!0,i++):s&&c&&E.test(l)&&(!u||o)?(t=t.slice(0,i-1)+"-"+t.slice(i-1),c=s,s=!1,n=!0):(n=e(l)===l&&r(l)!==l,c=s,s=r(l)===l&&e(l)!==l)}return t},w=(t,e)=>(h.lastIndex=0,t.replace(h,r=>e(r))),R=(t,e)=>(p.lastIndex=0,b.lastIndex=0,t.replace(p,(r,o)=>e(o)).replace(b,r=>e(r)));function y(t,e){if(!(typeof t=="string"||Array.isArray(t)))throw new TypeError("Expected the input to be `string | string[]`");if(e={pascalCase:!1,preserveConsecutiveUppercase:!1,...e},Array.isArray(t)?t=t.map(s=>s.trim()).filter(s=>s.length).join("-"):t=t.trim(),t.length===0)return"";const r=e.locale===!1?s=>s.toLowerCase():s=>s.toLocaleLowerCase(e.locale),o=e.locale===!1?s=>s.toUpperCase():s=>s.toLocaleUpperCase(e.locale);return t.length===1?g.test(t)?"":e.pascalCase?o(t):r(t):(t!==r(t)&&(t=C(t,r,o,e.preserveConsecutiveUppercase)),t=t.replace(S,""),t=e.preserveConsecutiveUppercase?w(t,r):r(t),e.pascalCase&&(t=o(t.charAt(0))+t.slice(1)),R(t,o))}function $(t){const e="virtual:storyblok-components",r="\0"+e;return{name:"vite-plugin-storyblok-components",async resolveId(o){if(o===e)return r},async load(o){if(o===r){const n=[];for await(const[s,c]of Object.entries(t)){const{id:u}=await this.resolve("/src/"+c+".astro");n.push(`import ${y(s)} from "${u}"`)}return`${n.join(";")};export default {${Object.keys(t).map(s=>y(s)).join(",")}}`}}}}let k=!1;const m=[],x=t=>new Promise((e,r)=>{if(typeof window>"u"||(window.storyblokRegisterEvent=n=>{if(window.location===window.parent.location){console.warn("You are not in Draft Mode or in the Visual Editor.");return}k?n():m.push(n)},document.getElementById("storyblok-javascript-bridge")))return;const o=document.createElement("script");o.async=!0,o.src=t,o.id="storyblok-javascript-bridge",o.onerror=n=>r(n),o.onload=n=>{m.forEach(s=>s()),k=!0,e(n)},document.getElementsByTagName("head")[0].appendChild(o)});var N=Object.defineProperty,j=(t,e,r)=>e in t?N(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,v=(t,e,r)=>(j(t,typeof e!="symbol"?e+"":e,r),r);const L=function(t,e){const r={};for(const o in t){const n=t[o];e.indexOf(o)>-1&&n!==null&&(r[o]=n)}return r},_=t=>t==="email",O=()=>({singleTag:"hr"}),M=()=>({tag:"blockquote"}),P=()=>({tag:"ul"}),U=t=>({tag:["pre",{tag:"code",attrs:t.attrs}]}),D=()=>({singleTag:"br"}),B=t=>({tag:`h${t.attrs.level}`}),z=t=>({singleTag:[{tag:"img",attrs:L(t.attrs,["src","alt","title"])}]}),F=()=>({tag:"li"}),q=()=>({tag:"ol"}),J=()=>({tag:"p"}),V=()=>({tag:"b"}),K=()=>({tag:"strike"}),G=()=>({tag:"u"}),Y=()=>({tag:"strong"}),H=()=>({tag:"code"}),Q=()=>({tag:"i"}),W=t=>{const e={...t.attrs},{linktype:r="url"}=t.attrs;return _(r)&&(e.href=`mailto:${e.href}`),e.anchor&&(e.href=`${e.href}#${e.anchor}`,delete e.anchor),{tag:[{tag:"a",attrs:e}]}},Z=t=>({tag:[{tag:"span",attrs:t.attrs}]}),T={nodes:{horizontal_rule:O,blockquote:M,bullet_list:P,code_block:U,hard_break:D,heading:B,image:z,list_item:F,ordered_list:q,paragraph:J},marks:{bold:V,strike:K,underline:G,strong:Y,code:H,italic:Q,link:W,styled:Z}},X=function(t){const e={"&":"&","<":"<",">":">",'"':""","'":"'"},r=/[&<>"']/g,o=RegExp(r.source);return t&&o.test(t)?t.replace(r,n=>e[n]):t};class A{constructor(e){v(this,"marks"),v(this,"nodes"),e||(e=T),this.marks=e.marks||[],this.nodes=e.nodes||[]}addNode(e,r){this.nodes[e]=r}addMark(e,r){this.marks[e]=r}render(e){if(e&&e.content&&Array.isArray(e.content)){let r="";return e.content.forEach(o=>{r+=this.renderNode(o)}),r}return console.warn("The render method must receive an object with a content field, which is an array"),""}renderNode(e){const r=[];e.marks&&e.marks.forEach(n=>{const s=this.getMatchingMark(n);s&&r.push(this.renderOpeningTag(s.tag))});const o=this.getMatchingNode(e);return o&&o.tag&&r.push(this.renderOpeningTag(o.tag)),e.content?e.content.forEach(n=>{r.push(this.renderNode(n))}):e.text?r.push(X(e.text)):o&&o.singleTag?r.push(this.renderTag(o.singleTag," /")):o&&o.html&&r.push(o.html),o&&o.tag&&r.push(this.renderClosingTag(o.tag)),e.marks&&e.marks.slice(0).reverse().forEach(n=>{const s=this.getMatchingMark(n);s&&r.push(this.renderClosingTag(s.tag))}),r.join("")}renderTag(e,r){return e.constructor===String?`<${e}${r}>`:e.map(o=>{if(o.constructor===String)return`<${o}${r}>`;{let n=`<${o.tag}`;if(o.attrs)for(const s in o.attrs){const c=o.attrs[s];c!==null&&(n+=` ${s}="${c}"`)}return`${n}${r}>`}}).join("")}renderOpeningTag(e){return this.renderTag(e,"")}renderClosingTag(e){return e.constructor===String?`</${e}>`:e.slice(0).reverse().map(r=>r.constructor===String?`</${r}>`:`</${r.tag}>`).join("")}getMatchingNode(e){const r=this.nodes[e.type];if(typeof r=="function")return r(e)}getMatchingMark(e){const r=this.marks[e.type];if(typeof r=="function")return r(e)}}const ee=t=>{if(typeof t!="object"||typeof t._editable>"u")return{};const e=JSON.parse(t._editable.replace(/^<!--#storyblok#/,"").replace(/-->$/,""));return{"data-blok-c":JSON.stringify(e),"data-blok-uid":e.id+"-"+e.uid}};let te;const re="https://app.storyblok.com/f/storyblok-v2-latest.js",oe=(t,e)=>{t.addNode("blok",r=>{let o="";return r.attrs.body.forEach(n=>{o+=e(n.component,n)}),{html:o}})},se=(t,e,r)=>{let o=r||te;if(!o){console.error("Please initialize the Storyblok SDK before calling the renderRichText function");return}return t===""?"":t?(e&&(o=new A(e.schema),e.resolver&&oe(o,e.resolver)),o.render(t)):(console.warn(`${t} is not a valid Richtext object. This might be because the value of the richtext field is empty.
|
|
10
10
|
|
|
11
|
-
For more info about the richtext object check https://github.com/storyblok/storyblok-js#rendering-rich-text`),"")},
|
|
11
|
+
For more info about the richtext object check https://github.com/storyblok/storyblok-js#rendering-rich-text`),"")},ne=()=>x(re);function ae(){return globalThis.storyblokApiInstance||console.error("storyblokApiInstance has not been initialized correctly"),globalThis.storyblokApiInstance}function ie(t,e){const r=globalThis.storyblokApiInstance.richTextResolver;if(!r){console.error("Please initialize the Storyblok SDK before calling the renderRichText function");return}return se(t,e,r)}function le(t){const e={useCustomApi:!1,bridge:!0,...t};return{name:"@storyblok/astro",hooks:{"astro:config:setup":({injectScript:r,updateConfig:o})=>{o({vite:{plugins:[d(e.accessToken,e.useCustomApi,e.apiOptions),$(e.components)]}}),r("page-ssr",`
|
|
12
12
|
import { storyblokApiInstance } from "virtual:storyblok-init";
|
|
13
13
|
globalThis.storyblokApiInstance = storyblokApiInstance;
|
|
14
14
|
`),e.bridge&&r("page",`
|
|
@@ -23,4 +23,4 @@
|
|
|
23
23
|
}
|
|
24
24
|
});
|
|
25
25
|
});
|
|
26
|
-
`)}}}}a.RichTextResolver=
|
|
26
|
+
`)}}}}a.RichTextResolver=A,a.RichTextSchema=T,a.default=le,a.loadStoryblokBridge=ne,a.renderRichText=ie,a.storyblokEditable=ee,a.useStoryblokApi=ae,Object.defineProperties(a,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
package/dist/storyblok-astro.mjs
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
function
|
|
2
|
-
const o = "virtual:storyblok-init",
|
|
1
|
+
function m(t, e, r) {
|
|
2
|
+
const o = "virtual:storyblok-init", a = "\0" + o;
|
|
3
3
|
return {
|
|
4
4
|
name: "vite-plugin-storyblok-init",
|
|
5
5
|
async resolveId(s) {
|
|
6
6
|
if (s === o)
|
|
7
|
-
return
|
|
7
|
+
return a;
|
|
8
8
|
},
|
|
9
9
|
async load(s) {
|
|
10
|
-
if (s ===
|
|
10
|
+
if (s === a)
|
|
11
11
|
return `
|
|
12
12
|
import { storyblokInit, apiPlugin } from "@storyblok/js";
|
|
13
13
|
const { storyblokApi } = storyblokInit({
|
|
@@ -20,14 +20,14 @@ function I(t, e, r) {
|
|
|
20
20
|
}
|
|
21
21
|
};
|
|
22
22
|
}
|
|
23
|
-
const
|
|
24
|
-
let
|
|
25
|
-
for (let
|
|
26
|
-
const l = t[
|
|
27
|
-
c =
|
|
23
|
+
const v = /[\p{Lu}]/u, I = /[\p{Ll}]/u, u = /^[\p{Lu}](?![\p{Lu}])/gu, k = /([\p{Alpha}\p{N}_]|$)/u, d = /[_.\- ]+/, T = new RegExp("^" + d.source), g = new RegExp(d.source + k.source, "gu"), h = new RegExp("\\d+" + k.source, "gu"), A = (t, e, r, o) => {
|
|
24
|
+
let a = !1, s = !1, i = !1, c = !1;
|
|
25
|
+
for (let n = 0; n < t.length; n++) {
|
|
26
|
+
const l = t[n];
|
|
27
|
+
c = n > 2 ? t[n - 3] === "-" : !0, a && v.test(l) ? (t = t.slice(0, n) + "-" + t.slice(n), a = !1, i = s, s = !0, n++) : s && i && I.test(l) && (!c || o) ? (t = t.slice(0, n - 1) + "-" + t.slice(n - 1), i = s, s = !1, a = !0) : (a = e(l) === l && r(l) !== l, i = s, s = r(l) === l && e(l) !== l);
|
|
28
28
|
}
|
|
29
29
|
return t;
|
|
30
|
-
},
|
|
30
|
+
}, E = (t, e) => (u.lastIndex = 0, t.replace(u, (r) => e(r))), C = (t, e) => (g.lastIndex = 0, h.lastIndex = 0, t.replace(g, (r, o) => e(o)).replace(h, (r) => e(r)));
|
|
31
31
|
function p(t, e) {
|
|
32
32
|
if (!(typeof t == "string" || Array.isArray(t)))
|
|
33
33
|
throw new TypeError("Expected the input to be `string | string[]`");
|
|
@@ -38,9 +38,9 @@ function p(t, e) {
|
|
|
38
38
|
}, Array.isArray(t) ? t = t.map((s) => s.trim()).filter((s) => s.length).join("-") : t = t.trim(), t.length === 0)
|
|
39
39
|
return "";
|
|
40
40
|
const r = e.locale === !1 ? (s) => s.toLowerCase() : (s) => s.toLocaleLowerCase(e.locale), o = e.locale === !1 ? (s) => s.toUpperCase() : (s) => s.toLocaleUpperCase(e.locale);
|
|
41
|
-
return t.length === 1 ?
|
|
41
|
+
return t.length === 1 ? d.test(t) ? "" : e.pascalCase ? o(t) : r(t) : (t !== r(t) && (t = A(t, r, o, e.preserveConsecutiveUppercase)), t = t.replace(T, ""), t = e.preserveConsecutiveUppercase ? E(t, r) : r(t), e.pascalCase && (t = o(t.charAt(0)) + t.slice(1)), C(t, o));
|
|
42
42
|
}
|
|
43
|
-
function
|
|
43
|
+
function w(t) {
|
|
44
44
|
const e = "virtual:storyblok-components", r = "\0" + e;
|
|
45
45
|
return {
|
|
46
46
|
name: "vite-plugin-storyblok-components",
|
|
@@ -50,54 +50,46 @@ function R(t) {
|
|
|
50
50
|
},
|
|
51
51
|
async load(o) {
|
|
52
52
|
if (o === r) {
|
|
53
|
-
const
|
|
53
|
+
const a = [];
|
|
54
54
|
for await (const [s, i] of Object.entries(t)) {
|
|
55
55
|
const { id: c } = await this.resolve("/src/" + i + ".astro");
|
|
56
|
-
|
|
56
|
+
a.push(`import ${p(s)} from "${c}"`);
|
|
57
57
|
}
|
|
58
|
-
return `${
|
|
58
|
+
return `${a.join(";")};export default {${Object.keys(t).map((s) => p(s)).join(",")}}`;
|
|
59
59
|
}
|
|
60
60
|
}
|
|
61
61
|
};
|
|
62
62
|
}
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
if (f)
|
|
67
|
-
for (var r of f(e))
|
|
68
|
-
$.call(e, r) && b(t, r, e[r]);
|
|
69
|
-
return t;
|
|
70
|
-
};
|
|
71
|
-
let y = !1;
|
|
72
|
-
const m = [], P = (t) => new Promise((e, r) => {
|
|
73
|
-
if (typeof window > "u" || (window.storyblokRegisterEvent = (n) => {
|
|
63
|
+
let f = !1;
|
|
64
|
+
const b = [], S = (t) => new Promise((e, r) => {
|
|
65
|
+
if (typeof window > "u" || (window.storyblokRegisterEvent = (a) => {
|
|
74
66
|
if (window.location === window.parent.location) {
|
|
75
67
|
console.warn("You are not in Draft Mode or in the Visual Editor.");
|
|
76
68
|
return;
|
|
77
69
|
}
|
|
78
|
-
|
|
70
|
+
f ? a() : b.push(a);
|
|
79
71
|
}, document.getElementById("storyblok-javascript-bridge")))
|
|
80
72
|
return;
|
|
81
73
|
const o = document.createElement("script");
|
|
82
|
-
o.async = !0, o.src = t, o.id = "storyblok-javascript-bridge", o.onerror = (
|
|
83
|
-
|
|
74
|
+
o.async = !0, o.src = t, o.id = "storyblok-javascript-bridge", o.onerror = (a) => r(a), o.onload = (a) => {
|
|
75
|
+
b.forEach((s) => s()), f = !0, e(a);
|
|
84
76
|
}, document.getElementsByTagName("head")[0].appendChild(o);
|
|
85
77
|
});
|
|
86
|
-
var
|
|
87
|
-
const
|
|
78
|
+
var $ = Object.defineProperty, R = (t, e, r) => e in t ? $(t, e, { enumerable: !0, configurable: !0, writable: !0, value: r }) : t[e] = r, y = (t, e, r) => (R(t, typeof e != "symbol" ? e + "" : e, r), r);
|
|
79
|
+
const x = function(t, e) {
|
|
88
80
|
const r = {};
|
|
89
81
|
for (const o in t) {
|
|
90
|
-
const
|
|
91
|
-
e.indexOf(o) > -1 &&
|
|
82
|
+
const a = t[o];
|
|
83
|
+
e.indexOf(o) > -1 && a !== null && (r[o] = a);
|
|
92
84
|
}
|
|
93
85
|
return r;
|
|
94
|
-
},
|
|
86
|
+
}, N = (t) => t === "email", L = () => ({
|
|
95
87
|
singleTag: "hr"
|
|
96
|
-
}),
|
|
88
|
+
}), j = () => ({
|
|
97
89
|
tag: "blockquote"
|
|
98
|
-
}),
|
|
90
|
+
}), O = () => ({
|
|
99
91
|
tag: "ul"
|
|
100
|
-
}),
|
|
92
|
+
}), _ = (t) => ({
|
|
101
93
|
tag: [
|
|
102
94
|
"pre",
|
|
103
95
|
{
|
|
@@ -105,38 +97,38 @@ const j = function(t, e) {
|
|
|
105
97
|
attrs: t.attrs
|
|
106
98
|
}
|
|
107
99
|
]
|
|
108
|
-
}),
|
|
100
|
+
}), P = () => ({
|
|
109
101
|
singleTag: "br"
|
|
110
|
-
}),
|
|
102
|
+
}), M = (t) => ({
|
|
111
103
|
tag: `h${t.attrs.level}`
|
|
112
|
-
}),
|
|
104
|
+
}), U = (t) => ({
|
|
113
105
|
singleTag: [
|
|
114
106
|
{
|
|
115
107
|
tag: "img",
|
|
116
|
-
attrs:
|
|
108
|
+
attrs: x(t.attrs, ["src", "alt", "title"])
|
|
117
109
|
}
|
|
118
110
|
]
|
|
119
|
-
}),
|
|
111
|
+
}), D = () => ({
|
|
120
112
|
tag: "li"
|
|
121
|
-
}),
|
|
113
|
+
}), B = () => ({
|
|
122
114
|
tag: "ol"
|
|
123
|
-
}),
|
|
115
|
+
}), z = () => ({
|
|
124
116
|
tag: "p"
|
|
125
|
-
}),
|
|
117
|
+
}), F = () => ({
|
|
126
118
|
tag: "b"
|
|
127
|
-
}),
|
|
119
|
+
}), q = () => ({
|
|
128
120
|
tag: "strike"
|
|
129
|
-
}),
|
|
121
|
+
}), J = () => ({
|
|
130
122
|
tag: "u"
|
|
131
|
-
}),
|
|
123
|
+
}), V = () => ({
|
|
132
124
|
tag: "strong"
|
|
133
|
-
}),
|
|
125
|
+
}), K = () => ({
|
|
134
126
|
tag: "code"
|
|
135
|
-
}),
|
|
127
|
+
}), G = () => ({
|
|
136
128
|
tag: "i"
|
|
137
|
-
}),
|
|
138
|
-
const e =
|
|
139
|
-
return
|
|
129
|
+
}), Y = (t) => {
|
|
130
|
+
const e = { ...t.attrs }, { linktype: r = "url" } = t.attrs;
|
|
131
|
+
return N(r) && (e.href = `mailto:${e.href}`), e.anchor && (e.href = `${e.href}#${e.anchor}`, delete e.anchor), {
|
|
140
132
|
tag: [
|
|
141
133
|
{
|
|
142
134
|
tag: "a",
|
|
@@ -144,37 +136,37 @@ const j = function(t, e) {
|
|
|
144
136
|
}
|
|
145
137
|
]
|
|
146
138
|
};
|
|
147
|
-
},
|
|
139
|
+
}, H = (t) => ({
|
|
148
140
|
tag: [
|
|
149
141
|
{
|
|
150
142
|
tag: "span",
|
|
151
143
|
attrs: t.attrs
|
|
152
144
|
}
|
|
153
145
|
]
|
|
154
|
-
}),
|
|
146
|
+
}), Q = {
|
|
155
147
|
nodes: {
|
|
156
|
-
horizontal_rule:
|
|
157
|
-
blockquote:
|
|
158
|
-
bullet_list:
|
|
159
|
-
code_block:
|
|
160
|
-
hard_break:
|
|
161
|
-
heading:
|
|
162
|
-
image:
|
|
163
|
-
list_item:
|
|
164
|
-
ordered_list:
|
|
165
|
-
paragraph:
|
|
148
|
+
horizontal_rule: L,
|
|
149
|
+
blockquote: j,
|
|
150
|
+
bullet_list: O,
|
|
151
|
+
code_block: _,
|
|
152
|
+
hard_break: P,
|
|
153
|
+
heading: M,
|
|
154
|
+
image: U,
|
|
155
|
+
list_item: D,
|
|
156
|
+
ordered_list: B,
|
|
157
|
+
paragraph: z
|
|
166
158
|
},
|
|
167
159
|
marks: {
|
|
168
|
-
bold:
|
|
169
|
-
strike:
|
|
170
|
-
underline:
|
|
171
|
-
strong:
|
|
172
|
-
code:
|
|
173
|
-
italic:
|
|
174
|
-
link:
|
|
175
|
-
styled:
|
|
160
|
+
bold: F,
|
|
161
|
+
strike: q,
|
|
162
|
+
underline: J,
|
|
163
|
+
strong: V,
|
|
164
|
+
code: K,
|
|
165
|
+
italic: G,
|
|
166
|
+
link: Y,
|
|
167
|
+
styled: H
|
|
176
168
|
}
|
|
177
|
-
},
|
|
169
|
+
}, W = function(t) {
|
|
178
170
|
const e = {
|
|
179
171
|
"&": "&",
|
|
180
172
|
"<": "<",
|
|
@@ -182,11 +174,11 @@ const j = function(t, e) {
|
|
|
182
174
|
'"': """,
|
|
183
175
|
"'": "'"
|
|
184
176
|
}, r = /[&<>"']/g, o = RegExp(r.source);
|
|
185
|
-
return t && o.test(t) ? t.replace(r, (
|
|
177
|
+
return t && o.test(t) ? t.replace(r, (a) => e[a]) : t;
|
|
186
178
|
};
|
|
187
|
-
class
|
|
179
|
+
class Z {
|
|
188
180
|
constructor(e) {
|
|
189
|
-
|
|
181
|
+
y(this, "marks"), y(this, "nodes"), e || (e = Q), this.marks = e.marks || [], this.nodes = e.nodes || [];
|
|
190
182
|
}
|
|
191
183
|
addNode(e, r) {
|
|
192
184
|
this.nodes[e] = r;
|
|
@@ -201,19 +193,21 @@ class se {
|
|
|
201
193
|
r += this.renderNode(o);
|
|
202
194
|
}), r;
|
|
203
195
|
}
|
|
204
|
-
return console.warn(
|
|
196
|
+
return console.warn(
|
|
197
|
+
"The render method must receive an object with a content field, which is an array"
|
|
198
|
+
), "";
|
|
205
199
|
}
|
|
206
200
|
renderNode(e) {
|
|
207
201
|
const r = [];
|
|
208
|
-
e.marks && e.marks.forEach((
|
|
209
|
-
const s = this.getMatchingMark(
|
|
202
|
+
e.marks && e.marks.forEach((a) => {
|
|
203
|
+
const s = this.getMatchingMark(a);
|
|
210
204
|
s && r.push(this.renderOpeningTag(s.tag));
|
|
211
205
|
});
|
|
212
206
|
const o = this.getMatchingNode(e);
|
|
213
|
-
return o && o.tag && r.push(this.renderOpeningTag(o.tag)), e.content ? e.content.forEach((
|
|
214
|
-
r.push(this.renderNode(
|
|
215
|
-
}) : e.text ? r.push(
|
|
216
|
-
const s = this.getMatchingMark(
|
|
207
|
+
return o && o.tag && r.push(this.renderOpeningTag(o.tag)), e.content ? e.content.forEach((a) => {
|
|
208
|
+
r.push(this.renderNode(a));
|
|
209
|
+
}) : e.text ? r.push(W(e.text)) : o && o.singleTag ? r.push(this.renderTag(o.singleTag, " /")) : o && o.html && r.push(o.html), o && o.tag && r.push(this.renderClosingTag(o.tag)), e.marks && e.marks.slice(0).reverse().forEach((a) => {
|
|
210
|
+
const s = this.getMatchingMark(a);
|
|
217
211
|
s && r.push(this.renderClosingTag(s.tag));
|
|
218
212
|
}), r.join("");
|
|
219
213
|
}
|
|
@@ -222,13 +216,13 @@ class se {
|
|
|
222
216
|
if (o.constructor === String)
|
|
223
217
|
return `<${o}${r}>`;
|
|
224
218
|
{
|
|
225
|
-
let
|
|
219
|
+
let a = `<${o.tag}`;
|
|
226
220
|
if (o.attrs)
|
|
227
221
|
for (const s in o.attrs) {
|
|
228
222
|
const i = o.attrs[s];
|
|
229
|
-
i !== null && (
|
|
223
|
+
i !== null && (a += ` ${s}="${i}"`);
|
|
230
224
|
}
|
|
231
|
-
return `${
|
|
225
|
+
return `${a}${r}>`;
|
|
232
226
|
}
|
|
233
227
|
}).join("");
|
|
234
228
|
}
|
|
@@ -249,39 +243,43 @@ class se {
|
|
|
249
243
|
return r(e);
|
|
250
244
|
}
|
|
251
245
|
}
|
|
252
|
-
|
|
246
|
+
const oe = (t) => {
|
|
253
247
|
if (typeof t != "object" || typeof t._editable > "u")
|
|
254
248
|
return {};
|
|
255
|
-
const e = JSON.parse(
|
|
249
|
+
const e = JSON.parse(
|
|
250
|
+
t._editable.replace(/^<!--#storyblok#/, "").replace(/-->$/, "")
|
|
251
|
+
);
|
|
256
252
|
return {
|
|
257
253
|
"data-blok-c": JSON.stringify(e),
|
|
258
254
|
"data-blok-uid": e.id + "-" + e.uid
|
|
259
255
|
};
|
|
260
256
|
};
|
|
261
|
-
let
|
|
262
|
-
const
|
|
257
|
+
let X;
|
|
258
|
+
const ee = "https://app.storyblok.com/f/storyblok-v2-latest.js", te = (t, e) => {
|
|
263
259
|
t.addNode("blok", (r) => {
|
|
264
260
|
let o = "";
|
|
265
|
-
return r.attrs.body.forEach((
|
|
266
|
-
o += e(
|
|
261
|
+
return r.attrs.body.forEach((a) => {
|
|
262
|
+
o += e(a.component, a);
|
|
267
263
|
}), {
|
|
268
264
|
html: o
|
|
269
265
|
};
|
|
270
266
|
});
|
|
271
|
-
},
|
|
272
|
-
let o = r ||
|
|
267
|
+
}, re = (t, e, r) => {
|
|
268
|
+
let o = r || X;
|
|
273
269
|
if (!o) {
|
|
274
|
-
console.error(
|
|
270
|
+
console.error(
|
|
271
|
+
"Please initialize the Storyblok SDK before calling the renderRichText function"
|
|
272
|
+
);
|
|
275
273
|
return;
|
|
276
274
|
}
|
|
277
|
-
return t === "" ? "" : t ? (e && (o = new
|
|
275
|
+
return t === "" ? "" : t ? (e && (o = new Z(e.schema), e.resolver && te(o, e.resolver)), o.render(t)) : (console.warn(`${t} is not a valid Richtext object. This might be because the value of the richtext field is empty.
|
|
278
276
|
|
|
279
277
|
For more info about the richtext object check https://github.com/storyblok/storyblok-js#rendering-rich-text`), "");
|
|
280
|
-
},
|
|
281
|
-
function
|
|
278
|
+
}, se = () => S(ee);
|
|
279
|
+
function ae() {
|
|
282
280
|
return globalThis.storyblokApiInstance || console.error("storyblokApiInstance has not been initialized correctly"), globalThis.storyblokApiInstance;
|
|
283
281
|
}
|
|
284
|
-
function
|
|
282
|
+
function ne(t, e) {
|
|
285
283
|
const r = globalThis.storyblokApiInstance.richTextResolver;
|
|
286
284
|
if (!r) {
|
|
287
285
|
console.error(
|
|
@@ -289,9 +287,9 @@ function ge(t, e) {
|
|
|
289
287
|
);
|
|
290
288
|
return;
|
|
291
289
|
}
|
|
292
|
-
return
|
|
290
|
+
return re(t, e, r);
|
|
293
291
|
}
|
|
294
|
-
function
|
|
292
|
+
function le(t) {
|
|
295
293
|
const e = {
|
|
296
294
|
useCustomApi: !1,
|
|
297
295
|
bridge: !0,
|
|
@@ -304,12 +302,12 @@ function he(t) {
|
|
|
304
302
|
o({
|
|
305
303
|
vite: {
|
|
306
304
|
plugins: [
|
|
307
|
-
|
|
305
|
+
m(
|
|
308
306
|
e.accessToken,
|
|
309
307
|
e.useCustomApi,
|
|
310
308
|
e.apiOptions
|
|
311
309
|
),
|
|
312
|
-
|
|
310
|
+
w(e.components)
|
|
313
311
|
]
|
|
314
312
|
}
|
|
315
313
|
}), r(
|
|
@@ -339,11 +337,11 @@ function he(t) {
|
|
|
339
337
|
};
|
|
340
338
|
}
|
|
341
339
|
export {
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
340
|
+
Z as RichTextResolver,
|
|
341
|
+
Q as RichTextSchema,
|
|
342
|
+
le as default,
|
|
343
|
+
se as loadStoryblokBridge,
|
|
344
|
+
ne as renderRichText,
|
|
345
|
+
oe as storyblokEditable,
|
|
346
|
+
ae as useStoryblokApi
|
|
349
347
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@storyblok/astro",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.4",
|
|
4
4
|
"description": "Official Astro integration for the Storyblok Headless CMS",
|
|
5
5
|
"main": "./dist/storyblok-astro.js",
|
|
6
6
|
"module": "./dist/storyblok-astro.mjs",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"prepublishOnly": "npm run build && cp ../README.md ./"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"@storyblok/js": "^2.0.
|
|
31
|
+
"@storyblok/js": "^2.0.9",
|
|
32
32
|
"camelcase": "^7.0.1"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|