@acoustte-digital-services/digitalstore-controls-dev 0.8.1-dev.20260320074145 → 0.8.1-dev.20260323045408

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/index.js CHANGED
@@ -1,3 +1,5 @@
1
+ "use client";
2
+
1
3
  "use strict";
2
4
  var __create = Object.create;
3
5
  var __defProp = Object.defineProperty;
@@ -2535,7 +2537,7 @@ var DataList = (props) => {
2535
2537
  var DataList_default = DataList;
2536
2538
 
2537
2539
  // src/components/pageRenderingEngine/PageBodyRenderer.tsx
2538
- var import_react51 = __toESM(require("react"));
2540
+ var import_react52 = __toESM(require("react"));
2539
2541
 
2540
2542
  // src/components/pageRenderingEngine/nodes/ParagraphNode.tsx
2541
2543
  var import_react37 = __toESM(require("react"));
@@ -2944,8 +2946,61 @@ var QuoteNode = (props) => {
2944
2946
  var QuoteNode_default = QuoteNode;
2945
2947
 
2946
2948
  // src/components/pageRenderingEngine/nodes/CodeNode.tsx
2947
- var import_react42 = __toESM(require("react"));
2949
+ var import_react43 = __toESM(require("react"));
2950
+
2951
+ // src/components/CopyButton.tsx
2952
+ var import_react42 = require("react");
2948
2953
  var import_jsx_runtime52 = require("react/jsx-runtime");
2954
+ function CopyButton({ text }) {
2955
+ const [copied, setCopied] = (0, import_react42.useState)(false);
2956
+ const timeoutRef = (0, import_react42.useRef)(null);
2957
+ (0, import_react42.useEffect)(() => {
2958
+ return () => {
2959
+ if (timeoutRef.current) clearTimeout(timeoutRef.current);
2960
+ };
2961
+ }, []);
2962
+ const handleCopy = async () => {
2963
+ try {
2964
+ await navigator.clipboard.writeText(text);
2965
+ setCopied(true);
2966
+ if (timeoutRef.current) clearTimeout(timeoutRef.current);
2967
+ timeoutRef.current = setTimeout(() => setCopied(false), 2e3);
2968
+ } catch (err) {
2969
+ console.error("Failed to copy: ", err);
2970
+ }
2971
+ };
2972
+ return /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)(
2973
+ "button",
2974
+ {
2975
+ onClick: handleCopy,
2976
+ className: "flex gap-1 items-center hover:text-white transition",
2977
+ children: [
2978
+ /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
2979
+ "svg",
2980
+ {
2981
+ width: "16",
2982
+ height: "16",
2983
+ viewBox: "0 0 24 24",
2984
+ className: "w-4 h-4",
2985
+ fill: "currentColor",
2986
+ children: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
2987
+ "path",
2988
+ {
2989
+ fillRule: "evenodd",
2990
+ clipRule: "evenodd",
2991
+ d: "M12 4C10.8954 4 10 4.89543 10 6H14C14 4.89543 13.1046 4 12 4ZM8.53513 4C9.22675 2.8044 10.5194 2 12 2C13.4806 2 14.7733 2.8044 15.4649 4H17C18.6569 4 20 5.34315 20 7V19C20 20.6569 18.6569 22 17 22H7C5.34315 22 4 20.6569 4 19V7C4 5.34315 5.34315 4 7 4H8.53513ZM8 6H7C6.44772 6 6 6.44772 6 7V19C6 19.5523 6.44772 20 7 20H17C17.5523 20 18 19.5523 18 19V7C18 6.44772 17.5523 6 17 6H16C16 7.10457 15.1046 8 14 8H10C8.89543 8 8 7.10457 8 6Z"
2992
+ }
2993
+ )
2994
+ }
2995
+ ),
2996
+ copied ? "Copied!" : "Copy code"
2997
+ ]
2998
+ }
2999
+ );
3000
+ }
3001
+
3002
+ // src/components/pageRenderingEngine/nodes/CodeNode.tsx
3003
+ var import_jsx_runtime53 = require("react/jsx-runtime");
2949
3004
  var CodeNode = (props) => {
2950
3005
  const NodeTypes2 = {
2951
3006
  ["text"]: TextNode_default,
@@ -2958,30 +3013,36 @@ var CodeNode = (props) => {
2958
3013
  if (node.type === "link") return node.text || node.url || "";
2959
3014
  return "";
2960
3015
  }).join("") ?? "";
2961
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("div", { className: "code-block", children: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("code", { className: "block bg-gray-900 text-gray-100 p-4 rounded-b-md text-sm whitespace-pre-wrap", children: props.node.children && props.node.children.map((node, index) => {
2962
- const SelectedNode = NodeTypes2[node.type];
2963
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_react42.default.Fragment, { children: SelectedNode && /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(SelectedNode, { node, session: props.session, apiBaseUrl: props.apiBaseUrl, routeParameters: props.routeParameters }) }, index);
2964
- }) }) });
3016
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)("div", { className: "code-block", children: [
3017
+ /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)("div", { className: "flex items-center relative text-gray-200 bg-gray-800 px-4 py-2.5 text-xs font-sans justify-between rounded-t-md", children: [
3018
+ /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("span", { children: "Code Snippet" }),
3019
+ /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(CopyButton, { text: textContent })
3020
+ ] }),
3021
+ /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("code", { className: "block bg-gray-900 text-gray-100 p-4 rounded-b-md text-sm whitespace-pre-wrap", children: props.node.children && props.node.children.map((node, index) => {
3022
+ const SelectedNode = NodeTypes2[node.type];
3023
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_react43.default.Fragment, { children: SelectedNode && /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(SelectedNode, { node, session: props.session, apiBaseUrl: props.apiBaseUrl, routeParameters: props.routeParameters }) }, index);
3024
+ }) })
3025
+ ] });
2965
3026
  };
2966
3027
  var CodeNode_default = CodeNode;
2967
3028
 
2968
3029
  // src/components/pageRenderingEngine/nodes/HorizontalRuleNode.tsx
2969
- var import_jsx_runtime53 = require("react/jsx-runtime");
3030
+ var import_jsx_runtime54 = require("react/jsx-runtime");
2970
3031
  var HorizontalRuleNode = (props) => {
2971
- return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("hr", {});
3032
+ return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("hr", {});
2972
3033
  };
2973
3034
  var HorizontalRuleNode_default = HorizontalRuleNode;
2974
3035
 
2975
3036
  // src/components/pageRenderingEngine/nodes/LayoutItemNode.tsx
2976
- var import_react48 = __toESM(require("react"));
3037
+ var import_react49 = __toESM(require("react"));
2977
3038
 
2978
3039
  // src/components/pageRenderingEngine/nodes/ImageNode.tsx
2979
- var import_react43 = __toESM(require("react"));
2980
- var import_jsx_runtime54 = require("react/jsx-runtime");
3040
+ var import_react44 = __toESM(require("react"));
3041
+ var import_jsx_runtime55 = require("react/jsx-runtime");
2981
3042
  var ImageNode = (props) => {
2982
3043
  const { node, apiBaseUrl = "" } = props;
2983
3044
  let imageUrl = node.imageUrl.startsWith("http") ? node.imageUrl : `${apiBaseUrl}/digitalassets/storefront/${node.imageUrl}`;
2984
- return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_react43.default.Fragment, { children: node.width ? /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { style: { width: node.width }, children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
3045
+ return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_react44.default.Fragment, { children: node.width ? /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { style: { width: node.width }, children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
2985
3046
  "img",
2986
3047
  {
2987
3048
  loading: "lazy",
@@ -2991,7 +3052,7 @@ var ImageNode = (props) => {
2991
3052
  height: node.intrinsicHeight,
2992
3053
  alt: node.title
2993
3054
  }
2994
- ) }) : /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
3055
+ ) }) : /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
2995
3056
  "img",
2996
3057
  {
2997
3058
  loading: "lazy",
@@ -3006,8 +3067,8 @@ var ImageNode = (props) => {
3006
3067
  var ImageNode_default = ImageNode;
3007
3068
 
3008
3069
  // src/components/pageRenderingEngine/nodes/WidgetNode.tsx
3009
- var import_react44 = require("react");
3010
- var import_jsx_runtime55 = require("react/jsx-runtime");
3070
+ var import_react45 = require("react");
3071
+ var import_jsx_runtime56 = require("react/jsx-runtime");
3011
3072
  var WidgetNode = (props) => {
3012
3073
  const getWidgetParameters = () => {
3013
3074
  const widgetInputParameters = { ...props.routeParameters ?? {} };
@@ -3062,12 +3123,12 @@ var WidgetNode = (props) => {
3062
3123
  const SelectedWidget = props.widgetRegistry?.[props.node.widgetCode];
3063
3124
  if (!SelectedWidget) {
3064
3125
  console.warn("Widget not found:", props.node.widgetCode);
3065
- return /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)(import_jsx_runtime55.Fragment, { children: [
3126
+ return /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)(import_jsx_runtime56.Fragment, { children: [
3066
3127
  "Widget not found: ",
3067
3128
  props.node.widgetCode
3068
3129
  ] });
3069
3130
  }
3070
- return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_react44.Suspense, { fallback: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "container mt-2", children: "..." }), children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
3131
+ return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_react45.Suspense, { fallback: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "container mt-2", children: "..." }), children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
3071
3132
  SelectedWidget,
3072
3133
  {
3073
3134
  params: getWidgetParameters(),
@@ -3082,42 +3143,42 @@ var WidgetNode = (props) => {
3082
3143
  var WidgetNode_default = WidgetNode;
3083
3144
 
3084
3145
  // src/components/pageRenderingEngine/nodes/IframeClient.tsx
3085
- var import_react46 = __toESM(require("react"));
3146
+ var import_react47 = __toESM(require("react"));
3086
3147
 
3087
3148
  // src/components/IFrameLoaderView.tsx
3088
- var import_react45 = __toESM(require("react"));
3089
- var import_jsx_runtime56 = require("react/jsx-runtime");
3149
+ var import_react46 = __toESM(require("react"));
3150
+ var import_jsx_runtime57 = require("react/jsx-runtime");
3090
3151
  var IFrameLoaderView = (props) => {
3091
- return /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)(import_react45.default.Fragment, { children: [
3092
- props.isDataFound == null && /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("div", { className: "mt-4 bg-gray-200 rounded-md p-4 animate-pulse", children: [
3093
- /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("div", { className: "flex items-center mb-4", children: [
3094
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "bg-gray-300 h-8 w-8 rounded-full animate-pulse" }),
3095
- /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("div", { className: "ml-2", children: [
3096
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "bg-gray-300 h-3 w-16 animate-pulse" }),
3097
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "bg-gray-300 h-2 w-12 animate-pulse" })
3152
+ return /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)(import_react46.default.Fragment, { children: [
3153
+ props.isDataFound == null && /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "", children: /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)("div", { className: "mt-4 bg-gray-200 rounded-md p-4 animate-pulse", children: [
3154
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)("div", { className: "flex items-center mb-4", children: [
3155
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "bg-gray-300 h-8 w-8 rounded-full animate-pulse" }),
3156
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)("div", { className: "ml-2", children: [
3157
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "bg-gray-300 h-3 w-16 animate-pulse" }),
3158
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "bg-gray-300 h-2 w-12 animate-pulse" })
3098
3159
  ] })
3099
3160
  ] }),
3100
- /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("div", { className: "grid grid-cols-3 gap-4 mt-6", children: [
3101
- /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("div", { className: "animate-pulse", children: [
3102
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-12 mb-2" }),
3103
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-24 mb-2" }),
3104
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-32 mb-2" }),
3105
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-16 mb-2" }),
3106
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-28 mb-2" })
3161
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)("div", { className: "grid grid-cols-3 gap-4 mt-6", children: [
3162
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)("div", { className: "animate-pulse", children: [
3163
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-12 mb-2" }),
3164
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-24 mb-2" }),
3165
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-32 mb-2" }),
3166
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-16 mb-2" }),
3167
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-28 mb-2" })
3107
3168
  ] }),
3108
- /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("div", { className: "animate-pulse", children: [
3109
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-12 mb-2" }),
3110
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-24 mb-2" }),
3111
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-32 mb-2" }),
3112
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-16 mb-2" }),
3113
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-28 mb-2" })
3169
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)("div", { className: "animate-pulse", children: [
3170
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-12 mb-2" }),
3171
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-24 mb-2" }),
3172
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-32 mb-2" }),
3173
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-16 mb-2" }),
3174
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-28 mb-2" })
3114
3175
  ] }),
3115
- /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("div", { className: "animate-pulse", children: [
3116
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-12 mb-2" }),
3117
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-24 mb-2" }),
3118
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-32 mb-2" }),
3119
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-16 mb-2" }),
3120
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-28 mb-2" })
3176
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)("div", { className: "animate-pulse", children: [
3177
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-12 mb-2" }),
3178
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-24 mb-2" }),
3179
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-32 mb-2" }),
3180
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-16 mb-2" }),
3181
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-28 mb-2" })
3121
3182
  ] })
3122
3183
  ] })
3123
3184
  ] }) }),
@@ -3127,12 +3188,12 @@ var IFrameLoaderView = (props) => {
3127
3188
  var IFrameLoaderView_default = IFrameLoaderView;
3128
3189
 
3129
3190
  // src/components/pageRenderingEngine/nodes/IframeClient.tsx
3130
- var import_jsx_runtime57 = require("react/jsx-runtime");
3191
+ var import_jsx_runtime58 = require("react/jsx-runtime");
3131
3192
  var IframeClient = ({ src }) => {
3132
- const iframeRef = (0, import_react46.useRef)(null);
3133
- const [iframeHeight, setIframeHeight] = (0, import_react46.useState)("100%");
3134
- const [isDataFound, setIsDataFound] = (0, import_react46.useState)(null);
3135
- (0, import_react46.useEffect)(() => {
3193
+ const iframeRef = (0, import_react47.useRef)(null);
3194
+ const [iframeHeight, setIframeHeight] = (0, import_react47.useState)("100%");
3195
+ const [isDataFound, setIsDataFound] = (0, import_react47.useState)(null);
3196
+ (0, import_react47.useEffect)(() => {
3136
3197
  const handleReceiveMessage = (event) => {
3137
3198
  const eventName = event?.data?.eventName;
3138
3199
  const payload = event?.data?.payload;
@@ -3147,7 +3208,7 @@ var IframeClient = ({ src }) => {
3147
3208
  window.addEventListener("message", handleReceiveMessage);
3148
3209
  return () => window.removeEventListener("message", handleReceiveMessage);
3149
3210
  }, []);
3150
- (0, import_react46.useEffect)(() => {
3211
+ (0, import_react47.useEffect)(() => {
3151
3212
  const handleResize = () => {
3152
3213
  if (iframeRef.current) {
3153
3214
  iframeRef.current.contentWindow?.postMessage({ eventName: "RESIZE" }, "*");
@@ -3159,7 +3220,7 @@ var IframeClient = ({ src }) => {
3159
3220
  const handleIframeLoad = () => {
3160
3221
  setIsDataFound(true);
3161
3222
  };
3162
- return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(import_react46.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(IFrameLoaderView_default, { isDataFound, children: /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
3223
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_react47.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(IFrameLoaderView_default, { isDataFound, children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
3163
3224
  "iframe",
3164
3225
  {
3165
3226
  ref: iframeRef,
@@ -3173,7 +3234,7 @@ var IframeClient = ({ src }) => {
3173
3234
  var IframeClient_default = IframeClient;
3174
3235
 
3175
3236
  // src/components/pageRenderingEngine/nodes/EmbedNode.tsx
3176
- var import_jsx_runtime58 = require("react/jsx-runtime");
3237
+ var import_jsx_runtime59 = require("react/jsx-runtime");
3177
3238
  var EmbedNode = (props) => {
3178
3239
  let src;
3179
3240
  if (props.node.provider == "youtube") {
@@ -3183,13 +3244,13 @@ var EmbedNode = (props) => {
3183
3244
  } else {
3184
3245
  src = props.node.embedSrc;
3185
3246
  }
3186
- return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { className: "aspect-video", children: src && /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(IframeClient_default, { src }) });
3247
+ return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("div", { className: "aspect-video", children: src && /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(IframeClient_default, { src }) });
3187
3248
  };
3188
3249
  var EmbedNode_default = EmbedNode;
3189
3250
 
3190
3251
  // src/components/pageRenderingEngine/nodes/VideoNode.tsx
3191
- var import_react47 = __toESM(require("react"));
3192
- var import_jsx_runtime59 = require("react/jsx-runtime");
3252
+ var import_react48 = __toESM(require("react"));
3253
+ var import_jsx_runtime60 = require("react/jsx-runtime");
3193
3254
  var VideoNode = (props) => {
3194
3255
  let src;
3195
3256
  if (props.node.provider == "youtube") {
@@ -3197,12 +3258,12 @@ var VideoNode = (props) => {
3197
3258
  } else if (props.node.provider == "bunny") {
3198
3259
  src = `https://iframe.mediadelivery.net/embed/${props.node.videoId}?autoplay=false&loop=false&muted=false&preload=true&responsive=true`;
3199
3260
  }
3200
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_react47.default.Fragment, { children: src && /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("iframe", { className: "w-full aspect-video rounded", src, loading: "lazy", allow: "accelerometer;gyroscope;autoplay;encrypted-media;picture-in-picture;", allowFullScreen: true }) });
3261
+ return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_react48.default.Fragment, { children: src && /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("iframe", { className: "w-full aspect-video rounded", src, loading: "lazy", allow: "accelerometer;gyroscope;autoplay;encrypted-media;picture-in-picture;", allowFullScreen: true }) });
3201
3262
  };
3202
3263
  var VideoNode_default = VideoNode;
3203
3264
 
3204
3265
  // src/components/pageRenderingEngine/nodes/LayoutItemNode.tsx
3205
- var import_jsx_runtime60 = require("react/jsx-runtime");
3266
+ var import_jsx_runtime61 = require("react/jsx-runtime");
3206
3267
  var LayoutItemNode = (props) => {
3207
3268
  const NodeTypes2 = {
3208
3269
  ["paragraph"]: ParagraphNode_default,
@@ -3263,11 +3324,11 @@ var LayoutItemNode = (props) => {
3263
3324
  } else {
3264
3325
  updatedLayout = removeParagraphsAtStartAndEnd(props.node);
3265
3326
  }
3266
- return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_react48.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "layout-item " + cssClasses, style: { ...styles }, children: updatedLayout.children.map((node, index) => {
3327
+ return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_react49.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: "layout-item " + cssClasses, style: { ...styles }, children: updatedLayout.children.map((node, index) => {
3267
3328
  {
3268
3329
  }
3269
3330
  const SelectedNode = NodeTypes2[node.type];
3270
- return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_react48.default.Fragment, { children: SelectedNode && /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
3331
+ return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_react49.default.Fragment, { children: SelectedNode && /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
3271
3332
  SelectedNode,
3272
3333
  {
3273
3334
  node,
@@ -3297,7 +3358,7 @@ var AssetUtility = class {
3297
3358
  var AssetUtility_default = AssetUtility;
3298
3359
 
3299
3360
  // src/components/pageRenderingEngine/nodes/LayoutContainerNode.tsx
3300
- var import_jsx_runtime61 = require("react/jsx-runtime");
3361
+ var import_jsx_runtime62 = require("react/jsx-runtime");
3301
3362
  var LayoutContainerNode = (props) => {
3302
3363
  const VERTICAL_ALIGNMENT_CLASSES = {
3303
3364
  start: "items-start",
@@ -3367,7 +3428,7 @@ var LayoutContainerNode = (props) => {
3367
3428
  if (backgroundLayers.length) {
3368
3429
  styles.background = backgroundLayers.join(", ");
3369
3430
  }
3370
- const renderChildren = () => props.node.children?.map((node, index) => /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
3431
+ const renderChildren = () => props.node.children?.map((node, index) => /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
3371
3432
  LayoutItemNode_default,
3372
3433
  {
3373
3434
  node,
@@ -3381,8 +3442,8 @@ var LayoutContainerNode = (props) => {
3381
3442
  },
3382
3443
  index
3383
3444
  ));
3384
- return /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)(import_jsx_runtime61.Fragment, { children: [
3385
- sectionWidth === "mixed" && /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: cssClasses, style: styles, children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: "container", children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
3445
+ return /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(import_jsx_runtime62.Fragment, { children: [
3446
+ sectionWidth === "mixed" && /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: cssClasses, style: styles, children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: "container", children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
3386
3447
  "div",
3387
3448
  {
3388
3449
  className: `grid gap-y-4 lg:gap-y-0 ${gridCssClasses} ${addPadding ? "py-8 lg:py-6" : ""}`,
@@ -3390,7 +3451,7 @@ var LayoutContainerNode = (props) => {
3390
3451
  children: renderChildren()
3391
3452
  }
3392
3453
  ) }) }),
3393
- sectionWidth === "full" && /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
3454
+ sectionWidth === "full" && /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
3394
3455
  "div",
3395
3456
  {
3396
3457
  className: `grid gap-y-4 lg:gap-y-0 ${cssClasses} ${gridCssClasses} ${addPadding ? "p-8 lg:p-0" : ""}`,
@@ -3398,7 +3459,7 @@ var LayoutContainerNode = (props) => {
3398
3459
  children: renderChildren()
3399
3460
  }
3400
3461
  ),
3401
- sectionWidth === "fixed" && /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: "container", children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
3462
+ sectionWidth === "fixed" && /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: "container", children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
3402
3463
  "div",
3403
3464
  {
3404
3465
  className: `grid gap-y-4 lg:gap-y-0 ${cssClasses} ${gridCssClasses} ${addPadding ? "px-8 py-6 lg:px-6 lg:py-6" : ""}`,
@@ -3411,12 +3472,12 @@ var LayoutContainerNode = (props) => {
3411
3472
  var LayoutContainerNode_default = LayoutContainerNode;
3412
3473
 
3413
3474
  // src/components/pageRenderingEngine/nodes/FormContainerNode.tsx
3414
- var import_react49 = __toESM(require("react"));
3475
+ var import_react50 = __toESM(require("react"));
3415
3476
 
3416
3477
  // src/components/pageRenderingEngine/nodes/InputControlNode.tsx
3417
- var import_jsx_runtime62 = require("react/jsx-runtime");
3478
+ var import_jsx_runtime63 = require("react/jsx-runtime");
3418
3479
  var InputControlNode = (props) => {
3419
- return /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
3480
+ return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
3420
3481
  InputControl_default,
3421
3482
  {
3422
3483
  name: props.node.name,
@@ -3445,19 +3506,19 @@ var InputControlNode = (props) => {
3445
3506
  var InputControlNode_default = InputControlNode;
3446
3507
 
3447
3508
  // src/components/pageRenderingEngine/nodes/FormContainerNode.tsx
3448
- var import_jsx_runtime63 = require("react/jsx-runtime");
3509
+ var import_jsx_runtime64 = require("react/jsx-runtime");
3449
3510
  var FormContainerNode = (props) => {
3450
3511
  const NodeTypes2 = {
3451
3512
  ["input-control"]: InputControlNode_default
3452
3513
  };
3453
3514
  const { node } = props;
3454
- const formRef = (0, import_react49.useRef)(null);
3515
+ const formRef = (0, import_react50.useRef)(null);
3455
3516
  const initialState = {
3456
3517
  inputValues: {},
3457
3518
  lastPropertyChanged: ""
3458
3519
  };
3459
- const [formState, dispatch] = (0, import_react49.useReducer)(FormReducer_default, initialState);
3460
- const handleInputChange = (0, import_react49.useCallback)((updatedValues) => {
3520
+ const [formState, dispatch] = (0, import_react50.useReducer)(FormReducer_default, initialState);
3521
+ const handleInputChange = (0, import_react50.useCallback)((updatedValues) => {
3461
3522
  dispatch({ type: FORM_INPUT_UPDATE, name: updatedValues.name, value: updatedValues.value });
3462
3523
  }, [dispatch]);
3463
3524
  const onValidate = async () => {
@@ -3468,7 +3529,7 @@ var FormContainerNode = (props) => {
3468
3529
  return true;
3469
3530
  }
3470
3531
  };
3471
- (0, import_react49.useEffect)(() => {
3532
+ (0, import_react50.useEffect)(() => {
3472
3533
  const fetchInitialData = async () => {
3473
3534
  if (!props.fetchData || !node.dataFetchApi) return;
3474
3535
  const response = await props.fetchData(
@@ -3485,12 +3546,12 @@ var FormContainerNode = (props) => {
3485
3546
  };
3486
3547
  fetchInitialData();
3487
3548
  }, [props.fetchData, node.dataFetchApi, props.routeParameters]);
3488
- return /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)("form", { className: "group space-y-6 pb-6 overflow-y-auto", noValidate: true, ref: formRef, children: [
3549
+ return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("form", { className: "group space-y-6 pb-6 overflow-y-auto", noValidate: true, ref: formRef, children: [
3489
3550
  node.children && node.children.map((node2, index) => {
3490
3551
  {
3491
3552
  }
3492
3553
  const SelectedNode = NodeTypes2[node2.type];
3493
- return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_react49.default.Fragment, { children: SelectedNode && node2.type == "input-control" && /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
3554
+ return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_react50.default.Fragment, { children: SelectedNode && node2.type == "input-control" && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
3494
3555
  InputControlNode_default,
3495
3556
  {
3496
3557
  value: formState.inputValues[node2.name],
@@ -3499,15 +3560,15 @@ var FormContainerNode = (props) => {
3499
3560
  }
3500
3561
  ) }, index);
3501
3562
  }),
3502
- node.children.length == 0 && /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { className: "py-0.5 lg:py-1.5" })
3563
+ node.children.length == 0 && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "py-0.5 lg:py-1.5" })
3503
3564
  ] });
3504
3565
  };
3505
3566
  var FormContainerNode_default = FormContainerNode;
3506
3567
 
3507
3568
  // src/components/pageRenderingEngine/nodes/DivContainer.tsx
3508
- var import_react50 = __toESM(require("react"));
3569
+ var import_react51 = __toESM(require("react"));
3509
3570
  var import_link3 = __toESM(require("next/link"));
3510
- var import_jsx_runtime64 = require("react/jsx-runtime");
3571
+ var import_jsx_runtime65 = require("react/jsx-runtime");
3511
3572
  var DivContainer = (props) => {
3512
3573
  const { cssProperties: styles, hoverCssProperties: hoverStyles, mobileCssProperties: mobileStyles } = props.node;
3513
3574
  const updatedStyles = convertKeysToCamelCase(styles);
@@ -3626,9 +3687,9 @@ ${mobileCssRules.join("\n")}
3626
3687
  return css2;
3627
3688
  };
3628
3689
  const css = generateCssString(updatedStyle, hoverStyles, mobileStyles);
3629
- return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(import_react50.default.Fragment, { children: [
3630
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("style", { dangerouslySetInnerHTML: { __html: css } }),
3631
- props.node.href && props.node.href !== "" ? /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_link3.default, { href: props.node.href, className: "block", children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
3690
+ return /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(import_react51.default.Fragment, { children: [
3691
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("style", { dangerouslySetInnerHTML: { __html: css } }),
3692
+ props.node.href && props.node.href !== "" ? /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_link3.default, { href: props.node.href, className: "block", children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
3632
3693
  "div",
3633
3694
  {
3634
3695
  id: guid,
@@ -3636,7 +3697,7 @@ ${mobileCssRules.join("\n")}
3636
3697
  className: containerPaddingClass,
3637
3698
  children: props.node.children?.map((node, index) => {
3638
3699
  const SelectedNode = NodeTypes2[node.type];
3639
- return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_react50.default.Fragment, { children: SelectedNode && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
3700
+ return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_react51.default.Fragment, { children: SelectedNode && /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
3640
3701
  SelectedNode,
3641
3702
  {
3642
3703
  node,
@@ -3651,9 +3712,9 @@ ${mobileCssRules.join("\n")}
3651
3712
  ) }, index);
3652
3713
  })
3653
3714
  }
3654
- ) }) : /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { id: guid, style: { ...backgroundStyle }, className: containerPaddingClass, children: props.node.children && props.node.children.map((node, index) => {
3715
+ ) }) : /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { id: guid, style: { ...backgroundStyle }, className: containerPaddingClass, children: props.node.children && props.node.children.map((node, index) => {
3655
3716
  const SelectedNode = NodeTypes2[node.type];
3656
- return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_react50.default.Fragment, { children: SelectedNode && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
3717
+ return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_react51.default.Fragment, { children: SelectedNode && /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
3657
3718
  SelectedNode,
3658
3719
  {
3659
3720
  node,
@@ -3672,7 +3733,7 @@ ${mobileCssRules.join("\n")}
3672
3733
  var DivContainer_default = DivContainer;
3673
3734
 
3674
3735
  // src/components/pageRenderingEngine/PageBodyRenderer.tsx
3675
- var import_jsx_runtime65 = require("react/jsx-runtime");
3736
+ var import_jsx_runtime66 = require("react/jsx-runtime");
3676
3737
  var NodeTypes = {
3677
3738
  ["paragraph"]: ParagraphNode_default,
3678
3739
  ["heading"]: HeadingNode_default,
@@ -3700,11 +3761,11 @@ var PageBodyRenderer = (props) => {
3700
3761
  if (pageBodyTree && pageBodyTree.root) {
3701
3762
  rootNode = pageBodyTree.root;
3702
3763
  }
3703
- return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_react51.default.Fragment, { children: rootNode && rootNode?.children?.map((node, index) => {
3764
+ return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_react52.default.Fragment, { children: rootNode && rootNode?.children?.map((node, index) => {
3704
3765
  {
3705
3766
  }
3706
3767
  const SelectedNode = NodeTypes[node.type];
3707
- return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_react51.default.Fragment, { children: SelectedNode && /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_react51.default.Fragment, { children: node.type == "layout-container" ? /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_react51.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
3768
+ return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_react52.default.Fragment, { children: SelectedNode && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_react52.default.Fragment, { children: node.type == "layout-container" ? /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_react52.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
3708
3769
  SelectedNode,
3709
3770
  {
3710
3771
  node,
@@ -3717,7 +3778,7 @@ var PageBodyRenderer = (props) => {
3717
3778
  apiBaseUrl: props.apiBaseUrl,
3718
3779
  widgetRegistry: props.widgetRegistry
3719
3780
  }
3720
- ) }) : /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_react51.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
3781
+ ) }) : /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_react52.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
3721
3782
  SelectedNode,
3722
3783
  {
3723
3784
  node,
@@ -3742,4 +3803,3 @@ var PageBodyRenderer_default = PageBodyRenderer;
3742
3803
  ViewControl,
3743
3804
  ViewControlTypes
3744
3805
  });
3745
- //# sourceMappingURL=index.js.map