@builder.io/sdk-react-nextjs 0.16.18 → 0.16.20
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/lib/browser/blocks/columns/columns.cjs +3 -3
- package/lib/browser/blocks/columns/columns.mjs +41 -33
- package/lib/browser/components/content/components/enable-editor.cjs +1 -1
- package/lib/browser/components/content/components/enable-editor.mjs +107 -105
- package/lib/browser/components/content/content.cjs +1 -1
- package/lib/browser/components/content/content.mjs +23 -21
- package/lib/browser/components/content-variants/content-variants.cjs +1 -1
- package/lib/browser/components/content-variants/content-variants.mjs +10 -8
- package/lib/browser/constants/sdk-version.cjs +1 -1
- package/lib/browser/constants/sdk-version.mjs +1 -1
- package/lib/browser/functions/evaluate/node-runtime/node-runtime.cjs +3 -3
- package/lib/browser/functions/evaluate/node-runtime/node-runtime.mjs +16 -14
- package/lib/browser/functions/get-content/generate-content-url.cjs +1 -1
- package/lib/browser/functions/get-content/generate-content-url.mjs +24 -23
- package/lib/browser/functions/track/index.cjs +1 -1
- package/lib/browser/functions/track/index.mjs +21 -19
- package/lib/edge/blocks/columns/columns.cjs +3 -3
- package/lib/edge/blocks/columns/columns.mjs +41 -33
- package/lib/edge/components/content/components/enable-editor.cjs +1 -1
- package/lib/edge/components/content/components/enable-editor.mjs +107 -105
- package/lib/edge/components/content/content.cjs +1 -1
- package/lib/edge/components/content/content.mjs +23 -21
- package/lib/edge/components/content-variants/content-variants.cjs +1 -1
- package/lib/edge/components/content-variants/content-variants.mjs +10 -8
- package/lib/edge/constants/sdk-version.cjs +1 -1
- package/lib/edge/constants/sdk-version.mjs +1 -1
- package/lib/edge/functions/evaluate/node-runtime/node-runtime.cjs +3 -3
- package/lib/edge/functions/evaluate/node-runtime/node-runtime.mjs +16 -14
- package/lib/edge/functions/get-content/generate-content-url.cjs +1 -1
- package/lib/edge/functions/get-content/generate-content-url.mjs +24 -23
- package/lib/edge/functions/track/index.cjs +1 -1
- package/lib/edge/functions/track/index.mjs +21 -19
- package/lib/node/blocks/columns/columns.cjs +3 -3
- package/lib/node/blocks/columns/columns.mjs +41 -33
- package/lib/node/components/content/components/enable-editor.cjs +1 -1
- package/lib/node/components/content/components/enable-editor.mjs +107 -105
- package/lib/node/components/content/content.cjs +1 -1
- package/lib/node/components/content/content.mjs +23 -21
- package/lib/node/components/content-variants/content-variants.cjs +1 -1
- package/lib/node/components/content-variants/content-variants.mjs +10 -8
- package/lib/node/constants/sdk-version.cjs +1 -1
- package/lib/node/constants/sdk-version.mjs +1 -1
- package/lib/node/functions/evaluate/node-runtime/node-runtime.cjs +6 -6
- package/lib/node/functions/evaluate/node-runtime/node-runtime.mjs +20 -18
- package/lib/node/functions/get-content/generate-content-url.cjs +1 -1
- package/lib/node/functions/get-content/generate-content-url.mjs +24 -23
- package/lib/node/functions/track/index.cjs +1 -1
- package/lib/node/functions/track/index.mjs +21 -19
- package/package.json +1 -1
- package/types/cjs/components/content/components/enable-editor.d.ts +1 -1
- package/types/cjs/components/content-variants/content-variants.types.d.ts +4 -0
- package/types/cjs/constants/sdk-version.d.ts +1 -1
- package/types/cjs/functions/evaluate/node-runtime/setIvm.d.ts +1 -0
- package/types/cjs/functions/get-content/types.d.ts +4 -0
- package/types/cjs/functions/track/index.d.ts +3 -1
- package/types/esm/components/content/components/enable-editor.d.ts +1 -1
- package/types/esm/components/content-variants/content-variants.types.d.ts +4 -0
- package/types/esm/constants/sdk-version.d.ts +1 -1
- package/types/esm/functions/evaluate/node-runtime/setIvm.d.ts +1 -0
- package/types/esm/functions/get-content/types.d.ts +4 -0
- package/types/esm/functions/track/index.d.ts +3 -1
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
import { jsxs as W, jsx as
|
|
1
|
+
import { jsxs as W, jsx as i } from "react/jsx-runtime";
|
|
2
2
|
import { getDefaultRegisteredComponents as I } from "../../constants/builder-registered-components.mjs";
|
|
3
3
|
import { evaluate as P } from "../../functions/evaluate/evaluate.mjs";
|
|
4
4
|
import { serializeIncludingFunctions as b } from "../../functions/register-component.mjs";
|
|
5
5
|
import { logger as V } from "../../helpers/logger.mjs";
|
|
6
6
|
import K from "../blocks/blocks.mjs";
|
|
7
|
-
import { getUpdateVariantVisibilityScript as
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import { getContentInitialValue as
|
|
7
|
+
import { getUpdateVariantVisibilityScript as R } from "../content-variants/helpers.mjs";
|
|
8
|
+
import T from "../inlined-script.mjs";
|
|
9
|
+
import N from "./components/enable-editor.mjs";
|
|
10
|
+
import j from "./components/styles.mjs";
|
|
11
|
+
import { getContentInitialValue as H, getRootStateInitialValue as A } from "./content.helpers.mjs";
|
|
12
12
|
function L(t) {
|
|
13
|
-
var c, r,
|
|
14
|
-
const h =
|
|
13
|
+
var c, r, d, l, u, m, s, f, C, S, k, g, x;
|
|
14
|
+
const h = R({
|
|
15
15
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion, @typescript-eslint/no-non-null-asserted-optional-chain
|
|
16
16
|
variationId: (c = t.content) == null ? void 0 : c.testVariationId,
|
|
17
17
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion, @typescript-eslint/no-non-null-asserted-optional-chain
|
|
18
18
|
contentId: (r = t.content) == null ? void 0 : r.id
|
|
19
19
|
}), v = [
|
|
20
20
|
...I(),
|
|
21
|
-
...((
|
|
21
|
+
...((d = t.customComponents) == null ? void 0 : d.filter(({ models: e }) => !(e != null && e.length) || !t.model ? !0 : e.includes(t.model))) || []
|
|
22
22
|
].reduce(
|
|
23
23
|
(e, { component: y, ...o }) => ({
|
|
24
24
|
...e,
|
|
@@ -29,12 +29,12 @@ function L(t) {
|
|
|
29
29
|
}),
|
|
30
30
|
{}
|
|
31
31
|
), n = {
|
|
32
|
-
content:
|
|
32
|
+
content: H({
|
|
33
33
|
content: t.content,
|
|
34
34
|
data: t.data
|
|
35
35
|
}),
|
|
36
36
|
localState: void 0,
|
|
37
|
-
rootState:
|
|
37
|
+
rootState: A({
|
|
38
38
|
content: t.content,
|
|
39
39
|
data: t.data,
|
|
40
40
|
locale: t.locale
|
|
@@ -46,7 +46,7 @@ function L(t) {
|
|
|
46
46
|
apiVersion: t.apiVersion,
|
|
47
47
|
componentInfos: [
|
|
48
48
|
...I(),
|
|
49
|
-
...((
|
|
49
|
+
...((l = t.customComponents) == null ? void 0 : l.filter(({ models: e }) => !(e != null && e.length) || !t.model ? !0 : e.includes(t.model))) || []
|
|
50
50
|
].reduce(
|
|
51
51
|
(e, { component: y, ...o }) => ({
|
|
52
52
|
...e,
|
|
@@ -62,9 +62,9 @@ function L(t) {
|
|
|
62
62
|
t.apiKey || V.error(
|
|
63
63
|
"No API key provided to `Content` component. This can cause issues. Please provide an API key using the `apiKey` prop."
|
|
64
64
|
);
|
|
65
|
-
const
|
|
66
|
-
return
|
|
67
|
-
code:
|
|
65
|
+
const a = (m = (u = n.content) == null ? void 0 : u.data) == null ? void 0 : m.jsCode;
|
|
66
|
+
return a && P({
|
|
67
|
+
code: a,
|
|
68
68
|
context: t.context || {},
|
|
69
69
|
localState: void 0,
|
|
70
70
|
rootState: n.rootState,
|
|
@@ -73,8 +73,9 @@ function L(t) {
|
|
|
73
73
|
},
|
|
74
74
|
isExpression: !1
|
|
75
75
|
}), /* @__PURE__ */ W(
|
|
76
|
-
|
|
76
|
+
N,
|
|
77
77
|
{
|
|
78
|
+
apiHost: t.apiHost,
|
|
78
79
|
nonce: t.nonce,
|
|
79
80
|
content: t.content,
|
|
80
81
|
data: t.data,
|
|
@@ -89,17 +90,18 @@ function L(t) {
|
|
|
89
90
|
contentWrapper: t.contentWrapper,
|
|
90
91
|
contentWrapperProps: t.contentWrapperProps,
|
|
91
92
|
trustedHosts: t.trustedHosts,
|
|
93
|
+
isNestedRender: t.isNestedRender,
|
|
92
94
|
children: [
|
|
93
|
-
t.isSsrAbTest ? /* @__PURE__ */
|
|
94
|
-
|
|
95
|
+
t.isSsrAbTest ? /* @__PURE__ */ i(
|
|
96
|
+
T,
|
|
95
97
|
{
|
|
96
98
|
id: "builderio-variant-visibility",
|
|
97
99
|
scriptStr: h,
|
|
98
100
|
nonce: t.nonce || ""
|
|
99
101
|
}
|
|
100
102
|
) : null,
|
|
101
|
-
/* @__PURE__ */
|
|
102
|
-
|
|
103
|
+
/* @__PURE__ */ i(
|
|
104
|
+
j,
|
|
103
105
|
{
|
|
104
106
|
nonce: t.nonce || "",
|
|
105
107
|
isNestedRender: t.isNestedRender,
|
|
@@ -108,7 +110,7 @@ function L(t) {
|
|
|
108
110
|
customFonts: (k = (S = n.content) == null ? void 0 : S.data) == null ? void 0 : k.customFonts
|
|
109
111
|
}
|
|
110
112
|
),
|
|
111
|
-
/* @__PURE__ */
|
|
113
|
+
/* @__PURE__ */ i(
|
|
112
114
|
K,
|
|
113
115
|
{
|
|
114
116
|
blocks: (x = (g = n.content) == null ? void 0 : g.data) == null ? void 0 : x.blocks,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const e=require("react/jsx-runtime"),S=require("../../constants/target.cjs"),C=require("../../helpers/ab-tests.cjs"),s=require("../../helpers/canTrack.cjs"),d=require("../content/content.cjs"),l=require("../inlined-script.cjs"),T=require("../inlined-styles.cjs"),a=require("./helpers.cjs");function V(t){var r;const c=a.checkShouldRenderVariants({canTrack:s.getDefaultCanTrack(t.canTrack),content:t.content}),u=function(){var n;return a.getUpdateCookieAndStylesScript(a.getVariants(t.content).map(o=>({id:o.testVariationId,testRatio:o.testRatio})),((n=t.content)==null?void 0:n.id)||"")},k=function(){return a.getVariants(t.content).map(n=>`.variant-${n.testVariationId} { display: none; } `).join("")},m=function(){var n;return c?{...t.content,testVariationId:(n=t.content)==null?void 0:n.id}:C.handleABTestingSync({item:t.content,canTrack:s.getDefaultCanTrack(t.canTrack)})};return e.jsxs(e.Fragment,{children:[!t.isNestedRender&&S.TARGET!=="reactNative"?e.jsx(l,{id:"builderio-init-variants-fns",scriptStr:a.getInitVariantsFnsScriptString(),nonce:t.nonce||""}):null,c?e.jsxs(e.Fragment,{children:[e.jsx(T,{id:"builderio-variants",styles:k(),nonce:t.nonce||""}),e.jsx(l,{id:"builderio-variants-visibility",scriptStr:u(),nonce:t.nonce||""}),(r=a.getVariants(t.content))==null?void 0:r.map(i=>e.jsx(d,{isNestedRender:t.isNestedRender,nonce:t.nonce,content:i,showContent:!1,model:t.model,data:t.data,context:t.context,apiKey:t.apiKey,apiVersion:t.apiVersion,customComponents:t.customComponents,linkComponent:t.linkComponent,canTrack:t.canTrack,locale:t.locale,enrich:t.enrich,isSsrAbTest:c,blocksWrapper:t.blocksWrapper,blocksWrapperProps:t.blocksWrapperProps,contentWrapper:t.contentWrapper,contentWrapperProps:t.contentWrapperProps,trustedHosts:t.trustedHosts},i.testVariationId))]}):null,e.jsx(d,{nonce:t.nonce,isNestedRender:t.isNestedRender,content:m(),showContent:!0,model:t.model,data:t.data,context:t.context,apiKey:t.apiKey,apiVersion:t.apiVersion,customComponents:t.customComponents,linkComponent:t.linkComponent,canTrack:t.canTrack,locale:t.locale,enrich:t.enrich,isSsrAbTest:c,blocksWrapper:t.blocksWrapper,blocksWrapperProps:t.blocksWrapperProps,contentWrapper:t.contentWrapper,contentWrapperProps:t.contentWrapperProps,trustedHosts:t.trustedHosts})]})}module.exports=V;
|
|
1
|
+
"use strict";const e=require("react/jsx-runtime"),S=require("../../constants/target.cjs"),C=require("../../helpers/ab-tests.cjs"),s=require("../../helpers/canTrack.cjs"),d=require("../content/content.cjs"),l=require("../inlined-script.cjs"),T=require("../inlined-styles.cjs"),a=require("./helpers.cjs");function V(t){var r;const c=a.checkShouldRenderVariants({canTrack:s.getDefaultCanTrack(t.canTrack),content:t.content}),u=function(){var n;return a.getUpdateCookieAndStylesScript(a.getVariants(t.content).map(o=>({id:o.testVariationId,testRatio:o.testRatio})),((n=t.content)==null?void 0:n.id)||"")},k=function(){return a.getVariants(t.content).map(n=>`.variant-${n.testVariationId} { display: none; } `).join("")},m=function(){var n;return c?{...t.content,testVariationId:(n=t.content)==null?void 0:n.id}:C.handleABTestingSync({item:t.content,canTrack:s.getDefaultCanTrack(t.canTrack)})};return e.jsxs(e.Fragment,{children:[!t.isNestedRender&&S.TARGET!=="reactNative"?e.jsx(l,{id:"builderio-init-variants-fns",scriptStr:a.getInitVariantsFnsScriptString(),nonce:t.nonce||""}):null,c?e.jsxs(e.Fragment,{children:[e.jsx(T,{id:"builderio-variants",styles:k(),nonce:t.nonce||""}),e.jsx(l,{id:"builderio-variants-visibility",scriptStr:u(),nonce:t.nonce||""}),(r=a.getVariants(t.content))==null?void 0:r.map(i=>e.jsx(d,{apiHost:t.apiHost,isNestedRender:t.isNestedRender,nonce:t.nonce,content:i,showContent:!1,model:t.model,data:t.data,context:t.context,apiKey:t.apiKey,apiVersion:t.apiVersion,customComponents:t.customComponents,linkComponent:t.linkComponent,canTrack:t.canTrack,locale:t.locale,enrich:t.enrich,isSsrAbTest:c,blocksWrapper:t.blocksWrapper,blocksWrapperProps:t.blocksWrapperProps,contentWrapper:t.contentWrapper,contentWrapperProps:t.contentWrapperProps,trustedHosts:t.trustedHosts},i.testVariationId))]}):null,e.jsx(d,{apiHost:t.apiHost,nonce:t.nonce,isNestedRender:t.isNestedRender,content:m(),showContent:!0,model:t.model,data:t.data,context:t.context,apiKey:t.apiKey,apiVersion:t.apiVersion,customComponents:t.customComponents,linkComponent:t.linkComponent,canTrack:t.canTrack,locale:t.locale,enrich:t.enrich,isSsrAbTest:c,blocksWrapper:t.blocksWrapper,blocksWrapperProps:t.blocksWrapperProps,contentWrapper:t.contentWrapper,contentWrapperProps:t.contentWrapperProps,trustedHosts:t.trustedHosts})]})}module.exports=V;
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { jsxs as d, Fragment as
|
|
1
|
+
import { jsxs as d, Fragment as s, jsx as i } from "react/jsx-runtime";
|
|
2
2
|
import { TARGET as f } from "../../constants/target.mjs";
|
|
3
3
|
import { handleABTestingSync as W } from "../../helpers/ab-tests.mjs";
|
|
4
|
-
import { getDefaultCanTrack as
|
|
4
|
+
import { getDefaultCanTrack as l } from "../../helpers/canTrack.mjs";
|
|
5
5
|
import m from "../content/content.mjs";
|
|
6
6
|
import u from "../inlined-script.mjs";
|
|
7
7
|
import V from "../inlined-styles.mjs";
|
|
8
8
|
import { checkShouldRenderVariants as b, getInitVariantsFnsScriptString as h, getVariants as o, getUpdateCookieAndStylesScript as y } from "./helpers.mjs";
|
|
9
|
-
function
|
|
9
|
+
function N(t) {
|
|
10
10
|
var c;
|
|
11
11
|
const a = b({
|
|
12
|
-
canTrack:
|
|
12
|
+
canTrack: l(t.canTrack),
|
|
13
13
|
content: t.content
|
|
14
14
|
}), k = function() {
|
|
15
15
|
var n;
|
|
@@ -29,10 +29,10 @@ function v(t) {
|
|
|
29
29
|
testVariationId: (n = t.content) == null ? void 0 : n.id
|
|
30
30
|
} : W({
|
|
31
31
|
item: t.content,
|
|
32
|
-
canTrack:
|
|
32
|
+
canTrack: l(t.canTrack)
|
|
33
33
|
});
|
|
34
34
|
};
|
|
35
|
-
return /* @__PURE__ */ d(
|
|
35
|
+
return /* @__PURE__ */ d(s, { children: [
|
|
36
36
|
!t.isNestedRender && f !== "reactNative" ? /* @__PURE__ */ i(
|
|
37
37
|
u,
|
|
38
38
|
{
|
|
@@ -41,7 +41,7 @@ function v(t) {
|
|
|
41
41
|
nonce: t.nonce || ""
|
|
42
42
|
}
|
|
43
43
|
) : null,
|
|
44
|
-
a ? /* @__PURE__ */ d(
|
|
44
|
+
a ? /* @__PURE__ */ d(s, { children: [
|
|
45
45
|
/* @__PURE__ */ i(
|
|
46
46
|
V,
|
|
47
47
|
{
|
|
@@ -61,6 +61,7 @@ function v(t) {
|
|
|
61
61
|
(c = o(t.content)) == null ? void 0 : c.map((e) => /* @__PURE__ */ i(
|
|
62
62
|
m,
|
|
63
63
|
{
|
|
64
|
+
apiHost: t.apiHost,
|
|
64
65
|
isNestedRender: t.isNestedRender,
|
|
65
66
|
nonce: t.nonce,
|
|
66
67
|
content: e,
|
|
@@ -88,6 +89,7 @@ function v(t) {
|
|
|
88
89
|
/* @__PURE__ */ i(
|
|
89
90
|
m,
|
|
90
91
|
{
|
|
92
|
+
apiHost: t.apiHost,
|
|
91
93
|
nonce: t.nonce,
|
|
92
94
|
isNestedRender: t.isNestedRender,
|
|
93
95
|
content: C(),
|
|
@@ -113,5 +115,5 @@ function v(t) {
|
|
|
113
115
|
] });
|
|
114
116
|
}
|
|
115
117
|
export {
|
|
116
|
-
|
|
118
|
+
N as default
|
|
117
119
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="0.16.
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="0.16.20";exports.SDK_VERSION=e;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("../../../constants/sdk-name.cjs"),l=require("../../../helpers/logger.cjs"),c=require("./safeDynamicRequire.cjs"),d="BUILDER_IVM";let n=null,s=null;const u=(t,e={})=>{n||(n=t,S(e))},m=o.SDK_NAME==="@builder.io/sdk-react-nextjs"||o.SDK_NAME==="@builder.io/sdk-react"||o.SDK_NAME==="@builder.io/sdk-qwik"||o.SDK_NAME==="@builder.io/sdk-vue",I=()=>{try{if(n)return n;const e=c.safeDynamicRequire("isolated-vm");if(e)return e}catch(e){l.logger.error("isolated-vm import error.",e)}const t=`${l.MSG_PREFIX}could not import \`isolated-vm\` module for safe script execution on a Node server.
|
|
2
2
|
|
|
3
3
|
SOLUTION: In a server-only execution path within your application, do one of the following:
|
|
4
4
|
|
|
5
|
-
${m?`- import and call \`initializeNodeRuntime()\` from "${
|
|
5
|
+
${m?`- import and call \`initializeNodeRuntime()\` from "${o.SDK_NAME}/node/init".`:""}
|
|
6
6
|
- add the following import: \`await import('isolated-vm')\`.
|
|
7
7
|
|
|
8
|
-
For more information, visit https://builder.io/c/docs/integration-tips#enabling-data-bindings-in-node-environments`;throw new Error(
|
|
8
|
+
For more information, visit https://builder.io/c/docs/integration-tips#enabling-data-bindings-in-node-environments`;throw new Error(t)};function S(t={memoryLimit:128}){if(s)return s;const e=I(),r=new e.Isolate(t).createContextSync(),i=r.global;return i.setSync("global",i.derefInto()),i.setSync("log",function(...a){console.log(...a)}),i.setSync(d,e),s=r,r}exports.setIvm=u;
|
|
@@ -1,38 +1,40 @@
|
|
|
1
1
|
import { SDK_NAME as e } from "../../../constants/sdk-name.mjs";
|
|
2
|
-
import { logger as
|
|
3
|
-
import { safeDynamicRequire as
|
|
4
|
-
const
|
|
5
|
-
let n = null;
|
|
6
|
-
const
|
|
7
|
-
n = t,
|
|
8
|
-
},
|
|
2
|
+
import { logger as a, MSG_PREFIX as c } from "../../../helpers/logger.mjs";
|
|
3
|
+
import { safeDynamicRequire as d } from "./safeDynamicRequire.mjs";
|
|
4
|
+
const m = "BUILDER_IVM";
|
|
5
|
+
let n = null, l = null;
|
|
6
|
+
const S = (t, o = {}) => {
|
|
7
|
+
n || (n = t, f(o));
|
|
8
|
+
}, u = e === "@builder.io/sdk-react-nextjs" || e === "@builder.io/sdk-react" || e === "@builder.io/sdk-qwik" || e === "@builder.io/sdk-vue", I = () => {
|
|
9
9
|
try {
|
|
10
10
|
if (n)
|
|
11
11
|
return n;
|
|
12
|
-
const o =
|
|
12
|
+
const o = d("isolated-vm");
|
|
13
13
|
if (o)
|
|
14
14
|
return o;
|
|
15
15
|
} catch (o) {
|
|
16
|
-
|
|
16
|
+
a.error("isolated-vm import error.", o);
|
|
17
17
|
}
|
|
18
|
-
const t = `${
|
|
18
|
+
const t = `${c}could not import \`isolated-vm\` module for safe script execution on a Node server.
|
|
19
19
|
|
|
20
20
|
SOLUTION: In a server-only execution path within your application, do one of the following:
|
|
21
21
|
|
|
22
|
-
${
|
|
22
|
+
${u ? `- import and call \`initializeNodeRuntime()\` from "${e}/node/init".` : ""}
|
|
23
23
|
- add the following import: \`await import('isolated-vm')\`.
|
|
24
24
|
|
|
25
25
|
For more information, visit https://builder.io/c/docs/integration-tips#enabling-data-bindings-in-node-environments`;
|
|
26
26
|
throw new Error(t);
|
|
27
27
|
};
|
|
28
|
-
function
|
|
28
|
+
function f(t = {
|
|
29
29
|
memoryLimit: 128
|
|
30
30
|
}) {
|
|
31
|
+
if (l)
|
|
32
|
+
return l;
|
|
31
33
|
const o = I(), r = new o.Isolate(t).createContextSync(), i = r.global;
|
|
32
34
|
return i.setSync("global", i.derefInto()), i.setSync("log", function(...s) {
|
|
33
35
|
console.log(...s);
|
|
34
|
-
}), i.setSync(
|
|
36
|
+
}), i.setSync(m, o), l = r, r;
|
|
35
37
|
}
|
|
36
38
|
export {
|
|
37
|
-
|
|
39
|
+
S as setIvm
|
|
38
40
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("../../helpers/flatten.cjs"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("../../helpers/flatten.cjs"),O=require("../../helpers/search/search.cjs"),A=require("../../types/api-version.cjs"),V=require("../get-builder-search-params/index.cjs"),y=r=>typeof r=="number"&&!isNaN(r)&&r>=0,$=r=>{const{limit:l=30,userAttributes:f,query:m,model:b,apiKey:h,enrich:u,locale:d,apiVersion:a=A.DEFAULT_API_VERSION,fields:P,omit:v,offset:i,cacheSeconds:n,staleCacheSeconds:o,sort:S,includeUnpublished:g,apiHost:N}=r;if(!h)throw new Error("Missing API key");if(!["v3"].includes(a))throw new Error(`Invalid apiVersion: expected 'v3', received '${a}'`);const U=l!==1,q=N||"https://cdn.builder.io",e=new URL(`${q}/api/${a}/content/${b}`);if(e.searchParams.set("apiKey",h),e.searchParams.set("limit",String(l)),e.searchParams.set("noTraverse",String(U)),e.searchParams.set("includeRefs",String(!0)),d&&e.searchParams.set("locale",d),u&&e.searchParams.set("enrich",String(u)),e.searchParams.set("omit",v||"meta.componentsUsed"),P&&e.searchParams.set("fields",P),Number.isFinite(i)&&i>-1&&e.searchParams.set("offset",String(Math.floor(i))),typeof g=="boolean"&&e.searchParams.set("includeUnpublished",String(g)),n&&y(n)&&e.searchParams.set("cacheSeconds",String(n)),o&&y(o)&&e.searchParams.set("staleCacheSeconds",String(o)),S){const s=c.flatten({sort:S});for(const t in s)e.searchParams.set(t,JSON.stringify(s[t]))}const w={...V.getBuilderSearchParamsFromWindow(),...O.normalizeSearchParams(r.options||{})},p=c.flatten(w);for(const s in p)e.searchParams.set(s,String(p[s]));if(f&&e.searchParams.set("userAttributes",JSON.stringify(f)),m){const s=c.flattenMongoQuery({query:m});for(const t in s)e.searchParams.set(t,JSON.stringify(s[t]))}return e};exports.generateContentUrl=$;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { flatten as g, flattenMongoQuery as
|
|
2
|
-
import { normalizeSearchParams as
|
|
3
|
-
import { DEFAULT_API_VERSION as
|
|
4
|
-
import { getBuilderSearchParamsFromWindow as
|
|
5
|
-
const y = (
|
|
1
|
+
import { flatten as g, flattenMongoQuery as O } from "../../helpers/flatten.mjs";
|
|
2
|
+
import { normalizeSearchParams as k } from "../../helpers/search/search.mjs";
|
|
3
|
+
import { DEFAULT_API_VERSION as E } from "../../types/api-version.mjs";
|
|
4
|
+
import { getBuilderSearchParamsFromWindow as I } from "../get-builder-search-params/index.mjs";
|
|
5
|
+
const y = (r) => typeof r == "number" && !isNaN(r) && r >= 0, M = (r) => {
|
|
6
6
|
const {
|
|
7
7
|
limit: c = 30,
|
|
8
8
|
userAttributes: m,
|
|
@@ -11,42 +11,43 @@ const y = (s) => typeof s == "number" && !isNaN(s) && s >= 0, J = (s) => {
|
|
|
11
11
|
apiKey: l,
|
|
12
12
|
enrich: h,
|
|
13
13
|
locale: d,
|
|
14
|
-
apiVersion: a =
|
|
14
|
+
apiVersion: a = E,
|
|
15
15
|
fields: u,
|
|
16
16
|
omit: N,
|
|
17
17
|
offset: i,
|
|
18
18
|
cacheSeconds: n,
|
|
19
19
|
staleCacheSeconds: o,
|
|
20
20
|
sort: P,
|
|
21
|
-
includeUnpublished:
|
|
22
|
-
|
|
21
|
+
includeUnpublished: p,
|
|
22
|
+
apiHost: v
|
|
23
|
+
} = r;
|
|
23
24
|
if (!l)
|
|
24
25
|
throw new Error("Missing API key");
|
|
25
26
|
if (!["v3"].includes(a))
|
|
26
27
|
throw new Error(`Invalid apiVersion: expected 'v3', received '${a}'`);
|
|
27
|
-
const
|
|
28
|
-
if (e.searchParams.set("apiKey", l), e.searchParams.set("limit", String(c)), e.searchParams.set("noTraverse", String(
|
|
29
|
-
const
|
|
28
|
+
const U = c !== 1, w = v || "https://cdn.builder.io", e = new URL(`${w}/api/${a}/content/${b}`);
|
|
29
|
+
if (e.searchParams.set("apiKey", l), e.searchParams.set("limit", String(c)), e.searchParams.set("noTraverse", String(U)), e.searchParams.set("includeRefs", String(!0)), d && e.searchParams.set("locale", d), h && e.searchParams.set("enrich", String(h)), e.searchParams.set("omit", N || "meta.componentsUsed"), u && e.searchParams.set("fields", u), Number.isFinite(i) && i > -1 && e.searchParams.set("offset", String(Math.floor(i))), typeof p == "boolean" && e.searchParams.set("includeUnpublished", String(p)), n && y(n) && e.searchParams.set("cacheSeconds", String(n)), o && y(o) && e.searchParams.set("staleCacheSeconds", String(o)), P) {
|
|
30
|
+
const s = g({
|
|
30
31
|
sort: P
|
|
31
32
|
});
|
|
32
|
-
for (const t in
|
|
33
|
-
e.searchParams.set(t, JSON.stringify(
|
|
33
|
+
for (const t in s)
|
|
34
|
+
e.searchParams.set(t, JSON.stringify(s[t]));
|
|
34
35
|
}
|
|
35
|
-
const
|
|
36
|
-
...
|
|
37
|
-
...
|
|
38
|
-
},
|
|
39
|
-
for (const
|
|
40
|
-
e.searchParams.set(
|
|
36
|
+
const A = {
|
|
37
|
+
...I(),
|
|
38
|
+
...k(r.options || {})
|
|
39
|
+
}, S = g(A);
|
|
40
|
+
for (const s in S)
|
|
41
|
+
e.searchParams.set(s, String(S[s]));
|
|
41
42
|
if (m && e.searchParams.set("userAttributes", JSON.stringify(m)), f) {
|
|
42
|
-
const
|
|
43
|
+
const s = O({
|
|
43
44
|
query: f
|
|
44
45
|
});
|
|
45
|
-
for (const t in
|
|
46
|
-
e.searchParams.set(t, JSON.stringify(
|
|
46
|
+
for (const t in s)
|
|
47
|
+
e.searchParams.set(t, JSON.stringify(s[t]));
|
|
47
48
|
}
|
|
48
49
|
return e;
|
|
49
50
|
};
|
|
50
51
|
export {
|
|
51
|
-
|
|
52
|
+
M as generateContentUrl
|
|
52
53
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("../../constants/target.cjs"),a=require("../../helpers/logger.cjs"),c=require("../../helpers/sdk-headers.cjs"),d=require("../../helpers/sessionId.cjs"),u=require("../../helpers/visitorId.cjs"),g=require("../is-browser.cjs"),l=require("../is-editing.cjs"),y=require("./helpers.cjs"),I=async({canTrack:e})=>{if(!e)return{visitorId:void 0,sessionId:void 0};const t=await d.getSessionId({canTrack:e}),r=u.getVisitorId({canTrack:e});return{sessionId:t,visitorId:r}},k=async({type:e,canTrack:t,apiKey:r,metadata:
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("../../constants/target.cjs"),a=require("../../helpers/logger.cjs"),c=require("../../helpers/sdk-headers.cjs"),d=require("../../helpers/sessionId.cjs"),u=require("../../helpers/visitorId.cjs"),g=require("../is-browser.cjs"),l=require("../is-editing.cjs"),y=require("./helpers.cjs"),I=async({canTrack:e})=>{if(!e)return{visitorId:void 0,sessionId:void 0};const t=await d.getSessionId({canTrack:e}),r=u.getVisitorId({canTrack:e});return{sessionId:t,visitorId:r}},k=async({type:e,canTrack:t,apiKey:r,metadata:i,...o})=>({type:e,data:{...o,metadata:{url:location.href,...i},...await I({canTrack:t}),userAttributes:y.getUserAttributes(),ownerId:r}});async function s({apiHost:e,...t}){if(!t.apiKey){a.logger.error("Missing API key for track call. Please provide your API key.");return}return!t.canTrack||l.isEditing()||!(g.isBrowser()||n.TARGET==="reactNative")?void 0:fetch(`${e||"https://cdn.builder.io"}/api/v1/track`,{method:"POST",body:JSON.stringify({events:[await k(t)]}),headers:{"content-type":"application/json",...c.getSdkHeaders()},mode:"cors"}).catch(i=>{console.error("Failed to track: ",i)})}const f=e=>s({...e,canTrack:!0});exports._track=s;exports.track=f;
|
|
@@ -23,7 +23,7 @@ const u = async ({
|
|
|
23
23
|
sessionId: r,
|
|
24
24
|
visitorId: e
|
|
25
25
|
};
|
|
26
|
-
},
|
|
26
|
+
}, l = async ({
|
|
27
27
|
type: t,
|
|
28
28
|
canTrack: r,
|
|
29
29
|
apiKey: e,
|
|
@@ -44,31 +44,33 @@ const u = async ({
|
|
|
44
44
|
ownerId: e
|
|
45
45
|
}
|
|
46
46
|
});
|
|
47
|
-
async function
|
|
48
|
-
|
|
47
|
+
async function y({
|
|
48
|
+
apiHost: t,
|
|
49
|
+
...r
|
|
50
|
+
}) {
|
|
51
|
+
if (!r.apiKey) {
|
|
49
52
|
s.error("Missing API key for track call. Please provide your API key.");
|
|
50
53
|
return;
|
|
51
54
|
}
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
});
|
|
55
|
+
return !r.canTrack || f() || !(m() || a === "reactNative") ? void 0 : fetch(`${t || "https://cdn.builder.io"}/api/v1/track`, {
|
|
56
|
+
method: "POST",
|
|
57
|
+
body: JSON.stringify({
|
|
58
|
+
events: [await l(r)]
|
|
59
|
+
}),
|
|
60
|
+
headers: {
|
|
61
|
+
"content-type": "application/json",
|
|
62
|
+
...n()
|
|
63
|
+
},
|
|
64
|
+
mode: "cors"
|
|
65
|
+
}).catch((o) => {
|
|
66
|
+
console.error("Failed to track: ", o);
|
|
67
|
+
});
|
|
66
68
|
}
|
|
67
|
-
const E = (t) =>
|
|
69
|
+
const E = (t) => y({
|
|
68
70
|
...t,
|
|
69
71
|
canTrack: !0
|
|
70
72
|
});
|
|
71
73
|
export {
|
|
72
|
-
|
|
74
|
+
y as _track,
|
|
73
75
|
E as track
|
|
74
76
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";const o=require("react/jsx-runtime"),p=require("../../components/blocks/blocks.cjs"),W=require("../../components/dynamic-renderer/dynamic-renderer.cjs"),j=require("../../components/inlined-styles.cjs"),q=require("../../constants/device-sizes.cjs"),
|
|
1
|
+
"use strict";const o=require("react/jsx-runtime"),p=require("../../components/blocks/blocks.cjs"),W=require("../../components/dynamic-renderer/dynamic-renderer.cjs"),j=require("../../components/inlined-styles.cjs"),q=require("../../constants/device-sizes.cjs"),z=require("../../functions/get-class-prop-name.cjs"),B=require("../../functions/get-style.cjs"),A=require("./helpers.cjs");function N(e){var g,f;const a=function(){return typeof e.space=="number"?e.space||0:20},s=function(){return e.columns||[]},u=function(){return e.stackColumnsAt||"tablet"},y=function(t){return t.link?e.builderLinkComponent||"a":"div"},S=function(t){var i;return((i=s()[t])==null?void 0:i.width)||100/s().length},x=function(t){const i=S(t),l=a()*(s().length-1)*(i/100);return`calc(${i}% - ${l}px)`},c=function({stackedStyle:t,desktopStyle:i}){return u()==="tablet"?t:i},m=function({stackedStyle:t,desktopStyle:i}){return u()==="never"?i:t},d=function(){return e.stackColumnsAt==="never"?"row":e.reverseColumnsWhenStacked?"column-reverse":"column"},C=function(){return{"--flex-dir":d(),"--flex-dir-tablet":c({stackedStyle:d(),desktopStyle:"row"})}},v=function(t){const i=t===0?0:a(),l=x(t),r=`${i}px`,k="100%",h=0;return{...{display:"flex",flexDirection:"column",alignItems:"stretch"},width:l,["marginLeft"]:r,"--column-width-mobile":m({stackedStyle:k,desktopStyle:l}),"--column-margin-left-mobile":m({stackedStyle:h,desktopStyle:r}),"--column-width-tablet":c({stackedStyle:k,desktopStyle:l}),"--column-margin-left-tablet":c({stackedStyle:h,desktopStyle:r})}},b=function(t){var l,r;return q.getSizesForBreakpoints(((r=(l=e.builderContext.content)==null?void 0:l.meta)==null?void 0:r.breakpoints)||{})[t].max},w=function(){const t=`.${e.builderBlock.id}-breakpoints > .builder-column`;return`
|
|
2
2
|
@media (max-width: ${b("medium")}px) {
|
|
3
3
|
.${e.builderBlock.id}-breakpoints {
|
|
4
4
|
flex-direction: var(--flex-dir-tablet);
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
margin-left: var(--column-margin-left-mobile) !important;
|
|
23
23
|
}
|
|
24
24
|
},
|
|
25
|
-
`},$=function(t,
|
|
25
|
+
`},$=function(t,i){return{...t.link?{href:t.link}:{},[z.getClassPropName()]:"builder-column",style:B.mapStyleObjToStrIfNeeded(v(i))}};return o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:A.getColumnsClass((g=e.builderBlock)==null?void 0:g.id)+" div-0e218b6c",style:C(),children:[o.jsx(j,{id:"builderio-columns",styles:w(),nonce:e.builderContext.nonce}),(f=e.columns)==null?void 0:f.map((n,t)=>o.jsx(W,{TagName:y(n),actionAttributes:{},attributes:$(n,t),children:o.jsx(p,{path:`component.options.columns.${t}.blocks`,parent:e.builderBlock.id,styleProp:{flexGrow:"1"},context:e.builderContext,registeredComponents:e.builderComponents,linkComponent:e.builderLinkComponent,blocks:n.blocks})},t))]}),o.jsx("style",{children:`.div-0e218b6c {
|
|
26
26
|
display: flex;
|
|
27
27
|
line-height: normal;
|
|
28
|
-
}`})]})}module.exports=
|
|
28
|
+
}`})]})}module.exports=N;
|
|
@@ -8,63 +8,71 @@ import { mapStyleObjToStrIfNeeded as T } from "../../functions/get-style.mjs";
|
|
|
8
8
|
import { getColumnsClass as D } from "./helpers.mjs";
|
|
9
9
|
function q(e) {
|
|
10
10
|
var f, g;
|
|
11
|
-
const a =
|
|
11
|
+
const a = function() {
|
|
12
|
+
return typeof e.space == "number" ? e.space || 0 : 20;
|
|
13
|
+
}, s = function() {
|
|
14
|
+
return e.columns || [];
|
|
15
|
+
}, m = function() {
|
|
16
|
+
return e.stackColumnsAt || "tablet";
|
|
17
|
+
}, S = function(t) {
|
|
12
18
|
return t.link ? e.builderLinkComponent || "a" : "div";
|
|
13
|
-
}, C = function(t) {
|
|
14
|
-
var n;
|
|
15
|
-
return ((n = s[t]) == null ? void 0 : n.width) || 100 / s.length;
|
|
16
19
|
}, x = function(t) {
|
|
17
|
-
|
|
18
|
-
return
|
|
20
|
+
var i;
|
|
21
|
+
return ((i = s()[t]) == null ? void 0 : i.width) || 100 / s().length;
|
|
22
|
+
}, C = function(t) {
|
|
23
|
+
const i = x(t), o = a() * (s().length - 1) * (i / 100);
|
|
24
|
+
return `calc(${i}% - ${o}px)`;
|
|
19
25
|
}, c = function({
|
|
20
26
|
stackedStyle: t,
|
|
21
|
-
desktopStyle:
|
|
27
|
+
desktopStyle: i
|
|
22
28
|
}) {
|
|
23
|
-
return m === "tablet" ? t :
|
|
24
|
-
},
|
|
29
|
+
return m() === "tablet" ? t : i;
|
|
30
|
+
}, u = function({
|
|
25
31
|
stackedStyle: t,
|
|
26
|
-
desktopStyle:
|
|
32
|
+
desktopStyle: i
|
|
27
33
|
}) {
|
|
28
|
-
return m === "never" ?
|
|
29
|
-
},
|
|
34
|
+
return m() === "never" ? i : t;
|
|
35
|
+
}, d = function() {
|
|
36
|
+
return e.stackColumnsAt === "never" ? "row" : e.reverseColumnsWhenStacked ? "column-reverse" : "column";
|
|
37
|
+
}, p = function() {
|
|
30
38
|
return {
|
|
31
|
-
"--flex-dir":
|
|
39
|
+
"--flex-dir": d(),
|
|
32
40
|
"--flex-dir-tablet": c({
|
|
33
|
-
stackedStyle:
|
|
41
|
+
stackedStyle: d(),
|
|
34
42
|
desktopStyle: "row"
|
|
35
43
|
})
|
|
36
44
|
};
|
|
37
45
|
}, v = function(t) {
|
|
38
|
-
const
|
|
46
|
+
const i = t === 0 ? 0 : a(), o = C(t), l = `${i}px`, k = "100%", h = 0;
|
|
39
47
|
return {
|
|
40
48
|
...{
|
|
41
49
|
display: "flex",
|
|
42
50
|
flexDirection: "column",
|
|
43
51
|
alignItems: "stretch"
|
|
44
52
|
},
|
|
45
|
-
width:
|
|
46
|
-
["marginLeft"]:
|
|
47
|
-
"--column-width-mobile":
|
|
53
|
+
width: o,
|
|
54
|
+
["marginLeft"]: l,
|
|
55
|
+
"--column-width-mobile": u({
|
|
48
56
|
stackedStyle: k,
|
|
49
|
-
desktopStyle:
|
|
57
|
+
desktopStyle: o
|
|
50
58
|
}),
|
|
51
|
-
"--column-margin-left-mobile":
|
|
59
|
+
"--column-margin-left-mobile": u({
|
|
52
60
|
stackedStyle: h,
|
|
53
|
-
desktopStyle:
|
|
61
|
+
desktopStyle: l
|
|
54
62
|
}),
|
|
55
63
|
"--column-width-tablet": c({
|
|
56
64
|
stackedStyle: k,
|
|
57
|
-
desktopStyle:
|
|
65
|
+
desktopStyle: o
|
|
58
66
|
}),
|
|
59
67
|
"--column-margin-left-tablet": c({
|
|
60
68
|
stackedStyle: h,
|
|
61
|
-
desktopStyle:
|
|
69
|
+
desktopStyle: l
|
|
62
70
|
})
|
|
63
71
|
};
|
|
64
72
|
}, b = function(t) {
|
|
65
|
-
var
|
|
73
|
+
var o, l;
|
|
66
74
|
return L(
|
|
67
|
-
((
|
|
75
|
+
((l = (o = e.builderContext.content) == null ? void 0 : o.meta) == null ? void 0 : l.breakpoints) || {}
|
|
68
76
|
)[t].max;
|
|
69
77
|
}, w = function() {
|
|
70
78
|
const t = `.${e.builderBlock.id}-breakpoints > .builder-column`;
|
|
@@ -93,20 +101,20 @@ function q(e) {
|
|
|
93
101
|
}
|
|
94
102
|
},
|
|
95
103
|
`;
|
|
96
|
-
}, $ = function(t,
|
|
104
|
+
}, $ = function(t, i) {
|
|
97
105
|
return {
|
|
98
106
|
...t.link ? {
|
|
99
107
|
href: t.link
|
|
100
108
|
} : {},
|
|
101
109
|
[N()]: "builder-column",
|
|
102
|
-
style: T(v(
|
|
110
|
+
style: T(v(i))
|
|
103
111
|
};
|
|
104
112
|
};
|
|
105
113
|
return /* @__PURE__ */ y(B, { children: [
|
|
106
114
|
/* @__PURE__ */ y(
|
|
107
115
|
"div",
|
|
108
116
|
{
|
|
109
|
-
className: D((f = e.builderBlock) == null ? void 0 : f.id) + " div-
|
|
117
|
+
className: D((f = e.builderBlock) == null ? void 0 : f.id) + " div-0e218b6c",
|
|
110
118
|
style: p(),
|
|
111
119
|
children: [
|
|
112
120
|
/* @__PURE__ */ r(
|
|
@@ -117,12 +125,12 @@ function q(e) {
|
|
|
117
125
|
nonce: e.builderContext.nonce
|
|
118
126
|
}
|
|
119
127
|
),
|
|
120
|
-
(g = e.columns) == null ? void 0 : g.map((
|
|
128
|
+
(g = e.columns) == null ? void 0 : g.map((n, t) => /* @__PURE__ */ r(
|
|
121
129
|
z,
|
|
122
130
|
{
|
|
123
|
-
TagName: S(
|
|
131
|
+
TagName: S(n),
|
|
124
132
|
actionAttributes: {},
|
|
125
|
-
attributes: $(
|
|
133
|
+
attributes: $(n, t),
|
|
126
134
|
children: /* @__PURE__ */ r(
|
|
127
135
|
W,
|
|
128
136
|
{
|
|
@@ -134,7 +142,7 @@ function q(e) {
|
|
|
134
142
|
context: e.builderContext,
|
|
135
143
|
registeredComponents: e.builderComponents,
|
|
136
144
|
linkComponent: e.builderLinkComponent,
|
|
137
|
-
blocks:
|
|
145
|
+
blocks: n.blocks
|
|
138
146
|
}
|
|
139
147
|
)
|
|
140
148
|
},
|
|
@@ -143,7 +151,7 @@ function q(e) {
|
|
|
143
151
|
]
|
|
144
152
|
}
|
|
145
153
|
),
|
|
146
|
-
/* @__PURE__ */ r("style", { children: `.div-
|
|
154
|
+
/* @__PURE__ */ r("style", { children: `.div-0e218b6c {
|
|
147
155
|
display: flex;
|
|
148
156
|
line-height: normal;
|
|
149
157
|
}` })
|